@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------------------------------
 ***                                                                Container
----------------------------------------------------------------------------*/
body{}
#wrap{ width:100%;}
img{ width:100%; height:auto;}

#homeBtn,
#telTxt,
#hNavi,
#slideTxt,
#sideMenu,
#breadcList{ display:none !important;}
.spHidden{ display:none;}
.pcHidden{ display:block;}
.txtColorPink{ color:#ed1e79;}

#sidr{ width:68%; padding:3% 0 3% 3%;}
#sidr li{
	padding:0 0 0 14%;
	line-height:2.5em;
	font-size:120%;
	border-bottom:1px solid #ccc;
	background-repeat:no-repeat;
	background-position:left top 50%;
	background-size:auto 65%;
}
#sidr li:nth-child(1){ background-image:url(https://www.itto.jp/common_images/icon01.png);}
#sidr li:nth-child(2){ background-image:url(https://www.itto.jp/common_images/icon02.png);}
#sidr li:nth-child(3){ background-image:url(https://www.itto.jp/common_images/icon03.png);}
#sidr li:nth-child(4){ background-image:url(https://www.itto.jp/common_images/icon04.png);}
#sidr li:nth-child(5){ background-image:url(https://www.itto.jp/common_images/icon05.png);}
#sidr li:nth-child(6){ background-image:url(https://www.itto.jp/common_images/icon06.png);}
#sidr li:nth-child(7){ background-image:url(https://www.itto.jp/common_images/icon07.png);}
#sidr li:nth-child(8){ background-image:url(https://www.itto.jp/common_images/icon08.png);}
#sidr li:nth-child(9){ background-image:url(https://www.itto.jp/common_images/icon09.png);}
#sidr li:nth-child(10){ background-image:url(https://www.itto.jp/common_images/icon10.png);}
#sidr li:nth-child(11){ background-image:url(https://www.itto.jp/common_images/icon11.png);}
#sidr li:nth-child(12){ background-image:url(https://www.itto.jp/common_images/icon12.png);}
#sidr li:nth-child(13){ background-image:url(https://www.itto.jp/common_images/icon13.png);}
#sidr li a{ color:#333; text-decoration:none;}


/*----------------------------------------------------------------------------
 ***                                                                  Header
----------------------------------------------------------------------------*/
#headerArea{ background:none; height:auto;}
#headerAreaInner{ background:none; position:relative;}
#headerAreaTitle{ width:100%; height:70px; padding:0; border-top:5px solid #ffd700; position:fixed; background-color:#fff; z-index:999; border-bottom:1px solid #ccc;}
#headerAreaTitle h1{ width:70%; left:2%; top:35%;}
#headTxt{ margin:0; left:2%; top:10%; font-size:90%; color:#333;}

#headerArea #menu{ width:20%; position:absolute; top:0; right:0; margin:0;}

/*----------------------------------------------------------------------------
 ***                                                                  openSec
----------------------------------------------------------------------------*/
#openSec{ width:100%; margin:0 auto; padding:80px 0 0; text-align:center;}
#openSecInner{
	width:100%;
	background-image:url(https://www.itto.jp/schools/images/open_school/img_ittokun01.png);
	background-position:left 2% top;
	background-size:10%;
}
#openSecInner h2{ padding:5% 0 0 15%; font-size:200%; font-family:"Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;}
#openSecInner h2 span{ font-size:70%;}
#openSecInner p{ margin:0; padding:0 0 0 15%; font-size:220%; line-height:1.8em;}
#openSecInner ul{ width:100%; margin:2% auto 0;}
#openSecInner li{ width:33%; font-size:100%; border:none;}
#openSecInner li:last-child{ border:none;}
#openSecInner li:nth-child(2){ border-left:1px solid #333; border-right:1px solid #333;}
#openSecInner li a{ padding:0 0 1em;}

