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

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
		/*-webkit-transition: 0.25s ease-in-out;
		-moz-transition: 0.25s ease-in-out;
		transition: 0.25s ease-in-out;*/
}
img {
	max-width:100%;
	height:auto;
}

/* -----------------------------------------------------------------------
## Reset #################################################################
----------------------------------------------------------------------- */
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,img,
pre,form,fieldset,input,textarea,p,blockquote,th,td {
  margin: 0px;
  padding: 0px;
}
html {overflow:auto; height:100%;}
body{
	color: #000;
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif;
  	font-weight: 400;
  	font-style: normal;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
	letter-spacing: 0.05em;
}
fieldset,img {
  border: 0;
  vertical-align: bottom;
}

address,caption,cite,code,dfn,em,var {
  font-style: normal;
  font-weight: normal;
}
ul {
  list-style: none;
}
ol li {
	list-style-position: outside;
	list-style: decimal;
	margin-left: 25px;
	margin-bottom:5px;
}

caption,th {
  text-align: left;
  font-weight: normal;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
  font-weight: normal;
}

a{
	color: #333333;
	text-decoration:none;
}
sup,sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    position: relative;
     
}
sup {
    bottom: 0.6ex;
}
sub {
    top: .5ex;
}
.alpha{
	display:block;
	text-decoration:none;
	opacity: 1;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.alpha:hover{
	opacity: 0.7;
}

a:hover img{
	opacity: 0.7;
}

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

.ma_b5 {margin-bottom: 5px;}
.ma_b10 {margin-bottom: 10px;}
.ma_b15 {margin-bottom: 15px;}
.ma_b20 {margin-bottom: 20px;}
.ma_b21 {margin-bottom: 21px;}
.ma_b25 {margin-bottom: 25px;}
.ma_b30 {margin-bottom: 30px;}
table, tr, th, td {
    border-collapse: collapse;
	text-align:left;
	font-weight:normal;
	vertical-align:top;
}
.lett {letter-spacing: -0.1em;}

.pc {display:block;}
.sp {display:none;}

/*---- FOR SP ----*/
@media only screen and (max-width: 768px){
body{
	color: #000;
	font: 12px/165% "Zen Kaku Gothic New", sans-serif;
	-webkit-text-size-adjust: 100%;
	letter-spacing:0.05em;
	line-height:160% !important;
	
}

.pc {display:none;}
.sp {display:block;}
.img100 {width:100%; height:auto;}
.img90 {width:90%; height:auto;}
.img80 {width:80%; height:auto;}
.img70 {width:70%; height:auto;}
}
.re { position:relative;}


a:hover {
	opacity: 0.6;
}
footer a:hover {
	opacity: 1.0;
}

/* フェードイン用のスタイル */
.inview {
  opacity: 0; /* 初期状態で透明 */
  transform: translateY(80px); /* 下に50pxずらす */
  transition: opacity 0.9s ease-out, transform 0.9s ease-out; /* 滑らかなアニメーション */
}

.inview.is-show {
  opacity: 1; /* 表示状態で不透明 */
  transform: translateY(0); /* 元の位置に戻す */
}

/* 各セクションや要素に適用する場合は必要に応じて調整 */
section, .inview > * {
  will-change: opacity, transform; /* パフォーマンス最適化 */
}


/****************************************

HEADER

*****************************************/
header {
	background-image: linear-gradient(90deg, #f7a948 14%, #ff8000);
	height: 150px;
	padding: 0;
}
header .inner {
	max-width: 100%;
	height: 100px;
	margin: 0 auto;
	padding: 0;
	background-color: #fff;
}
header .inner h1 {
	max-width: 160px;
	padding: 30px 20px 0;
	vertical-align: middle;
	margin: 0;
}
@media only screen and (max-width: 768px){
header {
	background-image: linear-gradient(90deg, #f7a948 14%, #ff8000);
	height: 80px;
	padding: 0;
}
header .inner {
	max-width: 100%;
	height: 60px;
	margin: 0 auto;
	padding: 0;
	background-color: #fff;
}
header .inner h1 {
	max-width: 100px;
	padding: 20px 20px 0;
	vertical-align: middle;
	margin: 0;
}
}

/****************************************

footer

*****************************************/
footer {
	width: 100%;
	max-width: 100%;
	background-size: 100%;
}
footer .ft-sns {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 50px 0 50px;
	background-color: #fff;
}

footer .ft-sns ul {
	width: 420px;
	max-width: 100%;
	margin: auto;
	display: flex;
	justify-content: space-between;
	align-items: center;

}


footer .ft-logo {
	width: 100%;
	padding: 50px 0 50px;
	margin: auto;
	background-color: #000;
}
@media only screen and (max-width: 768px){
	footer .ft-logo {
		
	}
}

footer .footer_logo {
	width: 264px;
	max-width: 100%;
	margin: auto;
	text-align: center;
}

footer .copyright {
	width: 264px;
	max-width: 100%;
	margin: auto;
	padding-top: 20px;
	text-align: center;
}

/*---- FOR SP ----*/


/******************************
　inview css
******************************/
/*動き1*/
.sli-up1 {
	opacity: 0;
	transform: translate(0px, 30px);
	-webkit-transform: translate(0px, 30px);
}

.sli-up2 {
	opacity: 0;
	transform: translate(0px, 30px);
	-webkit-transform: translate(0px, 30px);
}

.sli-up3 {
	opacity: 0;
	transform: translate(0px, 30px);
	-webkit-transform: translate(0px, 30px);
}



/******************************
　conversionBanner
******************************/

.conversionBanner__group {
    gap: .08rem;
    position: fixed;
    z-index: 20;
    bottom: .66rem;
    display: flex;
}

@media screen and (min-width: 769px), print {
    .conversionBanner__group {
        left: .66rem;
    }
}
@media screen and (max-width: 768px) {
    .conversionBanner__group {
        flex-direction: column;
        row-gap: .08rem;
        left: 0.66rem;
        bottom: 0.66rem;
        width: calc(100% - 1.32rem);
    }
}

/* 非表示用のクラスを追加 */
.conversionBanner__group.is-hidden {
    display: none;
}

.conversionBanner {
    position: fixed;
    z-index: 20;
    display: grid;
    text-decoration: none;
    bottom: .66rem;
    filter: drop-shadow(.02rem .02rem .16rem rgba(0, 0, 0, .16));
    transform: translateX(0);
    opacity: 1;
    transition: width .25s ease-in-out, max-height .25s ease-in-out, opacity .25s ease-in-out, transform .25s ease-in-out;
}

.conversionBanner>* {
    grid-area: 1 / -1;
}

.conversionBanner>:not(img) {
    z-index: 5;
}

.conversionBanner img {
    width: 370px;
    max-width: 100%;
	
        opacity: 1;
        height: auto;
        line-height: 1;
        width: 370px;
        max-width: 100%;
        vertical-align: top;
}

a .conversionBanner:hover {
opacity: 0.8;
}

@media screen and (max-width: 768px) {
    .conversionBanner img {
        width: 100%;
        margin: auto;
    }
}

.conversionBanner__close {
    position: absolute;
    top: 0;
    right: 0;
    width: 1.28rem;
    height: 1.28rem;
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    color: rgba(255, 255, 255, 0);
    background-color: #222;
    z-index: 5;
    cursor: pointer; /* クリック可能であることを明示 */
}

.conversionBanner__close::before {
    content: "×";
    font-size: 1.16rem;
    font-family: "Noto Sans JP", sans-serif;
    color: #fff;
    display: grid;
    place-content: center;
    position: absolute;
    inset: 0;
    bottom: 1px;
    z-index: 5;
    text-indent: 0;
}

@media (hover: hover), screen and (-ms-high-contrast:active), screen and (-ms-high-contrast:none) {
    .conversionBanner__close {
        opacity: 1;
        transition: opacity .25s ease-in-out;
    }
}

.conversionBanner__group .conversionBanner {
    position: initial;
}
@media screen and (max-width: 768px) {
    .conversionBanner__group .conversionBanner {
        width: 100%;
    }
}

/******************************
main
******************************/
/*mv*/


#main {
	width:100%;
	max-width: 100%;
	max-height:780px;
	background: url("../img/main_back.png") no-repeat center bottom;
	background-size: cover;
}
@media only screen and (max-width: 768px){
#main {
	width:100%;
	max-width: 100%;
	max-height:740px;
	background: url("../img/main_back_sp.png") no-repeat center bottom;
	background-size: cover;
}
}

#main h2 {
	width: 1180px;
	max-width: 100%;
	margin: auto;
	padding: 60px 20px 20px;
}
@media only screen and (max-width: 768px){
#main h2 {
	width: 90%;
	max-width: 100%;
	margin: auto;
	padding: 40px 10px 30px;
}
}


#main ul {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 40px 20px 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#main ul li {
	width: 260px;
	max-width: 100%;
	margin: 0 20px;
	padding: 0;
}
@media only screen and (max-width: 768px){
#main ul {
	width:96%;
	max-width: 100%;
	margin: auto;
	padding: 0px 0 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;

}
#main ul li {
	width: 28%;
	max-width: 100%;
	margin: 0 2%;
	padding: 0 0 10px;
}
}

#main p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 20px 40px 20px 0;
	color: #fff;
	text-align: right;
}
@media only screen and (max-width: 768px){
#main p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 20px 5px;
	color: #fff;
	font-size: 2.4vw;
	text-align: center;
	line-height: 1.6;
}
}


/****************************************
ippan
*****************************************/

#ippan {
	background: url("../img/back_01.png") repeat-y center 500px;
	background-size: contain;
	background-color: #feebee;
}
@media only screen and (max-width: 768px){
#ippan {
	background: url("../img/back_01.png") repeat-y center 500px;
	background-size: 140%;
	background-color: #feebee;
}
}


/****************************************
charm
*****************************************/

#charm {
	width:100%;
	max-width: 100%;
}
@media only screen and (max-width: 768px){
#charm {
	width:100%;
	max-width: 100%;
}
}

#charm h3 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0 30px;
	color: #b63b5e;
	text-align: center;
	font-size: 3.2rem;
	font-weight: 400;
	letter-spacing: 0.0rem;
}
@media only screen and (max-width: 768px){
#charm h3 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 40px 0 0px;
	color: #b63b5e;
	text-align: center;
	font-size: 1.66rem;
	font-weight: 400;
	letter-spacing: 0.0rem;
	line-height: 1.6;
}
}

/* appli_btn1のスタイル */
#charm .appli_btn {
  width: 590px;
  max-width: 100%;
  margin: auto;
  padding: 140px 0 40px;
  justify-content: center;
  align-items: center;
}

