
@font-face {
  font-family: 'icfs';
  src:
    url('fonts/icfs.ttf?ysmd5s') format('truetype'),
    url('fonts/icfs.woff?ysmd5s') format('woff'),
    url('fonts/icfs.svg?ysmd5s#icfs') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.ropa-r {
	font-family: "Ropa Sans", sans-serif;
	font-weight: 400;
	font-style: normal;
}

/* ul{
text-decoration: none;
list-style: none;
display: flex;
gap: 0px;
padding: 0;
} */
.wrap{
width: 100%;
text-align: center;
padding-top: 0px;
}






.main{
width: 1000px;
text-align: center;
margin: 0 auto;
}
.mainheader{
width: 100%;
}
img{
height: auto;
vertical-align:top;
}
/* h2{
width: 100%;
margin: 5em 0 2em 0;
}
h3{
width: 100%;
margin: 5em 0 2em 0;
} */
.mltlt{
width: 100%;
text-align: left;
margin-bottom: 0.4em;
border-bottom: 1px solid #000;
padding: 0 0 0.4em 0;
font-weight: bold;
}
ul.mlg-ll{
display: flex;
justify-content: flex-start;
width: 100%;
margin: 0;
padding: 0;
gap:40px;
}
.mlg-ll > li{
width: 30%;
border-top: 1px solid #000;
text-align: left;
padding: 1em 0;
}
.mlg-ll > li > div:nth-child(1){
padding-bottom: 0.3em;
}
ul.mlg-ll a{
text-decoration: none;
color: #000;
}
ul.mlg-ll a:hover{
text-decoration: none;
color: #555;
}




.stbox{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
margin-top: 50px;
}


.rowrev{
flex-direction: row-reverse;
}


.box01{
width: 35%;
text-align: left;
}
.box02{
width: 63%;
}
.flt01{
width: 100%;
/*background: #eef;*/

}

.flt01 > .flt01wrap{

text-align: left;
/*width: fit-content;*/
writing-mode:vertical-rl;
font-size: 300%;
line-height: 1.0em;
font-weight:200;
padding-bottom: 0.5em;
/*background: #ffe;*/
/*display: block;*/
margin:0 0 0 auto;
letter-spacing: -0.03em;
font-family: 'Noto Serif JP', serif;
}
.flt01wrap_rev{
margin-left:0 !important;
}





.rndtxt{
display: block;
font-family: 'Noto Sans JP', sans-serif;
}
.rndtxt p{
display: inline-block;
font-size: 16px;
border: 2px solid #000;
padding: 10px 0px;
box-sizing: border-box;
border-radius: 1.4em;
line-height:1.7em;
}





.tlt_eng{
font-size: 14px;
letter-spacing: 0em !important;
}
.flt02{
line-height: 2em;
}
.flt03{
line-height: 1.7em;
margin: 1.5em 0;
}
a.lnkbtn{
text-decoration: none;
color: #222;
display: inline-block;
padding: 0.7em 1.5em;
border: 1px solid #222;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
background: #fff;
}
a.lnkbtn:hover{
text-decoration: none;
color: #fff;
display: inline-block;
padding: 0.7em 1.5em;
border: 1px solid #222;
background: #bbb;
}
.lnkdot{
color: #999;
margin-right: 0.4em;
}



.tltimg{
width: 47%;
margin-top: -100px;
margin: -50px 0 0 auto;
z-index: 0;
display: block;
}


.tltimg2{
width: 67%;
margin-top: -100px;
margin: -20px 40px 0 auto;
z-index: 0;
display: block;
}





.tlgwp{
font-size: 24px;
width: 100%;
text-align: left;
border-bottom: 1px solid #000;
margin-top: 100px;
}

.tlgwp-n{
font-size: 24px;
width: 100%;
text-align: left;
border-bottom: 0px solid #000;
margin-top: 100px;
}




.tlgwpcnt{
font-size: 24px;
width: 75%;
text-align: left;
padding: 0.7em 0;
border-right: 1px solid #000;
}
.tlgwpcnt-n{
font-size: 24px;
width: 100%;
text-align: left;
padding: 0.7em 0;
font-family: 'Noto Serif JP', serif;
font-weight: normal;
}

h2.tlgwpcnt{
font-size: 24px;
width: 75%;
text-align: left;
padding: 0.7em 0;
border-right: 1px solid #000;
}
h2.tlgwpcnt-n{
font-size: 24px;
width: 100%;
text-align: left;
padding: 0.7em 0;
font-family: 'Noto Serif JP', serif;
}




@media screen and ( max-width:767px ){
.tlgwpcnt{
font-size: 4vw;
width: 75%;
text-align: left;
padding: 0.7em 0;
border-right: 1px solid #000;
}
.tlgwpcnt-n{
font-size: 4vw;
width: 100%;
text-align: left;
padding: 0.7em 0;
}

h2.tlgwpcnt{
font-size: 4vw;
width: 75%;
text-align: left;
padding: 0.7em 0;
border-right: 1px solid #000;
margin-bottom: 0;
}
h2.tlgwpcnt-n{
font-size: 4vw;
width: 100%;
text-align: left;
padding: 0.7em 0;
}

}






ul.mvlt{
display: flex;
gap:20px 40px;
flex-direction: row;
flex-wrap: wrap;
align-items: flex-start;
padding: 0;
margin-top: 20px;
}
ul.mvlt > li{
width: calc((100% - 41px)/2);
/*background: #efe;*/
display: flex;
flex-direction: row;
justify-content: flex-start;
}
ul.mvlt > li > div:nth-child(1){
width: 70%;
}
ul.mvlt > li > div:nth-child(2){
width: 20%;
writing-mode:vertical-rl;
text-align: left;
line-height: 1.9em;
overflow: hidden;
}

.mng01{
font-size: 100%;
}
.mng02{
font-size:170%;
height: 280px;
}
.mng03{
font-size:78%;
line-height: 1.7em;
margin-left: 0px;
height: 280px;
width: auto;
/*background: #77e;*/
overflow: hidden;
text-align: left;
}

.mrgchg{
margin-top: 0;
}

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





.mrgchg{
margin-top: 0.2em;
}

}












ul.sns_b{
width: 100%;
border-top: 1px solid #000;
border-bottom: 1px solid #000;
display: flex;
justify-content: center;
align-items: center;
gap:50px;
margin-top: 160px;
}
ul.sns_b > li{
width: 50px;
margin: 20px;
box-sizing: border-box;
}

footer{
display: block;
width: 100%;
min-width:1000px;
padding: 50px 0 0 0;
text-align: center;
box-sizing: border-box;
}

.fwrap{
display: block;
width: 1000px;
min-width:1000px;
margin: 0 auto;
text-align: center;
box-sizing: border-box;
line-height: 1.8em;

}

ul.gtlst{
width: 900px;
margin: 4em 0;
display: inline-flex;
flex-wrap: wrap;
justify-content: center;
gap:0.5em 3em;

}

ul.gtlst li a{
text-decoration: none;
color: #222;

}
ul.gtlst li a:hover{
text-decoration: underline;
color: #222;

}






.fttlt{
font-size: 150%;
display: inline-block;
padding: 0.1em 0 0.5em 0;
}


.mrgbpc{
margin-top: 100px;
}
.mrgbpc2{
margin-top: 20px;
}

a.morebtn{
text-decoration: none;
color: #222;
padding: 0.5em;
border: 1px solid #000;
display: block;
width: 100%;
margin: 20px 0 50px 0;
box-sizing: border-box;
background: #fff;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
a.morebtn:hover{
text-decoration: none;
color: #fff;
padding: 0.5em;
border: 1px solid #000;
display: block;
width: 100%;
margin: 20px 0 50px 0;
box-sizing: border-box;
background: #bbb;
}




a.nrmbtn{
text-decoration: none;
color: #222;
padding: 0.5em 2em;
border: 1px solid #000;
display: inline;
width: 100%;
margin: 50px 0 50px 0;
box-sizing: border-box;
background: #fff;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
a.nrmbtn:hover{
text-decoration: none;
color: #fff;
padding: 0.5em 2em;
border: 1px solid #000;
display: inline;
width: 100%;
box-sizing: border-box;
background: #bbb;
}







menu{
display: block;
position: fixed;
width: calc(100% - 200px);
top: 0;
right: 0;
font-size: 14px;
margin: 0;
padding: 0;
height: 100px;
z-index: 19;
/*background: #fee;*/
/*background: linear-gradient(180deg, rgba(22, 22, 22,0.4) 0%, rgba(22, 22, 22,0.3) 75%, rgba(22, 22, 22,0.0) 100% );*/
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
ul.slmenu{
display: flex;
margin: 0;
padding: 0;
gap: 0;
justify-content: flex-end;
}
ul.slmenu > li{
margin: 0;
padding: 0;

box-sizing: border-box;
border-left: 1px solid #fff;
border-bottom: 1px solid #fff;
color: #fff;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
ul.slmenu > li > a{
display: block;
color: #fff;
text-decoration: none;
padding: 15px 20px 4px 20px;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
ul.slmenu > li > a:hover{
display: block;
color: #fff;
background: rgba(256,256,256,0.2);
}



ul.slmenu02{
display: flex;
margin: 0;
padding: 0;
gap: 0;
margin-top: 15px;
justify-content: flex-end;
}
ul.slmenu02 > li{
margin: 0;
padding: 0;

box-sizing: border-box;
border-right: 1px solid #fff;
color: #fff;
}
ul.slmenu02 > li:last-child{
margin: 0;
padding: 0;

box-sizing: border-box;
border-right: 0px solid #fff;
color: #fff;
}
ul.slmenu02 > li > a{
display: block;
color: #fff;
text-decoration: none;
padding: 2px 20px 2px 20px;
}
ul.slmenu02 > li > a:hover{
display: block;
color: #fff;
background: rgba(256,256,256,0.2);
}







menu.alwaysblack{

background-color:rgba(255,255,255,1.0) !important;
}

menu.alwaysblack ul.slmenu > li > a{

color:#222 !important;

}


menu.alwaysblack ul.slmenu > li > a:hover{
color:#888 !important;

}




menu.alwaysblack ul.slmenu > li{

border-left-color:#222 !important;

}

menu.alwaysblack ul.slmenu > li{

border-bottom-color:#222 !important;

}

menu.alwaysblack ul.slmenu02 > li{

border-right-color:#222 !important;

}
menu.alwaysblack ul.slmenu02 > li{

color:#222 !important;

}
menu.alwaysblack ul.slmenu02 > li > a{
color:#222 !important;

}

menu.alwaysblack ul.slmenu02 > li > a:hover{
color:#888 !important;

}






















ul.mm01{
display: flex;
background: #3e3a39;
}
ul.mm01 > li{
text-align: center;
padding: 10px;
background: #3e3a39;
font-size: 14px;
box-sizing: border-box;
color: #fff;
}

ul.mm01 > li a{
text-decoration: none;
color: #fff;
}
ul.mm01 > li a:hover{
text-decoration: underline;
color: #fff;
}



.frm02{
display: none;
position: absolute;
z-index: 100;
width: 1000px;
color: #fff;
}

.frm03{
display: none;
position: absolute;
z-index: 100;
width: 200px;
color: #fff;
}

.frm04{
display: none;
position: absolute;
z-index: 100;
width: 200px;
color: #fff;
}


.frm05{
display: none;
position: absolute;
z-index: 100;
width: 200px;
color: #fff;
}




#mnt02{
position: relative;
}
#mnt02:hover {
	border-bottom: 10px solid #3e3a39;

}
#mnt02:hover .frm02{
position: absolute;
	z-index:100;
	top: 35px;
	left: -400px;
	display: block;
	opacity: 1;

}
img.onmousepic:hover{
opacity: 0.9;
filter: brightness(1.2);
cursor: pointer;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}




#mnt03{
position: relative;
}
#mnt03:hover {
	border-bottom: 10px solid #3e3a39;

}
#mnt03:hover .frm03{
position: absolute;
	z-index:100;
	top: 35px;
	right: 0px;
	display: block;
	opacity: 1;

}