.freeTuition div{ border: 10px solid #FFFE17; padding:5%;}
.freeTuition div > p:first-child{ font-size: 120%;}
.freeTuition p.annotation{ font-size: 100%;}

#type_fm_open .cpnTtlBox{ padding: 5%; border: 10px solid #fff200;}
#type_fm_open .cpnTtlBox > div{ display: block;}
#type_fm_open .cpnTtlBox h3{ width: 100%;}
#type_fm_open .cpnTtlBox .txtBox{ width: 100%; margin-top: 3%;}
#type_fm_open .cpnTtlBox .txtBox p{ font-size: 120%;}
/*----------------------------------------------------------------------------
 ***                                                               campaignSec
----------------------------------------------------------------------------*/
#campaignSec{ border:4px solid #ffd700; border-radius:10px; padding:5%;}
#campaignSec::before {
	content: '';
	background: url(https://www.itto.jp/schools/images/open_school/img_openCpnMiyabi.png) no-repeat center center/cover;
	width: 50px;
	height: 70px;
	position: absolute;
	bottom: -6%;
	right: 0;
}
#campaignSec h3{ padding:1% 0; font-size:140%;}
#campaignSec #privilege01{ float:none; margin:0 2%;}
#campaignSec #privilege01 dt{ font-size:120%; margin:5% 0 2%;}
#campaignSec #privilege01 dd{ font-size:240%;}
#campaignSec #privilege01 dd span{ font-size:60%;}
#campaignSec #privilege01 dd .txtColorPink{ font-size:100%;}
#campaignSec #privilege01 dd:last-child{ border-bottom:1px dotted #ccc; padding:0 0 0.1em}
#campaignSec #privilege02{ float:none; margin:0}
#campaignSec #privilege02 dt{ padding:5% 0; font-size:120%; background-size:18%;}
#campaignSec #privilege02 dt::before{ left:0;}
#campaignSec #privilege02 dt::after{ right:0;}
#campaignSec #period{ font-size:100%;}


#campaignSec .openCpnBox{ display: block;}
#campaignSec .openCpnBox dl{ width: 100%; margin: 0 0 5%;}
#campaignSec .openCpnBox dl:first-child{ border-right:none; border-bottom: 1px dashed #AFAFAF; padding-right: 0; padding-bottom: 5%;}
#campaignSec .openCpnBox dl dt{ font-size: 135%;}
#campaignSec .openCpnBox dl dd{ font-size: 110%;}
#campaignSec .openCpnBox dl dd img{ width: 80%; margin:0 auto;}
#campaignSec .openCpnBox dl:first-child dd:last-child::after{ bottom: -20%; right: 0; width: 120px; ba}


/*----------------------------------------------------------------------------
 ***                                                               schoolSec
----------------------------------------------------------------------------*/
#schoolSec{ width:94%;}
#schoolSec h3{ height:40px; font-size:140%; line-height:2.5em;}
#schoolSec #schoolInfoInner{ width:100%;}
#schoolSec #schoolInfo{ width:100%; float:none; margin:10% 0 0;}
#schoolSec #schoolInfo dt{ font-size:100%; line-height:2.5em;}
#schoolSec #schoolInfo dd{ margin:0 0 3%; font-size:120%;}
#schoolSec #schoolInfo dd a{ font-size:180%;}
#schoolSec #schoolInfo p{ font-size:100%; margin:0 0 5%;}
#schoolSec #accessMap{ float:none; margin:10% 0;}
#schoolSec #accessMap dt{ padding:0 0 1% 9%; font-size:140%;}
#schoolSec #schoolInfo .bx-wrapper .bx-viewport{ width:80% !important;}
#schoolSec #accessMap iframe{ width:100%;}
#schoolSec #classMessage{ width:100%; margin:10% 0;}
#schoolSec #classMessage dt{ padding:0 0 0 12%; line-height:1.5em; font-size:140%; background-size:10%;}
#schoolSec #classMessage dd{ font-size:120%; line-height:1.8em;}


#geosBox{ widows:94%; margin:0 auto 5%;}
#geosBox p{ font-size:100%; line-height:1.6em; margin:0 0 0.5em;}


#briefingSec{ padding:10% 0 0; margin:0 0 15%;}
#briefingSec h3{ font-size:160%; line-height:1.3em;}
#briefingSec p{ font-size:100%;}
#briefingSec #scheduleList{ width:100%; margin:5% auto;}
#briefingSec #schedule01{ width:100%; float:none;}
#briefingSec #schedule02{ width:100%; float:none;}
#briefingSec dt{ font-size:140%; line-height:2.5em;}
#briefingSec dd{ margin:0 0 5%; font-size:180%;}

/*説明会日程　日付長い（文字小さい）ver.*/
#briefingSecSS{ padding:10% 0 0; margin:0 0 15%;}
#briefingSecSS h3{ font-size:160%;}
#briefingSecSS p{ font-size:100%;}
#briefingSecSS #scheduleList{ width:100%; margin:5% auto;}
#briefingSecSS #schedule01{ width:100%; float:none;}
#briefingSecSS #schedule02{ width:100%; float:none;}
#briefingSecSS dt{ font-size:140%; line-height:2.5em;}
#briefingSecSS dd{ margin:0 0 5%; font-size:160%;}
/*説明会日程　日付長い（文字小さい）ver.ここまで*/

#sessionSec{ width: 94%;}
#sessionSec h3{ height:40px; font-size:140%; line-height:2.5em; margin-bottom: 10%;}
#sessionSec h3.datenon{ height:40px; font-size:150%; line-height:1.5em; margin-bottom: 10%;}
#sessionSec p{ font-size:100%;}
#sessionSec #scheduleList{ width:100%; margin:5% auto;}
#sessionSec #schedule01{ width:100%; float:none;}
#sessionSec #schedule02{ width:100%; float:none;}
#sessionSec dt{ font-size:140%; line-height:2.5em;}
#sessionSec dd{ margin:0 0 5%; font-size:180%;}

/*説明会日程　日付長い（文字小さい）ver.*/
#sessionSecSS{ width: 94%;}
#sessionSecSS h3{ height:40px; font-size:140%; line-height:2.5em; margin-bottom: 10%;}
#sessionSecSS h3.datenon{ height:40px; font-size:150%; line-height:1.5em; margin-bottom: 10%;}
#sessionSecSS p{ font-size:100%;}
#sessionSecSS #scheduleList{ width:100%; margin:5% auto;}
#sessionSecSS #schedule01{ width:100%; float:none;}
#sessionSecSS #schedule02{ width:100%; float:none;}
#sessionSecSS dt{ font-size:140%; line-height:2.5em;}
#sessionSecSS dd{ margin:0 0 5%; font-size:160%;}
/*説明会日程　日付長い（文字小さい）ver.ここまで*/


#schoolBtnBox{ width:84%; margin:0 auto 10%;}
#schoolBtnBox li{ float:none; margin:0;}


#kodawariBox{ width:90%; height:auto; margin:0 auto 10%;}
#kodawariBox p{ font-size:120%; color:#333; line-height:1.5em; margin:0;}
#kodawariBox p img{ width:40%; top:10%; left:0;}
#kodawariBox ul{ padding:0 0 0 40%;}
#kodawariBox li{ width:48%; height:48%; margin:0 3% 3% 0; display:-ms-grid; display:grid;}
#kodawariBox li:nth-child(2){ margin-right:0;}
#kodawariBox li:nth-child(4){ margin-right:0;}
#kodawariBox li:nth-child(5){ width:100%;}
#kodawariBox #kodawariList{ width:100%; height:auto;}
#kodawariBox #kodawariList li{ width:31%; height:auto; margin:0 3% 3% 0;}


#areaSearch{ width:96%; margin:0 auto 10%;}
#areaSearch dt{ font-size:140%;}
#areaSearch dt span{ font-size:90%; vertical-align:baseline;}
#areaSearch dd{ width:92%; margin:0 0 0 4%}

#school_photo_slide{ padding: 5%; overflow: hidden; }
#school_photo_slide h4{ font-size: 160%; }
#school_photo_slide #photo_slide .caption{ font-size: 120%;}
#school_photo_slide .slick-list{ overflow: visible; }

/*----------------------------------------------------------------------------
 ***                                                             ブログ掲載用
----------------------------------------------------------------------------*/
#blogSec{ width:90%; padding:5%; margin:10% auto 5%; border:1px solid #42210b; border-radius:10px;}
#blogSec h2{ font-size:100%; line-height:1.8em; padding:0.2em 0 0;}
#blogSec #blogInner{ height:200px; padding:0 0.5em 0 0; margin:5% 0 0;}
#blogSec dl{ margin:0 0 5%; padding:0 0 5%;}
#blogSec dt{ font-size:80%; margin:0 0 3%;}
#blogSec dt strong{ font-size:150%; margin:0;}
#blogSec .blogImg img{ margin:0 3% 3% 0;}
#blogSec .blogTxt{ font-size:100%; line-height:1.8em;}
#blogSec .signature{ font-size:100%; padding:5%; margin:5% 0 0;}

/*----------------------------------------------------------------------------
 ***                                                                  footer
----------------------------------------------------------------------------*/
#footerInner{}
#footerInner li{ float:left;}
#footerInner #underPage{ background-color:#42210b; padding:3% 0 0;}
#footerInner #underPage ul{ width:100%; margin:0 auto;}
#footerInner #underPage li{ width:50%; border-left:none; margin:0 0 1em;}
#footerInner #underPage li:last-child{ border-right:none;}
#footerInner #underPage li:nth-child(2n){ border-left:1px solid #fff;}
#footerInner #underPage li a{ padding:5px 0 0; font-size:100%; color:#fff;}
#footerInner #courseList{ border-bottom:1px solid #ccc;}
#footerInner #courseList ul{ width:100%; padding:3% 0;}
#footerInner #courseList li{ width:100%; line-height:2.5em;}
#footerInner #courseList li a{ font-size:140%;}
#footerInner #groupSite{ width:70%; padding:3% 0 6%;}
#footerInner #groupSite dt,
#footerInner #groupSite dd{ font-size:100%; margin:1% 0 0;}
#footerInner #groupSite dd a{ padding:3% 0;}
#footerInner #groupSite #jmkBox{ width:100%; float:none; margin: 0 0 15%;}
#footerInner #groupSite #novaBox{ width:100%; float:none;}
#footerInner #subPage{ margin:0 0 5%;}
#footerInner #subPage ul{ width:100%; margin:0 auto; padding:10px 0;}
#footerInner #subPage li{ width:33%; font-size:80%; border-left:none;}
#footerInner #subPage li:last-child{ border-right:none;}
#footerInner #subPage li:nth-child(2){ border-right:1px solid #ccc; border-left:1px solid #ccc;}
#footerInner p{ width:90%; margin:0 auto; font-size:90%;}


/*----------------------------------------------------------------------------
 ***                                                                  formBox
----------------------------------------------------------------------------*/
.formBox{ width:90%; margin:10% auto;}
.formBox ul{ display: block;}
.formBox li{
	width:100%;
	height:100%;
	margin:0 0 5%;
	float:none;
	font-size:150%;
	line-height:1.6em;
	letter-spacing: -0.05em;
}
.formBox li:nth-child(1){ background-color:#33BAB1;}
.formBox li:nth-child(2){ background-color:#EA6871; margin:0;}
.formBox li a{ display:block; height:60px; padding:0.8em 0 0 0.8em; color:#fff; text-decoration:none;}
.formBox li:nth-child(1) a { background-position: left 8px top 10px; background-size: 1.5em;}
.formBox li:nth-child(2) a { background-position: left 8px top 14px; background-size: 2.2em;}
.formBox li::after{ bottom:-8px;}
.formBox p{ margin:10% 0 0;}
.formBox p#schoolNameTxt{ font-size: 140%;}
.formBox.brt{ padding: 0;}


/*----------------------------------------------------------------------------
 ***                                                                  pageTop
----------------------------------------------------------------------------*/
#pageTop{}
#pageTop p{ width:15%;}


/*----------------------------------------------------------------------------
 ***                                                             季節講習バナー
----------------------------------------------------------------------------*/
.seasonBnrSec{ margin:2em auto;}
.seasonBnrSec > div{ display:block;}
.seasonBnrSec h3{ max-width: 100%;}
.seasonBnrSec .contentsBox{ max-width: 100%;}




/*----------------------------------------------------------------------------
 ***                                                2023.10 追加 共通校舎情報
----------------------------------------------------------------------------*/
#pageNavi{ width:100%; margin:3% auto;}
#pageNavi li{
	width: 45%;
	float:left;
	/* margin:0 4%  0 0; */
	border:1px solid #ccc;
	border-radius:5px;
	text-align:center;
	-webkit-box-shadow:0 0 2px 0 #ccc, 0 0 2px 0 #ccc, 2px 2px 2px 0 #ccc;
	        box-shadow:0 0 2px 0 #ccc, 0 0 2px 0 #ccc, 2px 2px 2px 0 #ccc;
	height: 9.3em;
}
/* #pageNavi li:last-child{ margin:0;} */
#pageNavi li a{
	color:#4d4d4d;
	padding: 7% 5% 0;
	font-size:90%;
	text-decoration:none;
	display:block;
	line-height: 1.4em;
background-position: center bottom 15%;
	/*background-image:url(../schools/images/img_pagenavi.png);
	background-repeat:no-repeat;
	background-position:center bottom 5%;
	background-size:95%;*/
}
#pageNavi li a span{ color:#42210b; padding:0; font-size:120%; font-weight:bold; margin-bottom: 0.5em; display: block; height: 2.6em;}
#pageNavi li:nth-child(3) a span,#pageNavi li:last-child a span{ line-height: 2.5em;}

#pageNavi:has(> li:nth-child(4):nth-last-child(1)){
  width: 100%;
}

#kodawariSec h4{ font-size: 180%;}
#kodawariSec h4 img{ width: auto;}
#kodawariSec .section{ display: block;}
#kodawariSec .txtBox{ max-width: 100%; margin: 5% 0;}
#kodawariSec .section:nth-child(2n) .imgBox,
#kodawariSec .section:nth-child(2n-1) .imgBox{ margin: 0 auto; width: 70%;}
#schoolDetailBlock section{ width: 100%; margin: 10% auto;}
#schoolDetailBlock section p{font-size: 120%;}
#schoolDetailBlock section .udBar{ padding-bottom: 5%;}
#schoolDetailBlock h5{ font-size: 140%;}
#schoolDetailBlock h4{ margin-bottom: 5%; line-height: 1.5em;}
#schoolDetailBlock .cleafix:after{
  content: none;
}