@media only screen and (max-width: 768px) {
  #charm .appli_btn {
    width: 80%;
    max-width: 100%;
    margin: auto;
    padding: 40px 0 10px;
    justify-content: center;
    align-items: center;
  }

}

#charm ul {
	width:1100px;
	max-width: 100%;
	margin: 0px auto 50px;
	padding: 80px 0 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#charm ul li {
	width: 44%;
	max-width: 100%;
	margin: 0 2%;
	padding: 0 0 30px;
}


@media only screen and (max-width: 768px){
#charm ul {
	width:90%;
	max-width: 100%;
	margin: auto;
	padding: 40px 0 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#charm ul li {
	width: 100%;
	max-width: 100%;
	margin: 0 2%;
	padding: 0 0 30px;
}
}





/****************************************
point
*****************************************/

#point {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#point {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 60px 0 30px;
}
}


#point .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

@media only screen and (max-width: 768px){
#point .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 40px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}

#point .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#point .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#point .inner ul {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 20px 0 0;
}
@media only screen and (max-width: 768px){
#point .inner ul {
	width: 92%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 0 1%;
}
}

#point .inner li {
	width: 78%;
	max-width: 100%;
	margin: 1% 11% 4%;
	padding: 10px;
}




/****************************************
extraday
*****************************************/

#extraday {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#extraday {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 60px 0 30px;
}
}


#extraday .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

@media only screen and (max-width: 768px){
#extraday .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}

#extraday .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#extraday .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#extraday .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 120px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#extraday .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}

#extraday h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#extraday h4 {
	width: 100%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.05rem;
	text-align: center;
	line-height: 1.6;
}
}

#extraday .extra_day {
	width: 930px;
	max-width: 100%;
	margin: 40px auto 10px; 
	padding: 0;
	text-align: center;
}
@media only screen and (max-width: 768px){
#extraday .extra_day {
	width: 60%;
	max-width: 100%;
	margin: 20px auto 10px; 
	padding: 0;
	text-align: center;
}
}


#extraday p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 20px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#extraday p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 00px 0 10px;
	font-size: 0.65rem;
	font-weight: 500;
	letter-spacing: 0.01rem;
	line-height: 1.6;
	text-align: center;
}
}


#extraday .img {
	width: 900px;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 60px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#extraday .img {
	width: 90%;
	max-width: 90%;
	margin:auto;
	padding: 10px 0 30px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}


/****************************************
heigan
*****************************************/

#heigan {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#heigan {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 60px 0 30px;
}
}


#heigan .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

@media only screen and (max-width: 768px){
#heigan .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}

#heigan .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#heigan .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#heigan .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 120px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#heigan .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}

#heigan h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#heigan h4 {
	width: 100%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.05rem;
	text-align: center;
	line-height: 1.6;
}
}

#heigan p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 40px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#heigan p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 00px 0 10px;
	font-size: 0.65rem;
	font-weight: 500;
	letter-spacing: 0.01rem;
	line-height: 1.6;
	text-align: center;
}
}

#heigan p span {
	width: 800px;
	max-width: 100%;
	display: block;
	margin:auto;
	padding: 10px 0 40px;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: right;
}
@media only screen and (max-width: 768px){
#heigan p span {
	width: 800px;
	max-width: 100%;
	display: block;
	margin:auto;
	padding: 5px 0 20px;
	font-size: 0.6rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
}


#heigan p.txtliner {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 0px 0 10px 80px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: left;
}
@media only screen and (max-width: 768px){
#heigan p.txtliner {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 0px 20px;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: left;
}
}


#heigan ul {
	display: flex;
	justify-content: space-between;
	width: 84%;
	margin: auto; 
	padding: 0;
}

#heigan ul li {
	width: 44%;
	margin: auto; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#heigan ul {
	display: flex;
	justify-content: space-between;
	width: 98%;
	margin: auto; 
	padding: 0;
}

#heigan ul li {
	width: 46%;
	margin: auto; 
	padding: 0;
}
}

#heigan .sch {
	 padding: 40px 0 0;
}
@media only screen and (max-width: 768px){
#heigan .sch {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 0 0;
}


#heigan .sch img {
    width: 600px;
    max-width: 600px;
    margin: 12px 6px;
    padding: 10px 0 10px;
  }

#heigan .sch2 img {
    width: 400px;
    max-width: 400px;
    margin: 0 1px;
    padding: 0 0 10px;
  }

}


/****************************************
other
*****************************************/

#other {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#other {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#other .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 100px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}


#other .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#other .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 40px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#other .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	margin: auto;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#other .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 120px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#other .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}

#other .white_box {
	width: 100%;
	max-width: 100%;
	margin: -36px auto 80px; 
	padding: 0;
	background-color: #fff;
}
@media only screen and (max-width: 768px){
#other .white_box {
	width: 100%;
	max-width: 100%;
	margin: -26px auto 40px; 
	padding: 0;
	background-color: #fff;
}
}

#other h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#other h4 {
	width: 100%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.05rem;
	text-align: center;
	line-height: 1.6;
}
}

#other p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 40px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#other p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 00px 0 10px;
	font-size: 0.65rem;
	font-weight: 500;
	letter-spacing: 0.01rem;
	line-height: 1.6;
	text-align: center;
}
}


#other p span {
	width: 100%;
	max-width: 100%;
	display: block;
	margin:auto;
	padding: 10px 0 40px;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#other p span {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 00px 0 10px;
	font-size: 0.65rem;
	font-weight: 500;
	letter-spacing: 0.01rem;
	line-height: 1.6;
	text-align: center;
}
}





#other .img {
	width: 300px;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 60px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#other .img {
	width: 50%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 30px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#other .blue_box {
	width: 100%;
	max-width: 1140px;
	margin:auto;
	padding: 0 0 30px;
	border: #b63b5e 3px solid;
	background-color: #fff;;
}
@media only screen and (max-width: 768px){
#other .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
}
}

.text_wrapper {
  position: relative;
  margin-bottom: 45px;
}

#other .blue_box .head {
	width: 100%;
	padding: 10px 0 20px;
	background-color: #b63b5e;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
}
@media only screen and (max-width: 768px){
#other .blue_box .head {
	width: 100%;
	padding: 8px 0 10px;
	background-color: #b63b5e;
	text-align: center;
	color: #fff;
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
}
}

#other .blue_box .read {
	width: 70%;
	padding: 30px 0 40px;
	margin: auto;
	text-align: center;
	color: #fff;
}
@media only screen and (max-width: 768px){
#other .blue_box .read {
	width: 90%;
	padding: 30px 0 40px;
	margin: auto;
	text-align: center;
	color: #fff;
}
}

#other .inner ul {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}



#other .inner li {
	width: 80%;
	max-width: 100%;
	margin: 0 10% 4%;
}

#other .sch {
	 padding: 40px 0 0;
	background-color: #fff;
}
@media only screen and (max-width: 768px){
#other .sch {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 0 0;
	background-color: #fff;
}


#other .sch img {
    width: 600px;
    max-width: 600px;
    margin: 12px 6px;
    padding: 10px 0 10px;
  }

#other .sch2 img {
    width: 400px;
    max-width: 400px;
    margin: 0 1px;
    padding: 0 0 10px;
  }

}



/****************************************
second
*****************************************/

#second {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#second {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#second .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#second .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#second .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 40px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#second .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#second .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 120px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#second .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}



#second h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}

@media only screen and (max-width: 768px){
#second h4 {
	width: 100%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.05rem;
	text-align: center;
	line-height: 1.6;
}
}

#second p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 0px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#second p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 0px 0 10px;
	font-size: 0.7rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	line-height: 1.6;
	text-align: center;
}
}

#second .flex {
	width: 80%;
	margin: 0 auto 40px;
display: flex;
justify-content: center;
	align-items: baseline;
}

#second .flex .new {
width: 85px;
max-width: 100%;
}
@media only screen and (max-width: 768px){
	#second .flex {
	width: 95%;
	margin: 0 auto 20px;
display: flex;
justify-content: center;
	align-items: flex-start;
}
#second .flex .new {
	width: 50px;
max-width: 100%;
}
}



#second .img {
	width: 300px;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 60px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#second .img {
	width: 40%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 30px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#second .blue_box {
	width: 100%;
	max-width: 1140px;
	margin:auto;
	padding: 0 0 30px;
	border: #b63b5e 3px solid;
	background-color: #fff;;
}
@media only screen and (max-width: 768px){
#second .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
}
}

.text_wrapper {
  position: relative;
  margin-bottom: 45px;
}

#second .blue_box .head {
	width: 100%;
	padding: 10px 0 20px;
	background-color: #b63b5e;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
}
@media only screen and (max-width: 768px){
#second .blue_box .head {
	width: 100%;
	padding: 10px 0 10px;
	background-color: #b63b5e;
	text-align: center;
	color: #fff;
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
}
}

#second .blue_box .read {
	width: 70%;
	padding: 30px 0 40px;
	margin: auto;
	text-align: center;
	color: #fff;
}
@media only screen and (max-width: 768px){
#second .blue_box .read {
	width: 90%;
	padding: 30px 0 40px;
	margin: auto;
	text-align: center;
	color: #fff;
}
}

#second .inner ul {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}



#second .inner li {
	width: 80%;
	max-width: 100%;
	margin: 0 10% 4%;
}

#second .sch {
	 padding: 40px 0 0;
	background-color: #fff;
}
@media only screen and (max-width: 768px){
#second .sch {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 0 0;
	background-color: #fff;
}


  #second .sch img {
    width: 344px;
    max-width: 344px;
    margin: 12px 6px;
    padding: 20px 0 10px;
  }

  #second .sch2 img {
    width: 400px;
    max-width: 400px;
    margin: 0 1px;
    padding: 0 0 10px;
  }

  }




/****************************************
exfee
*****************************************/

#exfee {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#exfee {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#exfee .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#exfee .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#exfee .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#exfee .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#exfee .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 60px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#exfee .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}


#exfee .inner ul {
	width: 80%;
	max-width: 100%;
	margin: 80px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
@media only screen and (max-width: 768px){
#exfee .inner ul {
	width: 90%;
	max-width: 100%;
	margin: 20px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
}


#exfee .inner li {
	width: 46%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
}

#exfee .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 0.66rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.0rem;
	text-align: center;
}
}


#exfee .white_box {
	width: 100%;
	max-width: 100%;
	margin: 20px auto 80px; 
	padding: 60px 0 20px;
	background-color: #fff;
}

#exfee h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}

@media only screen and (max-width: 768px){
#exfee .white_box  {
	width: 100%;
	max-width: 100%;
	margin: -20px auto 10px; 
	padding: 0;
	background-color: #fff;
}
}