#mnt04{
position: relative;
}
#mnt04:hover {
	border-bottom: 10px solid #3e3a39;

}
#mnt04:hover .frm04{
position: absolute;
	z-index:100;
	top: 35px;
	right: 0px;
	display: block;
	opacity: 1;

}


#mnt05{
position: relative;
}
#mnt05:hover {
	border-bottom: 10px solid #3e3a39;

}
#mnt05:hover .frm05{
position: absolute;
	z-index:100;
	top: 35px;
	right: 0px;
	display: block;
	opacity: 1;

}

.menusubtxt{
padding: 0.4em;
border: 1px solid #fff;
font-size: 120%;
}



.menuboxtxt{
width: 100%;
text-align: left;
color: #fff;
font-size: 14px;
margin-top: 12px;
}
.menuboxtxt span{

font-size: 16px;

}

.menuboxtxt a{
text-decoration: none;
color: #fff;
}
.menuboxtxt a:hover{
text-decoration: underline;
color: #fff;
}

.sepline{
width: 100%;
height: 1px;
border-top: 1px solid #fff;
margin: 12px 0;
}


.mntimgbox{
margin-bottom: 5px;
}













.sidemn01{
background: rgba(51,168,184,0.8);
position: fixed;
top: 0;
left: 0;
width: 200px;
height: 100%;
color: #fff;
padding: 20px;
box-sizing: border-box;
z-index: 10;
/*mix-blend-mode:multiply;
opacity: 0.6;*/
}




.sidemn02{
background: rgba(30,170,57,0.8);
position: fixed;
top: 0;
left: 0;
width: 200px;
height: 100%;
color: #fff;
padding: 20px;
box-sizing: border-box;
z-index: 10;
/*mix-blend-mode:multiply;
opacity: 0.6;*/
}

.sidemn03{
background: rgba(167,58,49,0.8);
position: fixed;
top: 0;
left: 0;
width: 200px;
height: 100%;
color: #fff;
padding: 20px;
box-sizing: border-box;
z-index: 10;
/*mix-blend-mode:multiply;
opacity: 0.6;*/
}



a.mnbtn{
display: flex;
color: #fff;
text-decoration: none;
width: 100%;
height: 90px;
background: url("img/cb.png")no-repeat;
background-size: cover;
justify-content: center;align-items: center;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
overflow: hidden;
}
a.mnbtn:hover{
opacity: 0.8;
}
a.mnbtn-n{
display: flex;
color: #fff;
text-decoration: none;
width: 100%;
height: 90px;
background: url("img/cbn.png")no-repeat;
background-size: cover;
justify-content: center;align-items: center;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
overflow: hidden;
}



a.mnbtn02{
display: flex;
color: #fff;
text-decoration: none;
width: 100%;
height: 90px;
background: url("img/cb02.png")no-repeat;
background-size: cover;
justify-content: center;align-items: center;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
overflow: hidden;
}
a.mnbtn02:hover{
opacity: 0.8;
}
a.mnbtn02-n{
display: flex;
color: #222;
text-decoration: none;
width: 100%;
height: 90px;
background: url("img/cb02n.png")no-repeat;
background-size: cover;
justify-content: center;align-items: center;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
overflow: hidden;
}



a.mnbtn03{
display: flex;
color: #fff;
text-decoration: none;
width: 100%;
height: 90px;
background: url("img/cb03.jpg")no-repeat;
background-size: cover;
justify-content: center;align-items: center;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
overflow: hidden;
}
a.mnbtn03:hover{
opacity: 0.8;

}

.tgh01{
font-size: 70%;
}
.tgh02{
font-size: 25px;
line-height: 1.4em;
}

h1#fph1 .tgh01{
font-size: 12px;
font-weight: normal;
}
h1#fph1 .tgh02{
font-size: 25px;
line-height: 1.4em;
font-weight: normal;
}
h1#fph1{
margin: 0;
}

.sidemenu > div{
margin: 15px 0;
}
.fnbox{
font-size: 14px;
padding: 0px;
width: 100%;
border: 1px solid #fff;
text-align: center;
margin: 8px 0 ;
box-sizing: border-box;
}


main{
    width: calc(100% - 200px);
    margin-left: 200px;
    margin-right: auto;
}



.revcnn{

}

















ul.mainflimg{
margin: 0px 0;
padding: 0;
gap:10px;
margin-top: 10px;
width:100%;
display:flex;
justify-content:center;
}






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



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


/* main{
    width:100%;
    margin-left: 0;
    margin-right: 0;
}
menu{
display: none;
} */
.sidemn01{
display: none;
}
.sidemn02{
display: none;
}
.sidemn03{
display: none;
}


.main{
width: 96%;
text-align: center;
margin-left: 2%;
}

/* h2{
width: 100%;
margin: 30px 0 10px 0;
}
h3{
width: 100%;
margin: 30px 0 10px 0;
} */



ul.mlg-ll{
display: flex;
justify-content: space-between;
width: 100%;
margin: 0;
padding: 0;
flex-direction: row;
flex-wrap: wrap;
gap:5px;
}
.mlg-ll > li{
width: 49%;
border-top: 1px solid #000;
text-align: left;
padding: 1em 0;
font-size: 3vw;
line-height: 1.4em;
}
.mlg-ll > li > div:nth-child(1){
padding-bottom: 0.3em;
}

.mrgbpc{
margin-top: 20px;
}
.mrgbpc2{
margin-top: 20px;
}


.stbox{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
}





.rowrev{
flex-direction: column-reverse;
}


.box01{
width: 100%;
text-align: left;
}
.box02{
width: 100%;
margin-top: 20px;
}
.flt01{
width: 100%;
/*background: #eef;*/

}

.flt01 > .flt01wrap{

text-align: left;
/*width: fit-content;*/
writing-mode:horizontal-tb;
font-size: 7vw;
line-height: 1.0em;
font-weight:200;
padding-bottom: 0.5em;
/*background: #ffe;*/
/*display: block;*/
margin:0 0 0 auto;
letter-spacing: 0em;
}
.flt01wrap_rev{
margin-left:0 !important;
}




.rndtxt{
display: block;

}
.rndtxt p{
display: inline-block;
font-size: 14px;
border: 1px solid #000;
padding: 0px 10px;
box-sizing: border-box;
border-radius: 1.4em;
line-height:1.7em;
}




.tlt_eng{
font-size: 14px;
}
.flt02{
line-height: 1.4em;
font-size: 3.5vw;
}
.flt03{
margin: 0.8em 0;
font-size: 4.5vw;
line-height: 2em;
}
a.lnkbtn{
text-decoration: none;
color: #222;
display: block;
padding: 0.7em 1.5em;
border: 1px solid #222;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
width: 100%;
text-align: center;
box-sizing: border-box;
background: #fff;
}
a.lnkbtn:hover{
text-decoration: none;
color: #fff;
display: block;
padding: 0.7em 1.5em;
border: 1px solid #222;
background: #bbb;
}
.lnkdot{
color: #999;
margin-right: 0.4em;
}


.tltimg{
width: 47%;
margin-top: -70px;
margin: -70px 0 0 auto;
z-index: 0;
display: none;
}
.tltimg2{
width: 47%;
margin-top: -70px;
margin: -70px 0 0 auto;
z-index: 0;
display: none;
}

.revcnn{
flex-direction: column-reverse !important;
}

.mrgtsp{
margin-top: 50px !important;
}





.tlgwp{
font-size: 5vw;
width: 100%;
text-align: left;
border-bottom: 1px solid #000;
margin-top: 50px;
}
.tlgwp-n{
font-size: 5vw;
width: 100%;
text-align: left;
border-bottom: 0px solid #000;
margin-top: 50px;
}


.tlgwpcnt{
font-size: 5vw;
width: 100%;
text-align: left;
padding: 0.7em 0;
border-right: 0px solid #000;
}


ul.mvlt{
display: flex;
gap:20px 4%;
flex-direction: row;
flex-wrap: wrap;
align-items: flex-start;
padding: 0;
}
ul.mvlt > li{
width: 48%;
/*background: #efe;*/
display: flex;
flex-direction: column;
justify-content: space-between;
}
ul.mvlt > li > div:nth-child(1){
width: 100%;
}
ul.mvlt > li > div:nth-child(2){
width: 100%;
writing-mode:horizontal-tb;
text-align: left;
line-height: 1.4em;
overflow: hidden;
}


.mng01{
font-size: 3.2vw;
}
.mng02{
font-size:4vw;
margin:0 0 0.2em 0;
height: auto;
font-weight: bold;
}
.mng03{
font-size:3vw;
line-height: 1.4em;
margin-right: 0.5em;
height: auto;
width: 100%;
/*background: #77e;*/
overflow: auto;
}








ul.mainflimg{
margin: 0px 0;
padding: 0;
gap:5px;
margin-top: 5px;
}






ul.sns_b{
width: 100%;
border-top: 1px solid #000;
border-bottom: 1px solid #000;
display: flex;
justify-content: center;
align-items: center;
gap:30px;
margin-top: 50px;
}
ul.sns_b > li{
width: 50px;
margin: 20px;
box-sizing: border-box;
}