#courseSec {}
#courseSec .sectionInner { padding: 2% 0;} 
#courseSec h3 {
padding: 1.5em 0 0 0;
text-align: center;
font-weight: normal;
font-size: 190%;
color: #4d4d4d;
line-height: 1.4em;
}
#courseSec h3 span:first-child { color: #4c4c4c; font-size: 70%;}
#courseSec h3 span:last-child { border-bottom: 3px solid #ffec0b; padding: 0 0.5em 0.2em;}
#courseSec h3 span:last-child:before {
  content: "";
  background: url(../schools/images/images2104/img_contents01.png) no-repeat;
  width: 91px;
  height: 29px;
  display: inline-block;
  background-size: cover;
  margin: -0.3em 0.2em 0 0;
  vertical-align: middle;
}
#courseSec .section h5{ font-size: 180%;}
#courseSec .section {
  background: #f7f7f7;
  position: relative;
  padding: 10% 5% 6%;
  margin: 10% auto 0;
}
#courseSec .section > div{ display: block;}
#courseSec #highschoolArea { margin: 10% auto 5%;}
#courseSec .section h4 {
  font-size: 180%;
  color: #fff;
  background: #ff7ba5;
  position: absolute;
  width: 7em;
  text-align: center;
  padding: 0.2em 0 0;
  color: #fff;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: calc(-1.5em / 2);
}
#courseSec #juniorArea h4 { background: #85bf3f;}
#courseSec #highschoolArea h4 { background: #3fa2ee;}

