@charset 'UTF-8';
@media screen and (max-width: 768px) {


/* === extra === */
body {
  margin: 0;
  /*font-size: 22px;*/
}	
	
img{
  max-width: 96%;
	margin:0 auto;
}
.sp-none{
  display: none;
}
.pc-none{
  display: block;
}
.pc-none.inline{
  display: inline;
}
.sp-none.inline{
  display: none;
}

/* === style base === */
a:hover{
  text-decoration: none;
}
.breadcrumbs{
  width: 100%;
  padding: 12px 3%;
  line-height: 1.5;
}

/* === extra === */
.inner_1120,.inner_1220,.inner1360,.inner_1400{
  max-width: 100%;
  width: 96%;
}


/* === clearfix === */
.clearfix:after{
  content:" ";
  clear:both;
  display:block;
}


/* === btn === */
.btn02{
  background-color: #fff;
  color: #4385f5;
  border-radius: 10px;
  text-align: center;
  position: relative;
}
.btn01{
  background-color: #4385f5;
  color: #fff;
  border-radius: 10px;
  text-align: center;
  position: relative;
}
.btn02 a{
  color: #4385f5;
}
.btn01 a{
  color: #fff;
}
.btn01 a, .btn02 a{
  display: block;
  width: 100%;
  transition: .3s;
}
.btn01 a:hover, .btn02 a:hover{
  text-decoration: none;
  opacity: 1;
}
.btn01 a:after, .btn02 a:after{
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  position: static;
  right: auto;
  font-weight: 900;
}
.btn{
  height: auto;
  font-weight: bold;
  border: 2px solid #fff;
  border-radius: 10px;
  text-align: center;
  position: relative;
  margin-bottom: 2rem;
  width: 100%;
}
.btn.btn01 a,.btn.btn02 a{
  height: 100%;
  padding: 8px;
}
.btn .sub_txt{
  height: 6rem;
  width: 6rem;
  display: table-cell;
  border-radius: 4px;
  text-align: center;
  line-height: 1.3;
  vertical-align: middle;
}
.btn .main_txt{
  width: calc( 100% - 6rem);
  font-size: 6vw;
  /*line-height: 1;*/
  display: table-cell;
  vertical-align: middle;
}
#content section.contact.store .btn .main_txt{
  font-size: 3.6vmin;
}
#content section.contact.store .btn .main_txt span.sf{
  font-size: 3.2vmin;
}
.btn01 .main_txt{
  font-size: 4.8vw;
  line-height: 1.4;
}
.btn .main_txt span.sf{
  font-size: 1.6rem;
  font-weight: normal;
}
.btn01 .sub_txt{
  display: table-cell;
}
.btn02 .sub_txt{
  background: #4385f5;
  color: #fff;
  font-size: 4rem;
  line-height: 6rem;
}
.btn01 .sub_txt i{
  background: #fff;
  color: #4385f5;
  font-size: 4rem;
  line-height: 6rem;
}
.btn.btn01 a, .btn.btn02 a{
  height: 100%;
  padding: 16px 12px;
}
.btn.btn01 a:after, .btn.btn02 a:after{
  /*font-size: 2rem;
  font-weight: bold;
  display: table-cell;
  vertical-align: middle;
  top: auto;
  width: 2%;*/
  display: none;
}
.btn .pc{
  display: none;
}


/* === flex === */
.mode-flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}


/* === header === */
.wrap{
  position: relative;
}
.wrap.fixed{
  position: fixed;
}
header{
  padding: 10px 0 0;
}
header .inner_1120.mode-flex{
  width: 93%;
  margin: 0 auto 8px;
}
header .hd_contact{
  display: none;
}
header .logo{
  width: 20%;  
}

header .logo img{
  max-width: 100%;
  height: auto;
}
header .headbtn{
  width: 65%;
}
header .headbtn > a{
  display: block;
  width: 40%;
  float: right;
  height: 28px;
  line-height: 28px;
  margin-top: 3px;
  background-color: #4385f5;
  color: #fff;
  border-radius: 10px;
  text-align: center;
  position: relative;
  font-size: 13px;
}
header .headbtn > .btn01{
  width: 40%;
  float: right;
  line-height: 28px;
}
.btn.btn02 a.yoyaku_tel_btn{
  width: 100%;
}
header .nav-btn{
  width: 10%;
  text-align: right;
  font-size: 3.2rem;
  display: block;
}
header .hCvArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  height: 30px;
  margin: 0px 0 0px 0px;
}
header .hCvArea .tel{
  width: 50px;
}
header .hCvArea .net{
  width: 100px;
  font-size: 12px;
  font-weight: 400;
}
header .hCvArea .net:not(.keyword):before{
  display: none;
}
header .hCvArea .net:not(.keyword):after{
  margin: 0px 0px 1px 8px;
}