footer{
display: block;
width: 100%;
min-width:100%;
padding: 30px 0 0 0;
text-align: center;
box-sizing: border-box;
}

.fwrap{
display: block;
width: 100%;
min-width:100%;
margin: 0 auto;
text-align: center;
box-sizing: border-box;
line-height: 1.4em;
font-size: 4vw;

}

ul.gtlst{
width: 100%;
margin: 2em 0 0 0;
display: inline-flex;
gap:0em 0em;
flex-wrap: wrap;
justify-content: flex-start;
}

ul.gtlst > li{

width: 50%;
font-size: 3vw;
}

ul.gtlst li a{
text-decoration: none;
color: #222;
display: block;
padding: 0.5em;
border-top: 1px solid #000;
border-right: 1px solid #000;
}
ul.gtlst > li:nth-of-type(2n) > a{
border-right: 0px solid #000;
}
ul.gtlst > li:nth-child(8) > a{
border-bottom: 1px solid #000;
}


ul.gtlst li a:hover{
text-decoration: none;
color: #222;

}





.fttlt{
font-size: 5vw;
display: inline-block;
padding: 0.1em 0 0.5em 0;
}



}








.backtop {
	width:55px;
	height:auto;
	position:fixed;
	right:20px;
	bottom:60px;
	z-index:150;
}

@media screen and ( max-width:767px ){
.backtop {
	width:40px;
	height:auto;
	position:fixed;
	right:10px;
	bottom:60px;
	z-index:10;
}



}

.chgcp{
/*width: 300px;*/
width: 160px;
margin-top: 15px;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

.chgcpfix{
width: 160px;
margin-top: 15px;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}



.imglnk {
  cursor: pointer;
  max-width: 500px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.imglnk img {
  height: auto;
  transition: transform .6s ease; /* ゆっくり変化させる */
}
.imglnk:hover img {
  transform: scale(1.1); /* 拡大 */
}
.imglnk p {
  align-items: center; /* テキストの中央揃え */
  bottom: 0;
  color: #fff; /* テキストの色 */
  display: flex; /* テキストの中央揃え */
  justify-content: center; /* テキストの中央揃え */
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 80%; /* テキストを横幅いっぱいにならないようにする */
}




.nav-wrap{
display: none;
}


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

.nav-wrap{
position: fixed;
width: 100%;
background: rgba(51, 168, 184, 1.0);
height: 60px;
display: flex;
flex-direction: row;
justify-content: space-between;
padding: 8px 10px;
box-sizing: border-box;
line-height: 1.1em;
z-index: 30;
align-items: center;
}
.tgh02{
font-size: 16px;
color: #fff;
}








}






.fs175{
font-size: 175%;
}
.fs125{
font-size: 125%;
}







ul.twelcource{

display: flex;
flex-direction: row;
flex-wrap: wrap;
gap:20px;


}

ul.twelcource > li{
line-height: 1.4em;
width: 32%;
padding: 0px;
box-sizing: border-box;

}


ul.twelcource > li > a{
line-height: 1.4em;
width: 100%;
background: #cccdcd;
padding: 15px;
box-sizing: border-box;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
gap:10px;
user-select: none;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
cursor: pointer;
}
ul.twelcource > li > a:hover{

background: #ddd;

}


ul.twelcource > li > a > div:nth-child(1){
text-align: left;
width: 70%;
font-size: 14px;
}
.twelvctlt{
font-size: 24px;
}
ul.twelcource > li > a > div:nth-child(2){

width: 25%;

}

.transfx{
display: inline-block;
transform-origin: top left;
transform: scaleX(0.8);
width: 100%;
white-space: nowrap;
}



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






ul.twelcource{

display: flex;
flex-direction: row;
flex-wrap: wrap;
gap:10px;


}

ul.twelcource > li{
line-height: 1.4em;
width: 100%;
padding: 0px;
box-sizing: border-box;

}


ul.twelcource > li > a{
line-height: 1.4em;
width: 100%;
background: #cccdcd;
padding: 10px;
box-sizing: border-box;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
gap:10px;
user-select: none;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
cursor: pointer;
}
ul.twelcource > li > a:hover{

background: #ddd;

}


ul.twelcource > li > a > div:nth-child(1){
text-align: left;
width: 70%;
font-size: 12px;
}
.twelvctlt{
font-size: 20px;
}
ul.twelcource > li > a > div:nth-child(2){

width: 15%;

}

.transfx{
display: inline-block;
transform-origin: top left;
transform: scaleX(1.0);
width: 100%;
white-space: nowrap;
}



}









/* .main.cource_sp .tlt-sercle{
background: #eee;
}
.main.cource_sp .cource_tlt{
color: #eee;
} */


.wdblock{
width: 100%;
text-align: center;
margin: 50px 0 0;
}