#courseSec .photoBox {}
#courseSec .photoBox img { display: block;}
#courseSec p.courseLink a { color: #ff7ba5; font-size: 100%; text-decoration: none;}
#courseSec #juniorArea p.courseLink a { color: #85bf3f;}
#courseSec #highschoolArea p.courseLink a { color: #3fa2ee;}

#courseSec .flexBoxL .checkBox { margin: 4% 0;}
#courseSec .flexBoxL .iconBox{ width: auto; margin: 5% 0;}
#courseSec .flexBoxL .checkBox li {
  font-size: 128%;
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 0.5em;
  line-height: 1.5em;
}
#courseSec .flexBoxL .checkBox li:before {
  content: "";
  background: url(../schools/images/images2104/icon_check01.png) no-repeat;
  width: 1em;
  height: 1em;
  display: inline-block;
  background-size: cover;
  margin-right: 0.2em;
  vertical-align: middle;
}
#courseSec #juniorArea .checkBox li:before {
  content: "";
  background: url(../schools/images/images2104/icon_check02.png) no-repeat;
  background-size: cover;
}
#courseSec #highschoolArea .checkBox li:before {
  content: "";
  background: url(../schools/images/images2104/icon_check03.png) no-repeat;
  background-size: cover;
}

#courseSec .flexBoxL .checkBox li span { font-size: 85%;}
#courseSec .iconBox { margin: 10px 0 5px;}
#courseSec .iconBox li { margin-right: 0.2em;}
#courseSec .iconBox li:last-child{ margin-right: 0;}
#courseSec .txtArea { margin: 3% 0 5%;}
#courseSec p.courseLink { margin: 1em 0 0;}
#courseSec p.courseLink:before {
  content: "";
  background: url(../schools/images/images2104/icon_link.png) no-repeat;
  width: 10px;
  height: 10px;
  display: inline-block;
  background-size: cover;
  margin-right: 0.2em;
}
#courseSec .btnBox { margin: 5% auto 0; width: auto;}
#courseSec .btnBox li { width: calc( 95% / 2); font-size: 100%;}
#courseSec .btnBox li a {
  background: #ffe3ee;
  display: block;
  text-align: center;
  color: #ff7ba5;
  vertical-align: middle;
  padding: 0.7em 0;
  border-radius: 100vh;
  cursor: pointer;
  position: relative;
  text-decoration: none;
}

