@charset "utf-8";
#kv-lpm .inner-kv { width: 100%; max-width: 1300px; margin: 0 auto;}
#kv-lpm h2 { text-align: center;}
#kv-lpm h2 img { width: 100%;}
#kv-lpm h2 img.sp { display: none;}
@media (max-width: 641px){
	#kv-lpm h2 img.pc { display: none;}
	#kv-lpm h2 img.sp { display: block;}
}

#news .inner-sct { padding: 60px 0;}
#news .ctn { position: relative; width: 90%; max-width: 800px; margin: 0 auto 30px; padding-left: 140px;}
#news .ctn .tit { position: absolute; left: 0; top: 10px;}
#news .ctn .tit h2 img { width: 80px;}
#news .ctn ul li { position: relative; padding: 8px 4px; padding-left: 120px;}
#news .ctn ul li span.date,
#news .ctn ul li time { position: absolute; left: 0; top: 9px; color: #495c59; font-size: 15px;}
#news .ctn ul li a { color: #333; text-decoration: none;}
#news .ctn ul li a:hover { text-decoration: underline;}
#news .btn-more { width: 50%; max-width: 150px; margin: 0 auto;}
#news .btn-more a { position: relative; display: block; padding: 15px 0; border: solid 1px #333;
 color: #333; font-size: 14px; font-weight: 700; text-align: center; text-indent: 20px; text-decoration: none;
}
#news .btn-more a:before,
#news .btn-more a:after { content: ''; display: block; width: 1px; height: 18px; background: #333; position: absolute; left: 25px; top: 50%;}
#news .btn-more a:before{ transform: translateY(-50%);}
#news .btn-more a:after { transform: translateY(-50%) rotate(90deg);}
#news .btn-more a:hover { text-decoration: underline;}
@media (max-width: 801px){
	#news .ctn { padding-left: 120px;}
}
@media (max-width: 481px){
	#news .inner-sct { padding: 40px 0;}
	#news .ctn { margin: 0 auto 20px; padding-left: 0px;}
	#news .ctn .tit { position: relative; left: auto; top: auto; margin-bottom: 8px;}
	#news .ctn .tit h2 img { width: 72px;}
	#news .ctn ul li { padding: 4px; font-size: 13px;}
	#news .ctn ul li span.date,
	#news .ctn ul li time { position: relative; left: auto; top: auto; display: block; font-size: 12px; line-height: 1.4;}
	#news .btn-more a { padding: 8px 0;}
}

#about .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 80px 0; background: #e3f1ef;}
#about .ttl { margin-bottom: 40px;}
#about .video { width: 90%; max-width: 1024px; margin: 0 auto;}
#about .video.mb { margin-bottom: 50px;}
#about .video video { width: 100%;}
#about .bloc { position: relative; width: 90%; max-width: 1024px; margin: 0 auto; padding-top: 90px;}
#about .bloc.mb { margin-bottom: 50px;}
#about .bloc .pht { position: absolute; width: 100%; top: 0;}
#about .bloc .txt { width: 100%;}
#about .bloc .pht figure { width: 100%;}
#about .bloc .pht.left  figure { text-align: left;}
#about .bloc .pht.right figure { text-align: right;}
#about .bloc .pht figure img { width: 52%; max-width: 540px;}
#about .bloc .txt { position: relative;}
#about .bloc .txt .inner { position: relative; width: 52%; padding: 50px 40px; background: #fff;}
#about .bloc.mb .txt .inner{ margin: 0 0 0 auto;}
#about .bloc .txt h3 { margin-bottom: 15px; padding-bottom: 18px; border-bottom: solid 1px #495c59; color: #495c59; font-size: 20px; }
#about .bloc .txt p { letter-spacing: 0.05rem; line-height: 2;}
@media (max-width: 801px){
	#about .bloc .txt .inner { padding: 30px;}
	#about .bloc .txt h3 { font-size: 18px; }
	#about .bloc .txt p { font-size: 14px;}
}
@media (max-width: 641px) {
	#about .bloc { width: 100%; padding-top: 0px;}
	#about .bloc.mb { margin-bottom: 30px;}
	#about .bloc .pht { position: relative; top: auto; margin-bottom: -40px;}
	#about .bloc .pht figure img { width: calc(100% - 80px);}
	#about .bloc .txt .inner { width: calc(100% - 120px); margin: 0 0 0 40px; padding: 30px;}
	#about .bloc.mb .txt .inner{ margin: 0 40px 0 auto;}
}
@media (max-width: 481px){
	#about .inner-sct { padding: 40px 0;}
	#about .ttl { margin-bottom: 20px;}
	#about .video.mb { margin-bottom: 30px;}
	#about .bloc .pht { margin-bottom: -30px;}
	#about .bloc .pht figure img { width: calc(100% - 60px);}
	#about .bloc .txt .inner { width: calc(100% - 90px); margin: 0 0 0 30px; padding: 20px;}
	#about .bloc.mb .txt .inner{ margin: 0 30px 0 auto;}
	#about .bloc .txt h3 { margin-bottom: 10px; padding-bottom: 8px; font-size: 16px;}
	#about .bloc .txt p { line-height: 1.72;}
}