.main.cource_gtc01 .tlt-sercle{background: #e3007f;}.main.cource_gtc01 .cource_tlt{color: #e3007f;}
.main.cource_gtc02 .tlt-sercle{background: #e3007f;}.main.cource_gtc02 .cource_tlt{color: #e3007f;}
.main.cource_gtc05 .tlt-sercle{background: #e3007f;}.main.cource_gtc05 .cource_tlt{color: #e3007f;}
.main.cource_gtc04 .tlt-sercle{background: #fccf00;}.main.cource_gtc04 .cource_tlt{color: #fccf00;}
.main.cource_gtc03 .tlt-sercle{background: #1d2087;}.main.cource_gtc03 .cource_tlt{color: #1d2087;}
.main.cource_itf .tlt-sercle{background: #009d95;}.main.cource_itf .cource_tlt{color: #009d95;}
.main.cource_itd .tlt-sercle{background: #009d95;}.main.cource_itd .cource_tlt{color: #009d95;}
.main.cource_bsb .tlt-sercle{background: #009fe8;}.main.cource_bsb .cource_tlt{color: #009fe8;}
.main.cource_bsc .tlt-sercle{background: #009fe8;}.main.cource_bsc .cource_tlt{color: #009fe8;}
.main.cource_pat .tlt-sercle{background: #f29600;}.main.cource_pat .cource_tlt{color: #f29600;}
.main.cource_wel .tlt-sercle{background: #6fb92c;}.main.cource_wel .cource_tlt{color: #6fb92c;}




.header-tlt{
margin-top: 150px;
white-space: nowrap;
}


.header-tlt h1{
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
font-size: 40px;
letter-spacing: 0.05em;
margin: 0;
}

.header-tlt h1 img{
width: 80px;

}

.header-tlt h1 span.h1subtxt{
font-size: 28px;
margin: 0 20px;
font-weight: normal;
border-top: 1px solid #222;
border-bottom: 1px solid #222;
padding: 14px 15px;

}


.header-tlt h1 span.h1txt{
font-size: 45px;
}




.cource_subtitle{
font-size: 37px;
font-weight: bold;
margin: 0.4em auto 0.9em auto;
vertical-align:middle;
display: inline-flex;
text-align: center;
align-items: center;
}


.cource_subtitle span.h1subtxt{
font-size: 20px;
font-weight: normal;
border-top: 1px solid #222;
border-bottom: 1px solid #222;
padding: 5px 15px;
margin-right: 0.8em;
}



.ftrtxts{
text-align: right;
display: inline-block;
}
.ftrtxts span{
text-align: right;
font-size: 12px;
font-weight: normal;
line-height: 1.4em;
padding-right: 3em;
}
















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


.header-tlt{
margin-top: 20px;
}


.header-tlt h1{
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
font-size: 4.5vw;
letter-spacing: 0.05em;
margin: 0;
}

.header-tlt h1 img{
width: 10vw;

}

/*
.header-tlt h1 span{
font-size: 4vw;
margin: 0 10px;
font-weight: normal;
border-top: 1px solid #222;
border-bottom: 1px solid #222;
padding: 5px 5px;

}
*/


.header-tlt h1 span.h1subtxt{
font-size: 3vw;
margin: 0 7px;
font-weight: normal;
border-top: 1px solid #222;
border-bottom: 1px solid #222;
padding: 0.1em 0.3em;

}


.header-tlt h1 span.h1txt{
font-size: 4vw;
}



.cource_subtitle{
font-size: 4vw;
font-weight: bold;
margin: 0.4em auto 0.9em auto;
vertical-align:middle;
display: inline-flex;
text-align: center;
align-items: center;
}

.cource_subtitle span.h1subtxt{
font-size: 3vw;
font-weight: normal;
border-top: 1px solid #222;
border-bottom: 1px solid #222;
padding: 2px 5px;
margin-right: 0.8em;
}



}










.cource_tlt_cp{
margin: 20px 0 50px;
font-size: 23px;
line-height: 1.7em;
}


.mainimgwrap{
position: relative;
}

.mainimgwrap img.showyourdream{
position: absolute;
width: 413px;
height: auto;
bottom: -120px;
right: 30px;
}


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



.cource_tlt_cp{
margin: 20px 0 20px;
font-size: 15px;
line-height: 1.7em;
width: 94%;
margin-left: 3%;
text-align: left;
}


.mainimgwrap{
position: relative;
}

.mainimgwrap img.showyourdream{
position: absolute;
width: 40%;
height: auto;
bottom: -40px;
right: 10px;
}



}





.crtltwrap{
width: 100%;
text-align: center;
margin: 50px 0;
}

.cource-subtlt{
display: inline-block;
margin: 0 auto;
width: auto;
position: relative;
}


.tlt-sercle{
background: #e60012;
width: 230px;
height: 230px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 50%;
}
.tlt-sercle img.ic-topics{
height: 70%;
width: auto;

}
.cource-tlt-pic{
width: 250px;
position: absolute;
top: -20px;
left: 170px;
}




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


.crtltwrap{
width: 100%;
text-align: center;
margin: 30px 0;
}

.cource-subtlt{
display: inline-block;
margin: 0 auto;
width: auto;
position: relative;
}


.tlt-sercle{
background: #e60012;
width: 100px;
height: 100px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 50%;
}
.tlt-sercle img.ic-topics{
height: 70px;
width: auto;

}
.cource-tlt-pic{
width: 100px;
position: absolute;
top: 12px;
left: 70px;
}



}







.cource_box{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
width: 100%;
margin: 100px 0;
}


.rowrev{
flex-direction: row-reverse;
}

.cource_box_b01{
width: 135px;


text-align: left;
/*width: fit-content;*/
writing-mode:vertical-rl;
font-size: 42px;
line-height: 1.0em;
font-weight:200;
padding-bottom: 0.5em;

margin:0;
font-family: 'Noto Serif JP', serif;

}

.cource_box_b01 span{
text-combine-upright: all;

}
.cource_box_b01 span.txtsz80{
text-combine-upright: none !important;
font-size: 70%;
}



.cource_box_b02{
width: 245px;
display: flex;
flex-direction: column;
min-height: 400px;
justify-content: space-between
}

.cource_box_b02 span{
font-size: 70px;
text-align: left;
line-height: 1.7em;
color: #e50012;
}

.cource_box_b02 p{
font-size: 15px;
text-align: left;
line-height: 1.9em;
}

.cource_box_b03{
width: 560px;
}


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




.cource_box{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
width: 100%;
margin: 30px 0;
}


.rowrev{
flex-direction: column !important;
}

.cource_box_b01{
width: 100%;


text-align: center;
/*width: fit-content;*/
writing-mode:horizontal-tb;
font-size: 20px;
line-height: 1.3em;
font-weight:200;
padding-bottom: 0.5em;

margin:0;
font-family: 'Noto Serif JP', serif;

}

.cource_box_b02{
width: 100%;
display: flex;
flex-direction: column;
min-height: 100px;
justify-content: space-between
}

.cource_box_b02 span{
font-size: 30px;
text-align: center;
line-height: 1.7em;
color: #e50012;
}

.cource_box_b02 p{
font-size: 12px;
text-align: left;
line-height: 2em;
}

.cource_box_b03{
width: 100%;
}



}











.cource_box_voice{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-start;
width: 100%;
margin: 90px 0;
}


.rowrev{
flex-direction: row-reverse;
}

.cource_box_voice_b01{
width: 135px;
margin:0;
display: flex;
flex-direction: column;
flex-wrap: nowrap;

}





.cource_box_voice_b01 .voice_tlt{


text-align: left;
/*width: fit-content;*/
writing-mode:vertical-rl;
font-size: 42px;
line-height: 1.0em;
font-weight:200;
padding-bottom: 0.5em;
font-family: 'Noto Serif JP', serif;

}

.cource_box_voice_b01 .voice_ic{

width: 106px;

}
.cource_box_voice_b01 .voice_ic img{

width: 100%;
height: auto;
}




.cource_box_voice_b02{
width: 730px;
display: flex;
flex-direction: column;
justify-content: space-between
}

.cource_box_voice_b02 .voice_b02tlt{
font-size: 20px;
text-align: left;
line-height: 1.3em;
font-weight: 400;
margin-top: 1em;
z-index: 1;
}
.cource_box_voice_b02 .voice_b02tlt span{
font-size: 15px;
text-align: left;
line-height: 1.3em !important;
font-weight: normal;
margin-top: 0.0em;
z-index: 1;
}

.cource_box_voice_b02 p{
font-size: 15px;
text-align: left;
line-height: 2.2em;
z-index: 1;
}





.rowrev .cource_box_voice_b01 .voice_ic img{
transform: scale(-1, 1);
width: 100%;
height: auto;
}



.cource_box_img{
position: relative;
}

img.box_img_teacher{
width: 217px;
height: auto;
position: absolute;
bottom: -40px;
right: 10px;
}

img.box_img_current{
width: 276px;
height: auto;
position: absolute;
bottom: -40px;
right: 10px;
}

img.box_img_graduate{
width: 280px;
height: auto;
position: absolute;
bottom: -78px;
right: 10px;
}


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


.cource_box_voice{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-start;
width: 100%;
margin: 40px 0;
}


.rowrev{
flex-direction: row-reverse;
}

.cource_box_voice_b01{
width: 100%;
margin:0;
display: flex;
flex-direction: column;
flex-wrap: nowrap;

}





.cource_box_voice_b01 .voice_tlt{


text-align: center;
/*width: fit-content;*/
writing-mode:horizontal-tb;
font-size: 20px;
line-height: 1.3em;
font-weight:200;
padding-bottom: 0.5em;


}

.cource_box_voice_b01 .voice_ic{

width: 100%;
text-align: center;
margin-bottom: 10px;
}
.cource_box_voice_b01 .voice_ic img{

width: 40px;
height: auto;
}




.cource_box_voice_b02{
width: 100%;
display: flex;
flex-direction: column;
justify-content: space-between
}

.cource_box_voice_b02 .voice_b02tlt{
font-size: 12px;
text-align: left;
line-height: 1.3em;
font-weight: bold;
margin-top: 1em;
z-index: 1;
}
.cource_box_voice_b02 .voice_b02tlt span{
font-size: 12px;
text-align: left;
line-height: 1.3em !important;
font-weight: normal;
margin-top: 0.0em;
z-index: 1;
}

.cource_box_voice_b02 p{
font-size: 12px;
text-align: left;
line-height: 2.2em;
z-index: 1;
}





.rowrev .cource_box_voice_b01 .voice_ic img{
transform: scale(1, 1);
width: 40px;
height: auto;
}



.cource_box_img{
position: relative;
}

img.box_img_teacher{
width: 150px;
height: auto;
position: absolute;
bottom: -10px;
right: 10px;
}

img.box_img_current{
width: 150px;
height: auto;
position: absolute;
bottom: -10px;
right: 10px;
}

img.box_img_graduate{
width: 150px;
height: auto;
position: absolute;
bottom: -10px;
right: 10px;
}



}
















table.cource_tbl{
padding: 0;
margin: 50px 0;
border: 0;
width: 100%;
border-spacing: 8px;
}

table.cource_tbl td{
/*padding: 0;
margin: 0;
border: 0;*/
text-align:center;
}

.tdcol_sp{
background: #e50012 !important;
color: #fff !important;
border: 0;
}
.tdcol_gtc{
background: #e3007f !important;
color: #fff !important;
border: 0;
}
.tdcol_itf{
background: #009d95 !important;
color: #fff !important;
border: 0;
}
.tdcol_bsb{
background: #009fe8 !important;
color: #fff !important;
}
.tdcol_pat{
background: #f29600 !important;
color: #fff !important;
}
.tdcol_wel{
background: #6fb92c !important;
color: #fff !important;
}
.tdcol_gtc03{
background: #1d2087 !important;
color: #fff !important;
}
.tdcol_gtc04{
background: #fccf00 !important;
color: #fff !important;
}




td.tdcol_ln{
background: #fff !important;
color: #000 !important;
border: 1px solid #000;
padding: 0.5em;
box-sizing: border-box;
font-size: 20px;
line-height: 1.4em;
}






table.cource_tbl > tr > td:nth-child(1){
width: 6% !important;
background: #fff;
}
table.cource_tbl > tr > td:nth-child(2){
width: 30%;
background: #fff;
text-align: left !important;
vertical-align:middle;
padding: 2em !important;
box-sizing: border-box;
font-size: 27px;
}
table.cource_tbl > tr > td:nth-child(2) p{
display: block;
width: 100%;
padding: 1em !important;
}

table.cource_tbl tr > td:nth-child(3){
width: 64%;
background: #fee;
}

table.cource_tbl td a{
line-height: 2em;
width: 100%;
background: rgba(255,255,255,0);
padding: 15px;
box-sizing: border-box;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
gap:10px;
user-select: none;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
cursor: pointer;
}
table.cource_tbl td a:hover{

background: rgba(255,255,255,0.4);

}


table.cource_tbl td  a > div:nth-child(1){
text-align: left;
width: 70%;
font-size: 17px;
}
.twelvctlt{
font-size: 27px;
}
table.cource_tbl td  a > div:nth-child(2){

width: 86px;

}

.cource-l{
font-size: 26px;
padding: 20px;
text-align: left !important;
line-height: 1.4em;
box-sizing: border-box;
}
.cource-lt{
font-size: 26px;
padding: 20px;
text-align: left !important;
line-height: 1.4em;
box-sizing: border-box;
vertical-align:top !important;
padding-top: 30px;
}






.smtxt{
font-size: 70%;
margin-top: 0.3em;
}








.vrwrt{
writing-mode: vertical-rl !important;
width: 10px !important;
}

.newcor{
padding: 0.1em 0.5em;
background: #fff000;
color: #000;
font-size: 1.2em;
font-weight: bold;
letter-spacing: 0em;
margin-left: 0.5em;
}

.sctxt{
font-size: 80%;
}






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





table.cource_tbl{
padding: 0;
margin: 30px 0;
border: 0;
width: 100%;
border-spacing: 2px;
}

table.cource_tbl td{
/*padding: 0;
margin: 0;
border: 0;*/
text-align:center;
}

.tdcol_sp{
background: #e50012 !important;
color: #fff !important;
border: 0;
}
.tdcol_gtc{
background: #e3007f !important;
color: #fff !important;
border: 0;
}
.tdcol_itf{
background: #009d95 !important;
color: #fff !important;
border: 0;
}
.tdcol_bsb{
background: #009fe8 !important;
color: #fff !important;
}
.tdcol_pat{
background: #f29600 !important;
color: #fff !important;
}
.tdcol_wel{
background: #6fb92c !important;
color: #fff !important;
}
.tdcol_gtc03{
background: #1d2087 !important;
color: #fff !important;
}
.tdcol_gtc04{
background: #fccf00 !important;
color: #fff !important;
}




td.tdcol_ln{
background: #fff !important;
color: #000 !important;
border: 1px solid #000;
padding: 0.3em;
box-sizing: border-box;
font-size: 3vw;
line-height: 1.4em;
}






table.cource_tbl > tr > td:nth-child(1){
width: 6% !important;
background: #fff;
}
table.cource_tbl > tr > td:nth-child(2){
width: 25%;
background: #fff;
text-align: left !important;
vertical-align:middle;
padding: 2em !important;
box-sizing: border-box;
font-size: 27px;
}
table.cource_tbl > tr > td:nth-child(2) p{
display: block;
width: 100%;
padding: 1em !important;
}

table.cource_tbl tr > td:nth-child(3){
width: 69%;
background: #fee;
}

table.cource_tbl td a{
line-height: 1.3em;
width: 100%;
background: rgba(255,255,255,0);
padding: 7px;
box-sizing: border-box;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
gap:7px;
user-select: none;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
cursor: pointer;
}
table.cource_tbl td a:hover{

background: rgba(255,255,255,0.4);

}


table.cource_tbl td  a > div:nth-child(1){
text-align: left;
width: 80%;
font-size: 2.7vw;
}
.twelvctlt{
font-size: 4vw;
}
table.cource_tbl td  a > div:nth-child(2){

width: 18%;

}

.cource-l{
font-size: 3vw;
padding: 8px;
text-align: left !important;
line-height: 1.4em;
box-sizing: border-box;
}
.cource-lt{
font-size: 3vw;
padding: 7px;
text-align: left !important;
line-height: 1.4em;
box-sizing: border-box;
vertical-align:top !important;
padding-top: 30px;
}






.smtxt{
font-size: 70%;
margin-top: 0.3em;
}





.vrwrt{
writing-mode: vertical-rl !important;
width: 10px !important;
}

.newcor{
padding: 0.1em 0.5em;
background: #fff000;
color: #000;
font-size: 1.2em;
font-weight: bold;
letter-spacing: 0em;
margin-left: 0.5em;
white-space: nowrap;
}

.sctxt{
font-size: 80%;
}







}






.uniform-hs{
background: #f7efe3;
margin-top: 40px;
padding-top: 0px;
}

.uniform-hs2{
background: #f7efe3;
margin-top: 40px;
padding-top: 0px;
}



.uniform_txt{
font-size: 16px;
text-align: left;
padding:2em 3em;
line-height: 2em;
box-sizing: border-box;
}
.uniform_txt ul.uniform-hs-lst{
text-align: center;
width: 100%;
margin: 0 auto;
}
.uniform_txt ul.uniform-hs-lst{
text-align: center;
width: 100%;
margin: 0 auto;
justify-content: space-around;
}



ul.uniform-hs-lst{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-items: flex-end;
}
ul.uniform-hs-lst > li{
width: 25%;
}
/*
ul.uniform-hs-lst > li:nth-child(1){
width: 23%;
}
ul.uniform-hs-lst > li:nth-child(2){
width: 23%;
}
ul.uniform-hs-lst > li:nth-child(5){
width: 23%;
}
ul.uniform-hs-lst > li:nth-child(6){
width: 18%;
}
ul.uniform-hs-lst > li:nth-child(7){
width: 18%;
}
*/

ul.uniform-hs-lst p{
font-size: 12px;
line-height: 1.4em;
margin: 0;
padding: 0;
}

.uniform-hs-wrap{
padding: 0 30px 20px 30px;
}

.uniforml-flx-w{
width: 90%;
margin-left: 3%;
}








ul.uniform-jhs-lst{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
align-items: flex-end;
}
ul.uniform-jhs-lst > li{
width: 20%;
}
ul.uniform-jhs-lst > li:nth-child(1){
width: 23%;
}
ul.uniform-jhs-lst > li:nth-child(2){
width: 23%;
}
ul.uniform-jhs-lst > li:nth-child(5){
width: 15%;
}
ul.uniform-jhs-lst > li:nth-child(6){
width: 18%;
}
ul.uniform-jhs-lst > li:nth-child(7){
width: 18%;
}


ul.uniform-jhs-lst p{
font-size: 12px;
line-height: 1.4em;
margin: 0;
padding: 0;
}






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



ul.uniform-jhs-lst{
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-items: flex-end;
justify-content: space-around;
}
ul.uniform-jhs-lst > li{
width: 48%;
}
ul.uniform-jhs-lst > li:nth-child(1){
width: 48%;
}
ul.uniform-jhs-lst > li:nth-child(2){
width: 48%;
}
ul.uniform-jhs-lst > li:nth-child(5){
width: 48%;
}
ul.uniform-jhs-lst > li:nth-child(6){
width: 48%;
}
ul.uniform-jhs-lst > li:nth-child(7){
width: 48%;
}



.uniform-hs{
background: #f7efe3;
margin-top: 20px;
padding-top: 0px;
}

.uniform-hs2{
background: #f7efe3;
margin-top: 40px;
padding-top: 0px;
}

.uniform_txt{
font-size: 3.5vw;
text-align: left;
padding:1em;
line-height: 1.6em;
box-sizing: border-box;
}




ul.uniform-hs-lst{
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
}
ul.uniform-hs-lst > li{
width: 45%;
}

.uniform-hs-wrap{
padding: 0 0 20px 0;
}

.uniforml-flx-w{
width: 100%;
margin-left: 0%;
}


}















.blpc{
display: block;
}

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

.blpc{
display: none;
}

}



ul.sdlst{
display: flex;
flex-direction: row;
flex-wrap: wrap;
/*align-items: flex-start;*/
align-items:stretch;
gap:50px 15px;
}
ul.sdlst >li:nth-child(odd){
width: 20%;
}
ul.sdlst >li:nth-child(even){
width: 1.5%;
/*height: 100%;*/
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
position: relative;
}

img.cerclefit {
  width: 100%;
  height: auto;
  border-radius: 50%;
  object-fit: cover;
}

ul.sdlst >li div:nth-child(1){
width: 100%;
margin-bottom: 0.5em;
font-size: 95%;
line-height: 1.3em;
min-height: 60px;
vertical-align: middle;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
}

ul.sdlst >li div:nth-child(3){
width: 100%;
font-size: 80%;
text-align: left;
}

.sz80{
font-size: 80%;
}

ul.sdlst >li:nth-child(even) div:nth-child(2){

position: absolute;
top:50%;
}


.sdlst-src{
color: #fff;
background: #913d35;
width: 100%;
height: auto;
border-radius: 50%;
}







.sdlst-src_w {
width: 100%;
color: #fff;
/*background: #913d35;*/

background: #99362f;

border-radius: 50%;

}

.sdlst-src_h {
position: relative;
padding-top: 100%;
height: 0;
}

.sdlst-src_h p {
position: absolute;
top: calc((100% - 1em)/2);
left: 0;
right: 0;
margin: 0;
text-align: center;
}






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


ul.sdlst{
display: flex;
flex-direction: row;
flex-wrap: wrap;
/*align-items: flex-start;*/
align-items:stretch;
gap:30px 3%;
justify-content: flex-start;
margin-left: 5%;
}
ul.sdlst >li:nth-child(odd){
width: 40%;
}
ul.sdlst >li:nth-child(even){
width: 3%;
/*height: 100%;*/
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
position: relative;
}

img.cerclefit {
  width: 100%;
  height: auto;
  border-radius: 50%;
  object-fit: cover;
}

ul.sdlst >li div:nth-child(1){
width: 100%;
margin-bottom: 0.5em;
font-size: 3vw;
line-height: 1.3em;
min-height: 35px;
vertical-align: middle;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
}

ul.sdlst >li div:nth-child(3){
width: 100%;
font-size: 2.7vw;
text-align: left;
line-height: 1.4em;
}

.sz80{
font-size: 80%;
}

ul.sdlst >li:nth-child(even) div:nth-child(2){

position: absolute;
top:50%;
}


.sdlst-src{
color: #fff;
background: #913d35;
width: 100%;
height: auto;
border-radius: 50%;
}







.sdlst-src_w {
width: 100%;
color: #fff;
/*background: #913d35;*/

background: #99362f;

border-radius: 50%;

}

.sdlst-src_h {
position: relative;
padding-top: 100%;
height: 0;
}

.sdlst-src_h p {
position: absolute;
top: calc((100% - 1em)/2);
left: 0;
right: 0;
margin: 0;
text-align: center;
}



}





ul.movie-shp{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
gap: 12px 8px;
}
ul.movie-shp > li >p{
width: 100%;
text-align: left;
padding: 0 0.5em;
font-size: 90%;
}



.cource-cp{
width: 100%;
margin: 1em 0;
text-align: left;
}







.instagram23__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0px;
		gap:2px;
}

.instagram23__list li {
    position: relative;
    width: calc(33% - 4px);
    margin: 2px;
    overflow: hidden;
}

.instagram23__list li a{
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

.instagram23__list li a:hover{
    opacity: 0.8;
}


.instagram23__list li::before {
    content: '';
    display: block;
    padding-top: 100%;
}

.instagram23__list li img {
    position: absolute;
    top: 0;
    left: 0;
    max-width: none;
    max-height: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
}









a.arrow_r {
  position: relative;
  display: inline-block;
  padding-right: 15px;
	color: #251e1c;
	text-decoration: none;
}
a.arrow_r:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
a.arrow_r:hover {

	color: #423e3d;
	text-decoration: underline;
}





.top_pbox{
width: 100%;
margin-top: 20px;
padding: 30px;
box-sizing: border-box;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
}

.top_pbox > div:nth-child(1){
width: 68%;
text-align: left;

}
.top_pbox > div:nth-child(2){
width: 32%;

}





.bgcl01{
background: #ebf3e3;
}
.bgcl02{
/*background: #ece1d9;*/

background: #eeded5;

}




.top_pbox_tlt{
margin: 0 0 1em 0;
padding: 0 0.5em 0.5em 0.5em;
border-bottom: 1px solid #000;
font-weight: bold;
font-size: 130%;
}
.top_pbox_lnk{
width: 75%;
margin-top: 40px;
}
.top_pbox_lnk a{
width: 100%;
text-align: center;
display: block;
margin: 1em 0;
}



.top_pbox_lnk a:hover{
display: block;
margin: 1em 0;
}

.right_box p{
font-size: 85%;
line-height: 1.3em;
margin: 0;
padding: 1em 0 0 0;
}


.aitem_st{

align-items: flex-start !important;

}



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


.top_pbox{
width: 100%;
margin-top: 20px;
padding: 10px;
box-sizing: border-box;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
}

.top_pbox > div:nth-child(1){
width: 68%;
text-align: left;

}
.top_pbox > div:nth-child(2){
width: 32%;

}


.top_pbox_tlt{
margin: 0 0 1em 0;
padding: 0 0.5em 0.5em 0.5em;
border-bottom: 1px solid #000;
font-weight: bold;
font-size: 4vw;
}
.top_pbox_lnk{
width: 95%;
margin-top: 10px;
}
.top_pbox_lnk a{
width: 100%;
text-align: center;
display: block;
margin: 0.5em 0;
}



.top_pbox_lnk a:hover{
display: block;
margin: 1em 0;
}

.right_box p{
font-size: 3vw;
line-height: 1.3em;
margin: 0;
padding: 1em 0 0 0;
}


}




				.toptrial{
					width: 100%;
					margin: 80px 0;
					text-align: center;
					display: flex;
					flex-direction: row;
					justify-content: center;
					gap: 10px;
				}

				.toptrial a{
					display: inline-block;
					width: 400px;
					text-align: center;

				}



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

					.toptrial{
						width: 80%;
						margin: 20px 0 20px 10%;
						text-align: center;
						flex-direction: column;
					}

					.toptrial a{
						display: inline-block;
						width: 100%;
						text-align: center;

					}


				}