@media only screen and (max-width: 768px){
#exfee h4 {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 0;
	padding: 30px 0 10px;
	color: #b63b5e;
	font-size: 0.84rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
	line-height: 1.6;
}
}

#exfee p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 10px;
	font-size: 0.7rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}
}


#exfee .img {
	width: 80%;
	max-width: 100%;
	margin:auto;
	padding: 40px 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee .img {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#exfee .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -55px;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -3%;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#exfee .sch {
	width: 80%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
  #exfee .sch {
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

  #exfee .sch img {
    width: 700px;
	max-width: 700px;
    margin: 0 1px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}



/****************************************
special
*****************************************/

#special {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#special {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#special .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#special .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#special .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#special .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#special .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 60px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#special .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}

#special h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}


#special .inner ul {
	width: 80%;
	max-width: 100%;
	margin: 80px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
@media only screen and (max-width: 768px){
#special .inner ul {
	width: 90%;
	max-width: 100%;
	margin: 20px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
}


#special .inner li {
	width: 46%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
}

#special .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 0.66rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.0rem;
	text-align: center;
}
}


#special .white_box {
	width: 100%;
	max-width: 100%;
	margin: -36px auto 80px; 
	padding: 0;
	background-color: #fff;
}

#special h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}

@media only screen and (max-width: 768px){
#special .white_box  {
	width: 100%;
	max-width: 100%;
	margin: -20px auto 10px; 
	padding: 0;
	background-color: #fff;
}
}

@media only screen and (max-width: 768px){
#special h4 {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 0;
	padding: 0 0 10px;
	color: #b63b5e;
	font-size: 0.84rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
	line-height: 1.6;
}
}

#special p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 10px;
	font-size: 0.70rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}
}


#special .img {
	width: 70%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special .img {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#special .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -55px;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -3%;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#special .sch {
	width: 80%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
  #special .sch {
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

  #special .sch img {
    width: 700px;
	max-width: 700px;
    margin: 0 1px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}





/****************************************
ao
*****************************************/

#ao {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#ao {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#ao .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 60px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#ao .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#ao .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#ao .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#ao .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 30px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}



#ao .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}


#ao p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#ao .obi {
	width: 1000px;
	max-width: 100%;
	margin: 60px auto 30px;
	padding: 2px 0 4px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}


.sch {
	width: 1000px;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

.sch2 {
	width: 84%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px) {
  #ao .blue_box {
    width: 94%;
    max-width: 100%;
    margin: auto;
    padding: 0 0 20px;
    border: #b63b5e 2px solid;
    background-color: #fff;
  }

  #ao .head {
    width: 100%;
    max-width: 100%;
    margin: 0px auto 0;
    padding: 4px 0 8px;
    background: #b63b5e;
    color: #fff;
    font-size: 1.0rem;
    font-weight: 500;
    letter-spacing: 0.02rem;
    text-align: center;
  }

  #ao .obi {
    width: 90%;
    max-width: 100%;
    margin: 20px auto 10px;
    padding: 2px 0 2px;
    background: #b63b5e;
    color: #fff;
    font-size: 0.8rem;
    font-weight: 500;
    letter-spacing: 0.02rem;
    text-align: center;
  }

  .sch, .sch2 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    overflow-x: scroll;
    position: relative; /* アイコンを絶対位置で配置するための基準 */
    -webkit-overflow-scrolling: touch; /* iOSでのスムーズなスクロール */
  }


  
  .schScroll.schScroll-sch,
  .schScroll.schScroll-sch2,
  .schScroll.schScroll-sch3,
   .schScroll.schScroll-sch4,
	.schScroll.schScroll-sch5,
	.schScroll.schScroll-sch6,
	.schScroll.schScroll-sch7,
	.schScroll.schScroll-sch8,
	.schScroll.schScroll-sch9,
	.schScroll.schScroll-sch10,
	.schScroll.schScroll-sch11,
	.schScroll.schScroll-sch12,
	.schScroll.schScroll-sch13,
	.schScroll.schScroll-sch14,
	.schScroll.schScroll-sch15,
	.schScroll.schScroll-sch16,
	.schScroll.schScroll-sch17,
	.schScroll.schScroll-sch18,
	.schScroll.schScroll-sch19,
	.schScroll.schScroll-sch20,
	.schScroll.schScroll-sch21,
	.schScroll.schScroll-sch22,
	.schScroll.schScroll-sch23,
	.schScroll.schScroll-sch24,
	.schScroll.schScroll-sch25,
	.schScroll.schScroll-sch26,
	.schScroll.schScroll-sch27,
	.schScroll.schScroll-sch28,
	.schScroll.schScroll-sch29,
	.schScroll.schScroll-sch30,
	.schScroll.schScroll-sch31,
	.schScroll.schScroll-sch32,
	.schScroll.schScroll-sch33,
	.schScroll.schScroll-sch34,
	.schScroll.schScroll-sch35,
	.schScroll.schScroll-sch36,
	.schScroll.schScroll-sch37,
	.schScroll.schScroll-sch38,
	.schScroll.schScroll-sch39,
	.schScroll.schScroll-sch40,
	.schScroll.schScroll-sch41,
	.schScroll.schScroll-sch42,
	.schScroll.schScroll-sch43,
	.schScroll.schScroll-sch44,
	.schScroll.schScroll-sch45 {
    position: absolute;
    width: 8.32rem;
    height: 4.23rem;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 15;
    pointer-events: none;
  }

  .schScroll.schScroll-sch::before,
  .schScroll.schScroll-sch2::before,
  .schScroll.schScroll-sch3::before,
  .schScroll.schScroll-sch4::before,
  .schScroll.schScroll-sch5::before,
  .schScroll.schScroll-sch6::before,
  .schScroll.schScroll-sch7::before,
  .schScroll.schScroll-sch8::before,
  .schScroll.schScroll-sch9::before,
  .schScroll.schScroll-sch10::before,
  .schScroll.schScroll-sch11::before,
  .schScroll.schScroll-sch12::before,
  .schScroll.schScroll-sch13::before,
  .schScroll.schScroll-sch14::before,
  .schScroll.schScroll-sch15::before,
  .schScroll.schScroll-sch16::before,
	.schScroll.schScroll-sch17::before,
	.schScroll.schScroll-sch18::before,
	.schScroll.schScroll-sch19::before,
	.schScroll.schScroll-sch20::before,
	.schScroll.schScroll-sch21::before,
	.schScroll.schScroll-sch22::before,
	.schScroll.schScroll-sch23::before,
	.schScroll.schScroll-sch24::before,
	.schScroll.schScroll-sch25::before,
	.schScroll.schScroll-sch26::before,
	.schScroll.schScroll-sch27::before,
	.schScroll.schScroll-sch28::before,
	.schScroll.schScroll-sch29::before,
	.schScroll.schScroll-sch30::before,
	.schScroll.schScroll-sch31::before,
	.schScroll.schScroll-sch32::before,
	.schScroll.schScroll-sch33::before,
	.schScroll.schScroll-sch34::before,
	.schScroll.schScroll-sch35::before,
	.schScroll.schScroll-sch36::before,
	.schScroll.schScroll-sch37::before,
	.schScroll.schScroll-sch38::before,
	.schScroll.schScroll-sch39::before,
	.schScroll.schScroll-sch40::before,
	.schScroll.schScroll-sch41::before,
	.schScroll.schScroll-sch42::before,
	.schScroll.schScroll-sch43::before,
	.schScroll.schScroll-sch44::before,
	.schScroll.schScroll-sch45::before {
    content: "スクロール可能";
    color: #fff;
    display: block;
    text-align: center;
    font-size: 0.66rem;
    line-height: 1;
    padding-top: 2.84rem;
    box-sizing: border-box;
    font-weight: 500;
    width: 8.32rem;
    height: 4.23rem;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%22116%22%20height%3D%2248%22%20viewBox%3D%220%200%20116%2048%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M0.433742%2023.5078L6.50874%2016.5078L7.64161%2017.491L2.64412%2023.2494H22V24.7494H2.63081L7.56943%2030.5113L6.43053%2031.4875L0.430725%2024.4875L0.00976562%2023.9963L0.433742%2023.5078Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M52.1122%2047.9961C51.7845%2047.9961%2051.4842%2047.803%2051.3476%2047.4995L51.1292%2047.0582C50.5557%2045.8444%2048.9991%2042.5892%2048.3438%2041.4306C47.390%2039.7754%2046.0499%2037.734%2044.7664%2035.7478C43.128%2033.2375%2040.916%2029.8168%2038.9499%2026.3409C37.6391%2024.0237%2037.6937%2021.9823%2039.0591%2020.5754C39.8237%2019.803%2040.8614%2019.3616%2041.981%2019.3616C43.1007%2019.3616%2044.2203%2019.8306%2045.0122%2020.6582L50.0095%2026.4237V4.21678C50.0095%201.89954%2051.8665%20-0.00390625%2054.1603%20-0.00390625C55.2526%20-0.00390625%2056.3176%200.437473%2057.0822%201.23747C57.8742%202.03747%2058.2838%203.08575%2058.2838%204.21678V10.9478L59.3761%2010.5616C59.813%2010.3961%2060.2773%2010.3133%2060.7415%2010.3133C62.298%2010.3133%2063.6907%2011.1961%2064.4007%2012.5754L64.783%2013.2926L65.493%2012.934C66.0665%2012.6582%2066.64%2012.5202%2067.1861%2012.5202C69.5346%2012.5754%2070.7361%2013.8995%2071.1184%2015.1133L71.3915%2015.9961L72.2381%2015.6375C72.7569%2015.4168%2073.3031%2015.3064%2073.8765%2015.3064C74.9961%2015.3064%2076.0338%2015.7478%2076.7985%2016.5478C77.5904%2017.3478%2078%2018.3961%2078%2019.5271V31.1133C78%2034.1478%2076.0338%2041.5133%2074.1769%2047.3892C74.0677%2047.7478%2073.74%2047.9961%2073.3577%2047.9961H52.1395H52.1122ZM42.063%2020.9892C41.4895%2020.9892%2040.9434%2021.2375%2040.3426%2021.734C39.7145%2022.3409%2039.3049%2023.4444%2040.4518%2025.4582C42.336%2028.7961%2044.3841%2031.9685%2046.2138%2034.7823C47.6064%2036.934%2048.8899%2038.8926%2049.8457%2040.5478C50.5284%2041.7616%2052.003%2044.8513%2052.4399%2045.7892L52.6584%2046.2582H72.7296L72.8934%2045.6789C73.6854%2043.0857%2076.2796%2034.3961%2076.2796%2031.1133V19.5547C76.2796%2018.1754%2075.1873%2017.072%2073.8492%2017.072C72.8115%2017.072%2071.9104%2017.7616%2071.5554%2018.7271H71.4188V19.5547V24.4926C71.4190%2024.7685%2071.3369%2024.9892%2071.2004%2025.1547C71.0365%2025.3202%2070.8181%2025.4306%2070.5723%2025.4306C70.3265%2025.4306%2070.1081%2025.3202%2069.9442%2025.1547C69.7804%2024.9892%2069.6984%2024.7685%2069.7257%2024.5202V16.7685C69.7257%2015.3892%2068.6334%2014.2857%2067.2954%2014.2857C65.9573%2014.2857%2064.865%2015.3892%2064.865%2016.7685V22.2582C64.865%2022.672%2064.4553%2023.0582%2064.0184%2023.0582C63.5815%2023.0582%2063.1719%2022.6995%2063.1719%2022.2306V14.5616C63.1719%2013.8995%2062.9261%2013.2651%2062.4619%2012.8237C61.9976%2012.3547%2061.3696%2012.1064%2060.7415%2012.1064C59.4034%2012.1064%2058.3111%2013.2099%2058.3111%2014.5892V20.1064C58.3111%2020.5202%2057.9015%2020.9064%2057.4646%2020.9064C57.0276%2020.9064%2056.618%2020.5478%2056.618%2020.0789V4.21678C56.618%202.83747%2055.5257%201.73402%2054.1876%201.73402C52.8495%201.73402%2051.7572%202.83747%2051.7572%204.21678V28.7409C51.7572%2029.0995%2051.5390%2029.4306%2051.2111%2029.5409C51.1018%2029.5685%2051.0199%2029.5961%2050.9107%2029.5961C50.6649%2029.5961%2050.4191%2029.4857%2050.2553%2029.2926L43.7834%2021.8168C43.3737%2021.403%2042.8549%2020.9892%2042.1176%2020.9892H42.063Z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M115.566%2023.5078L109.491%2016.5078L108.358%2017.491L113.356%2023.2494H94V24.7494H113.369L108.431%2030.5113L109.569%2031.4875L115.569%2024.4875L115.99%2023.9963L115.566%2023.5078Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-size: 4.15rem;
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 0.5rem;
    background-position: top 0.2rem center;
    position: absolute;
    inset: 0;
    margin: auto;
    z-index: 15;
    pointer-events: none;
    transition: opacity 0.25s ease-in-out;
    opacity: 1;
  }

 .schScroll.schScroll-sch.hidden::before,
  .schScroll.schScroll-sch2.hidden::before,
  .schScroll.schScroll-sch3.hidden::before,
  .schScroll.schScroll-sch4.hidden::before,
  .schScroll.schScroll-sch5.hidden::before,
  .schScroll.schScroll-sch6.hidden::before,
  .schScroll.schScroll-sch7.hidden::before,
  .schScroll.schScroll-sch8.hidden::before,
  .schScroll.schScroll-sch9.hidden::before,
  .schScroll.schScroll-sch10.hidden::before,
  .schScroll.schScroll-sch11.hidden::before,
  .schScroll.schScroll-sch12.hidden::before,
  .schScroll.schScroll-sch13.hidden::before,
  .schScroll.schScroll-sch14.hidden::before,
  .schScroll.schScroll-sch15.hidden::before,
  .schScroll.schScroll-sch16.hidden::before,
	.schScroll.schScroll-sch17.hidden::before,
	.schScroll.schScroll-sch18.hidden::before,
	.schScroll.schScroll-sch19.hidden::before,
	.schScroll.schScroll-sch20.hidden::before,
	.schScroll.schScroll-sch21.hidden::before,
	.schScroll.schScroll-sch22.hidden::before,
	.schScroll.schScroll-sch23.hidden::before,
	.schScroll.schScroll-sch24.hidden::before,
	.schScroll.schScroll-sch25.hidden::before,
	.schScroll.schScroll-sch26.hidden::before,
	.schScroll.schScroll-sch27.hidden::before,
	.schScroll.schScroll-sch28.hidden::before,
	.schScroll.schScroll-sch29.hidden::before,
	.schScroll.schScroll-sch30.hidden::before,
	.schScroll.schScroll-sch31.hidden::before,
	.schScroll.schScroll-sch32.hidden::before,
	.schScroll.schScroll-sch33.hidden::before,
	.schScroll.schScroll-sch34.hidden::before,
	.schScroll.schScroll-sch35.hidden::before,
	.schScroll.schScroll-sch36.hidden::before,
	.schScroll.schScroll-sch37.hidden::before,
	.schScroll.schScroll-sch38.hidden::before,
	.schScroll.schScroll-sch39.hidden::before,
	.schScroll.schScroll-sch40.hidden::before,
	.schScroll.schScroll-sch41.hidden::before,
	.schScroll.schScroll-sch42.hidden::before,
	.schScroll.schScroll-sch43.hidden::before,
	.schScroll.schScroll-sch44.hidden::before,
	.schScroll.schScroll-sch45.hidden::before {
    opacity: 0 !important; /* 一時的な非表示 */
  }

  /* 永続的な非表示 */
  .schScroll.schScroll-sch.permanently-hidden,
  .schScroll.schScroll-sch2.permanently-hidden,
  .schScroll.schScroll-sch3.permanently-hidden,
  .schScroll.schScroll-sch4.permanently-hidden,
  .schScroll.schScroll-sch5.permanently-hidden,
  .schScroll.schScroll-sch6.permanently-hidden,
  .schScroll.schScroll-sch7.permanently-hidden,
  .schScroll.schScroll-sch8.permanently-hidden,
  .schScroll.schScroll-sch9.permanently-hidden,
  .schScroll.schScroll-sch10.permanently-hidden,
  .schScroll.schScroll-sch11.permanently-hidden,
  .schScroll.schScroll-sch12.permanently-hidden,
  .schScroll.schScroll-sch13.permanently-hidden,
  .schScroll.schScroll-sch14.permanently-hidden,
  .schScroll.schScroll-sch15.permanently-hidden,
  .schScroll.schScroll-sch16.permanently-hidden,
	.schScroll.schScroll-sch17.permanently-hidden,
	.schScroll.schScroll-sch18.permanently-hidden,
	.schScroll.schScroll-sch19.permanently-hidden,
	.schScroll.schScroll-sch20.permanently-hidden,
	.schScroll.schScroll-sch21.permanently-hidden,
	.schScroll.schScroll-sch22.permanently-hidden,
	.schScroll.schScroll-sch23.permanently-hidden,
	.schScroll.schScroll-sch24.permanently-hidden,
	.schScroll.schScroll-sch25.permanently-hidden,
	.schScroll.schScroll-sch26.permanently-hidden,
	.schScroll.schScroll-sch27.permanently-hidden,
	.schScroll.schScroll-sch28.permanently-hidden,
	.schScroll.schScroll-sch29.permanently-hidden,
	.schScroll.schScroll-sch30.permanently-hidden,
	.schScroll.schScroll-sch31.permanently-hidden,
	.schScroll.schScroll-sch32.permanently-hidden,
	.schScroll.schScroll-sch33.permanently-hidden,
	.schScroll.schScroll-sch34.permanently-hidden,
	.schScroll.schScroll-sch35.permanently-hidden,
	.schScroll.schScroll-sch36.permanently-hidden,
	.schScroll.schScroll-sch37.permanently-hidden,
	.schScroll.schScroll-sch38.permanently-hidden,
	.schScroll.schScroll-sch39.permanently-hidden,
	.schScroll.schScroll-sch40.permanently-hidden,
	.schScroll.schScroll-sch41.permanently-hidden,
	.schScroll.schScroll-sch42.permanently-hidden,
	.schScroll.schScroll-sch43.permanently-hidden,
	.schScroll.schScroll-sch44.permanently-hidden,
	.schScroll.schScroll-sch45.permanently-hidden {
    display: none !important; /* 完全に非表示 */
  }

  /* inview クラスとの互換性 */
  .schScroll.inview.is-show::before {
    opacity: 1; /* 初期表示を保証 */
  }

  .schScroll.inview.is-show.hidden::before {
    opacity: 0 !important; /* スクロール時の非表示 */
  }

  .schScroll.inview.is-show.permanently-hidden {
    display: none !important; /* inview との競合を防止 */
  }
}