/* === nav === */
.gnav{
  width: 85%;
  margin: auto;
  display: block;
  position: fixed; 
  height: 100%;
  top: 0;
  right: -85%;
  background: #fff;
  z-index: 30;
  transition: .5s;
  overflow-y: scroll;
}
.gnav.active{
  right: 0;
}
.gnav ul{
  display: flex;
  justify-content: space-between;
  margin: 1rem 0 0;
  flex-wrap: wrap;
}
.gnav ul li{
  width: 100%;
  text-align: left;
  border-bottom: 1px solid #ccc;
}
.gnav ul li a{
  display: block;
  position: relative;
  padding: 2rem ;
  transition: .5s;
}
.gnav ul li a i{
  margin-right: .8rem;
}
.gnav ul li a:hover{
  color: #a89a39;
  text-decoration: none;
}
.gnav ul li a:after{
  display: none;
}
.gnav .contact{
  background-color: #fff;
  width: 96%;
  margin: 2rem auto 0;
	padding-bottom: 0;
}
.gnav .contact .btn{
  margin-bottom: 1rem;
  height: 6rem;
}
.gnav .contact .grbtn{
  margin-bottom: 0;	
}
.gnav .contact .btn .sub_txt{
  width: 4rem;
  height: 4rem;
}
.btn01 .sub_txt i{
  line-height: 2.7rem;
  font-size: 2.5rem;
}
.gnav .contact .btn01 .main_txt{
  font-size: 3.8vw;
}
.gnav .contact .btn .main_txt span.sf{
  font-size: 1.2rem;
}
.modal.active{
  display: block;
  background-color: rgba(0,0,0,0.6);
  width: 100%;
  z-index: 29;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
}
.gnav ul.sub-menu{
  border: 2px solid #3A4A70;
  border-left: none;
  border-right: none;
  position: static;
}
.gnav ul.sub-menu li{
  border-bottom: none;
}


/* === cotact === */
.str_contact{
  border: none;
  margin: auto;
  position: relative;
  text-align: center;
  padding: 0 0 30px;
}
.str_contact h3{
  background: #fff;
  border-radius:40px;
  display: block;
  font-weight: bold;
  font-size: 2rem;
  color: #ff4e67;
  position: relative;
  margin: 0 auto 2rem;
  padding: .4rem 2rem .9rem;
  top: 0;
}
.str_contact h3:before{
  /*content:"";
  display: inline-block;
  border: 2px solid #3a4a6f;
  height: 18px;
  transform: rotate(-45deg);
  margin-right: 18px;
  position: relative;
  top: 3px;*/
  display: none;
}
.str_contact h3:after{
  /*content:"";
  display: inline-block;
  border: 2px solid #3a4a6f;
  height: 18px;
  transform: rotate(45deg);
  margin-left: 15px;
  position: relative;
  top: 3px;*/
  display: none;
}
.str_contact h3 span{
  color: #3a4a6f;
}
.contact{
  padding-bottom: 10px;
}
.contact div.inner_1120{
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  width: 96%;
  padding: 0;
}
.contact div.inner_1120 .btn,
#content .fig_sec .btn{
  width: 49%;
}
.contact div.inner_1120 .btn .main_txt,
.str_contact div.inner_1120 .main_txt,
#content .fig_sec .main_txt{
  font-size: 3.6vw;
  font-weight: normal;
}
.contact div.inner_1120 .sub_txt,
.str_contact div.inner_1120 .sub_txt,
#content .fig_sec .sub_txt{
  display: none;
}
.contact div.inner_1120 .btn .main_txt span.sf,
.str_contact div.inner_1120 .main_txt span.sf,
#content .fig_sec .main_txt span.sf{
  display: none;
}
.contact h3.strong{
  background-color: transparent;
  border-radius: 40px;
  border: none;
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: bold;
  letter-spacing: 0.1rem;
  color: #fff;
  padding: 3rem 0;
  width: auto;
  position: relative;
  z-index: 5;
  margin: 0 auto 0;
  top: 0;
  text-align: center;
}
.contact h3.strong span{
  color: #ffe530;
}
.contact h3.normal,
#content .contact h3.normal{
  color: #fff;
  text-align: center;
  padding: 20px 0;
  font-size: 1.8rem;
  font-weight: bold;
}

.yoyaku{
  padding: 10vmin 0;
  z-index: 1000;
}
.yoyaku h3{
  font-size: 5vmin;
  margin: auto auto 5vmin;
}
.yoyaku h4{
  display: block;
  margin: 0;
  font-size: 25px;
  text-align: center;
  color: #fff;
}
.yoyaku .inner{
  width: 100%;
}
.yoyaku .inner .btn {
  width: 47%;
  min-width: unset;
  max-width: unset;
  margin: 2.5% 1.5% 2.5% 1.5%;
  padding:0;
}
.yoyaku .inner .btn:nth-child(2n){
  margin: 2.5% 1.5% 2.5% 1.5%;
}
.yoyaku .inner > div span.sf{
  font-size: 3vmin;
}
.yoyaku .inner > div .main_txt{
  font-size: 4vmin;
  width: 85%;
}
.yoyaku_btn .inner > div .main_txt{
  font-size: 22px;
}
.yoyaku_btn .inner > div .main_txt .color{
  display: block;
}
.yoyaku .inner > div span.sf {
  display: block;
  margin: 0;
  font-size: 17px;
}

.yoyaku .btn02 .sub_txt i{
  font-size: 6vmin;
}
.yoyaku .btn01 .sub_txt i{
  line-height: inherit;
  font-size: 5vmin;
}
.yoyaku .btn .sub_txt{
  display: flex;
  height: 52px;
  width: 52px;
  min-width: 52px;
}
.yoyaku_tel .btn .sub_txt{
  line-height: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 52px;
  width: 52px;
  min-width: 52px;
}
.btn02 .sub_txt {
  background: #4385f5;
  color: #fff;
  font-size: 4rem;
  line-height: 6rem;
}

