@charset "utf-8";

::selection {
	background-color: #333;
	color: #fff;
}

.mincho {
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
}

a {
	transition: all .3s;
}

a:hover {
	opacity: 0.7;
}

img {
  max-width: 100%;
}

input,
button,
textarea {
	outline: none;
}

input:focus,
textarea:focus {
  background: #f7f7f7;
}

.tb,
.sp {
	display: none;
}

#wrap {
  margin-top: -1px;/*　※あとで必ず消す！　*/
}

#header {
    /* position: relative;
    background: url(../img/back1.jpg) repeat; */
    background-position: center;
    background-color: #F39800;
    background-size: cover;
    text-align: center;
    z-index: 1;
}

#header .inner {
 /* position: relative; */
  padding: 0;
  width: 100%;
  max-width: 1300px;
  /*height:525px;*/
  margin: 0 auto;
}

#header .inner .btn {
  position: absolute;
  top: 200px;
  left: 240px;
}
#header .inner .title_1 {
  position: absolute;
  top: 39px;
  left: 4px;
}
#header .inner .title_2 {
  position: absolute;
  top: 313px;
  left: 5px;
}
#header .inner .title_3 {
  position: absolute;
  top: 308px;
  left: 402px;
}
#header .inner .title_4 {
  position: absolute;
  top: 449px;
  left: 403px;
}

 /*----- フェードインしながら上へスライド -----*/
/*    .inviewfadeInUp_1 {
        opacity: 0;
        transform: translate(0, 60px);
        -webkit-transform: translate(0, 60px);
        transition: .8s;
    }
	.inviewfadeInUp_2 {
        opacity: 0;
        transform: translate(0, 60px);
        -webkit-transform: translate(0, 60px);
        transition: .8s;
		transition-delay: 1s;
    }
    .inviewfadeInUp_3 {
        opacity: 0;
        transform: translate(0, 60px);
        -webkit-transform: translate(0, 60px);
        transition: .8s;
		transition-delay: 2s;
    }
    .inviewfadeInUp_4 {
        opacity: 0;
        transform: translate(0, 60px);
        -webkit-transform: translate(0, 60px);
        transition: .8s;
		transition-delay: 3s;
    }
    .fadeInUp {
        opacity: 1.0;
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
    }
*/
body {
  font-size: 20px;
  line-height: 1.5;
  color: #332000;
}