#point .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 80px 0; background: #e3f1ef;}
#point .ttl { margin-bottom: 40px;}
#point .video { width: 90%; max-width: 1024px; margin: 0 auto 50px;}
#point .bloc { position: relative; width: 90%; max-width: 1024px; margin: 0 auto; padding-top: 90px;}
#point .bloc.mb { margin-bottom: 50px;}
#point .bloc .pht { position: absolute; width: 100%; top: 0;}
#point .bloc .txt { width: 100%;}
#point .bloc .pht figure { width: 100%;}
#point .bloc .pht.left  figure { text-align: left;}
#point .bloc .pht.right figure { text-align: right;}
#point .bloc .pht figure img { width: 52%; max-width: 540px;}
#point .bloc .txt { position: relative;}
#point .bloc .txt .inner { position: relative; width: 52%; min-height: 240px; padding: 50px 40px; background: #fff;}
#point .bloc .txt.right .inner{ margin: 0 0 0 auto;}
#point .bloc .txt .inner:before { content: ''; display: block; width: 82px; height: 54px; position: absolute; top: -25px;}
#point .bloc .txt .inner.icn1:before { right: 40px; background: url('../../assets/images/top/point-1-icn.png') no-repeat 50% 50% / 100% auto;}
#point .bloc .txt .inner.icn2:before { left: 40px; background: url('../../assets/images/top/point-2-icn.png') no-repeat 50% 50% / 100% auto;}
#point .bloc .txt .inner.icn3:before { right: 40px; background: url('../../assets/images/top/point-3-icn.png') no-repeat 50% 50% / 100% auto;}
#point .bloc .txt .inner.icn4:before { left: 40px; background: url('../../assets/images/top/point-4-icn.png') no-repeat 50% 50% / 100% auto;}
#point .bloc .txt .inner.icn5:before { right: 40px; background: url('../../assets/images/top/point-5-icn.png') no-repeat 50% 50% / 100% auto;}
#point .bloc .txt h3 { margin-bottom: 15px; padding-bottom: 18px; border-bottom: solid 1px #495c59; color: #495c59; font-size: 20px; }
#point .bloc .txt p { letter-spacing: 0.05rem; line-height: 2;}
@media (max-width: 801px){
	#point .bloc .txt .inner { min-height: auto; padding: 30px;}
	#point .bloc .txt h3 { font-size: 18px; }
	#point .bloc .txt p { font-size: 14px;}
}
@media (max-width: 641px) {
	#point .bloc { width: 100%; padding-top: 0px;}
	#point .bloc.mb { margin-bottom: 30px;}
	#point .bloc .pht { position: relative; top: auto; margin-bottom: -40px;}
	#point .bloc .pht figure img { width: calc(100% - 80px);}
	#point .bloc .txt .inner { width: calc(100% - 120px); margin: 0 0 0 40px; padding: 30px;}
	#point .bloc .txt .inner:before { width: 60px; height: 42px; top: -15px;}
	#point .bloc .txt .inner.icn1:before,
	#point .bloc .txt .inner.icn3:before,
	#point .bloc .txt .inner.icn5:before { right: 20px;}
	#point .bloc .txt .inner.icn2:before,
	#point .bloc .txt .inner.icn4:before { left: auto; right: 20px;}
	#point .bloc .txt.right .inner{ margin: 0 40px 0 auto;}
}
@media (max-width: 481px){
	#point .inner-sct { padding: 40px 0;}
	#point .ttl { margin-bottom: 20px;}
	#point .bloc .pht { margin-bottom: -30px;}
	#point .bloc .pht figure img { width: calc(100% - 60px);}
	#point .bloc .txt .inner { width: calc(100% - 90px); margin: 0 0 0 30px; padding: 20px;}
	#point .bloc .txt.right .inner{ margin: 0 30px 0 auto;}
	#point .bloc .txt .inner:before { width: 40px; height: 32px; top: 10px;}
	#point .bloc .txt h3 { margin-bottom: 10px; padding-bottom: 8px; font-size: 16px;}
	#point .bloc .txt p { line-height: 1.72;}
}