/* === mv === */
.mv{
  width: 100%;
  border-top: none;
}
.mv img{
  margin: auto;
  width: 100%;
  max-width: 100%;
}
.mv_content{
  background: #3a4a6f;
  padding-bottom: 2rem;
  width: 100%;
}
.mv_content h2{
  display: none;
}
.mv_content ul{
  display: none;
}
.mv_contact{
  padding: 2rem 0 0;
  margin: auto;
}
.mv_contact > div{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  margin: 0 auto;
}
.mv_contact > div >div{
  width: 48%;
  margin: 0;
}


/* === sec === */
section{

}
section h2{
  text-align: center;
  font-size: calc(36 * var(--width-ratio));
	margin:0 auto;
}
section h2.bars{
  background-color: #fff;
  width: 100%;
  border-bottom: 4px solid #3a4a6f;
  padding: 20px 3%;
  position: relative;
  font-size: 2rem;
}
section h2.bars.bg{
  background-image:url(../images/common/bg.png);
  background-repeat: repeat;
  padding: 20px 0;
}
section h2.bars:after{
  content:"";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 13px 0 13px;
  border-color: #3a4a6f transparent transparent transparent;
  position: absolute;
  bottom: -13px;
  left: calc(50% - 13px);
}
p.att{
  color: #666;
  font-size: 1.2rem;
  text-align: right;
}
.cnt_txt{
  font-size: 1.3rem;
  padding: 4rem 0;
}
.cnt_txt.center{
  text-align: center;
}
.cnt_txt p{
  margin-bottom: 2.4rem;
  line-height: 1.5;
}


/* === sec01 === */
.sec01{
  background-image: url(../images/sp/sec01_bg02.jpg);
  background-position: top;
  padding: 30px 0 0px;
}
.sec01 h2{
  width: 96%;
  margin: auto;
  text-align: center;
  font-size: 2rem;
  line-height: 1.5;
}
.sec01 h2 img.pc-none{
  display: inline;
}
.sec01 h2 img.sp-none{
  display: none;
}
.sec01 strong{
  font-size: 1.4rem;
  color: #ff4e67;
}



/* === sec02 === */
.sec02{
  background-image: url(../images/common/bg.png);
  background-repeat: repeat;
  min-height: 630px;
  position: relative;
  padding-bottom: 40px;
}
.sec02 .mode-flex{
  width: 100%;
}
.sec02 h2 img{
  width: 50%;
}
.sec02_point{
  background-image: none;
  background-repeat: no-repeat;
  height: auto;
  position: relative;
  margin: 30px auto 0;
  border: 2px solid #3a4a6f;
  background-color: #3a4a6f;
  width: 94%;
}
.sec02_point:nth-child(1),
.sec02_point:nth-child(2),
.sec02_point:nth-child(3){
  background-image: none;
}
.sec02_point > span{
  position: absolute;
  left: 2%;
  top: -2px;
}
.sec02_point > span img{
  width: 50%;
}
.sec02_point h3{
  font-size: 1.6rem;
  color: #333;
  text-align: center;
  margin-top: 0px;
  line-height: 1.4;
  height: auto;
  background-color: #fff;
  padding: 18px 0;
}
.sec02_point h3 span{
  font-size: 1.8rem;
  color: #ea2222;
}
.sec02_point h3 span.lf{
  font-size: 1.8rem;
}
.sec02_point h3 span.llf{
  font-size: 2rem;
  line-height: 1.2;
}
.sec02_point p{
  text-align: center;
  line-height: 1.6;
  width: 96%;
  margin: 15px auto;
  font-size: 1.4rem;
  color: #fff;
}
.sec02_point p span{
  font-weight: bold;
  color: #ffe530;
}
.sec02_point p.att{
  color: #ccc;
  font-size: 1.2rem;
  text-align: right;
  width: 96%;
  margin-top: 0px;
}
.sec02_point:nth-child(2){
  margin: 30px auto 0;
}



/* === sec03 === */
.sec03 h2.bars {
  padding: 20px 0;
}
.sec03 h2 img.sp-none{
  display: none;
}
.sec03 h2 img{
  margin: auto;
}
.sec03{
  background-image: url(../images/common/bg02.png);
  background-repeat: repeat;
}
.sec03_trouble{
  display: flex;
  justify-content: space-between;
  margin: 0px auto 20px;
  flex-wrap: wrap;
}
.sec03_trouble:nth-child(1){
  margin-top: 20px;
}
.question{
  background-color: #2db6b8;
  border: 2px solid #3a4a6f;
  border-radius: 10px;
  font-size: 1.6rem;
  width: 100%;
  color: #fff;
  padding: 20px 30px 40px;
  position: relative;
  text-align: center;
}
.question h3{
  line-height: 1.6;
}
.question:after{
  display: none;
}
.question:before{
  bottom: 0;
  width: 100%;
  background-color: #fff;
  content:"\f107";
  font-family: "Font Awesome 5 Free";
  display: block;
  position: absolute;
  color: #3a4a6f;
  padding: 5px 0;
  left: 0;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
.question.open:before{
  content:"\f106";
}
.answer{
  display: none;
}
.answer.on{
  display: block;
}
.answer:after{
  display: block;
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 20px 0 20px;
  border-color: #3a4a6f transparent transparent transparent;
  position: absolute;
  top: auto;
  right: auto;
  left: calc( 50% - 20px);
  top: -30px;
}
.answer{
  background-color: #3a4a6f;
  border-radius: 10px;
  width: 100%;
  padding: 0 20px 30px;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #fff;
  margin-top: 40px;
  position: relative;
}
.answer h3{
  text-align: center;
  font-size: 1.6rem;
}
.answer p{
  margin-top: 2rem;
  font-size: 1.4rem;
}


/* === sec04 === */
.sec04_ba{
  display: flex;
  justify-content: space-between;
  margin: 40px 0;
  flex-wrap: wrap;
  width: 100%;
}
.ba_img{
  margin: auto;
  text-align: center;
}
.ba_img h3{
  color: #fff;
  display: inline-block;
  border-radius: 40px;
  padding: 7px 18px;
  margin: 0 auto;
}
.ba_img h3.men {
  background: #2db6b8;
}
.ba_img h3.wmen {
  background: #ff4e67;
}
.ba_img h4{
  margin: 16px 0;
}
#container1 , #container2{
  width: 345px;
  margin: auto;
}
@media screen and (max-width: 360px) {
  #container1 , #container2 {
    width: 284px;
    margin: auto;
  }
}

