@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td { margin: 0; padding: 0;}
body { overflow-x: hidden; color:#005cb1; font-size:16px;line-height: 160%; font-family: 'M PLUS 1p', "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; font-feature-settings:"palt"; font-weight: 400;}
ul { list-style: none; }
fieldset,img { border: 0; vertical-align: top; overflow: hidden; }
a {color:inherit; text-decoration:none; transition: color 0.4s;  }
a:hover {color:#e9525a;}
img{ max-width:100%;}
.sp_none{ display: block; }
.pc_none{ display: none; }
.an_scl{ opacity: 0; }

b{font-weight: 700;}
.fw300{font-weight: 300;}
.fw400{font-weight: 400;}

.fw_MP1_re{font-family: "M PLUS 1p", sans-serif; font-weight: 400;font-style: normal;}
.fw_MP1_Bold{font-family: "M PLUS 1p", sans-serif; font-weight: 800;font-style: normal;}


.red_cl{ color:#e9525a; }
.white_cl{ color:#fff; }
.black_cl{ color: #000; }



.fs14{ font-size:0.7em; line-height: 150%; }
.fs16{ font-size:0.8em; line-height: 160%; }
.fs18{ font-size:0.9em; line-height: 160%; }
.fs20{ font-size:1em; line-height: 170%; }
.fs22{ font-size:1.1em; line-height: 170%; }
.fs24{ font-size:1.2em; line-height: 170%; }
.fs26{ font-size:1.3em; line-height: 170%; }
.fs28{ font-size:1.4em; line-height: 170%; }
.fs30{ font-size:1.5em; line-height: 160%; }
.fs31{ font-size:1.55em; line-height: 150%; }
.fs34{ font-size:1.7em; line-height: 140%; }
.fs36{ font-size:1.8em; line-height: 140%; }
.fs40{ font-size:1.9em; line-height: 120%; }
.fs60{ font-size:3em; line-height: 120%; }


.smf{ font-weight: 300; }
.ta_cen{text-align: center;}
:root{
	--htmlfs: 100px;
}

/******************************************************************/
html{ font-size:var(--htmlfs); /* opacity:0; transition: opacity 0.3s; */}
/* html.pgshow{ opacity: 1;visibility: visible; } */
/* html.wf-active,html.loading-delay{visibility: visible;} */
body{font-size: 0.2rem; line-height:200%; position: relative;}
/* body::after{content: ""; position: fixed; top: 0; left: 0; width: 100vw;height: 101vh; z-index: -1; background:#00a0e6 url("../images/bg.png") center center repeat; background-size:1.06rem auto; opacity: 1;}
 */

.bgmob{position: fixed; top: 0; left: 0; width: 100vw;height: 101vh; z-index: -1; background:#00a0e6 url("../images/bg.png?02") center center repeat; background-size:1.06rem auto; opacity: 1;}

.bgmob::before{content: ""; position: fixed; top: 0; left: 0; width: 100vw;height: 101vh; background: radial-gradient(circle,rgba(0,160,230,0.85),transparent) repeat; background-size: 4.75rem 1.6rem;animation: starup 20s linear infinite;}
.bgmob::after{content: ""; position: fixed; top: 0; left: 0; width: 100vw;height: 101vh; background: radial-gradient(circle,rgba(0,160,230,0.85),transparent) repeat; background-size: 3.4rem 4.5rem;animation: starup 13s linear infinite;}



.wrap{ position: relative; z-index: 10; }
header{width:1500px; max-width: 100%; margin: 0 auto;padding: 0 0.2rem; box-sizing: border-box; position: relative;}
.top{ text-align: center; width: 960px; max-width:100%; margin: 0 auto; text-align: center; position: relative; }
.top::after{content: ""; display: block; position: absolute; top: 0; left: 0; width: 100%;height: 0; padding-bottom: 100%; border-radius: 100%; background-image:radial-gradient(circle, #fff 40%, transparent 70%); background-position: center; background-repeat: no-repeat; transform: scale(0.1); opacity: 0; transform-origin: 50% 40%; z-index: -1; }

.top::after{animation: expand02 1.5s linear both;animation-delay: 0s; }
.top_logo{opacity: 0; animation: expand03 0.8s linear both;animation-delay: 0.6s; }


@keyframes starup {
  0% {
    opacity: 1; background-position: 0 0;
  }
  50% {
    opacity: 1; background-position: 100% 100%;
  }
  100% {
    opacity: 1; background-position: 0 0;
  }
}
@keyframes starfade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


@keyframes expand02 {
  0% {
    transform: scale(0.5) ;
    opacity: 0;
  }
  100% {
    transform: scale(2) ;
    opacity: 1;
  }
}
@keyframes expand03 {
  0% {
    transform:scale(0.8) rotate(0);
    opacity: 0;
  }
  70% {
    transform:scale(1.05) rotate(0);
    opacity: 0.7;
  }
  100% {
    transform:scale(1) rotate(0deg);
    opacity: 1;
  }
}



.top .top_logo{ width:86%;  margin: 0 auto;  padding: 0.65rem 0 0.55rem 0;}
.top_txtcx01{text-align: center; font-size:1.9em; line-height: 150%; color: #00a0e6; font-weight: 800; padding:0 0 0.3em 0; }
.top_txtcx02{text-align: center;font-size:1.35em; line-height: 150%; color: #00a0e6; font-weight: 500; }
.top_txttime{text-align: center; font-size:1.9em; line-height: 150%; color: #000000;font-weight: 800;padding:0 0 1.5em 0;opacity: 0;animation: starfade 1s linear both; animation-delay: 1s;}
.infs{ font-size: 0.63em; }


.main{ width: 1000px; max-width:96%; margin: 0 auto; padding: 0 0.2rem; box-sizing: border-box; margin-bottom: 50px; position: relative; z-index: 10; opacity: 0;animation: starfade 1s linear both; animation-delay: 1s;}


.inner_mob{position:relative; box-sizing: border-box; padding:0.6rem 0.6rem 0.6rem 1.6rem; margin-bottom:0.8rem; background: #fff; border-radius: 0 0 0.46rem 0; color: #005cb1; border: 0.02rem solid #005cb1}
.inner_mob::after{content: ""; display: block; position: absolute; bottom: 0;right: 0.6rem; width: 0.36rem;height: 0.8rem; background-image: linear-gradient(to right,#005cb1 0.02rem, transparent 0.02rem,transparent 0.08rem); background-size: 0.08rem auto;}
/* .inm_line{position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; box-sizing: border-box;border: 4px solid #e9525a;}
.inm_line>span{ display: block;margin:0.1rem; width:calc(100% - 0.2rem); height:calc(100% - 0.2rem); background-color: rgba(225, 220, 193, 0.7);  } */

.tit_none{ background-image: linear-gradient(to bottom,#005cb1,#78d6ff); border: 0; color: #fff;padding: 0.5rem; border-radius: 0; }
.tit_none::after{display: none;}
.pro_txc01{font-size: 0.9em; line-height:166%; }
.pro_mob{ display: flex; flex-wrap: wrap; }
.pro_ph{ width: 45.35%; padding-right:4.65%; }
.pro_tx{ width: 50%;}
.pre_cv{ font-size: 0.9em; }
.pre_name{ font-size: 1.5em; font-weight: 500; }
.pre_com{font-size: 0.8em; line-height: 1.8em;}
.flts{display: inline-block; width: 4em;}






.ahu_tabin{ }
.ahu_tabtitle{ position: absolute; top: 0; left: 0; transform: translate(-23.2%, -23.2%); width: 1.72rem; height: 1.72rem; }


.ahu_tabcon{}
.ahu_ints{ display: flex; padding-bottom: 0.15rem}
.ahu_instit{ display: flex; align-items: center; border-right: 1px solid #f00; padding-right: 0.105rem; width: 2.2em; }
.ahu_insc{ display: flex; align-items: center; padding:0 0.3rem 0 0.1rem; }
.ahu_ints .ahu_insc:last-of-type{ padding: 0 0 0 0.1rem; }
.smtx{ display: block; font-weight: 300; }
.smtx02{ display: block; font-weight: 300; text-align: left;}
.smtx03{ display: block; font-weight: 300; padding-top: 0.1rem;}
.ahu_ints02{ display: flex; padding-top: 0.3rem;}
.ahu_ints02 .ahu_instit{ text-align: center;  width:2.7rem;white-space: nowrap;display: flex;justify-content: center;align-content: center; flex-wrap: wrap;}
.ahu_ints02 .ahu_insc{ padding:0 0 0 0.32rem ; line-height:180%; width: calc(100% - 2.7rem); box-sizing: border-box; }
.mobtx02 .ahu_tabcon{}

.setoutmob{ position: relative; }
.setoutmob::before{content: "終了しました"; position: absolute; top:calc(50% - 0.1em);left: 0; width: 100%; height: auto;text-align: center;color:#ffd626; z-index: 10; font-size: 1.5em; line-height: 1; transform: rotate(5deg);}
.setoutmob::after{content: ""; display: block; position: absolute; top: 0.3rem;left: 0; width: 100%; height:calc(100% - 0.3rem); z-index: 5; background: rgba(0,0,0,0.5);}





.ahu_sns{width:1500px; max-width: 100%; margin: 0 auto;padding: 0 0.2rem;}
.ahu_sns a{display:inline-block; line-height:150%;}
.ico_sns{ width:0.3rem; vertical-align: middle;margin-right: 0.1rem;}
.smtxinfo{}
.smtxinfo li{ padding-left: 1em; text-indent: -1em; }




.ban_lcf{ display: inline-block; font-size: 0.24rem; line-height: 110%; padding: 0.45em 1.4em;margin: 0.1rem 0;border: 0.02rem solid #e9525a; position: relative; color: #e9525a; overflow: hidden;}
.ban_lcf::before{content: "";width:150%;height:500%;opacity: 0;border-radius:999px;background: #e9525a;position: absolute;transition: all .5s ease-Out;top:50%;left: 50%; transform: translate(-50%,-50%) scale(0, 0); z-index:0;}
.ban_lcf:hover::before{ transform: translate(-50%,-50%) scale(1, 1);opacity: 1;}

.ban_lcf span{ position: relative; z-index: 10; }
.ban_lcf:hover{color:#fff;}


.textlin01{}
.textlin01 li{ text-indent: -1em; padding-left: 1em; line-height: 130%; padding-bottom: 0.3em; }


.prelistmob{ display: flex; flex-wrap:wrap; width: 100%;}
.preinner{ width:18%; text-align: center; padding-right: 2%}

.txin05{ padding-left:5em;text-indent: -5em; display: block; }

.footphoto{ position: relative; z-index: -1;margin: -8% 0 -5% 0;}
.footphoto img{ width: 100%; }



footer{ display: block; font-weight: 500; padding-bottom: 0.3rem; color: #fff;}
.footinner{width:1500px; max-width: 100%; margin: 0 auto;padding: 0.1rem 0.2rem; position: relative; box-sizing: border-box;}
.ftcn{ text-align: right; line-height: 200%; }
.ftcn_inbox{display:inline-block; /* text-align:left;  */line-height: 187%;}
.ft_logo{ position: absolute; width:5rem; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.ftcopy{ text-align: center; padding-bottom: 0.3rem; }

.fbt_box{width:800px; max-width: 90%; display:none; color: #000; font-size: 0.18rem; line-height: 150%}



@media screen and (max-width:1000px) {

	:root{
		--htmlfs: 10vw;
	}

}

@media screen and (max-width:768px) {

	:root{
		--htmlfs: 13.02vw;
	}

html{ width: 100%; overflow-x: hidden; }
body{ overflow-x: hidden;font-size: 0.22rem; line-height:200%;}
.sp_none{ display: none; }
.pc_none{ display: block; }

.fs14{ font-size:0.8em; line-height: 150%; }
.fs16{ font-size:0.8em; line-height: 160%; }
.fs18{ font-size:0.9em; line-height: 160%; }


header{padding: 0 5%;}
.top{ width: auto; padding: 3% 0 0.3rem 0; }
.top::after{transform: scale(2.8); transform-origin: 50% 30%;}

.top .top_logo{ width:100%; padding: 0.3rem 0 0.25rem 0;}
.top_txtcx01{text-align: center; font-size:1.5em; line-height: 150%; color: #00a0e6; font-weight: 800; padding:0 0 0.3em 0; }
.top_txtcx02{text-align: center;font-size:1.15em; line-height: 150%; color: #00a0e6; font-weight: 500; }
.top_txttime{text-align: center; font-size:1.5em; line-height: 150%; color: #000000;font-weight: 800;padding:1em 0 1em 0;}
.infs{ font-size: 0.63em; }



.main{max-width: 100%;padding: 0 3.33%;}
.inner_mob{margin-top: 1.3rem;padding: 0.3rem;}
.inner_mob.tit_none{margin-top: .2rem;}
.ahu_tabin{ min-height: 50px; position: relative; }

.ahu_tabtitle{position: absolute; top:-1.1rem; left:calc(50% - 0.85rem); width: 1.7rem; height: 1.7rem; border: 0;transform: translate(0, 0);}




.ahu_tabcon{padding: 0.7rem 0.2rem 0.3rem 0.2rem; box-sizing: border-box; width:100%;}


.ahu_instit{ padding-right: 0.15rem; width: 2.2em; }
.smtx02{text-align:center;}
.smtx03{display: inline;padding-top:0;}

.ahu_ints02{flex-wrap: wrap;}
.ahu_ints02 .ahu_instit{ width: 100%;display: block;padding: 0 0 0.1rem 0; border-right: 0; border-bottom: 1px solid #f00; margin-bottom: 0.1rem;}
.ahu_ints02 .ahu_insc{ width: 100%; display: block; text-align: center; padding:0; word-break: break-all;  }


.mobtx02 .ahu_tabcon p{ line-height: 200%; }

.prelistmob{}
.preinner{ width:30%;padding:1.5%}

.footphoto{margin: -12% 0 -5% 0%;}
.footphoto img{ width: 120%;max-width: 120%; margin-left: -10%; }

.ban_lcf{font-size: 0.26rem; line-height: 110%; padding: 0.45em 1.4em;margin: 0.1rem 0;}


.txin05{ padding-left:0;text-indent: 0;white-space: nowrap;}



footer{}
.footinner{padding: 0;}
.ft_logo{ position:static; width:100%;transform: translate(0,0); text-align: center; padding-top: 0.7rem}
.ft_logo img{ width:5rem;}
.ftcopy{ text-align: center; padding-bottom: 0.4rem; }

}