#voice .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 80px 0;}
#voice .ttl { margin-bottom: 20px;}
#voice .ctn { width: 90%; max-width: 860px; margin: 0 auto;}
#voice .ctn .bloc { padding: 20px 0;}
#voice .ctn-flex { display: flex; width: 100%;}
#voice .ctn-flex.re { flex-direction: row-reverse;}
#voice .pht { width: 20%;}
#voice .txt { width: 80%;}
#voice .txt.right {padding-left: 30px;}
#voice .txt.left {padding-left: 0px; padding-right: 30px;}
#voice .pht figure { text-align: center;}
#voice .pht figure img { width: 80%; max-width: 150px; border-radius: 50%; margin-bottom: 10px;}
#voice .pht figure figcaption { font-size: 22px; font-weight: 700;}

#voice .txt .txt-inner { position: relative; padding: 20px 40px; background: #e3f1ef; border-radius: 20px;}
#voice .txt .txt-inner:before { content: ''; display: block; width: 0px; height: 0px; position: absolute; top: 50px; border: solid 12px transparent;}
#voice .txt.right .txt-inner:before { left: -30px; border-right: solid 32px #e3f1ef; border-left: 0px;}
#voice .txt.left .txt-inner:before { right: -30px; border-left: solid 32px #e3f1ef; border-right: 0px;}
#voice .txt h4 { margin-bottom: 8px; padding-bottom: 12px; border-bottom: solid 1px #495c59; font-size: 22px; font-weight: 700; line-height: 1.4;}
#voice .txt p { letter-spacing: 0.075rem; line-height: 1.75rem;}
@media (max-width: 641px){
	#voice .pht figure figcaption { font-size: 3.0vw;}
	#voice .txt h4 { font-size: 3.0vw;}
	#voice .txt p { font-size: 14px;}
}
@media (max-width: 481px){
	#voice .inner-sct { padding: 40px 0;}
	#voice .ctn .bloc { padding: 8px 0;}
	#voice .txt.right {padding-left: 20px; padding-right: 8px;}
	#voice .txt.left {padding-left: 8px; padding-right: 20px;}
	#voice .pht figure figcaption { font-size: 13px;}
	#voice .txt .txt-inner { padding: 15px 20px; border-radius: 12px;}
	#voice .txt .txt-inner:before { top: 20px; border: solid 8px transparent;}
	#voice .txt.right .txt-inner:before { left: -18px; border-right: solid 20px #e3f1ef; border-left: 0px;}
	#voice .txt.left .txt-inner:before { right: -18px; border-left: solid 20px #e3f1ef; border-right: 0px;}
	#voice .txt h4 { margin-bottom: 5px; padding-bottom: 8px; font-size: 15px;}
	#voice .txt p { font-size: 12px; letter-spacing: 0.05rem; line-height: 1.6;}
}


#message .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 80px 0;}
#message .ttl { margin-bottom: 50px;}
#message .ctn { width: 90%; max-width: 830px; margin: 0 auto;}
#message .ctn p { letter-spacing: 0.075rem; line-height: 1.8;}
#message .ctn p.mb { margin-bottom: 40px;}
#message .ctn figure { margin-bottom: 40px; text-align: center;}
#message .ctn figure img { width: 100%;}
#message .ctn h3 { margin-bottom: 30px; color: #495c59; font-size: 26px; font-weight: 700; text-align: center;}
#message .ctn ul { width: 100%; max-width: 720px; margin: 0 auto 30px; font-size: 0; text-align: center;}
#message .ctn ul li { display: inline-block; width: 50%; padding: 8px;}
#message .ctn ul li span { display: block; width: 96%; margin: 0 auto; padding: 10px 0; font-size: 18px; border: solid 1px #495c59;}
@media (max-width: 481px){
	#message .inner-sct { padding: 40px 0;}
	#message .ttl { margin-bottom: 20px;}
	#message .ctn p { font-size: 14px; letter-spacing: 0.05rem; line-height: 1.65;}
	#message .ctn p.mb { margin-bottom: 20px;}
	#message .ctn figure { margin-bottom: 20px;}
	#message .ctn h3 { margin-bottom: 20px; font-size: 21px;}
	#message .ctn ul { margin: 0 auto 12px;}
	#message .ctn ul li { padding: 5px;}
	#message .ctn ul li span { padding: 6px 0; font-size: 15px;}
}