@media only screen and (min-width: 769px) {
  .schScroll.schScroll-sch,
  .schScroll.schScroll-sch2,
  .schScroll.schScroll-sch3,
  .schScroll.schScroll-sch4,
  .schScroll.schScroll-sch5,
  .schScroll.schScroll-sch6,
  .schScroll.schScroll-sch7,
  .schScroll.schScroll-sch8,
  .schScroll.schScroll-sch9,
  .schScroll.schScroll-sch10,
  .schScroll.schScroll-sch11,
  .schScroll.schScroll-sch12,
  .schScroll.schScroll-sch13,
  .schScroll.schScroll-sch14,
  .schScroll.schScroll-sch15,
	.schScroll.schScroll-sch16,
	.schScroll.schScroll-sch17,
	.schScroll.schScroll-sch18,
	.schScroll.schScroll-sch19,
	.schScroll.schScroll-sch20,
	.schScroll.schScroll-sch21,
	.schScroll.schScroll-sch22,
	.schScroll.schScroll-sch23,
	.schScroll.schScroll-sch24,
	.schScroll.schScroll-sch25,
	.schScroll.schScroll-sch26,
	.schScroll.schScroll-sch27,
	.schScroll.schScroll-sch28,
	.schScroll.schScroll-sch29,
	.schScroll.schScroll-sch30,
	.schScroll.schScroll-sch31,
	.schScroll.schScroll-sch32,
	.schScroll.schScroll-sch33,
	.schScroll.schScroll-sch34,
	.schScroll.schScroll-sch35,
	.schScroll.schScroll-sch36,
	.schScroll.schScroll-sch37,
	.schScroll.schScroll-sch38,
	.schScroll.schScroll-sch39,
	.schScroll.schScroll-sch40,
	.schScroll.schScroll-sch41,
	.schScroll.schScroll-sch42,
	.schScroll.schScroll-sch43,
	.schScroll.schScroll-sch44,
	.schScroll.schScroll-sch45  {
    display: none;
  }
}