#courseSec .btnBox li a:after {
  content: "";
  width: 0.4em;
  height: 0.4em;
  border-right: 1px solid #ff7ba5;
  border-bottom: 1px solid #ff7ba5;
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: scale(1, 1.2) translateY(-70%) rotate(45deg);
      -ms-transform: scale(1, 1.2) translateY(-70%) rotate(45deg);
          transform: scale(1, 1.2) translateY(-70%) rotate(45deg);
}
#courseSec .btnBox li a{ width: auto;}
#courseSec .btnBox li:last-child a { width: auto; text-align:center; padding-left: 0;}
#courseSec .btnBox li a:hover { text-decoration: none; opacity: 0.7;}
#courseSec #juniorArea .btnBox li a { background: #e5f7c4; color: #85bf3f;}
#courseSec #highschoolArea .btnBox li a { background: #d2f3fc; color: #3fa2ee;}
#courseSec #juniorArea .btnBox li a:after {
  content: "";
  border-right: 1px solid #85bf3f;
  border-bottom: 1px solid #85bf3f;
}
#courseSec #highschoolArea .btnBox li a:after {
  content: "";
  border-right: 1px solid #3fa2ee;
  border-bottom: 1px solid #3fa2ee;
}

#kodawariSec h4{ font-size: 180%;}
#plamSec h4{ font-size: 180%;}
#plamSec .fmBnrBox p.fmAttentionTxt{ font-size: 100%;}
#plamSec .fmBnrBox .mincho{ margin-bottom: 3%;}
#plamSec .fmBnrBoxWaku en{ font-size: 200%; line-height: 1.8em;}
#plamSec .fmBnrBoxWaku en strong{ font-size: 170%;}