#trial .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 60px 0; background: url('../../assets/images/bg-ptn.jpg');}
#trial .tit { margin-bottom: 30px;}
#trial .tit h2 { color: #333; font-size: 30px; font-weight: 700; text-align: center;}
#trial .tit h2 span { display: inline-block; padding-bottom: 4px; border-bottom: solid 2px #333;}
#trial .tit h2 br { display: none;}
#trial h3 { margin-bottom: 30px; text-align: center;}
#trial h3 img { width: 90%; max-width: 830px;}
#trial h3 img.sp { display: none;}
#trial .coupon-txt { margin-bottom: 20px; text-align: center;}
#trial .coupon-txt:before,
#trial .coupon-txt:after { content: ''; position: relative; display: inline-block; width: 1px; height: 30px; background: #333; vertical-align: middle;}
#trial .coupon-txt:before{ transform: rotate(-20deg);}
#trial .coupon-txt:after { transform: rotate(20deg);}
#trial .coupon-txt p { display: inline-block; margin: 0 20px; font-size: 26px; font-weight: 700; text-align: center; vertical-align: middle;}
#trial .coupon-txt p span { color: #ec2328; font-size: 36px;}
#trial .coupon-txt p br { display: none;}
#trial figure { margin-bottom: 50px; text-align: center;}
#trial figure img { width: 92%; max-width: 1000px;}
#trial figure img.sp { display: none;}
#trial ul { width: 90%; max-width: 870px; margin: 0 auto 30px; font-size: 0; text-align: center;}
#trial ul li { display: inline-block; width: 50%;}
#trial ul li img { width: 90%;}
#trial p.txt { margin-bottom: 30px; font-size: 20px; line-height: 1.5; text-align: center;}
#trial .btn-check { width: 80%; max-width: 600px; margin: 0 auto;}
#trial .btn-check a { display: block; width: 100%; padding: 30px 0; background: #c5a600;
 color: #fff; font-size: 24px; font-weight: 700; letter-spacing: 0.075rem; text-align: center;
}
#trial .btn-check a:hover { opacity: 0.85;}
@media (max-width: 801px){
	#trial .tit h2 { font-size: 4.0vw;}
	#trial .coupon-txt p { font-size: 3.2vw;}
	#trial .coupon-txt p span { font-size: 3.8vw;}
	#trial p.txt { font-size: 18px;}
	#trial .btn-check a { padding: 20px 0; font-size: 21px;}
}
@media (max-width: 641px){
	#trial figure { margin-bottom: 20px;}
	#trial figure img.pc { display: none;}
	#trial figure img.sp { display: block; width: 88%; margin: 0 auto;}
	#trial p.txt { font-size: 16px;}
	#trial p.txt span { display: block;}
	#trial .btn-check a { font-size: 18px;}
}
@media (max-width: 481px){
	#trial .inner-sct { padding: 40px 0;}
	#trial .tit { margin-bottom: 20px;}
	#trial .tit h2 { font-size: 24px;}
	#trial .tit h2 span { padding-bottom: 3px; border-width: 1px;}
	#trial .tit h2 span.mb { margin-bottom: 8px;}
	#trial .tit h2 br { display: block;}
	#trial h3 { margin-bottom: 20px;}
	#trial h3 img.pc { display: none;}
	#trial h3 img.sp { display: block; margin: 0 auto;}
	#trial .coupon-txt { margin: 0 auto 12px;}
	#trial .coupon-txt p { font-size: 16px; line-height: 1.4;}
	#trial .coupon-txt p br { display: block;}
	#trial .coupon-txt p span { font-size: 23px;}

	#trial ul { width: 70%; margin: 0 auto 10px;}
	#trial ul li { display: block; width: 100%; padding: 10px 0;}
	#trial p.txt { font-size: 15px;}
	#trial .btn-check a { padding: 12px 0; font-size: 16px;}
	#trial .btn-check a span { display: block;}
}