ul.prt_courcelink{
display: flex;flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
}
ul.prt_courcelink > li{
width: 49%;
}






ul.prt_courcelink table.cource_tbl{
padding: 0;
margin: 50px 0;
border: 0;
width: 100%;
border-spacing: 8px;
}

ul.prt_courcelinktable .cource_tbl td{
/*padding: 0;
margin: 0;
border: 0;*/
text-align:center;
}

ul.prt_courcelink .tdcol_sp{
background: #e50012 !important;
color: #fff !important;
border: 0;
}
ul.prt_courcelink .tdcol_gtc{
background: #e3007f !important;
color: #fff !important;
border: 0;
}
ul.prt_courcelink .tdcol_itf{
background: #009d95 !important;
color: #fff !important;
border: 0;
}
ul.prt_courcelink .tdcol_bsb{
background: #009fe8 !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_pat{
background: #f29600 !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_wel{
background: #6fb92c !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_gtc03{
background: #1d2087 !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_gtc04{
background: #fccf00 !important;
color: #fff !important;
}


ul.prt_courcelink td.tdcol_ln{
background: #fff !important;
color: #000 !important;
border: 1px solid #000;
padding: 0.5em;
box-sizing: border-box;
font-size: 20px;
line-height: 1.4em;
}


ul.prt_courcelink table.cource_tbl > tr > td:nth-child(1){
width: 40% !important;
background: #fff;
}
ul.prt_courcelink table.cource_tbl > tr > td:nth-child(2){
width: 60% !important;
background: #fff;
text-align: left !important;
vertical-align:middle;
padding: 2em !important;
box-sizing: border-box;
font-size: 27px;
}
ul.prt_courcelink table.cource_tbl > tr > td:nth-child(2) p{
display: block;
width: 100%;
padding: 1em !important;
}