#plamSec .priceTtlBox{ -ms-flex-wrap:wrap; flex-wrap:wrap; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; border:1px solid #c9caca; background: -o-linear-gradient(bottom, rgba(254, 254, 254, 1) 0%, rgba(231, 231, 231, 1) 100%); background: -webkit-gradient(linear, left bottom, left top, from(rgba(254, 254, 254, 1)), to(rgba(231, 231, 231, 1))); background: linear-gradient(0deg, rgba(254, 254, 254, 1) 0%, rgba(231, 231, 231, 1) 100%); padding: 3%; border-radius: 5px; margin-bottom: 5%; }
#plamSec .priceTtlBox h5{ font-weight:bold; font-size: 160%; line-height: 1.2em; color: #3e3a39; border-bottom: 1px solid #CCC; -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; padding: 0 0 0.3em; }
#plamSec .priceTtlBox h5 span{ color: #e61673; font-size: 60%; font-weight:normal;}
#plamSec .priceTtlBox .priceTime{ margin: 0.5em 0 0; -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3;}
#plamSec .priceTtlBox .priceTime * { line-height: 1.2em; font-size: 90%; color: #3e3a39; font-weight:normal; text-align:center;}
#plamSec .priceTtlBox .priceTime dt{ margin-right: 0.3em;}
#plamSec .priceTtlBox .priceTime dd::before{ content: '/'; display: inline-block; width: 20px; }
#plamSec .priceTtlBox .priceTime dd:nth-of-type(1)::before{ content: normal; display: inline-block; width: 1em; }
#plamSec .priceTtlBox .priceDetail {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0;
	padding: 0;
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	border-top: none;
}
#plamSec .priceTtlBox .priceDetail dt{ background: #e61673; color: #FFF; padding: 0.2em 0.5em 0; margin-right: 0.5em; font-weight: normal; line-height: 1.4em; font-size: 80%;}
#plamSec .priceTtlBox .priceDetail dd{ color: #3e3a39; font-size: 80%;}
#plamSec .priceTtlBox .priceDetail dl{ margin-bottom: 5%}
#plamSec .priceTtlBox .priceDetail dl:last-child{ margin:0;}
#plamSec .priceTtlBox > div{ display: contents;}
#plamSec .floatL{ width: 100%; margin: 0;}
#plamSec .floatL dt{ font-size: 140%;}
#plamSec p.floatR{ width: 60%; margin: 5% auto; padding: 0;}