#flow .inner-sct {padding: 80px 0;}
#flow .ttl { margin-bottom: 50px;}
#flow .ctn { position: relative; width: 90%; max-width: 950px; margin: 0 auto;}
#flow .ctn .tit { margin-bottom: 40px; padding: 20px 0; border-top: solid 1px #495c59; border-bottom: solid 1px #495c59;}
#flow .ctn .tit h3 { text-align: center;}
#flow .ctn .tit h3 img { display: inline-block; margin-right: 40px; vertical-align: middle;}
#flow .ctn .tit h3 span{ display: inline-block; vertical-align: middle; color: #333; font-size: 25px;}
#flow .ctn p { font-size: 20px; letter-spacing: 0.075rem; line-height: 1.6; text-align: center;}
#flow .ctn p.mb { margin-bottom: 30px;}
#flow .ctn p span { display: block;}
#flow .ctn figure { text-align: center;}
#flow .ctn figure img { width: 100%; max-width: 530px;}
#flow .ctn ol { width: 100%; max-width: 730px; margin: 0 auto 50px;}
#flow .ctn ol li { position: relative; margin: 0 auto 25px; padding: 15px; padding-left: 130px; background: #e3f1ef; font-size: 20px; font-weight: 700; line-height: 1.6;}
#flow .ctn ol li:last-child { margin: 0 auto;}
#flow .ctn ol li img { position: absolute; left: 40px; top: 50%; transform: translateY(-50%);}
#flow .ctn .box { width: 100%; max-width: 780px; margin: 0 auto 30px; padding: 6px; background: #e3f1ef;}
#flow .ctn .box .inner { border: solid 1px #495c59; padding: 30px 40px;}
#flow .ctn .box p { margin-bottom: 15px; font-size: 18px; text-align: left;}
#flow .ctn .box dl { display: table; width: 100%; max-width: 500px; margin: 0 auto;}
#flow .ctn .box dl dt,
#flow .ctn .box dl dd { display: table-cell; vertical-align: middle;}
#flow .ctn .box dl dt { width: 30%; text-align: center;}
#flow .ctn .box dl dd { width: 70%; color: #c5a600; font-size: 20px; font-weight: 700;}
#flow .ctn .box dl dt img { width: 92%; max-width: 100px;}
#flow .ctn p.note { font-size: 16px;}
#flow .spacer { width: 100%; height: 70px;}
@media (max-width: 1001px){
	#flow .ctn p.note { text-align: left;}
}
@media (max-width: 801px){
	#flow .ctn .tit h3 span{ font-size: 21px;}
	#flow .ctn p { font-size: 16px;}
	#flow .ctn p.note { font-size: 14px;}
}
@media (max-width: 641px){
	#flow .ctn ol li { font-size: 16px;}
	#flow .ctn .box .inner { padding: 25px;}
	#flow .ctn .box p { font-size: 14px;}
	#flow .ctn .box dl dd { font-size: 16px;}
}
@media (max-width: 481px){
	#flow .inner-sct {padding: 40px 0;}
	#flow .ttl { margin-bottom: 20px;}
	#flow .ctn .tit { margin-bottom: 20px; padding: 12px 0;}
	#flow .ctn .tit h3 img { display: block; width: 100px; margin: 0px auto 8px;}
	#flow .ctn .tit h3 span{ display: block; font-size: 18px;}
	#flow .ctn p { font-size: 14px; letter-spacing: 0.05rem;}
	#flow .ctn p.mb { margin-bottom: 20px;}
	#flow .ctn ol li { margin: 0 auto 12px; padding: 12px; padding-left: 80px; font-size: 14px;}
	#flow .ctn ol li img { left: 20px; width: 40px;}
	#flow .ctn .box { margin: 0 auto 20px;}
	#flow .ctn .box .inner { padding: 20px 25px;}
	#flow .ctn .box p { font-size: 13px;}
	#flow .ctn .box dl dt { width: 25%;}
	#flow .ctn .box dl dd { width: 75%; padding-left: 10px; font-size: 14px;}
	#flow .spacer { height: 30px;}
}


#price .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 80px 0; background: #e3f1ef;}
#price .ttl { margin-bottom: 50px;}
#price h3 { margin-bottom: 18px; color: #495c59; font-size: 24px; text-align: center;}
#price .box { width: 90%; max-width: 900px; margin: 0 auto 30px; border: solid 1px #495c59; background: #fff;}
#price .box .inner { padding: 25px 0 30px;}
#price .box p { font-size: 28px; font-weight: 700; letter-spacing: 0.075rem; line-height: 1; text-align: center;}
#price .box p span { position: relative; display: inline-block; vertical-align: baseline;}
#price .box p span.not { font-size: 22px;}
#price .box p span.not em { font-size: 28px;}
#price .box p span.not:after { content: ''; display: block; width: 100%; height: 2px; background: #000;
 position: absolute; left: 50%; bottom: 20px; transform: translateX(-50%) rotate(-5deg);
}
#price .box p span em.zero { color: #c5a600; font-size: 52px;}
#price .box table { width: 100%;}
#price .box table thead { background: #495c59;}
#price .box table thead th { width: 33.333334%; padding: 10px 0; border-right: solid 1px #fff; color: #fff; font-size: 18px; text-align: center;}
#price .box table thead th:last-child { border-right: none;}
#price .box table td { padding: 12px 0; border-top: solid 1px #495c59; font-size: 18px; text-align: center; vertical-align: middle;}
#price .box table td:nth-child(2) { background: #eff0f0; color: #c5a600; font-size: 22px; font-weight: 700;}
#price .box table td span { display: block; color: #495c59; font-size: 22px; font-weight: 700; line-height: 1.2;}
#price .box table td:nth-child(2) em { font-size: 20px;}
#price .note { width: 90%; max-width: 900px; margin: 0 auto;}
#price .note p { letter-spacing: 0.075rem;}
#price .note p.mb { margin-bottom: 20px; line-height: 1.4;}
@media (max-width: 801px){
	#price .ttl { margin-bottom: 30px;}
	#price h3 { font-size: 20px;}
	#price .box .inner { padding: 15px 0 20px;}
	#price .box p { font-size: 3.2vw;}
	#price .box p span.not { font-size: 3.0vw;}
	#price .box p span.not em { font-size: 3.4vw;}
	#price .box p span.not:after { bottom: 12px;}
	#price .box p span em.zero { font-size: 5.6vw;}
 
	#price .box table thead th { font-size: 16px;}
	#price .box table td { font-size: 16px;}
	#price .box table td:nth-child(2) { font-size: 20px;}
	#price .box table td span { font-size: 20px;}
	#price .box table td:nth-child(2) em { font-size: 16px;}
}
@media (max-width: 481px) {
	#price .inner-sct { padding: 40px 0;}
	#price .ttl { margin-bottom: 20px;}
	#price h3 { margin-bottom: 8px;}
	#price .box { margin: 0 auto 20px;}
	#price .box .inner { padding: 12px 0;}
	#price .box p { font-size: 15px; letter-spacing: 0.05rem;}
	#price .box p span.not { font-size: 12px;}
	#price .box p span.not em { font-size: 15px;}
	#price .box p span.not:after { height: 1px; bottom: 8px;}
	#price .box p span em.zero { font-size: 24px;}

	#price .box table thead th { width: 36%; padding: 6px 0; font-size: 13px;}
	#price .box table thead th:nth-child(1) { width: 28%;}
	#price .box table td { padding: 8px 0; font-size: 11px;}
	#price .box table td:nth-child(2) { font-size: 13px;}
	#price .box table td span { font-size: 14px;}
	#price .box table td:nth-child(2) em { font-size: 11px;}

	#price .note p { font-size: 13px;}
}