#container1 img, #container2 img{
  height: 460px !important;
}
@media screen and (max-width: 360px) {
  #container1 img, #container2 img{
    height: 380px !important;
  }
}
/*#container1 img, #container2 img{
  height: 100%;
}*/
.ba_cnt{
  width: 100%;
  text-align: center;
}
.ba_cnt h3{
  display: none;
}
.ba_cnt h4{
  margin: 20px 0;
}
.ba_cnt p.att{
  text-align: center;
  margin-bottom: 10px;
}
.ba_txt{
  border: 4px solid #3a4a6f;
  position: relative;
  padding: 0px 0px;
  margin-top: 16px;
}
.ba_txt .sec04_sub01{
  display: none;
}
.ba_txt dl{
  margin: 20px;
  border-left: 4px solid #ccc;
  padding: 4px 0 4px 10px;
  text-align: left;
}
.ba_txt dl.wmen{
  border-color: #ff4e67;
}
.ba_txt dl.men{
  border-color: #2db6b8;
}
.ba_txt dt{
  font-weight: bold;
  padding-bottom: 1.2rem;
}
.ba_txt dd{
  padding-right: 10px;
  font-size: 1.3rem;
}
.sec04_step{
  display: none;
}
.step_img{
  margin: 20px auto 0;
  text-align: center;
}

/* === sec05 === */
.sec05 h2 > img{
  width: 50%;
}
.sec05 h2 .coupon.sp-none{
  display: none;
}
.sec05 h2 .coupon.sp-none img{
  width: auto;
}
.sec05 h2 .sec05_coupon.pc-none{
  width: 96%;
  margin: 20px auto 10px;
}
.sec05 h2 .sec05_coupon.pc-none img{
  margin-top: 10px;
}
.sec05_course{
  position: static;
  margin: 40px auto 0;
  left: 0;
}
.sec05 .osm{
  background-color: #ff4e67;
  border-radius: 10px;
  width: 100%;
  margin: auto;
  padding: 10px 4% 10px;
}
.osm .ttl{
  text-align: center;
  color: #ffe530;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
}
.osm .ttl span{
  font-size: 1.8rem;
}
.osm p{
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
}
.osm p em{
  font-weight: bold;
  font-style: normal;
}
.sec05 .tab{
  display: flex;
  justify-content: space-between;
  height: 8rem;
  margin: 20px auto 0;
  font-size: 1.6rem;
}
.sec05 .tab .wmen{
  width: 48%;
  background-color: #ff4e67;
  text-align: center;
  color: #fff;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  line-height: 8rem;
}
.sec05 .tab .men{
  width: 48%;
  background-color: #2db6b8;
  text-align: center;
  color: #fff;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  line-height: 8rem;
}
.sec05 .men_tbl,.sec05 .wmen_tbl{
  display: none;
}
.sec05 .men_tbl.on{
  display: block;
}
.sec05 .wmen_tbl.on{
  display: block;
}
.sec05 table{
  width: 100%;
  border: 4px solid #ff4e67;
  font-size: 1.3rem;
}
.sec05 table th{
  background-color: #eee;
  padding: 5px 8px;
  text-align: center;
  border: 1px solid #ccc;
  font-weight: bold;
  line-height: 1.3;
}
.sec05 table th:nth-child(1){
  width: 30%;
}
.sec05 table th:nth-child(2){
  width: 35%;
}
.sec05 table th:nth-child(3){
  width: 35%;
}
.sec05 .wmen_tbl table th.pls{
  color: #ff4e67;
}
.sec05 .men_tbl table th.pls{
  color: #2db6b8;
}
.sec05 table td{
  border: 1px solid #ccc;
  padding: 5px 8px;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
}
.sec05 .wmen_tbl table td.os{
  color: #ff4e67;
}
.sec05 .men_tbl table td.os{
  color: #2db6b8;
}
.sec05 table tr.teika{
  background-color: #eee;
}
.sec05 table tr.teika span{
  text-decoration: line-through;
}
.sec05 table tr.price td{
  background-image: url(../images/common/bg04.png);
  background-repeat: repeat;
  font-size: 1.8rem;
}
.sec05 table tr.price td span{
  font-size: 1.6rem;
  color: #ff4e67;
}
.sec05 table tr.price td span.lf{
  font-size: 2.4rem;
}
.sec05 p.att{
  color: #a5a5a5;
  font-size: 2vw;
}
.sec05_opp {
  margin: 40px auto;
  text-align: center;
}
.sec05_opp h3{
  font-size: 1.6rem;
  color: #2db6b8;
}
.sec05_opp h3 span{
  color: #ff3a5a;
}
.sec05_opp h3 span.lf{
  font-size: 2rem;
}
.sec05_opp h4{
  color: #333;
  font-size: 1.4rem;
  margin: 10px 0;
  position: relative;
  border-bottom: 2px solid #333;
  padding-bottom: 5px;
  display: inline-block;
}
.sec05_opp h4 span{
  color: #ff3a5a;
}
.sec05_opp .mode-flex{
  margin: 20px 0 0;
  flex-wrap: wrap;
  width: 100%;
}
.opp_set{
  border-radius: 10px;
  border: 2px solid #2db6b8;
  width: 100%; 
  margin-bottom: 10px;
}
.opp_set h5{
  background-color: #2db6b8;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  font-size: 1.2rem;
}
.opp_set h5 span{
  font-size: 1.1rem;
}
.opp_set p{
  font-size: 1.4rem;
  text-align: center;
  font-weight: bold;
  padding: 10px 0;
}
.sec05_opp p.att{
  text-align: right;
  margin: 10px 0 0;
  width: 100%;
}
.sec05_coupon{
  border: 2px solid #ff4e67;
  margin-bottom: 40px;
  width: 100%;
}
.sec05_coupon h3{
  background-color: #ff4e67;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  font-size: 1.6rem;
}
.sec05_coupon .coupon.sp-none{
  display: none;
}
.sec05_coupon .coupon.pc-none{
  text-align: center;
  margin: 10px auto;
}
.sec05_coupon .coupon.pc-none img{
  margin-top: 10px;
  width: auto;
}