/* スクロールバーのカスタマイズ */
@media screen and (max-width: 768px) {
  .sch::-webkit-scrollbar,
  .sch2::-webkit-scrollbar,
  .sch3::-webkit-scrollbar,
  .sch4::-webkit-scrollbar,
  .sch5::-webkit-scrollbar,
  .sch6::-webkit-scrollbar,
  .sch7::-webkit-scrollbar,
  .sch8::-webkit-scrollbar,
  .sch9::-webkit-scrollbar,
  .sch10::-webkit-scrollbar,
  .sch11::-webkit-scrollbar,
  .sch12::-webkit-scrollbar,
  .sch13::-webkit-scrollbar,
  .sch14::-webkit-scrollbar,
  .sch15::-webkit-scrollbar {
    height: 4px;
  }
  .sch::-webkit-scrollbar-track,
  .sch2::-webkit-scrollbar-track,
  .sch3::-webkit-scrollbar-track,
  .sch4::-webkit-scrollbar-track,
  .sch5::-webkit-scrollbar-track,
  .sch6::-webkit-scrollbar-track,
  .sch7::-webkit-scrollbar-track,
  .sch8::-webkit-scrollbar-track,
  .sch9::-webkit-scrollbar-track,
  .sch10::-webkit-scrollbar-track,
  .sch11::-webkit-scrollbar-track,
  .sch12::-webkit-scrollbar-track,
  .sch13::-webkit-scrollbar-track,
  .sch14::-webkit-scrollbar-track,
  .sch15::-webkit-scrollbar-track {
    background: #eee;
  }
  .sch::-webkit-scrollbar-thumb,
  .sch2::-webkit-scrollbar-thumb,
  .sch3::-webkit-scrollbar-thumb,
  .sch4::-webkit-scrollbar-thumb,
  .sch5::-webkit-scrollbar-thumb,
  .sch6::-webkit-scrollbar-thumb,
  .sch7::-webkit-scrollbar-thumb,
  .sch8::-webkit-scrollbar-thumb,
  .sch9::-webkit-scrollbar-thumb,
  .sch10::-webkit-scrollbar-thumb,
  .sch11::-webkit-scrollbar-thumb,
  .sch12::-webkit-scrollbar-thumb,
  .sch13::-webkit-scrollbar-thumb,
  .sch14::-webkit-scrollbar-thumb,
  .sch15::-webkit-scrollbar-thumb {
    background: #aaa;
    border: none;
  }
  .sch::-webkit-scrollbar-thumb:hover,
  .sch2::-webkit-scrollbar-thumb:hover,
  .sch3::-webkit-scrollbar-thumb:hover,
  .sch4::-webkit-scrollbar-thumb:hover,
  .sch5::-webkit-scrollbar-thumb:hover,
  .sch6::-webkit-scrollbar-thumb:hover,
  .sch7::-webkit-scrollbar-thumb:hover,
  .sch8::-webkit-scrollbar-thumb:hover,
  .sch9::-webkit-scrollbar-thumb:hover,
  .sch10::-webkit-scrollbar-thumb:hover,
  .sch11::-webkit-scrollbar-thumb:hover,
  .sch12::-webkit-scrollbar-thumb:hover,
  .sch13::-webkit-scrollbar-thumb:hover,
  .sch14::-webkit-scrollbar-thumb:hover,
  .sch15::-webkit-scrollbar-thumb:hover {
    background: #999;
  }
}



#ao .arrow {
	width: 80px;
	max-width: 100%;
	margin:auto;
	padding: 40px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#ao .arrow {
	width: 30px;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 10px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#ao .gohhi {
	width: 1140px;
	max-width: 97%;
	margin: 0px auto 0px;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#ao .gohhi {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0px;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}


.exam {
	width: 60%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 80px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

.exam p img {
	width: 440px;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

.exam .exam_btn {
	width: 600px;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 20px 0 20px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}


@media only screen and (max-width: 768px){
.exam {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 20px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

.exam p {
	width: 80%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0;
}

.exam p img {
	width: 80%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

.exam .exam_btn {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 10px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

}


@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* 新規追加: リロード通知 */
.reload-notification {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding: 20px;
  border-radius: 10px;
  font-size: 1.6rem;
  text-align: center;
  z-index: 1000;
  display: none;
}

.reload-notification.visible {
  display: block;
  animation: fadeIn 0.5s ease-in-out;
}


#ao .new_btn {
	width: 700px;
	max-width: 97%;
	margin: 24px auto 0px;
	padding: 0 10px 0;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#ao .new_btn {
	width: 90%;
	max-width: 100%;
	margin: 16px auto 0px;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}


/****************************************
earlysch_a
*****************************************/

#earlysch_a {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#earlysch_a {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#earlysch_a .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 40px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#earlysch_a .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0 10px;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#earlysch_a .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#earlysch_a .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#earlysch_a .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#earlysch_a .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

#earlysch_a .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#earlysch_a .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_a p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#earlysch_a p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 0px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
@media only screen and (max-width: 768px){
#earlysch_a p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 0px;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
}


#earlysch_a .obi {
	width: 1000px;
	max-width: 100%;
	margin: 60px auto 30px;
	padding: 2px 0 4px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_a .sch {
	width: 1000px;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 0 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_a .sch2 {
	width: 87%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 10px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_a .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#earlysch_a .accordion-box {
	margin: 30px 0 30px;
}
}

#earlysch_a .waku {
	border: #b63b5e 2px solid;
}

#earlysch_a h5 {
	width: 90%;
	margin: 40px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#earlysch_a h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}



@media only screen and (max-width: 768px){
#earlysch_a .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#earlysch_a .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#earlysch_a p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#earlysch_a .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#earlysch_a .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#earlysch_a .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#earlysch_a .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#earlysch_a .sch2 img {
    width: 500px;
	max-width: 500px;
    margin: 12px 6px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}


#earlysch_a .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: 60px auto 20px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#earlysch_a .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}




/****************************************
earlysch_b
*****************************************/

#earlysch_b {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#earlysch_b {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#earlysch_b .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#earlysch_b .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

#earlysch_b .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#earlysch_b .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

@media only screen and (max-width: 768px){
#earlysch_b .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}



#earlysch_b .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#earlysch_b .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#earlysch_b .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_b p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#earlysch_b .obi {
	width: 1000px;
	max-width: 100%;
	margin: 60px auto 30px;
	padding: 2px 0 4px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_b .sch {
	width: 1000px;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 0 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_b .sch2 {
	width: 87%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 10px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#earlysch_b .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#earlysch_b .accordion-box {
	margin: 30px 0 30px;
}
}

#earlysch_b .waku {
	border: #b63b5e 2px solid;
}

#earlysch_b h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#earlysch_b h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}



@media only screen and (max-width: 768px){
#earlysch_b .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#earlysch_b .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#earlysch_b p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#earlysch_b .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#earlysch_b .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#earlysch_b .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#earlysch_b .sch3 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#earlysch_b .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#earlysch_b .sch2 img {
    width: 500px;
	max-width: 500px;
    margin: 12px 6px;
    padding: 0 0 10px;
    }
	#earlysch_b .sch3 img {
    width: 460px;
	max-width: 460px;
    margin: 12px 6px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}

#earlysch_b p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 0px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
@media only screen and (max-width: 768px){
#earlysch_b p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 0px;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
}

#earlysch_b .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: 60px auto 20px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#earlysch_b .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}




/****************************************
midsch
*****************************************/

#midsch {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#midsch {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#midsch .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#midsch .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

#midsch .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#midsch .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

@media only screen and (max-width: 768px){
#midsch .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}



#midsch .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#midsch .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#midsch .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#midsch p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}


#midsch .sch {
	width: 1000px;
	max-width: 100%;
	margin: 30px auto 0;
	padding: 8px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#midsch .sch2 {
	width: 87%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#midsch .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#midsch .accordion-box {
	margin: 30px 0 30px;
}
}

#midsch h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#midsch h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}


@media only screen and (max-width: 768px){
#midsch .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#midsch .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#midsch p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#midsch .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#midsch .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#midsch .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#midsch .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#midsch .sch2 img {
    width: 500px;
	max-width: 500px;
    margin: 12px 6px;
    padding: 10px 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}


#midsch .waku {
	border: #b63b5e 2px solid;
}



#midsch p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 0px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
@media only screen and (max-width: 768px){
#midsch p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 0px;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
}

#midsch .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: 60px auto 20px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#midsch .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}



/****************************************
latersch
*****************************************/

#latersch {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#latersch {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#latersch .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#latersch .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#latersch .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#latersch .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#latersch .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#latersch .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#latersch p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}


#latersch .sch {
	width: 1000px;
	max-width: 100%;
	margin: 30px auto 0;
	padding: 8px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#latersch .sch1 {
	width: 90%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#latersch .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}


#latersch .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#latersch .accordion-box {
	margin: 30px 0 30px;
}
}

#latersch h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#latersch h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}


@media only screen and (max-width: 768px){
#latersch .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#latersch .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#latersch p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#latersch .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#latersch .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

  #latersch .sch1 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
}

#latersch .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
}

#latersch .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
	#latersch .sch1 img {
    width: 90%;
	max-width: 90%;
    margin: 4px 6px;
    padding: 10px 0 10px;
    }
#latersch .sch2 img {
    width: 500px;
	max-width: 500px;
    margin: 12px 6px;
    padding: 10px 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}



#latersch .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#latersch .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

#latersch .waku {
	border: #b63b5e 2px solid;
}

#latersch p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 0px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
@media only screen and (max-width: 768px){
#latersch p.liner {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 0px;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}
}

#latersch .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: 60px auto 20px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#latersch .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}



/****************************************
mut_earlysch_a
*****************************************/

#mut_earlysch_a {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#mut_earlysch_a {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#mut_earlysch_a .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_earlysch_a .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#mut_earlysch_a .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_earlysch_a .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#mut_earlysch_a .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#mut_earlysch_a .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_a p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#mut_earlysch_a p.liner {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: left;
	color: #b63b5e;;
}


#mut_earlysch_a .obi {
	width: 1000px;
	max-width: 100%;
	margin: 60px auto 30px;
	padding: 2px 0 4px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_a .sch {
	width: 1000px;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 0 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_a .sch2 {
	width: 84%;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_a .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#mut_earlysch_b .accordion-box {
	margin: 30px 0 30px;
}
}

#mut_earlysch_a h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#mut_earlysch_a h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}


@media only screen and (max-width: 768px){
#mut_earlysch_a .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#mut_earlysch_a .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_earlysch_a p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#mut_earlysch_a .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_earlysch_a .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#mut_earlysch_a .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#mut_earlysch_a .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#mut_earlysch_a .sch2 img {
    width: 500px;
	max-width: 500px;
    margin: 12px 6px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}


#mut_earlysch_a .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_earlysch_a .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

#mut_earlysch_a .waku {
	border: #b63b5e 2px solid;
}

#mut_earlysch_a .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_earlysch_a .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}


/****************************************
mut_earlysch_b
*****************************************/

#mut_earlysch_b {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#mut_earlysch_b {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#mut_earlysch_b .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_earlysch_b .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#mut_earlysch_b .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_earlysch_b .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#mut_earlysch_b .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#mut_earlysch_b .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_b p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#mut_earlysch_b .obi {
	width: 1000px;
	max-width: 100%;
	margin: 60px auto 30px;
	padding: 2px 0 4px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_b .sch {
	width: 1000px;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 0 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_b .sch2 {
	width: 84%;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_earlysch_b .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#mut_earlysch_b .accordion-box {
	margin: 30px 0 30px;
}
}