#program .inner-sct { padding: 80px 0;}
#program .ttl { margin-bottom: 15px;}
#program ul { width: 100%; max-width: 1024px; margin: 0 auto; font-size: 0;}
#program ul li { display: inline-block; color: #333; width: 50%; padding: 20px 0; vertical-align: top;}
#program ul li dl { width: 92%; max-width: 460px; margin: 0 auto;}
#program ul li dl dt { position: relative; margin-bottom: 8px; text-align: center;}
#program ul li dl dt:after { content: ''; display: block; width: 100%; height: 1px; background: #495c59;
 position: absolute; left: 0; top: 12px; z-index: 1;
}
#program ul li dl dt img { position: relative; width: 100%; max-width: 300px; margin: 0 auto 8px; z-index: 2;}
#program ul li dl dt span { display: block; font-size: 16px;}
#program ul li dl dd.pht { margin-bottom: 20px;}
#program ul li dl dd.pht img { width: 100%;}
#program ul li dl dd.txt { font-size: 16px; letter-spacing: 0.075rem;}
@media (max-width: 641px){
	#program ul li { display: block; width: 100%;}
	#program ul li dl dd.txt { font-size: 14px; letter-spacing: 0.05rem;}
}
@media (max-width: 481px) {
	#program .inner-sct { padding: 40px 0;}
	#program .ttl { margin-bottom: 8px;}
	#program ul li dl dd.pht { margin-bottom: 12px;}
}


#faq .inner-sct { width: 100%; max-width: 1300px; margin: 0 auto; padding: 80px 0; background: #f2f2f2;}
#faq .ttl { margin-bottom: 50px;}
#faq ul { width: 90%; max-width: 900px; margin: 0 auto;}
#faq ul li { margin: 0 auto 30px;}
#faq ul li:last-child { margin: 0 auto;}
#faq ul li dl { padding: 12px 40px 20px; background: #fff; border: solid 1px #495c59;}
#faq ul li dl dt { position: relative; padding: 28px 0; padding-left: 60px;}
#faq ul li dl dt img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 36px;}
#faq ul li dl dd { padding-top: 18px; border-top: dotted 1px #495c59; color: #333;}
#faq ul li dl dd a { text-decoration: underline;}
#faq ul li dl dd a:hover { text-decoration: none;}
@media (max-width: 641px){
	#faq ul li { margin: 0 auto 20px;}
	#faq ul li dl { padding: 8px 30px 20px;}
	#faq ul li dl dt { padding: 12px 0; padding-left: 40px;}
	#faq ul li dl dt img { width: 24px;}
}
@media (max-width: 481px) {
	#faq .inner-sct { padding: 40px 0;}
	#faq .ttl { margin-bottom: 20px;}
	#faq ul li { margin: 0 auto 15px;}
	#faq ul li dl { padding: 5px 20px 12px;}
	#faq ul li dl dt { font-size: 14px;}
	#faq ul li dl dd { font-size: 13px;}
}