#optSec h4{ font-size: 180%;}
#optSec .optBox{ width: 100%; margin: 5% 0 0; height: auto;}
#optSec .boxInner{ padding: 5%;}
#optSec .optBox p{ position: unset; width: 60%; margin: 3% auto; left: 0; text-align:center; -webkit-transform: none; -ms-transform: none; transform: none;} 
#optSec .optBox{}

#discountSec h4{ font-size: 180%;}
#discountSec {}

#tmSec h4{ font-size: 180%;}
#tmSec p img{ width: 80%;}
#tmSec h5{ font-size: 130%;}

/*----------------------------------------------------------------------------
 ***                                                          voiceSec
----------------------------------------------------------------------------*/

#voiceSec{ padding:3em 2%;}
#voiceSec h3{ text-align:center; font-size:200%; line-height:1.1em; margin-bottom:0.6em; }
#voiceSec h3 span{font-size:60%; color:#ffc2cb;}

#voiceSec .svBox{ color:#94657b; max-height:340px; overflow-y:auto;}
#voiceSec .svBox ul{ padding-bottom:70px;}
#voiceSec .svBox li{ width:93%; padding:0 3% 8%;}
#voiceSec .svBox .flexBoxL{ width:25%;}
#voiceSec .svBox .flexBoxL p{ margin-top:1em;}
#voiceSec .svBox .voiceTxtName{ text-align:center; font-size:90%; }