#mut_earlysch_b h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#mut_earlysch_b h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}



@media only screen and (max-width: 768px){
#mut_earlysch_b .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#mut_earlysch_b .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_earlysch_b p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#mut_earlysch_b .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_earlysch_b .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#mut_earlysch_b .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#mut_earlysch_b .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#mut_earlysch_b .sch2 img {
    width: 500px;
	max-width: 500px;
    margin: 12px 6px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}


#mut_earlysch_b .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_earlysch_b .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

#mut_earlysch_b .waku {
	border: #b63b5e 2px solid;
}

#mut_earlysch_b .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_earlysch_b .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}

/****************************************
mut_midsch
*****************************************/

#mut_midsch {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#mut_midsch {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0 80px;
}
}

#mut_midsch .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_midsch .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#mut_midsch .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_midsch .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#mut_midsch .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 60px;
	border: #b63b5e 3px solid;
	background-color: #fff;
}

#mut_midsch .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #b63b5e;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_midsch p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}


#mut_midsch .sch {
	width: 1000px;
	max-width: 100%;
	margin: 30px auto 0;
	padding: 8px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_midsch .sch2 {
	width: 84%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_midsch .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#mut_midsch .accordion-box {
	margin: 30px 0 30px;
}
}

#mut_midsch h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #b63b5e;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#mut_midsch h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}


@media only screen and (max-width: 768px){
#mut_midsch .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #b63b5e 2px solid;
	background-color: #fff;
}

#mut_midsch .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #b63b5e;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_midsch p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#mut_midsch .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #b63b5e;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_midsch .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#mut_midsch .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#mut_midsch .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#mut_midsch .sch2 img {
    width: 400px;
	max-width: 400px;
    margin: 12px 6px;
    padding: 10px 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}


#mut_midsch .more {
	width: 140px;
	max-width: 100%;
	margin: -440px 0 320px 100px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_midsch .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

#mut_midsch .waku {
	border: #b63b5e 2px solid;
}

#mut_midsch .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_midsch .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}


/****************************************
cross
*****************************************/

.cross {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}



/****************************************
mutual
*****************************************/

#mutual {
	background: url("../img/back_02.png") repeat-y center 60px;
	background-size: 100%;
	background-color: #eaebf6;
}
@media only screen and (max-width: 768px){
#mutual {
	background: url("../img/back_02.png") repeat-y center 500px;
	background-size: 100%;
	background-color: #eaebf6;
}
}



/****************************************
charm2
*****************************************/

#charm2 {
	width:100%;
	max-width: 100%;
}
@media only screen and (max-width: 768px){
#charm2 {
	width:100%;
	max-width: 100%;
}
}

#charm2 h3 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0 30px;
	color: #2e36a8;
	text-align: center;
	font-size: 3.2rem;
	font-weight: 400;
	letter-spacing: 0.0rem;
}
@media only screen and (max-width: 768px){
#charm2 h3 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 40px 0 0px;
	color: #2e36a8;
	text-align: center;
	font-size: 1.66rem;
	font-weight: 400;
	letter-spacing: 0.0rem;
	line-height: 1.6;
}
}




/****************************************
point2
*****************************************/

#point2 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#point2 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 60px 0 30px;
}
}


#point2 .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

@media only screen and (max-width: 768px){
#point2 .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}

#point2 .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#point2 .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#point2 .inner ul {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 20px 0 0;
}
@media only screen and (max-width: 768px){
#point2 .inner ul {
	width: 92%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 0 1%;
}
}

#point2 .inner li {
	width: 78%;
	max-width: 100%;
	margin: 1% 11% 4%;
	padding: 10px;
}





/****************************************
public
*****************************************/

#public {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#public {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 60px 0 30px;
}
}


#public .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

@media only screen and (max-width: 768px){
#public .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}

#public .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#public .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#public .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 30px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#public .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}

#public h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#public h4 {
	width: 100%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.05rem;
	text-align: center;
	line-height: 1.6;
}
}

#public p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 40px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#public p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 00px 0 10px;
	font-size: 0.65rem;
	font-weight: 500;
	letter-spacing: 0.01rem;
	line-height: 1.6;
	text-align: center;
}
}

#public p span {
	color: #ff2600;
}


#public p.txtliner {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 10px 80px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: left;
}


#public ul {
	display: flex;
	justify-content: space-between;
	width: 84%;
	margin: auto; 
	padding: 0;
}

#public ul li {
	width: 44%;
	margin: auto; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#public ul {
	display: flex;
	justify-content: space-between;
	width: 98%;
	margin: auto; 
	padding: 0;
}

#public ul li {
	width: 46%;
	margin: auto; 
	padding: 0;
}
}

#public .sch {
	 padding: 40px 0 0;
}
@media only screen and (max-width: 768px){
#public .sch {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 0 0;
}


#public .sch img {
    width: 600px;
    max-width: 600px;
    margin: 12px 6px;
    padding: 10px 0 10px;
  }

#public .sch2 img {
    width: 400px;
    max-width: 400px;
    margin: 0 1px;
    padding: 0 0 10px;
  }

}





/****************************************
english
*****************************************/

#english {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#english {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#english .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#english .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#english .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#english .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#english .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 30px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#english .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}



#english h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}

@media only screen and (max-width: 768px){
#english h4 {
	width: 100%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.05rem;
	text-align: center;
	line-height: 1.6;
}
}

#english p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 40px;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	line-height: 1.6;
	text-align: center;
}
@media only screen and (max-width: 768px){
#english p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 10px;
	font-size: 0.70rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}
}

#english p span {
color: #ff2600;
}

#english .img {
	width: 600px;
	max-width: 100%;
	margin:auto;
	padding: 40px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
#english .img1 {
	width: 900px;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 80px;
}

@media only screen and (max-width: 768px){
#english .img {
	width: 80%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 5px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
#english .img1 {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 10px 0 40px;
}

}


#english .blue_box {
	width: 100%;
	max-width: 1140px;
	margin:auto;
	padding: 0 0 30px;
	border: #2e36a8 3px solid;
	background-color: #fff;;
}
@media only screen and (max-width: 768px){
#english .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #2e36a8 2px solid;
}
}

.text_wrapper {
  position: relative;
  margin-bottom: 45px;
}

#english .accordion-box {
	margin: 30px 0 80px;
}
@media only screen and (max-width: 768px){
#english .accordion-box {
	margin: 30px 0 40px;
}
}


#english .blue_box .head {
	width: 100%;
	padding: 10px 0 20px;
	background-color: #2e36a8;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
}
@media only screen and (max-width: 768px){
#english .blue_box .head {
	width: 100%;
	padding: 4px 0 8px;
	background-color: #2e36a8;
	text-align: center;
	color: #fff;
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
}
}

#english .blue_box .read {
	width: 70%;
	padding: 30px 0 40px;
	margin: auto;
	text-align: center;
	color: #fff;
}
@media only screen and (max-width: 768px){
#english .blue_box .read {
	width: 90%;
	padding: 30px 0 40px;
	margin: auto;
	text-align: center;
	color: #fff;
}
}

#english .inner ul {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}



#english .inner li {
	width: 80%;
	max-width: 100%;
	margin: 0 10% 4%;
}

#english .sch {
	 padding: 40px 0 0;
	background-color: #fff;
}
@media only screen and (max-width: 768px){
#english .sch {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 0 0;
	background-color: #fff;
}

#english .sch img {
    width: 500px;
    max-width: 500px;
    margin: 0 1px;
    padding: 10px 0 10px;
  }

#english .sch2 img {
    width: 400px;
    max-width: 400px;
    margin: 0 1px;
    padding: 0 0 10px;
  }

}




/****************************************
exfee
*****************************************/

#exfee2 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#exfee2 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#exfee2 .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#exfee2 .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#exfee2 .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#exfee2 .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#exfee2 .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 30px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#exfee2 .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}

#exfee2 .inner ul {
	width: 80%;
	max-width: 100%;
	margin: 80px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
@media only screen and (max-width: 768px){
#exfee2 .inner ul {
	width: 90%;
	max-width: 100%;
	margin: 20px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
}


#exfee2 .inner li {
	width: 46%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
}

#exfee2 .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee2 .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 0.66rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.0rem;
	text-align: center;
}
}


#exfee2 .white_box {
	width: 100%;
	max-width: 100%;
	margin: 20px auto 80px; 
	padding: 60px 0 20px;
	background-color: #fff;
}

#exfee2 h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}

@media only screen and (max-width: 768px){
#exfee2 .white_box  {
	width: 100%;
	max-width: 100%;
	margin: -20px auto 10px; 
	padding: 30px 0 0;
	background-color: #fff;
}
}

@media only screen and (max-width: 768px){
#exfee2 h4 {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 0;
	padding: 0 0 10px;
	color: #2e36a8;;
	font-size: 0.84rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
	line-height: 1.6;
}
}

#exfee2 p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 30px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee2 p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 10px;
	font-size: 0.90rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}
}


#exfee2 .img {
	width: 80%;
	max-width: 100%;
	margin:auto;
	padding: 40px 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee2 .img {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#exfee2 .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -55px;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exfee2 .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -3%;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#exfee2 .sch {
	width: 80%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
  #exfee2 .sch {
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

  #exfee2 .sch img {
    width: 700px;
	max-width: 700px;
    margin: 0 1px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}




/****************************************
exemption
*****************************************/

#exemption {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#exemption {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#exemption .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#exemption .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#exemption .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#exemption .inner h3 {
	width: 90%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	padding-left: 10%;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.0rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#exemption .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 30px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#exemption .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}



#exemption .inner ul {
	width: 80%;
	max-width: 100%;
	margin: 80px auto;
	padding: 0;
}
@media only screen and (max-width: 768px){
#exemption .inner ul {
	width: 85%;
	max-width: 100%;
	margin: 20px auto;
	padding: 0;
}
}


#exemption .inner li {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
}

#exemption .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.2rem;
	text-align: left;
	text-indent: -1em;
	padding-left: 1em;
}
@media only screen and (max-width: 768px){
#exemption .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	font-size: 0.66rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.0rem;
}
}

#exemption .inner li p span.maru {
	color: #2e36a8;
}
#exemption .inner li p span.red {
	color: #ff2600
}
#exemption .inner li p span.cotion {
	font-size: 90%;
}

#exemption h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}


@media only screen and (max-width: 768px){
#exemption h4 {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 0;
	padding: 0 0 10px;
	color: #2e36a8;;
	font-size: 0.84rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
	line-height: 1.6;
}
}