/* === sec06 === */
.sec06 h2.bars{
  padding: 40px 0;
}
.sec06 h2.bars img{
  width: 70%;
}
.sec06 .mode-flex{
  flex-wrap: wrap;
  margin: 40px auto 20px;
  width: 100%;
}
.sec06_voice{
  width: 100%;
  border-radius: 10px;
  border: 2px solid #2db6b8;
  margin-bottom: 20px;
  position: relative;
}
.sec06_voice h3{
  background-color: #2db6b8;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  line-height: 1.5;
  min-height: unset;
}
.sec06_voice h3 span{
  color: #ffe530;
}
.sec06_voice p{
  padding: 20px;
  line-height: 1.8;
  margin-bottom: 4rem;
}
.sec06_voice p.name{
  padding: 0 20px 20px;
  color: #666;
  text-align: right;
  position: absolute;
  bottom: 0;
  right: 0;
  margin:0;
}


/* === sec07 === */
 .sec07 h2.bars img{
  width: 60%;
 }
.sec07 .mode-flex{
  margin: 20px 0 10px;
}
.sec07 .mode-flex dl{
  border-radius: 10px;
  border: 4px solid #3a4a6f;
  position: relative;
  width: 100%;
  display: table;
  margin-bottom: 20px;
}
.sec07 .mode-flex dl:after{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 10px 0 10px;
  border-color: #3a4a6f transparent transparent transparent;
  display: block;
  content:"";
  position: absolute;
  top: auto;
  right: auto;
  bottom: -18px;
  left: calc(50% - 10px)
}
.sec07 .mode-flex dl:last-child:after{
  display: none;
}
.sec07 .mode-flex dl dt{
  background-color: #3a4a6f;
  color: #fff;
  text-align: center;
  padding: 20px 0;
  font-weight: bold;
  font-size: 1.3rem;
  width: 40%;
  display: table-cell;
  vertical-align: middle;
}
.sec07 .mode-flex dl dd{
  padding: 10px 10px;
  width: 60%;
  display: table-cell;
  vertical-align: middle;
}
.sec07 .mode-flex dl dd ol {
  margin-left: 1.8rem;
}
.sec07 .mode-flex dl dd ol li{
  list-style-type: decimal;
  margin-bottom: 8px;
  line-height: 1.4;
}
.sec07_cnt{
  text-align: center;
}
.sec07_cnt img.sp-none{
  display: none;
}
.sec07_cnt img.pc-none{
  display: inline;
}
.sec07_cnt p.ttl{
  font-size: 1.4rem;
  font-weight: bold;
  color: #2db6b8;
  margin-bottom: 20px;
  text-align: center;
}
.sec07_cnt p.ttl span{
  color: #ff4e67;
  font-size: 1.6rem;
}