.bg-gradation {  
  background: #F39800 ;/*保険用*/
  background: -moz-linear-gradient(top, #F39800 0%, #4ED2CF 100%);/*古いFireFox向け*/
  background: -webkit-linear-gradient(top, #F39800 0%,#4ED2CF 100%);/*古いSafariなど向け*/
  filter:progid:DXImageTransform.Microsoft.Gradient(
    startColorstr='#F39800',
    endColorstr='#4ED2CF',
    GradientType=0 );/*IE9以下向け*/
  background: linear-gradient(to bottom, #F39800 0%, #4ED2CF 100%);/*正規の指定*/
}

.bg-stripe {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0,
            color-stop(.25, rgba(242,189,97,1)), color-stop(.25, transparent),
            color-stop(.5, transparent), color-stop(.5, rgba(242,189,97,1)),
            color-stop(.75, rgba(242,189,97,1)), color-stop(.75, transparent),
            to(transparent));
  background-image: -webkit-linear-gradient(-45deg, rgba(242,189,97,1) 25%, transparent 25%,
          transparent 50%, rgba(242,189,97,1) 50%, rgba(242,189,97,1) 75%,
          transparent 75%, transparent);
  background-image: -moz-linear-gradient(-45deg, rgba(242,189,97,1) 25%, transparent 25%,
          transparent 50%, rgba(242,189,97,1) 50%, rgba(242,189,97,1) 75%,
          transparent 75%, transparent);
  background-image: -ms-linear-gradient(-45deg, rgba(242,189,97,1) 25%, transparent 25%,
          transparent 50%, rgba(242,189,97,1) 50%, rgba(242,189,97,1) 75%,
          transparent 75%, transparent);
  background-image: -o-linear-gradient(-45deg, rgba(242,189,97,1) 25%, transparent 25%,
          transparent 50%, rgba(242,189,97,1) 50%, rgba(242,189,97,1) 75%,
          transparent 75%, transparent);
  background-image: linear-gradient(-45deg, rgba(242,189,97,1) 25%, transparent 25%,
          transparent 50%, rgba(242,189,97,1) 50%, rgba(242,189,97,1) 75%,
          transparent 75%, transparent);
  -webkit-background-size: 40px 40px;
  -moz-background-size: 40px 40px;
  background-size: 40px 40px;
    background-attachment: fixed;
}

.font-big {
  font-size: 130%;
}
.font-bigger {
  font-size: 160%;
}
.font-vc {
  color: #4ED2CF;  
}
.font-red {
  color: #F20059;
}
.font-bold {
  font-weight: bold;
}
.font-em {
  font-family: 'M PLUS 1', sans-serif;
  font-weight: 800;
}
.font-line {
  border-bottom: 2px solid;
}
.font-line-marker {
  background: linear-gradient(transparent 70%, #4ED2CF 70%);
}
.font-note {
  font-size: 80%;
  margin-bottom: 10px;
  display: inline-block;
}

.bg-red {
  display: inline-block;
  padding: 5px 5px 8px 5px;
  line-height: 1;
  color: white;
  background-color: #F20059;
}

section {
  text-align: center;
  font-family: 'Stick', sans-serif;
  font-weight: 500;
  /*color: #676767;*/
    margin: -1px;
}

section h2 {
  margin: 30px 0;
  font-family: 'Mochiy Pop One', sans-serif;
  font-size: clamp(40px, 6vw, 65px);
  color: #F39800;
  /*font-weight: 700;*/
}

section h3 {
  margin: -20px;
}

section .inner {
  width: calc(1000px - 100px);
  padding: 20px 20px 50px;
  margin: 0 auto;
  background-color: white;
}

section.sec01 {
  /*background: #ffbf07 url('img/bg_sec01.png') no-repeat 50% 50%;
	background-color: #fff;*/
  background-size: 30vw;
  text-align: center;
  padding: 0;
}

section.sec01 ul {
  overflow: hidden;
  max-width: 1000px;
  margin: 0 auto;
}


/*flexbox横並び*/
.contents {
  margin: 50px auto;
  font-weight: 600;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.item {
    margin: 30px auto;
    width: 30%;
    align-self: stretch;
    outline: 5px solid #4ED2CF;
    background-color: #4ED2CF;
}

.item p{
  width: 100%;
  /*padding: 0 0 10px 0;*/
  font-family: 'M PLUS 1', sans-serif;
  color: white;
  line-height: 1.2;
  background-color: #4ED2CF;
}

.books {
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.book {
	margin: 10px auto;
	width: 300px;
	border: 2px solid #BDBDBD;
}


section.sec02 p {
  font-size: clamp(24px, 2vw, 30px);
  letter-spacing: 0.05em;
  padding: 20px 0;
  font-weight: 500;
}



/*
section.sec01 ul li {
  float: left;
  width: 450px;
  margin: 20px;
}


section.sec01 ul li:nth-child(2n) {
  float: right;
}

section.sec01 ul li img {
  width: 100%;
}



section.sec02 {
  background: url('img/1427470.png') repeat 50% 100%;
  text-align: center;
}
*/



section.sec02 ul {
  overflow: hidden;
  max-width: 1000px;
  margin: 0 auto 50px;
}

section.sec02 ul li {
  /*float: left;*/
  max-width: 1000px;
  margin: 0 40px;
}

section.sec02 ul li:nth-child(2n) {
  /*float: right;*/
}

section.sec02 ul li img {
  width: 100%;
}

section.sec02 ul li p {
  text-align: center;
  color: #d1af58;
  font-size: 14px;
  margin: 10px 0 0;
}

.sec02 .sec_period ul li {
  float: none;
  text-align: left;
  margin-bottom: 5px;
}

.sec_period {
  display: inline-block;
  background-color: white;
  margin: 0 auto 30px;
  box-shadow: 0px 0px 10px 0 rgba(246, 75, 149, 0.5);
}

.sec_period h3 {
  color: #f64b95;
}
.sec_period h3 span {
  font-size: 200%;
}
.sec_period ul {
  padding-left: 1.5em;
  list-style: outside;
  max-width: 100%;
  margin: 0 auto;
}
.sec_period ul li a {
  font-weight: bold;
  text-decoration: underline;
  color: #f64b95;
}

section.sec03 {
  background: #ffffff;
  background-size: cover;
  text-align: center;
}
section.sec03 ul li {
  margin: 30px 0;
  text-align: left;
  padding: auto;
}

section.sec03 p {
  font-size: 30px;
	color: #f64b95;
	margin: 5px 0 60px;
  text-align: center;
}

section.sec04 {
	color: #f64b95;
}

.store_list {
  margin: -20px auto 50px;
}

.store_list a:link,
.store_list a:hover,
.store_list a:visited {
  color: #f64b95;
  font-size: clamp(16px, 4vw, 40px);
  font-weight: bold;
  text-shadow: -2px -2px 0 white, -2px 0 0 white, -2px 2px 0 white,
                  0 -2px 0 white,                  0 2px 0 white,
                2px -2px 0 white,  2px 0 0 white,  2px 2px 0 white;
}

.store_list .store_list_banner {
  display: block;
  padding: 10px;
  width: 80%;
  margin: 0 auto 10px;
  border-radius: 230px;
  background-color: #f64b95;
  font-family: 'M PLUS 1', sans-serif;
}

.button {
  display      : inline-block;
  /*border-radius: 5%;                   /* 角丸 */
  /*box-shadow   : 6px 6px 3px #666666;  /* 影の設定 */
  cursor       : pointer;              /* カーソル形状 */
  transition   : .3s;                  /* なめらか変化 */
}

.button:hover {
  box-shadow   : none;                 /* 影の設定 */
}

.fnav{
	text-align: center;
  background-color: white;
}

.fnav li {
	display: inline-block;
	font-size: 26px;
	font-family: "Hiragino Kaku Gothic ProN";
	padding: 10px 20px;
}

.fnav li a{
	font-weight:bold;
	color: #53d4d0;
}

.page-top {
  background: #53d4d0;
  padding: 10px;
  text-align: center;
}
#footer{
	background: #53d4d0;
  padding: 10px;
  color:#fff;
  font-size:0.8em;
  line-height:2em;
  text-align: center;
}

nav .inner {
  width: calc(1000px - 100px);
  margin: 0 auto;
  padding: 0 20px;
  background-color: white;
}


@media screen and (max-width: 1024px) {
	/* 1024px以下に適用されるCSS（スマホ用） */
  body {
    width: 100%;
    max-width: 100%;
  }
  section,
  footer,
  nav {
    width: 100%;
  }
  section .inner,
  footer .inner,
  nav .inner {
    width: 90%;
    margin: 0 auto;
  }
}


@media screen and (max-width: 480px) {
	/* 480px以下に適用されるCSS（スマホ用） */
  .item {
    width: 34%;
  }
}