#exemption p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exemption p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 10px;
	font-size: 0.70rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}
}


#exemption .img {
	width: 70%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#exemption .img {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

@media only screen and (max-width: 768px){
#exemption .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
}

/****************************************
special2
*****************************************/

#special2 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#special2 {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#special2 .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#special2 .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	margin: auto;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
@media only screen and (max-width: 768px){
#special2 .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#special2 .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#special2 .more {
	width: 140px;
	max-width: 100%;
	margin: -250px 0 160px 30px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#special2 .more {
	width: 58px;
	max-width: 100%;
	margin: -110px 0 60px 0px; 
	padding: 0;
}
}



#special2 .inner ul {
	width: 80%;
	max-width: 100%;
	margin: 80px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
@media only screen and (max-width: 768px){
#special2 .inner ul {
	width: 90%;
	max-width: 100%;
	margin: 20px auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
}


#special2.inner li {
	width: 46%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
}

#special2 .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #b63b5e;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special2 .inner li p {
	width: 100%;
	max-width: 100%;
	margin: auto;
	padding: 10px 0 0 0;
	color: #2e36a8;;
	font-size: 0.66rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.0rem;
	text-align: center;
}
}


#special2 .white_box {
	width: 100%;
	max-width: 100%;
	margin: -36px auto 80px; 
	padding: 0;
	background-color: #fff;
}

#special2 h4 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 0 10px;
	color: #2e36a8;;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}

@media only screen and (max-width: 768px){
#special2 .white_box  {
	width: 100%;
	max-width: 100%;
	margin: -20px auto 10px; 
	padding: 0;
	background-color: #fff;
}
}

@media only screen and (max-width: 768px){
#special2 h4 {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 0;
	padding: 0 0 10px;
	color: #2e36a8;;
	font-size: 0.84rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
	line-height: 1.6;
}
}

#special2 p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special2 p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 10px;
	font-size: 0.70rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}
}


#special2 .img {
	width: 70%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 40px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special2 .img {
	width: 90%;
	max-width: 100%;
	margin:auto;
	padding: 20px 0 20px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#special2 .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -55px;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#special2 .obi {
	width: 100%;
	max-width: 100%;
	margin: 20px 0 0 -3%;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
}

#special2 .sch {
	width: 80%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

@media screen and (max-width: 768px) {
  #special2 .sch {
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

  #special2 .sch img {
    width: 700px;
	max-width: 700px;
    margin: 0 1px;
    padding: 0 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}




/****************************************
#mut_all
*****************************************/

#mut_all {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#mut_all {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#mut_all .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_all .inner h3 {
	width: 1140px;
	max-width: 97%;
	margin: auto;
	padding: 30px 0;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#mut_all .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}

#mut_all .inner h3 {
	width: 96%;
	max-width: 100%;
	margin: auto;
	padding: 2%;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}

#mut_all .more {
	width: 140px;
	max-width: 100%;
	margin: -480px 0 360px 80px; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_all .more {
	width: 58px;
	max-width: 100%;
	margin: -140px 0 100px 0px; 
	padding: 0;
}
}

#mut_all .blue_box {
	width: 96%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 30px;
	border: #2e36a8 3px solid;
	background-color: #fff;
}

#mut_all .accordion-container .blue_box {
	width: 90%;
	max-width: 1134px;
	margin:auto;
	padding: 0 0 30px;
	border: #2e36a8 3px solid;
	background-color: #fff;
}

#mut_all .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #2e36a8;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}
#mut_all .head3 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 5px 0 10px;
	background: #2e36a8;
	color: #fff;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_all p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}


#mut_all .sch {
	width: 1000px;
	max-width: 100%;
	margin: 30px auto 0;
	padding: 8px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_all .sch2 {
	width: 84%;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 20px 0 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
}

#mut_all .accordion-box {
	margin: 40px 0 60px;
}
@media only screen and (max-width: 768px){
#mut_all .accordion-box {
	margin: 30px 0 30px;
}
}

#mut_all .waku2 {
	padding: 20px;
	border: #2e36a8 1px solid;
}


#mut_all h5 {
	width: 90%;
	margin: 30px auto 30px;
	padding: 5px 0;
	color: #fff;
	background-color: #2e36a8;
	text-align: center;
	font-size: 1.0rem;
}
@media only screen and (max-width: 768px){
#mut_all h5 {
	width: 90%;
	margin: 30px auto 10px;
}
}

@media only screen and (max-width: 768px){
#mut_all .blue_box {
	width: 94%;
	max-width: 100%;
	margin:auto;
	padding: 0 0 20px;
	border: #2e36a8 2px solid;
	background-color: #fff;
}

#mut_all .head {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #2e36a8;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_all .head3 {
	width: 100%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 4px 0 8px;
	background: #2e36a8;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}


#mut_all p {
	width: 100%;
	max-width: 100%;
	margin:auto;
	padding: 60px 0 10px;
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: 0.16rem;
	text-align: center;
}

#mut_all .obi {
	width: 90%;
	max-width: 100%;
	margin: 20px auto 10px;
	padding: 2px 0 2px;
	background: #2e36a8;
	color: #fff;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
}

#mut_all .sch {
width: 90%;
max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
  }

#mut_all .sch2 {
	width: 90%;
	max-width: 100%;
	margin: 0px auto 0;
	padding: 0 2px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start; 
  overflow-x: scroll; 
}

#mut_all .sch img {
    width: 500px;
	max-width: 500px;
    margin: 0 1px;
    padding: 0 0 10px;
    }
#mut_all .sch2 img {
    width: 400px;
	max-width: 400px;
    margin: 12px 6px;
    padding: 10px 0 10px;
    }

.arrow02 {
      width: 40px;
      margin: 0;
      text-align: left;
      padding: 20px;
  }
}

#mut_all .appli_btn {
	width: 620px;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
@media only screen and (max-width: 768px){
#mut_all .appli_btn {
	width: 90%;
	max-width: 100%;
	margin: auto; 
	padding: 0;
}
}





/****************************************
preparation
*****************************************/

#preparation {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#preparation {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#preparation .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
	border-radius: 100px;
	background-color: rgba(255, 255, 255, 0.8);
}

#preparation .inner h3 {
	width: 1200px;
	max-width: 100%;
	height: 136px;
	padding-top: 34px;
	background: url("../img/orange_back.png") no-repeat center top;
	background-size: cover;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.2rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

@media only screen and (max-width: 768px){
#preparation .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 20px;
	border-radius: 40px;
	background-color: rgba(255, 255, 255, 0.8);
}
}
@media only screen and (max-width: 768px){
#preparation .inner h3 {
	width: 100%;
	max-width: 100%;
	height: 60px;
	padding-top: 16px;
	background: url("../img/orange_back_sp.png") no-repeat center top;
	background-size: contain;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.1rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: baseline;
}
}


#preparation h4 {
	width: 100%;
	max-width: 100%;
	margin: 20px auto 0;
	padding: 30px 0 40px;
	color: #2e36a8;
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.16rem;
	text-align: center;
}
@media only screen and (max-width: 768px){
#preparation h4  {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 0;
	padding: 0 0 10px;
	color: #2e36a8;
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.02rem;
	text-align: center;
	line-height: 1.6;
}
}


#preparation ul {
	width: 56%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#preparation ul li {
	width: 100%;
	max-width: 100%;
	margin: 24px auto;
	padding: 0;
}

#preparation ul li.last {
	width: 100%;
	max-width: 100%;
	margin: 60px auto;
	padding: 0;
}

@media only screen and (max-width: 768px){
#preparation ul {
	width: 84%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#preparation ul li {
	width: 100%;
	max-width: 100%;
	margin: 10px auto;
	padding: 0;
}
#preparation ul li.last {
	width: 100%;
	max-width: 100%;
	margin: 30px auto;
	padding: 0;
}
}


#preparation h4.flex {
	width: 90%;
	max-width: 100%;
	margin: 100px auto;
	display: flex;
	justify-content: center;
	align-items: baseline;
	border-top: #b63b5e 2px solid;
	border-bottom: #b63b5e 2px solid;
}

#preparation h4.flex p.qa {
	width: 30%;
	max-width: 100%;
	margin: auto;
	padding: 2px 60px;
}

#preparation h4.flex p.title {
	width: 70%;
	max-width: 100%;
	margin: auto;
	padding-left: 60px;
	text-align: left;
}
@media only screen and (max-width: 768px){
#preparation h4.flex {
	width: 90%;
	max-width: 100%;
	height: 84px;
	margin: 40px auto;
	display: flex;
	justify-content: center;
	align-items: baseline;
	border-top: #b63b5e 1px solid;
	border-bottom: #b63b5e 1px solid;
}

#preparation h4.flex p.qa {
	width: 35%;
	max-width: 100%;
	margin: 0;
	padding: 5px 15px 5px 25px;
}

#preparation h4.flex p.title {
	width: 65%;
	max-width: 100%;
	margin: auto;
	padding: 5px 0 0;
	text-align: left;
	font-size: 0.9rem;
}
}


#preparation p {
	width: 56%;
	margin: 60px auto 30px;
	padding: 0;
	font-size: 0.96rem;
	text-align: left;
}
@media only screen and (max-width: 768px){
#preparation p {
	width: 80%;
	margin: 5px auto 30px;
	padding: 0;
	font-size: 0.60rem;
	line-height: 1.3;
	text-align: center;
}
}


#preparation dl {
	width: 74%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#preparation dl dt  {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 4%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 0.9rem;
	font-weight: 600;
}

#preparation dl dd  {
	width: 100%;
	max-width: 100%;
	margin: 0 0 4%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 0.9rem;
	font-weight: 400;
}

#preparation dl dd p  {
	width: 94%;
	max-width: 100%;
	font-size: 0.9rem;
	font-weight: 400;
}


#preparation dl dt:before {
    margin: 0;  /*画像右の余白*/
	padding-left: 30px;
    content: ""; /* ← 空っぽのコンテンツを用意しておく */
    display: inline-block; /* ← 行頭に表示させるならinline-block */
    background-image: url("../img/qanda_q.png");
    background-size: 27px;
    background-repeat:no-repeat;
    width: 27px;
    height: 46px;
}


#preparation dl dd:before {
    margin: 0;  /*画像右の余白*/
	padding-left: 30px;
    content: ""; /* ← 空っぽのコンテンツを用意しておく */
    display: inline-block; /* ← 行頭に表示させるならinline-block */
    background-image: url("../img/qanda_a.png");
    background-size: 27px;
    background-repeat: no-repeat;
	background-position: top left;
    width: 27px;
    height: 46px;
}
@media only screen and (max-width: 768px){
#preparation dl {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#preparation dl dt  {
	width: 100%;
	max-width: 100%;
	margin: 0 auto 4%;
	padding-top: 5px;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	font-size: 0.66rem;
	font-weight: 600;
}