#studio .inner-sct { padding: 80px 0;}
#studio .ttl { margin-bottom: 50px;}
#studio .tit { margin-bottom: 20px;}
#studio .tit h3 { text-align: center;}
#studio .tit h3 img { width: 72%; max-width: 400px;}
#studio .tit p { margin-top: 20px; text-align: center; font-size: 20px;}
#studio .ctn-flex { display: flex; flex-wrap: wrap; width: 90%; max-width: 1024px; margin: 0 auto; justify-content: space-between;}
#studio .ctn-flex.mb { margin-bottom: 30px;}
#studio .txt1 { width: 48.5%;}
#studio .map1 { width: 48.5%;}
#studio .txt1 h3 { font-size: 20px; margin-bottom: 15px;}
#studio .txt1 ul.data { margin-bottom: 20px; border-top: solid 1px #495c59;}
#studio .txt1 ul.data li { position: relative; border-bottom: solid 1px #495c59;}
#studio .txt1 ul.data li dl { display: table; width: 100%;}
#studio .txt1 ul.data li dl dt,
#studio .txt1 ul.data li dl dd { display: table-cell; padding: 15px 10px;}
#studio .txt1 ul.data li dl dt { width: 100px; font-weight: 400;}
#studio .txt1 ul.data li dl dd { width: auto;}
#studio .txt1 ul.data li dl.line dt,
#studio .txt1 ul.data li dl.line dd { vertical-align: middle;}
#studio .txt1 ul.data li dl.line dd a { display: block; width: 100px;}
#studio .txt1 ul.data li dl.line dd a img { width: 100%;}
#studio .txt1 ul.link { width: 100%; max-width: 430px; margin: 0 auto; font-size: 0px; text-align: center;}
#studio .txt1 ul.link li { display: inline-block; width: 50%; font-size: 16px;}
#studio .txt1 ul.link li a { display: block; width: 90%; margin: 0 auto; padding: 15px 0; font-weight: 700;}
#studio .txt1 ul.link li:nth-child(1) a { background: #bca427; border: solid 1px #bca427; color: #fff;}
#studio .txt1 ul.link li:nth-child(1) a:hover { background: #fff; color: #bca427; text-decoration: none;}
#studio .txt1 ul.link li:nth-child(2) a { background: #fff; border: solid 1px #495c59; color: #495c59;}
#studio .txt1 ul.link li:nth-child(2) a:hover { background: #495c59; color: #fff; text-decoration: none;}
#studio .map1 iframe { width: 100%; height: 480px;}

#studio .box { position: relative; width: 48.5%; padding: 30px 0;}
#studio .box h3 { font-size: 20px; margin-bottom: 15px;}
#studio .box ul.data { margin-bottom: 20px; border-top: solid 1px #495c59;}
#studio .box ul.data li { position: relative; border-bottom: solid 1px #495c59;}
#studio .box ul.data li dl { display: table; width: 100%;}
#studio .box ul.data li dl dt,
#studio .box ul.data li dl dd { display: table-cell; padding: 15px 10px;}
#studio .box ul.data li dl dt { width: 100px; font-weight: 400;}
#studio .box ul.data li dl dd { width: auto;}
#studio .box ul.data li dl dd.txt2h { height: 5.0em;}
#studio .box ul.data li dl dd.txt4h { height: 8.0em;}
#studio .box ul.data li dl.line dt,
#studio .box ul.data li dl.line dd { vertical-align: middle;}
#studio .box ul.data li dl.line dd a { display: block; width: 100px;}
#studio .box ul.data li dl.line dd a img { width: 100%;}
#studio .box ul.link { width: 100%; max-width: 430px; margin: 0 auto; font-size: 0px; text-align: center;}
#studio .box ul.link li { display: inline-block; width: 50%; font-size: 16px;}
#studio .box ul.link li a { display: block; width: 90%; margin: 0 auto; padding: 15px 0; font-weight: 700;}
#studio .box ul.link li:nth-child(1) a { background: #bca427; border: solid 1px #bca427; color: #fff;}
#studio .box ul.link li:nth-child(1) a:hover { background: #fff; color: #bca427; text-decoration: none;}
#studio .box ul.link li:nth-child(2) a { background: #fff; border: solid 1px #495c59; color: #495c59;}
#studio .box ul.link li:nth-child(2) a:hover { background: #495c59; color: #fff; text-decoration: none;}