ul.prt_courcelink table.cource_tbl tr > td:nth-child(3){
width: 64%;
background: #fee;
}

ul.prt_courcelink table.cource_tbl td a{
line-height: 2em;
width: 100%;
background: rgba(255,255,255,0);
padding: 10px;
box-sizing: border-box;
color: #fff;
text-decoration: none;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
gap:10px;
user-select: none;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
cursor: pointer;
min-height: 90px;
}
ul.prt_courcelink table.cource_tbl td a:hover{

background: rgba(255,255,255,0.4);
color: #fff;
text-decoration: none;

}


ul.prt_courcelink table.cource_tbl td  a > div:nth-child(1){
text-align: left;
width: 95%;
font-size: 17px;
}
ul.prt_courcelink .twelvctlt{
font-size: 22px;
}
ul.prt_courcelink table.cource_tbl td  a > div:nth-child(2){

width: 85px;

}

ul.prt_courcelink .cource-l{
font-size: 20px;
padding: 15px;
text-align: left !important;
line-height: 1.2em;
box-sizing: border-box;
}
ul.prt_courcelink .cource-l-pt{
font-size: 20px;
padding: 5px 15px;
text-align: left !important;
line-height: 1.1em;
box-sizing: border-box;
}
ul.prt_courcelink .cource-lt{
font-size: 20px;
padding: 15px 10px;
text-align: left !important;
line-height: 1.2em;
box-sizing: border-box;
vertical-align:top !important;
}

ul.prt_courcelink .smtxt{
font-size: 70%;
margin-top: 0em;
}






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

ul.prt_courcelink{
display: flex;flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
}
ul.prt_courcelink > li{
width: 100%;
}



ul.prt_courcelink table.cource_tbl{
padding: 0;
margin: 20px 0;
border: 0;
width: 100%;
border-spacing: 8px;
}

ul.prt_courcelinktable .cource_tbl td{
/*padding: 0;
margin: 0;
border: 0;*/
text-align:center;
}

ul.prt_courcelink .tdcol_sp{
background: #e50012 !important;
color: #fff !important;
border: 0;
}
ul.prt_courcelink .tdcol_gtc{
background: #e3007f !important;
color: #fff !important;
border: 0;
}
ul.prt_courcelink .tdcol_itf{
background: #009d95 !important;
color: #fff !important;
border: 0;
}
ul.prt_courcelink .tdcol_bsb{
background: #009fe8 !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_pat{
background: #f29600 !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_wel{
background: #6fb92c !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_gtc03{
background: #1d2087 !important;
color: #fff !important;
}
ul.prt_courcelink .tdcol_gtc04{
background: #fccf00 !important;
color: #fff !important;
}


ul.prt_courcelink td.tdcol_ln{
background: #fff !important;
color: #000 !important;
border: 1px solid #000;
padding: 0.5em;
box-sizing: border-box;
font-size: 3.5vw;
line-height: 1.4em;
}


ul.prt_courcelink table.cource_tbl > tr > td:nth-child(1){
width: 40% !important;
background: #fff;
}
ul.prt_courcelink table.cource_tbl > tr > td:nth-child(2){
width: 60% !important;
background: #fff;
text-align: left !important;
vertical-align:middle;
padding: 2em !important;
box-sizing: border-box;
font-size: 4vw;
}
ul.prt_courcelink table.cource_tbl > tr > td:nth-child(2) p{
display: block;
width: 100%;
padding: 1em !important;
}

ul.prt_courcelink table.cource_tbl tr > td:nth-child(3){
width: 64%;
background: #fee;
}

ul.prt_courcelink table.cource_tbl td a{
line-height: 2em;
width: 100%;
background: rgba(255,255,255,0);
padding: 10px;
box-sizing: border-box;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
gap:10px;
user-select: none;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
cursor: pointer;
min-height: 0;
}
ul.prt_courcelink table.cource_tbl td a:hover{

background: rgba(255,255,255,0.4);

}


ul.prt_courcelink table.cource_tbl td  a > div:nth-child(1){
text-align: left;
width: 95%;
font-size: 3vw;
}
ul.prt_courcelink .twelvctlt{
font-size: 4vw;
}
ul.prt_courcelink table.cource_tbl td  a > div:nth-child(2){

width: 65px;

}

ul.prt_courcelink .cource-l{
font-size: 3vw;
padding: 10px;
text-align: left !important;
line-height: 1.2em;
box-sizing: border-box;
}
ul.prt_courcelink .cource-l-pt{
font-size: 3vw;
padding: 5px 10px;
text-align: left !important;
line-height: 1.1em;
box-sizing: border-box;
}
ul.prt_courcelink .cource-lt{
font-size: 3vw;
padding: 15px 10px;
text-align: left !important;
line-height: 1.2em;
box-sizing: border-box;
vertical-align:top !important;
}

ul.prt_courcelink .smtxt{
font-size: 2.5vw;
margin-top: 0em;
}


}






/* cource */


ul.edu_met_thf{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;

}

ul.edu_met_thf > li{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
width: 28%;
border: 1px solid #000;
text-align: center;
padding: 20px;
box-sizing: border-box;
background: #fff;
/*filter:drop-shadow(10px 10px 0px #22ac38);*/
box-shadow: 10px 10px 0px #22ac38;
position: relative;
}

ul.edu_met_thf > li > div::before{
content: "";
width: 99px;
height: 114px;
position: absolute;
top: -50px;
left: -23px;
background-repeat: no-repeat;
}
ul.edu_met_thf > li > div.stp01::before{
background-image: url(./img/s01.png);
}
ul.edu_met_thf > li > div.stp02::before{
background-image: url(./img/s02.png);
}
ul.edu_met_thf > li > div.stp03::before{
background-image: url(./img/s03.png);
}
ul.edu_met_thf > li > div::after{
content: "";
width: 47px;
height: 48px;
position: absolute;
bottom: 10px;
right: 10px;
background-image: url(./img/step_btm.png);
background-repeat: no-repeat;
}


ul.edu_met_thf > li p{
font-size: 17px;
text-align: center;
}



ul.hs_cource{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;

}

ul.hs_cource > li{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
width: 32%;
border: 1px solid #000;
text-align: center;
padding: 10px;
box-sizing: border-box;
background: #fff;
/*filter:drop-shadow(10px 10px 0px #22ac38);*/
position: relative;
}

ul.hs_cource > li > div::before{
content: "";
width: 99px;
height: 114px;
position: absolute;
top: -50px;
left: -23px;
background-repeat: no-repeat;
}



*{font-feature-settings: "palt";
				}


.notetxt{
font-size: 10px;
line-height: 1.2em;
font-weight: normal;
}



/* athlete */

.ath_box{
margin: 30px 0 50px 0;
}

.ath_box h4{
font-size: 30px;
font-weight: normal;
    display: flex;
    align-items: center;
}

.ath_box h4:before,
.ath_box h4:after {
    content: "";
    height: 2px;
    flex-grow: 1;
    background-color: #666;
}

.ath_box h4:before {
    margin-right: 1rem;
}

.ath_box h4:after {
    margin-left: 1rem;
}

ul.ath_boxlst{
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap:15px;
}


ul.ath_boxlst > li{
width: 18%;
}
ul.ath_boxlst > li div.pnkbox{
width: 100%;
padding: 0.5em;
font-size: 17px;
box-sizing: border-box;
line-height: 1.4em;
background: #f9dde8;
border: 2px solid #acacad;
min-height: 80px;
display: flex;
justify-content: center;
align-items: center;
}



ul.ath_boxlst a{
text-decoration: none;
color: #000;
}
ul.ath_boxlst a:hover{
text-decoration: underline;
color: #666;
}



.sth_btmnbox{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
margin-top: 5px;
}
.sth_btmnbox > div:nth-child(1){
width:25%;
}
.sth_btmnbox > div:nth-child(2){
width:71%;
font-size: 12px;
text-align: left;
line-height: 1.4em;
}




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



.ath_box{
margin: 30px 0 50px 0;
}

.ath_box h4{
font-size: 4vw;
font-weight: normal;
    display: flex;
    align-items: center;
}

.ath_box h4:before,
.ath_box h4:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

.ath_box h4:before {
    margin-right: 1rem;
}

.ath_box h4:after {
    margin-left: 1rem;
}

ul.ath_boxlst{
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap:15px;
}


ul.ath_boxlst > li{
width: calc((100% - 30px) / 3);
}
ul.ath_boxlst > li div.pnkbox{
width: 100%;
padding: 0.5em;
font-size: 3.1vw;
box-sizing: border-box;
line-height: 1.4em;
background: #f9dde8;
border: 2px solid #acacad;
min-height: 65px;
display: flex;
justify-content: center;
align-items: center;
}



ul.ath_boxlst a{
text-decoration: none;
color: #000;
}
ul.ath_boxlst a:hover{
text-decoration: underline;
color: #666;
}


.sth_btmnbox{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
margin-top: 5px;
}
.sth_btmnbox > div:nth-child(1){
width:25%;
}
.sth_btmnbox > div:nth-child(2){
width:71%;
font-size: 2.3vw;
text-align: left;
line-height: 1.4em;
}




}