/* === sec08 === */
.sec08{
  background-image: url(../images/common/bg.png);
  background-repeat: repeat;
  padding: 20px 0;
}
.sec08 h2{
  font-size: 2rem;
}
.sec08 h2 img{
  width: 50%;
}
.sec08_cnt{
  width: 96%;
  margin: 20px auto 0;
  background-color: #fff;
  padding: 20px 30px;
}
.sec08_cnt p{
  line-height: 1.4;
  color: #333;
  margin-bottom: 30px;
}
.sec08_cnt .traffic{
  text-align: center;
}
.sec08_cnt .traffic p{
  color: #2db6b8;
  font-size: 1.4rem;
  margin-bottom: 20px;
}
.sec08_cnt .traffic ul{
  width: 100%;
  margin: 30px auto;
}
.traffic ul.tr{
  justify-content: center;
}
.sec08_cnt .traffic li{
  width: 30%;
  text-align: center;
  color: #fff;
}
.traffic ul.tr li{
  width: 30%;
}
.sec08_cnt .traffic li span{
  border-radius: 30px;
  margin-bottom: 10px;
  display: block;
  padding: 5px 0;
  font-size: 3vmin;
}
.sec08_cnt .traffic p.plus{
  font-size: 1.6rem;
  color: #333;
}
.store.a_link ul{
  flex-wrap: wrap;
}
.store.a_link li a{
  font-size: 3.2vmin;
}



/* === sec09 === */
.sec09{
  background-image: none;
  padding: 30px 0 0px;
}
.sec09 h2{
  font-size: 2.2rem;
}
.sec09 h2 img.sp-none{
  display: none;
}
.sec09 h2 img.pc-none{
  display: inline;
}
.sec09 em{
  color: #ff4e67;
  font-weight: bold;
  font-style: normal;
  font-size: 1.3rem;
}
.sec09 strong{
  color: #e51818;
  font-weight: bold;
  font-style: normal;
  text-decoration: underline;
}


/* === sec10 === */
.sec10{
  background-image: url(../images/common/bg03.png);
  background-repeat: repeat;
  padding: 0px 0 20px;
}
.sec10 .inner_1400{
  background-color: none;
  border-radius: 10px;
  padding: 0;
  margin: 36px auto 0;
}
.sec10_cnt{
  width: 100%;
  margin: 0 auto;
  border-radius: 10px;
  border: 4px solid #ff4e67;
}
.sec10_cnt .ttl{
  background-color: #ff4e67;
  font-size: 1.6rem;
  text-align: center;
  padding: 20px 4%;
  color: #fff;
  font-weight: bold;
  line-height: 1.4;
}
.sec10_cnt .ttl span{
  color: #ffe530;
}
.sec10_cnt .ttl ul{
  width: 100%;
  display: flex;
  margin: 20px auto;
  flex-wrap: wrap;
}
.sec10_cnt .ttl ul li{
  text-align: center;
  background-color: #fff;
  border-radius: 50px;
  display: block;
  width: 50%;
  border: 4px solid #ff4e67;
  padding: 10px 0;
  min-height: 4rem;
}
.sec10_cnt .ttl ul li img{
  display: none;
}
.sec10_cnt .ttl ul li span{
  display: block;
  color: #3a4a6f;
  font-size: 1.4rem;
  line-height: 1.2;
}
.sec10_cnt .price{
  display: block;
  width: 100%;
  margin: 20px auto;
}
.sec10_cnt .price img{
  display: none;
}
.sec10 .price-tbl > table{
  margin: 0 auto 20px;
  width: 96%;
  border-radius: 10px;
  border: 2px solid #3a4a6f;
  border-collapse:separate;
}
.sec10 .price-tbl > table th{
  color: #fff;
  padding:10px 0;
  border-top-right-radius: 7px;
  border-top-left-radius: 7px;
}
.price-tbl > table.wmen th{
  background-color: #ff4e67;
}
.price-tbl > table.men th{
  background-color: #2db6b8;
}
.price-tbl > table.normal th{
  background-color: #3a4a6f;
}
.price-tbl > table td{
  width: 50%;
  height: 7rem;
  text-align: center;
}
.price-tbl > table td.teika{
  font-size: 2rem;
  text-decoration: line-through;
  color: #3a4a6f;
}
.price-tbl > table td.teika span:after{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #3a4a6f;
  content:"";
  display: inline-block;
  margin-left: 16px;
}
.price-tbl > table td.waribiki{
  background-image: url(../images/common/bg04.png);
  background-repeat: repeat;
  color: #ff4e67;
  line-height: 1.4;
  border-bottom-right-radius: 7px;
}
.price-tbl > table td.waribiki strong{
  font-size: 2.4rem;
}
.price-tbl > table td.waribiki span{
  font-size: 1.4rem;
  color: #666;
}


.sec10_cnt .bottom{
  background-color: #ff4e67;
  padding: 40px 30px 30px;
  text-align: center;
}
.sec10_cnt .bottom img.sp-none{
  display: none;
}
.sec10_cnt .bottom img{
  width: 90%;

}
.sec10_cnt .bottom p.att{
  color: #ddd;
  margin-top: 20px;
}


/* === sec11 === */
.sec11{
  display: block;
  position: static;
  bottom: 0;
  width: 100%;
  z-index: 10;
}
.sec11.contact{
  padding: 15px 0 15px;
}
.sec11.contact div.inner_1120{
  flex-wrap: nowrap;
}

.sec11 .btn{
  /*height: 5rem;*/
  width: 49%;
  margin-bottom: 0;
}
.sec11 .sub_txt{
  display: none;
}
.sec11 .main_txt{
  font-size: 4vw;
}

.sec11 .main_txt .sp-none{
  display: none;
}
.sec11 .main_txt .sf{
  display: none;
}
.sec11 .btn.btn01 a:after, .btn.btn02 a:after{
  font-size: 2rem;
}