/* dl 本体には padding を付けずにテキスト位置をずらさない */
#voiceSec .svBox dl{ 
    width:72%; 
    margin-left:3%; 
    box-shadow: 6px 6px 0px 0px #c1e8e0;  
    border:#94657b solid 3px; 
    border-radius:5px;
}

/* dt と dd に共通の左右余白を与える */
#voiceSec .svBox dt,
#voiceSec .svBox dd {
    padding: 0 5%;
}

#voiceSec .svBox dt{ 
    font-size:130%; 
    font-weight:bold; 
    line-height:1.1em; 
    margin: 0.6em 0em 0.3em;
    color:#6d2345;
}

#voiceSec .svBox dd p{color:#6d2345;}
#voiceSec .svBox input{ display:none; }

.read-more-2 {
    position: relative;
    max-width: 90%; /* スマホは左右余白を多めに */
    margin: 0 auto;
}

/* デフォルトは省略表示 */
.read-more-2 .readmore-content {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5; /* スマホは短め */
    position: relative;
    margin-bottom: 0;
    font-size: 0.95rem;
    line-height: 1.6;
}

/* 開いたときは全文表示 */
.read-more-2 input:checked ~ .readmore-content {
    display: block;
}

/* グラデーション */
.read-more-2 .readmore-content::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 60px;
    background: linear-gradient(180deg, hsla(0,0%,100%,0) 0, #fff 100%);
}

.read-more-2 input:checked ~ .readmore-content::after {
    content: none;
}

/* ボタン */
.read-more-2 .toggle-btn {
    display: flex;
    justify-content: center;
    margin: 7px 0px 12px;
    font-size: 0.85rem;
    cursor: pointer;
    color: #30b8fc;
}

.read-more-2 .toggle-btn:hover {
    color: #ff8d8d;
    text-decoration: underline;
}

.toggle-btn .more{color: #30b8fc;}
.toggle-btn .close{color: #ff8d8d;}

/* デフォルトは「続きを読む」表示 */
.read-more-2 .toggle-btn .close { display: none; }

/* チェック時は「閉じる」に切り替え */
.read-more-2 input:checked ~ .toggle-btn .more { display: none; }
.read-more-2 input:checked ~ .toggle-btn .close { display: inline; }

/* チェックボックスは非表示 */
.read-more-2 input {
    display: none;
}

/* チェック時に本文開閉 */
.read-more-2 input:checked ~ .readmore-content {
  display: block;
}

/* チェック時にグラデーション消す */
.read-more-2 input:checked ~ .readmore-content::after {
  content: none;
}

/* チェック時に「閉じる」表示 */
.read-more-2 input:checked ~ .toggle-btn .more {
  display: none;
}
.read-more-2 input:checked ~ .toggle-btn .close {
  display: inline;
}
/*----------------------------------------------------------------------------
 ***                                                          voiceSec
----------------------------------------------------------------------------*/

.cp_box1 img{ width:100%; height:30px;}

.cp_box1 {
    position: relative;height: 30px; width: 100%; margin-top: -30px;
    overflow: hidden; /* 念のため */
}

/* グラデーションを擬似要素でかける */
.cp_box1::after {
    content: '';
    position: absolute;left: 0;width: 100%;
    height: 30px; /* cp_box1 と同じ高さ */
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #fff 100%);
    pointer-events: none; /* クリックやスクロールを邪魔しない */
}