.textvrtm{

transform: scale(0.8, 1);
    transform-origin: top left;
    width: 125%;
}


.cource_ph_cap{
font-size: 14px;
text-align: left;
margin-top: 0.5em;
line-height: 1.3em;
  padding-left: 1em;
  text-indent: -1em;
}




.twbutn{
width: 100%;
display: flex;
justify-content: center;
gap:40px;
padding: 20px 0 50px 0;
flex-direction: row;
}
.twbutn > a{
width: 30%;
display: flex;
justify-content: center;
gap:10px;
background: #f29600;
color: #fff;
font-size: 14px;
text-align: left;
line-height: 1.4em;
align-items: center;
padding: 10px;
box-sizing: border-box;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
text-decoration: none;
}
.twbutn > a:hover{

background: #f4a44e;


}
.twbutn > a img{
width: 50px;
}


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



.twbutn{
width: 80%;
display: flex;
justify-content: center;
gap:30px;
padding: 20px 0 20px 0;
flex-direction: column;
margin-left: 10%;
}
.twbutn > a{
width: 100%;
display: flex;
justify-content: center;
gap:10px;
background: #f29600;
color: #fff;
font-size: 14px;
text-align: left;
line-height: 1.4em;
align-items: center;
padding: 10px;
box-sizing: border-box;
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
text-decoration: none;
}

.twbutn > a > div:nth-child(1){
width: 30%;

}
.twbutn > a > div:nth-child(2){
width: 70%;

}


.twbutn > a:hover{

background: #f4a44e;


}
.twbutn > a img{
width: 60%;
}


}










.article__img {
  /*padding-bottom: 100%;*/
	padding-bottom: 0;
}
.pagenation-wrap {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  padding: 10px 35px 20px 35px;

}

@media screen and ( max-width:767px ){
.pagenation-wrap {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  padding: 0px 35px 0px 35px;

}
}



.mv__slide--pagination .swiper-pagination-bullet {
  margin: 0 10px;
}
.mv__slide--next {
  /*background-image: url(../img/common/arw_next_blk.svg);*/
  /*background-color: #ffdc00;*/
  width: 30px;
  height: 30px;
  right: 0;
  border-radius: 50%;
  background-size: 8px 14px;
  margin-top: -15px;
}
.mv__slide--prev {
  /*background-image: url(../img/common/arw_prev_blk.svg);*/
  /*background-color: #ffdc00;*/
  width: 30px;
  height: 30px;
  left: 0;
  border-radius: 50%;
  background-size: 8px 14px;
  margin-top: -15px;
}
.mv__slide--pagination .swiper-pagination-bullet-active {
  background: #ffdc00;
}
.topics__wrap--blk--ttl {
  font-size: 1.9rem;
  line-height: 1;
  letter-spacing: 0.5em;
  padding: 5px 0 5px 0.5em;
  border-top: 1px solid #231815;
  border-bottom: 1px solid #231815;
  text-align: center;
  margin: 0 0 35px;
}
.topics__moreBtn {
  font-weight: bold;
  border-radius: 100px;
  border: 5px solid #fff;
  box-shadow: 2px 3px 3px rgba(0,0,0,0.3);
}
.topics__moreBtn:hover {
  opacity: 1!important;
  text-decoration: none!important;
  transform: translate(0,3px);
  box-shadow: none;
}






a img{
transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

a img:hover{
opacity: 0.8!important;
}







.uniform-info{
width: 100%;
text-align: right;
font-size: 14px;
padding-top: 1em;
}

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

.uniform-info{
width: 100%;
text-align: right;
font-size: 12px;
padding: 0.5em;
}

}






.textver{
text-combine-upright: all;

}

.cource_tbl a{
color: #fff;
text-decoration: none;
}
.cource_tbl a:hover{
color: #fff;
text-decoration: none;
}




.mainwrap{
padding-top: 100px !important;
}

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

.mainwrap{
padding-top: 60px !important;
}

}



.comingsoon{
padding: 0.5em 1em;
display: inline-block;
background: #51b7c7;
color: #fff;
font-size: 25px;
}







.itillst{
width: 310px;height: auto;float: right;margin: 10px 0 0 10px;
}
@media screen and ( max-width:767px ){

.itillst{
width: 50%;height: auto;float: right;margin: 10px 0 0 10px;
}

}






/*

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





  /*gnav*/
  nav ul.gnav {
    background: #EFEFEF;
		display: block;
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 399;
    top: 60px;
		left: 0;
    font-size: 16px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
		margin: 0;
  }

	  nav ul.gnav.active {

		display: block;

  }


	nav ul{
	display: block;
	}

	ul.inner{
	display: block;
	}

  nav ul.gnav .gnavmenu {
    display: block;
    position: relative;
    margin: 0;
    border-bottom: 1px solid #CCC;
    color: #FFF;
    background: #1f4069;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
  }
  nav ul.gnav .child {
    display: none;
    margin: 0;
    padding: 0;
  }
  nav ul.gnav .child01 .gnavmenu {
    display: block;
    position: relative;
    margin: 0;
    border-bottom: 1px solid #CCC !important;
    color: #FFF;
    background: #10628F;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
  }
  nav ul.gnav .child02 .gnavmenu {
    display: block;
    position: relative;
    margin: 0;
    border-bottom: 1px solid #CCC !important;
    color: #FFF;
    background: #1383BF;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
  }
  nav ul.gnav .child03 .gnavmenu {
    display: block;
    position: relative;
    margin: 0;
    border-bottom: 1px solid #CCC;
    color: #FFF;
    background: #0697D5;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
  }
  nav ul.gnav .child04 a {
    display: block;
    position: relative;
    margin: 0;
    border-bottom: 1px solid #CCC;
    background: #FFF;
    height: 50px;
    line-height: 50px;
    padding: 0 15px;
  }
  nav ul.gnav .child01 .gnavmenu:last-child, nav ul.gnav .child02 .gnavmenu:last-child, nav ul.gnav .child03 .gnavmenu:last-child {
    border-bottom: none;
  }
  .gnav .toggle.gnavmenu:after {
    position: absolute;
    right: 15px;
    content: '＋';
    font-size: 16px;
    font-weight: bold;
    line-height: 50px;
  }
  .gnav .toggle.gnavmenu.active:after {
    content: '－';
  }

}


*/

























.clear_fix {
    zoom: 1;
}

a.toplinkb{
color: #222;
text-decoration: none;
}
a.toplinkb:hover{
color: #222;
text-decoration: underline;
}

a.toplinkb:visited{
color: #222;
text-decoration: none;
}




















/* sp menu*/

ul,
div,
img {
  margin: 0px;
  padding: 0px;
  list-style: none;
  font-weight: normal;
}

#main {
  margin-top: 60px;
}

#navi {
	display: none;
  background-color: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  height: 60px;
  width: 100%;
	color: #fff;
}


#navi a{

	color: #fff;
	text-decoration: none;
}
#navi a:hover{

	color: #fff;
	text-decoration: none;
}
#navi a:visited{

	color: #fff;
	text-decoration: none;
}


#navi input {
  display: none;
}
.menu-left {
  float: left;
  /*line-height: 60px;*/
	height: 60px;
	padding-left: 10px;
	box-sizing: border-box;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.menu-left img {
  vertical-align: middle;
  margin-left: 10px;
}
.menu-parent {
  float: left;
  margin-right: 30px;
  line-height: 60px;
  font-size: 17px;
  font-weight: bold;
  white-space: nowrap;
}
.menu-parent .pd {
  display: none;
}
.menu-parent:last-child {
  margin-right: 0px;
}

#menu-navibtn {
  display: none;
  cursor: pointer;
  cursor: hand;
}

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


#navi {
	display: block;
  background-color: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  height: 60px;
  width: 100%;
	background: rgba(51, 168, 184, 1.0);
}

  .menu-parent .pd {
    display: inline-block;
    width: 100%;
  }
  .menu-parent {
    height: auto;
    width: 100%;
    padding: 0px 20px;
    border-bottom: 1px solid #DDD;
  }
  .menu-parent:first-child {
    border-top: 1px solid #DDD;
  }
  .menu-parent i {
    padding: 0px 6px;
  }
  #menu-navibtn:checked ~ #navi {
    position: fixed;
    overflow-y: scroll;
    overflow-x: hidden;
    height: 100%;
  }
}

.menu-parent {
  position: relative;
}
.menu-parent .menu-child {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  margin-left: -40px;
  width: auto;
  box-sizing: border-box;
  padding: 0px 20px;
	background: rgba(51, 168, 184, 1.0);
  border: 1px solid #000;
}
@media screen and (min-width: 620px) {
  .menu-parent:hover .menu-child {
    visibility: visible;
    opacity: 1;
  }
}
@media screen and (max-width: 620px) {

  #menu-navibtn:checked ~ * .menu-parent {
    max-height: inherit;
    overflow-y: visible;
  }
  #menu-navibtn:checked ~ * .menu-child {
    max-height: 0;
    overflow-y: hidden;
    visibility: hidden;
  }
  .menu-parent .menu-child {
    border-top: 1px solid #DDD;
    border-left: 0px solid #FFF;
    border-right: 0px solid #FFF;
    border-bottom: 0px solid #FFF;
    position: relative;
    padding: 0 20px;
    opacity: 1;
    top: 0;
    margin-left: auto;
    left: auto;
    width: auto;
  }
  .menu-parent > label:hover {
    cursor: pointer;
    cursor: hand;
  }
  #navi input[type="checkbox"]:checked ~ .menu-child {
    max-height: inherit;
    overflow-y: visible;
    visibility: visible;
  }

  .angletoggle:before {/* at start */
    content: "\e907";
		font-size: 67%;
  }
  #navi input[type="checkbox"]:checked ~ * .angletoggle:before {/* at open */
    content: "\e908";
  }



}
.menu-child li {
  font-size: 14px;
  border-bottom: 1px solid #DDD;
}
.menu-child li:last-child {
  border: none;
}
.menu-child li i {
  margin-right: 3px;
}