#preparation dl dd  {
	width: 100%;
	max-width: 100%;
	margin: 0 0 4%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	font-size: 0.66rem;
	font-weight: 400;
}

#preparation dl dt p  {
	width: 94%;
	max-width: 100%;
	font-size: 0.7rem;
	font-weight: 400;
}

#preparation dl dd p  {
	width: 94%;
	max-width: 100%;
	font-size: 0.7rem;
	font-weight: 400;
}


#preparation dl dt:before {
    margin: 0;  /*画像右の余白*/
	padding-left: 20px;
    content: ""; /* ← 空っぽのコンテンツを用意しておく */
    display: inline-block; /* ← 行頭に表示させるならinline-block */
    background-image: url("../img/qanda_q.png");
    background-size: 20px;
    background-repeat: no-repeat;
	background-position: 0 0;
    width: 20px;
    height: 46px;
}


#preparation dl dd:before {
    margin: 0;  /*画像右の余白*/
	padding-left: 20px;
    content: ""; /* ← 空っぽのコンテンツを用意しておく */
    display: inline-block; /* ← 行頭に表示させるならinline-block */
    background-image: url("../img/qanda_a.png");
    background-size: 20px;
    background-repeat: no-repeat;
	background-position: top left;
    width: 20px;
    height: 46px;
}
}

#preparation .read {
	width: 74%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#preparation .read p {
	margin: 60px 0 30px;
	padding: 0;
	color: #b63b5e;
	font-size: 1.36rem;
	font-weight: 500;
	text-decoration: underline #b63b5e;
}

#preparation .read p span {
	max-width: 100%;
	margin: auto;
	padding: 0;
	color: #b63b5e;
	font-size: 0.9rem;
	font-weight: 400;
}

@media only screen and (max-width: 768px){
#preparation .read {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#preparation .read p {
	margin: 30px 0 10px;
	padding: 0;
	color: #b63b5e;
	font-size: 0.9rem;
	font-weight: 500;
	text-decoration: underline #b63b5e;
}

#preparation .read p span {
	max-width: 100%;
	margin: auto;
	padding: 0;
	color: #b63b5e;
	font-size: 0.7rem;
	font-weight: 400;
}
}


/* 既存: appli_btnの表示制御 */
.appli_btn.hidden {
  display: none !important;
}

.appli_btn.visible {
  display: block !important;
}




/****************************************
.engineer 
*****************************************/

#engineer  {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 80px 0;
}
@media only screen and (max-width: 768px){
#engineer  {
	width:100%;
	max-width: 100%;
	margin: auto;
	padding: 30px 0;
}
}

#engineer .inner {
	width: 1200px;
	max-width: 100%;
	margin: auto;
	padding: 0 0 80px;
}

@media only screen and (max-width: 768px){
#engineer .inner {
	width: 94%;
	max-width: 100%;
	margin: auto;
	padding: 0 0 30px;
}
}



#engineer ul {
	width: 56%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#engineer ul li {
	width: 100%;
	max-width: 100%;
	margin: 24px auto;
	padding: 0;
}

#engineer ul li.last {
	width: 100%;
	max-width: 100%;
	margin: 60px auto;
	padding: 0;
}

@media only screen and (max-width: 768px){
#engineer ul {
	width: 84%;
	max-width: 100%;
	margin: auto;
	padding: 0;
}

#engineer ul li {
	width: 100%;
	max-width: 100%;
	margin: 10px auto;
	padding: 0;
}
}



/*===========
.scroll-box
===========*/

@media screen and (max-width: 767px) {
.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}


/*スクロールバー全体の高さ*/
.scroll-box::-webkit-scrollbar {
  height: 4px;
}
/*スクロールバー全体の背景*/
.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}
/*スクロールバーの動く部分*/
.scroll-box::-webkit-scrollbar-thumb {
  background: #aaa;
  border: none;
}
/*スクロールバーの動く部分のホバー（マウスオーバー）*/
.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}

.scroll-box .f_area {
  display: flex;
  justify-content: center;
}
.scroll-box .f_area .f_one {
  width: 33.333%;
  display: block;
  overflow: hidden;
  backface-visibility: hidden;
}

@media screen and (max-width: 767px) {
  .scroll-box .f_area .f_one {
    flex: 0 0 80%;
  }
}
}


.scroll-space{
  box-sizing: border-box;
  overflow: hidden;
}
.fadein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 1.5s;
}
.fadein-bottom{
      transform: translate(0,30px);
  }
.scrollin {
    opacity: 1 !important;
    transform: translate(0, 0) !important;
  }



.accordion-box {
	position: relative;
	padding: 0;
}
.accordion-box label {
	height: 26px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	font-size: 10px;
	position: absolute; /* ラベルが位置の基準を持つようにする */
    display: block; /* ラベルがスクロールのターゲットとして適切に機能するようにする */
	bottom: 0;
	width: 100%;  
	/* 以下グラデーションは「背景が白」に併せて設定しています */	
	
	background-size: contain;
}
.accordion-box input:checked + label {
	background: inherit; /* 開いた時には背景グラデーションを消す */
}
.accordion-box label:before {
    content: " ";
    position: absolute;
    bottom: -2.2vw;
    left: 85%;
    width: 4.0vw;
    height: 4.0vw;
    background-image: url(../img/btn_open.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    border-radius: 50%;
    z-index: 100;
}
.accordion-box input:checked + label:before {
    background-image: url(../img/btn_close.png);
}


.accordion-box label:after {
	content: " "; /* ラベルの文字 */
	position: absolute;
	bottom: 0;
	left: 50%;
}

.accordion-box input {
	display: none;
}
.accordion-box .accordion-container {
	overflow: hidden;
	height: 70px; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}

@media screen and (max-width: 768px) {


.accordion-box.accordion-type2.head2 label {
	height: 84px; /* グラデーションの高さ */
}

  .accordion-box .accordion-container {
	overflow: hidden;
	height: 8.5vw; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}
}

.accordion-box .accordion-container01 {
	overflow: hidden;
	height: 70px; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}

@media screen and (max-width: 768px) {
  .accordion-box .accordion-container01 {
	overflow: hidden;
	height: 9.8vw; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}
}

.accordion-box .accordion-container001 {
	overflow: hidden;
	height: 74px; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}

@media screen and (max-width: 768px) {
  .accordion-box .accordion-container001 {
	overflow: hidden;
	height: 13.5vw; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}
}

.accordion-box .accordion-container002 {
	overflow: hidden;
	height: 74px; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}

@media screen and (max-width: 768px) {
  .accordion-box .accordion-container002 {
	overflow: hidden;
	height: 13.6vw; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}
}

.accordion-box .accordion-container9 {
	overflow: hidden;
	height: 24rem; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}

@media screen and (max-width: 768px) {
  .accordion-box .accordion-container9 {
	overflow: hidden;
	height: 136px; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}
}


.accordion-box input:checked + label {
	/* display: none ; 閉じるボタンは要らないとき */
}


/* ★ 2種類目ボタンの上書き（accordion-type2 が付いたときだけ） ★ */
.accordion-box.accordion-type2 label:before {
    background-image: url(../img/btn_open2.png);
}
.accordion-box.accordion-type2 input:checked + label:before {
    background-image: url(../img/btn_close2.png);
}


/* レスポンシブ対応（PC） */
@media screen and (min-width: 1366px) {
    .accordion-box label:before,
    .accordion-box.accordion-type2 label:before {
        bottom: -30px;
        width: 60px;
        height: 60px;
    }
}

/* レスポンシブ対応（SP） */
@media screen and (max-width: 768px) {
    .accordion-box label:before,
    .accordion-box.accordion-type2 label:before {
        bottom: -2.4vw;
        left: 90%;
        width: 6.0vw;
        height: 6.0vw;
    }
}

.accordion-box input:checked ~ .accordion-container {
    height: auto;
	padding-bottom: 0; /* 閉じるボタンのbottomからの位置 */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
	bottom: -2.2vw;
	left: 45%;
}

.accordion-box input:checked ~ .accordion-container01 {
    height: auto;
	padding-bottom: 0; /* 閉じるボタンのbottomからの位置 */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
	bottom: -2.2vw;
	left: 45%;
}
.accordion-box input:checked ~ .accordion-container001 {
    height: auto;
	padding-bottom: 0; /* 閉じるボタンのbottomからの位置 */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
	bottom: -2.2vw;
	left: 45%;
}
.accordion-box input:checked ~ .accordion-container002 {
    height: auto;
	padding-bottom: 0; /* 閉じるボタンのbottomからの位置 */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
	bottom: -2.2vw;
	left: 45%;
}

.accordion-box input:checked ~ .accordion-container9 {
    height: auto;
	padding-bottom: 0; /* 閉じるボタンのbottomからの位置 */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
	bottom: -2.2vw;
	left: 45%;
}






/* これ1つだけで全部の個数に対応（変更不要） */
.main-accordion { position: relative; margin-bottom: 50px; }

@media (max-width: 768px) {
	.main-accordion { position: relative; margin-bottom: 5px; }
}

.accordion-toggle { display: none; }

.accordion-header {
  position: relative;
  padding: 0px 10px 15px;
}
.accordion-header h3 {
  margin: 0;
  padding-right: 170px;
  line-height: 1.4;
}

.toggle-btn {
  position: absolute;
  top: 80%;
  right: 20px;
  transform: translateY(-50%);
  width: 140px;
  height: 60px;
  cursor: pointer;
  z-index: 10;
}
.toggle-btn img {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  object-fit: contain;
  transition: opacity 0.35s ease;
}
.toggle-btn .open-img  { opacity: 1; }
.toggle-btn .close-img { opacity: 0; }

/* 開いたときの処理 */
.accordion-toggle:checked + .accordion-header .toggle-btn .open-img  { opacity: 0; }
.accordion-toggle:checked + .accordion-header .toggle-btn .close-img { opacity: 1; }
.accordion-toggle:checked ~ .accordion-content {
  max-height: 30000px;
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.9s cubic-bezier(0.25, 1, 0.5, 1);
}

/* SP対応 */
@media (max-width: 768px) {
  .accordion-header { padding: 5px 2px; }
  .accordion-header h3 { padding-right: 90px; }
  .toggle-btn { width: 24px; height: 24px; right: 16px; top: 72%; }
}

/* ←これも大事！ inputの後に続く.contentに対して効かせる */
.main-accordion-input:checked ~ .main-accordion-content {
  max-height: 20000px;   /* どんなに長くても大丈夫な値 */
}