/* === footer ===*/
footer{
  padding: 20px 0 20px;
  margin:0 auto;
}
footer .inner_1120{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
footer .inner_1120 ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 2rem auto 0;
}
footer .inner_1120 li{
  margin: 0 0 1%;
  width: 33%;
  display: table;
  line-height: 1.5;
}
footer .inner_1120 li a{
  background-color: #fff;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  height: 5rem;
}
footer .copyright{
  text-align: center;
  margin-top: 20px;
}


/* === content ===*/
#content a:hover{
  text-decoration: none;
}
#content h1.bars{
  background-color: #fff;
  width: 100%;
  border-bottom: 6px solid #3a4a6f;
  padding: 20px 3%;
  position: relative;
  font-size :2rem;
  color: #3a4a6f;
  margin-bottom: 3rem;
  text-align: center;
  line-height: 1.5;
}
#content h1.bars:after{
  bottom: -15px;
}
#content h2{
  color: #2db6b8;
  font-size: 1.8rem;
  margin-bottom: 1rem;
  text-align: left;
}
#content h2.main_ttl{
  font-size: 1.8rem;
  margin: 28px auto;
  text-align: center;
}
#content h2.obi_ttl{
  font-size: 1.6rem;
  margin: 2rem auto;
  text-align: left;
  background-color: #f1f1f1;
  padding: 1rem 1.5rem;
  border-radius: 5px;
  line-height: 1.5;
}
#content p{
  margin-bottom: 2rem;
}
#content .top_link{
  text-align: center;
  margin: 40px auto 20px;
}
#content .top_link a{
  display: inline-block;
  margin: auto;
  padding: 10px 20px;
  font-size: 1.4rem;
}
#content .top_link a:hover{
  background-color: #ccc;
  text-decoration: none;
}

#content .a_link{
  background-color: #f1f1f1;
  padding: 2rem;
}
#content .a_link ul{
  margin: auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#content .a_link li{
  width: 100%;
  margin: 0.5rem;
}
#content .a_link li a{
  display: block;
  width: 100%;
  border-radius: 5px;
  border: 1px solid #ccc;
  background-color: #fff;
  text-align: center;
  line-height: 3;
  transition: .5s;
}
#content .a_link li a:hover{
  text-decoration: none;
  color: #333;
}


/* mode-flex */
#content .mode-flex img{
  width: 100%;
  height: auto;
}
#content .mode-flex img.wi50,
#content .mode-flex-img img.wi50{
  width: 100%;
  height: auto;
}
#content .mode-flex.col2{
  flex-wrap: unset;
}
#content .mode-flex.col4{
  flex-wrap: wrap;
}
#content .mode-flex.col4 img{
  width: 100%;
  height: auto;
}
#content .mode-flex.col4 > *{
  width: 100%;
}
#content .mode-flex.col2 > *{
  width: 100%;
}
#content .mode-flex.col4 li p{
  font-size: 12px;
  margin: 1rem auto ;
}
#content .fig_sec{
  margin: 4rem auto 0;
}
#content .fig_sec .col2 .mode-flex-img{
  width: 100%;
  text-align:center;
  margin-bottom: 2rem;
}
#content .fig_sec .col2 .mode-flex-txt{
  width: 100%;
  line-height: 1.6;
}
#content .fig_sec .col2 .mode-flex-txt p{
  margin-bottom: 1rem;
  font-size: 1.2rem;
}
#content .fig_sec .col2 .mode-flex-txt ul{
  margin: 0 0 1rem 2rem;
}
#content .fig_sec .col2 .mode-flex-txt li{
  list-style-type: disc;
  font-size: 1.2rem;
}
#content .fig_sec .col2 .mode-flex-txt dd,
#content .fig_sec .col2 .mode-flex-txt dt{
  font-size: 1.2rem;
}

#content .fig_sec .col2 .mode-flex-txt h3{
  color: #ff4e67;
  font-size: 1.6rem;
  margin: 0rem 0 1.2rem;
}
#content .fig_sec .col2 .mode-flex-txt h3:before{
  content:"";
  width: 10px;
  height: 1.6rem;
  background-color: #ff4e67;
  margin-right: 5px;
  position: relative;
  top: 2px;
  display: inline-block;
}
#content .fig_sec .inner_1120{
  flex-wrap: wrap;
}

/* アクセス */
.acc_sec .mode-flex li{
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  padding-bottom: 1rem;
}
.acc_sec .mode-flex li p{
  margin-bottom: 1rem;
  position: relative;
  width: 100%;
}
/*
.acc_sec .mode-flex li p:after{
  content: "画像を表示  \f107";
  font-family: "Font Awesome 5 Free";
  display: block;
  position: relative;
  bottom: -10px;
  left: 0;
  width: 100%;
  text-align: center;
  background: #f1f1f1;
  font-size: 1.2rem;
}
.acc_sec .mode-flex li p.active:after{
  content:"画像を閉じる  \f106";
  font-family: "Font Awesome 5 Free";
}
*/
.acc_sec .mode-flex li figure{
  margin: 0.5rem auto;
  text-align: center;
}