#navi #navibtn {
  display: none;
}
@media screen and (max-width: 620px) {
  #navi #navibtn {
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
  }
  #navibtn span {
    display: block;
    width: 40px;
    height: 40px;
    background-color: #333;
  }
  #navibtn span span {
    display: block;
    overflow: hidden;
    width: 1px;
    height: 1px;
  }
  #navibtn span span::before,
  #navibtn span span::after,
  #navibtn span::after {
    position: absolute;
    left:10px;
    content:"";
    width: 20px;
    height: 3px;
    background-color: #FFF;
  }
  #navibtn span span::before {
    top:10px;
  }
  #menu-navibtn:checked ~ #navi label#navibtn span span::before {
    top:19px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #navibtn span::after {
    bottom:10px;
  }
  #menu-navibtn:checked ~ #navi label#navibtn > span::after {
    bottom:18px;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
  }
  #navibtn span span::after {
    top:18px;
  }
  #menu-navibtn:checked ~ #navi label#navibtn span span::after {
    display: none;
  }




	ul.nvmenulnk{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: center;
	margin: 20px 0;
	}
	ul.nvmenulnk > li{
	width: 45%;
	}
		ul.nvmenulnk > li img{
	width: 80%;
	height: auto;
	display: block;
	}


	.nmborder{

	}



.tgh02{
font-size: 14px;
color: #fff;
line-height: 1.3em;
padding-left: 10px;
}


.menu-bchs{
background: rgba(167,58,49,0.8);


}

.menu-bchs .menu-child {
background: rgba(167,58,49,0.8);

}



.menu-bcjhs{
background: rgba(30,170,57,0.8);
}

.menu-bcjhs .menu-child {
background: rgba(30,170,57,0.8);}




}

header{
z-index: 13;
}
nav{
z-index: 14;
}






.fghtxt{
line-height: 1.3em;
font-size: 80%;
}
.fghtxtbox{
display: flex;

}











/* 100th */
.mainimgwrap_sp{
height: 350px;
}

.mainimgwrap_sp h1{
background: rgba(255,255,255,0.5);
padding: 40px 0;
/*position: absolute;*/
width: 100%;
text-align: center;
letter-spacing: 0.1em;
}

.hndthbox01{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
margin-top: 4em;
line-height: 1.7em;
font-size: 90%;
}


.hndthbox01 > div:nth-child(1){
width: 46%;
}
.hndthbox01 > div:nth-child(2){
width: 46%;
text-align: left;
}


.menttlt{
font-size: 150%;
display: block;
margin-bottom: 1em;
line-height: 2em;
}


.mentbox{
margin: 50px 0;
width: 100%;
text-align: left;
line-height: 2em;
}

.mentboxfl{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
width: 100%;
gap: 10px;
}

.mentboxfl > div:nth-child(2){
width: 40%;
}
.mltchrtxt{
width: 100%;
text-align: right;
font-size: 85%;
line-height: 1.4em;
}
.mltchrtxtblk{
text-align: left;
display: inline-block;
}

.mentwrap{
width: 90%;

}





/* learning */
.learning_area h3{
display: block;
width: 100%;
text-align: center !important;
font-size: 27px;
text-align: center;
margin: 30px 0 0px 0;
padding: 16px 0 0 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}

.learning_area h3 img{
display: block;
width: 60%;
font-size: 27px;
text-align: center;
margin: 0 auto;
padding: 16px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}



.cource-tlt-cp{
margin: 20px 0 70px 0;
width: 100%;
text-align: center;
font-size: 22px;
letter-spacing: 0.1em;
}


.cource-tlt-cp span{
display: block;
margin: 20px 0 0px 0;
width: 100%;
text-align: center;
font-size: 16px;
letter-spacing: 0.1em;
}




ul.courcelist{
display: flex ;
flex-direction: row;
flex-wrap: wrap;
gap:6%;
justify-content: flex-start;
}

ul.courcelist > li{
width: 29%;
text-align: left;
margin: 4px 0;
box-sizing: border-box;
user-select: none;
}



ul.courcelist > li a{
color: #000;
text-decoration: none;
}
ul.courcelist > li a:hover,ul.courcelist > li a:visited{
color: #000;
text-decoration: none;
}

.l_courcelist_t{
display: flex;
justify-content: flex-start;
margin: 5px 0;
}
.l_courcelist_t > div:nth-child(1){
width: 20%;
margin-right: 6px;
}
.l_courcelist_t > div:nth-child(2){
width: 75%;

}
.crspct{
line-height: 1.1em;;
}
.crspct span{
font-size: 12px;
display: block;
text-indent: -1em;
  padding-left: 1em;
}

.crspct h4{
margin: 0;
padding: 0.3em 0;
font-size: 19px;
}





.learning_area h3.cortlt02 img{
display: block;
width: 45%;
font-size: 27px;
text-align: center;
margin: 0 auto;
padding: 16px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}

.lrn_field_blk{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
margin-bottom: 100px;
width: 100%;
margin-left: 0%;
text-align: left;
font-size: 17px;
line-height: 1.7em;
letter-spacing: 0.1em;
}

.lrn_field_blk > div:nth-child(1){
width: 52%;
}
.lrn_field_blk > div:nth-child(2){
width: 42%;
}

.lrn_field_blk p{
padding: 0;
margin: 0 0 1em 0;

}

.lrn_field_blk h4{
font-size: 24px;
font-weight: bold;
color: #913d35;
margin: 0.2em 0;
}
.lrn_field_blk span{
display: block;
font-size: 20px;
margin:0.4em 0em;;
}
.learn_cap{

width: 100%;
margin-top: 0.3em;
text-align: right;
font-size: 16px;
}





.pagectl100th h3{
display: block;
width: 100%;
text-align: center !important;
font-size: 27px;
text-align: left;
margin: 30px 0;
padding: 16px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}



.pagectl100th h4{
width: 100%;
font-size: 30px;
text-align: left;
margin: 50px 0;
padding: 16px 0;
box-sizing: border-box;
border-bottom: 2px solid #000;
font-weight: normal;
}

table.menttbl td{
text-align: left;
font-size: 90%;
padding: 0.5em;
box-sizing: border-box;
}
table.menttbl tr > td:nth-child(1){
width: 11em;
}





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

/*learning*/
.learning_area h3{
display: block;
width: 100%;
text-align: center !important;
font-size: 27px;
text-align: center;
margin: 30px 0;
padding: 16px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}

.learning_area h3 img{
display: block;
width: 80%;
font-size: 27px;
text-align: center;
margin: 0 auto;
padding: 16px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}


.learning_area h3.cortlt02 img{
display: block;
width: 65%;
font-size: 27px;
text-align: center;
margin: 0 auto;
padding: 16px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}



ul.courcelist{
display: flex ;
flex-direction: row;
flex-wrap: wrap;
gap:4%;
justify-content: flex-start;
}

ul.courcelist > li{
width: 48%;
text-align: left;
margin: 4px 0;
box-sizing: border-box;
user-select: none;
}



ul.courcelist > li a{
color: #000;
text-decoration: none;
}
ul.courcelist > li a:hover,ul.courcelist > li a:visited{
color: #000;
text-decoration: none;
}

.l_courcelist_t{
display: flex;
justify-content: flex-start;
margin: 5px 0;
}
.l_courcelist_t > div:nth-child(1){
width: 20%;
margin-right: 6px;
}
.l_courcelist_t > div:nth-child(2){
width: 75%;

}


.crspct{
line-height: 1.1em;;
}
.crspct span{
font-size: 3vw;
display: block;
text-indent: -1em;
  padding-left: 1em;
}


.crspct h4{
margin: 0;
padding: 0.3em 0;
font-size: 4vw;
}




.lrn_field_blk{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
margin-bottom: 40px;
width: 100%;
margin-left: 0%;
text-align: left;
font-size: 17px;
line-height: 1.4em;
letter-spacing: 0.1em;
}

.lrn_field_blk > div:nth-child(1){
width: 100%;
}
.lrn_field_blk > div:nth-child(2){
width: 100%;
}

.lrn_field_blk p{
padding: 0;
margin: 0 0 1em 0;
font-size: 4vw;

}

.lrn_field_blk h4{
font-size: 5vw;
font-weight: bold;
color: #913d35;
margin: 0.2em 0;
}
.lrn_field_blk span{
display: block;
font-size: 4vw;
margin:0.4em 0em;;
}
.learn_cap{

width: 100%;
margin-top: 0.3em;
text-align: right;
font-size: 4vw;
}






.mrgtopm{
margin-top: 0px;
height: 180px;
}
.mainimgwrap_sp{
height: 180px;
}
.mainimgwrap_sp h1 {
    padding: 10px 0;
font-size: 5vw;
}


.learning_area h3{
display: block;
width: 100%;
text-align: center !important;
font-size: 5vw;
text-align: left;
margin: 10px 0;
padding: 5px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
}

.mentwrap{
width: 100%;

}


.hndthbox01{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-end;
margin-top: 4em;
line-height: 1.7em;
font-size: 90%;
}


.hndthbox01 > div:nth-child(1){
width: 100%;
}
.hndthbox01 > div:nth-child(2){
width: 100%;
text-align: left;
}

.menttlt{
font-size: 120%;
display: block;
margin-bottom: 1em;
line-height: 1.5em;
margin-top: 1em;
}


.mentboxfl{
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: space-between;
width: 100%;
gap: 10px;
}

.mentboxfl > div:nth-child(2){
width: 100%;
}
.mltchrtxt{
width: 100%;
text-align: left;
font-size: 85%;
line-height: 1.4em;
margin-top: 3em;
}
.mltchrtxtblk{
text-align: left;
display: inline-block;
}

.krchrimg{
width: 100%;
text-align: center;
}
.krchrimg img{
width: 40%;
height: auto;
text-align: center;
}


.pagectl100th h3{
display: block;
width: 100%;
text-align: center !important;
font-size: 6vw;
text-align: left;
margin: 20px 0;
padding: 10px 0;
box-sizing: border-box;
font-weight: normal;
letter-spacing: 0.08em;
line-height: 1.5em;
}



.pagectl100th h4{
width: 100%;
font-size: 6vw;
text-align: left;
margin: 30px 0;
padding: 10px 0;
box-sizing: border-box;
border-bottom: 1px solid #000;
font-weight: normal;
}




table.menttbl td{
text-align: left;
font-size: 90%;
padding: 0.5em;
box-sizing: border-box;
    display: block;
    width: 100%;
}
table.menttbl tr > td:nth-child(1){
width: 100%;
font-weight: bold;
padding-bottom: 0;
border-right: 0!important;
}
table.menttbl tr > td:nth-child(2){
padding-top: 0;
}
.img100thlogo{
width: 100%;
text-align: center;
}
.img100thlogo img{
width: 80%;
}






.cource-tlt-cp{
margin: 0px 0 40px 0;
width: 100%;
text-align: center;
font-size: 4vw;
letter-spacing: 0.1em;
}


.cource-tlt-cp span{
display: block;
margin: 10px 0 0px 0;
width: 100%;
text-align: center;
font-size: 3vw;
letter-spacing: 0.1em;
line-height: 1.4em;
}







}