#studio .map { width: 100%; height: 480px; margin: 0 auto 30px;}
#studio .map iframe { width: 100%; height: 100%;}
@media (max-width: 1001px){
	#studio .txt1 h3 { font-size: 18px;}
	#studio .txt1 ul.data li dl dt,
	#studio .txt1 ul.data li dl dd { font-size: 14px;}
	#studio .txt1 ul.link li { font-size: 14px;}
	#studio .txt1 ul.link li a { padding: 10px 0;}

	#studio .box h3 { font-size: 18px;}
	#studio .box ul.data li dl dt,
	#studio .box ul.data li dl dd { font-size: 14px;}
	#studio .box ul.link li { font-size: 14px;}
	#studio .box ul.link li a { padding: 10px 0;}
	#studio .map { height: 360px;}
}
@media (max-width: 641px) {
	#studio .ctn-flex { display: block;}
	#studio .ctn-flex.mb { margin-bottom: 40px;}
	#studio .txt1 { width: 100%; margin-bottom: 20px;}
	#studio .map1 { width: 100%;}
	#studio .box { width: 100%;}
	#studio .box.mb { margin-bottom: 40px;}
	#studio .box ul.data li dl dd.txt2h { height: auto;}
	#studio .box ul.data li dl dd.txt4h { height: auto;}
}
@media (max-width: 481px) {
	#studio .inner-sct { padding: 40px 0;}
	#studio .ttl { margin-bottom: 20px;}
	#studio .tit p { margin-top: 12px; font-size: 15px;}
	#studio .txt1 h3 { margin-bottom: 6px; font-size: 15px;}
	#studio .txt1 ul.data li dl dt,
	#studio .txt1 ul.data li dl dd { padding: 10px; font-size: 12px;}
	#studio .txt1 ul.data li dl dt { width: 72px;}
	#studio .txt1 ul.link li { font-size: 13px;}
	#studio .map1 iframe { height: 250px;}

	#studio .box .pos { position: absolute; top: -80px;}
	#studio .box h3 { margin-bottom: 6px; font-size: 15px;}
	#studio .box ul.data li dl dt,
	#studio .box ul.data li dl dd { padding: 10px; font-size: 12px;}
	#studio .box ul.data li dl dt { width: 72px;}
	#studio .box ul.link li { font-size: 13px;}
	#studio .map { height: 250px; margin: 0 auto 20px;}
}


aside.recruit { background: #f2f2f2;}
aside.recruit .inner { width: 90%; margin: 0 auto; padding: 50px 0;}
aside.recruit .box { position: relative; width: 100%; max-width: 800px; margin: 0 auto;}
aside.recruit .box a { position: relative; display: block; width: 100%; border: solid 2px #333; background: #fff; overflow: hidden; text-decoration: none;}
aside.recruit .box a:before { content: ''; display: block; width: 280px; height: 164px;
 background: url('../../assets/images/top/recruit-img.jpg') no-repeat 0% 50% / auto 100%;
 position: absolute; left: 0; top: 50%; transform: translateY(-50%);
}
aside.recruit .box .txt { padding: 25px 160px 18px 320px;}
aside.recruit .box h4 { margin-bottom: 8px; color: #495c59; font-size: 28px; line-height:1;}
aside.recruit .box p { color: #333; font-size: 18px; line-height: 1.55;}
aside.recruit .box .more { width: 110px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); border-left: solid 1px #333;
 padding: 15px 0 20px;
}
aside.recruit .box .more span { display: block; margin: 0 auto 10px; text-align: center;}
aside.recruit .box .more:after { content: ''; display: block; width: 20px; height: 20px; margin: 0 auto; position: relative; 
 border-top: solid 2px #333; border-right: solid 2px #333; transform: translateX(-6px) rotate(45deg);
}
aside.recruit .box a:hover { text-decoration: none; opacity: 0.85;}
@media (max-width: 1001px){
	aside.recruit .box .txt	 { padding: 28px 130px 20px 240px;}
	aside.recruit .box a:before { width: 200px; background-position: 85% 50%;}
	aside.recruit .box h4 { font-size: 3.0vw;}
	aside.recruit .box p { font-size: 2.0vw;}
	aside.recruit .box .more { width: 100px;}
	aside.recruit .box .more span { font-size: 14px;}
}
@media (max-width: 641px){
	aside.recruit .box a:before { top: 0; transform: translateY(0%);}
	aside.recruit .box .txt { padding: 28px 0px; padding-left: 240px;}
	aside.recruit .box .more { position: relative; width: 100%; top: auto; transform: translateY(0%); padding: 10px 0; text-align: center;
	 border-top: solid 1px #333; border-left: 0px; background: #fff;
	}
	aside.recruit .box .more span { display: inline-block; margin-bottom: 0px; margin-right: 20px; vertical-align: middle;}
	aside.recruit .box .more span br { display: none;}
	aside.recruit .box .more:after { display: inline-block; width: 10px; height: 10px; vertical-align: middle;}
}
@media (max-width: 481px){
	aside.recruit .box a { border-width: 1px;}
	aside.recruit .box a:before { width: 130px; height: 130px;}
	aside.recruit .box .txt	 { padding: 16px 0 12px 150px;}
	aside.recruit .box h4 { font-size: 18px;}
	aside.recruit .box p { font-size: 12px;}
	aside.recruit .box .more span { font-size: 12px; margin-right: 10px;}
}