/* sibuya yokohama */
.acc_sec .mode-flex_left li{
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  padding-bottom: 1rem;
}
.acc_sec .mode-flex_left li p{
  margin-bottom: 1rem;
  position: relative;
  width: 100%;
}
.acc_sec .mode-flex_left li p:after{
  content: "画像を表示  \f107";
  font-family: "Font Awesome 5 Free";
  display: block;
  position: relative;
  bottom: -10px;
  left: 0;
  width: 100%;
  text-align: center;
  background: #f1f1f1;
  font-size: 1.2rem;
}
.acc_sec .mode-flex_left li p.active:after{
  content:"画像を閉じる  \f106";
  font-family: "Font Awesome 5 Free";
}
.acc_sec .mode-flex_left li figure{
  display: none;
  margin: 0.5rem auto;
  text-align: center;
}
#content .mode-flex.col2,
#content .mode-flex_left.col4{
  flex-wrap: wrap;
}
#content .mode-flex_left.col4 li{
  margin: 0;
}
#content .mode-flex_left.col4 img{
  width: 100%;
  height: auto;
}
#content .mode-flex_left.col4 > *{
  width: 100%;
}
#content .flex_left-flex.col2 > *{
  width: 100%;
}
#content .flex_left-flex.col4 li p{
  font-size: 1.5rem;
  margin: 1rem auto ;
}

/* store_container */
.store_container .contact .btn .main_txt{
  font-size: 3.4vmin;
  line-height: 1.5;
}
.store_container .contact .btn .main_txt .sf{
  font-size: 2.8vmin;
}
.store_container h3{
  font-size: 1.8rem;
  margin-bottom: 8px;
}

/* store_detail */
.tab ul{
/*   border-bottom: none; */
}
.tab ul li{
  font-size: 12px;
/*   border-radius: 5px;
  margin-bottom: 10px; */
}

.store_detail{
  flex-direction : column-reverse;
}
.store_detail .map{
  width: 100%;
}
.store_detail .txt{
  width: 100%;
}
.store_detail .txt table th,
.store_detail .txt table td{
  display: block;
  width: 100%;
  font-size: 1.2rem;
}
.store_detail .txt table th{
  padding-bottom: 0;
}


/* contact */
#content section.contact{
  margin: 4rem auto;
}
.contact div.col3 .btn{
  width: 30%;
}
.contact div.col3 .btn a{
  width: 100%;
  font-weight: normal;
}
#content section.contact .col3 .main_txt{
  font-size: 3vw;
  width: auto;
  line-height: 1.5;
}
#content section.contact .col3 .main_txt.single{
  line-height: 1.5;
  font-size: 3vw;
}

/* FAQ */
#content .qa{
  border-bottom: 1px solid #ccc;
}
#content section .qa.bt{
  border-top: 1px solid #ccc;
}
#content .qa dt{
  padding: 1.8rem 3rem 1.8rem 0.5rem;
  font-size: 1.2rem;
  line-height: 1.5;
  position: relative;
  cursor: pointer;
}
#content .qa dt:after{
  position: absolute;
  right: 2%;
  top: calc(50% - 1rem);
}
#content .qa dt.active:after{
  position: absolute;
}
#content .qa dd{
  display: none;
  padding: 1.8rem;
  background-color: #f1f1f1;
  line-height: 1.8;
  font-size: 1.2rem;
}


/* 当日の流れ */
#content #step_sec01{
  margin: 6rem auto;
}
#content #step_sec01 .mode-flex{
  margin-bottom: 4rem
}
#content #step_sec01 .mode-flex-txt{
  line-height: 1.8;
}
#content #step_sec01 .mode-flex-img img{
  width: 100%;
  height: auto;
}
.steps_tab{
  width: 90%;
}
.steps_tab > div{
  font-size: .8em;
  padding: 1.5em 0;
}



/* 料金 */
#content .opp_set p{
  margin: 0;
}
#content .mini_tbl{
  width:100%;
  background-image: url(../images/common/bg05.png);
  background-repeat: repeat;
  padding: 1rem;
  margin: auto;
  font-size: 1.2rem;
}
#content .mini_tbl table{
  border: none;
  border-collapse: separate;
  border-spacing: 3px;
}
#content .mini_tbl table tr{
  margin-bottom: .3rem;
}
#content .mini_tbl table th{
  background-color: #fff;
  padding: 1.5rem;
  width: 100%;
  color: #333;
  display: block;
  line-height: 1.5;
}
#content .mini_tbl table td{
  padding: 1rem;
  line-height: 1.6;
  width: 100%;
  display: block;
}

/* 写真 */
#content .photo{
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
}
#content .photo section{
  width: 50%;
  margin-bottom: 3rem;
}
#content .photo section p{
  font-size: 1.2rem;
}
.modalw{
  position:fixed;
  display:none;
  z-index:41;
  width:96%;
  margin:0;
  padding:1rem;
  background:#fff;
}
.modal-box{
  display: flex;
  justify-content: space-between;
}
.modal-box .img{
  position: relative;  
  width: 46%;
}
.modal-box .img img{
  width: 100%;
  height: auto;
}
.modal-box .img:nth-child(1):after{
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 14px;
  border-color: transparent transparent transparent #3a4a6f;
  top: calc(50% - 14px);
  right: -17px;
  position: absolute;
}

.catch {
    font-size: 4vw;
  }
.yoyaku .inner .btn {
    width: 47%;
    min-width: unset;
    max-width: unset;
    margin: 2.5% 1.5% 2.5% 1.5%;
    padding: 0;
  }
}


