@charset "UTF-8";

/* include */
@import url('./popup.css');

/* common */
@media all and (min-width:769px){
	.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide, .swiper-wrapper{height:100% !important;}
}
.swiper-slide.hide{display:none;}

.swiper-pagination{display:inline-block; position:relative; text-align:center;}
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{display:inline-block; position:relative; width:17px; height:17px; margin:0 .1875rem; background:transparent; border:1px solid transparent; border-radius:50%; opacity:.5; vertical-align:middle; transition:.3s;}
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:before{content:''; display:block; position:absolute; width:7px; height:7px; top:50%; left:50%; margin:-3.5px 0 0 -3.5px; background:#fff; border-radius:50%; transition:.3s;}
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:focus,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet:hover{/*border-color:rgba(255,255,255,.4);*/ opacity:1;}
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active{border-color:rgba(255,255,255,.75); opacity:1;}
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active:focus,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active:hover{border-color:#fff; opacity:1;}

/* visual */
#mainVisual{position:relative; width:100%; height:100vh; max-height:780px; min-height:780px; margin:0 auto; background:#000; border-radius:0; overflow:hidden;}
#mainVisual:after{content:''; clear:both; display:block;}
#mainVisual .inner{height:100%; padding:0;}
#mainVisual .swiper-container{width:100%; height:100%; overflow:hidden;}
#mainVisual .swiper-container .imgW{position:absolute; width:100%; height:100%; top:0; left:0;}
#mainVisual .swiper-container .imgW img{position:absolute; width:100%; min-width:100%; height:auto; min-height:100%; top:50%; left:50%; object-fit:cover; transform:translate(-50%, -50%) scale(1.1); transition:4s ease;}
#mainVisual .swiper-slide-active .imgW.scale-down-center img{transform:translate(-50%,-50%) scale(1.0);}
#mainVisual .swiper-wrapper:before{content:''; display:block; position:absolute; width:100%; height:100%; top:0; left:0; background:linear-gradient(0deg, rgba(0,0,0,0) 0, rgba(0,0,0,.3) 50%, rgba(0,0,0,1) 100%); opacity:.04; z-index:2;}
#mainVisual .txtBox{position:absolute; width:100%; height:100%; right:0; bottom:0; text-align:left;}
#mainVisual .txtBox .txtW{display:inline-block; position:absolute; width:100%; line-height:1; left:0; top:8em; margin:0 auto; padding:0; text-align:center; z-index:1;}
#mainVisual .txtBox .txtW p{display:block; line-height:1.125; margin:0 auto; color:#fff;}
#mainVisual .txtBox .txtW p.ti{margin:0 auto .5em; font-size:3.25em; text-shadow:0 0 .5em rgba(19,43,136,.4), 1px 1px .75em rgba(0,0,0,.1);}
#mainVisual .txtBox .txtW p.ti .mini{display:inline-block; margin:0 auto .125em; font-size:.625em;}
#mainVisual .txtBox .txtW p.ti strong{line-height:1.063; font-weight:normal;}
#mainVisual .txtBox .txtW p.date{display:inline-block; padding:.25em 1em .313em; background:rgba(64,117,173,.94); background:linear-gradient(0deg, rgba(64,117,173,.94) 0, rgba(40,56,143,.94) 100%); /*border:2px solid #fff;*/ border-radius:.5em; font-size:1.625em;}
#mainVisual .txtBox .txtW p.date span.day{display:inline-block; margin:0 0 0 .125em;}
#mainVisual .bgBox{position:absolute; width:100%; height:100%; right:0; bottom:0; text-align:left;}
#mainVisual .bgBox .pager{display:inline-block; position:absolute; width:100%; line-height:0; left:0; bottom:12.5em; margin:0 auto 4.75em; padding:0; text-align:center;}
#mainVisual .bgBox .pager .swiper-pagination{width:auto; top:0; margin-left:-.1875em;}
/*#mainVisual .bgBox .pager .swiper-pagination .swiper-pagination-bullet-active{border-color:#28388f;}
#mainVisual .bgBox .pager .swiper-pagination .swiper-pagination-bullet-active:before{background:#28388f;}
#mainVisual .bgBox .pager .swiper-pagination .swiper-pagination-bullet-active:focus,
#mainVisual .bgBox .pager .swiper-pagination .swiper-pagination-bullet-active:hover{border-color:#28388f;}*/

/* contents */
#mainContents{clear:both; position:relative; width:100%; min-width:1224px; margin:0 auto; padding:0; background:transparent; font-size:18px; z-index:1;}
#mainContents .conTitle{display:block; width:100%; line-height:1; box-sizing:border-box;}
#mainContents .conTitle h3{display:block; line-height:1.5; margin:0 auto 1em; font-size:2.25em; font-weight:800; text-align:center;}
#mainContents .conTitle h3 span{position:relative; z-index:0;}
#mainContents .conTitle h3 span:before{content:''; position:absolute; width:100%; height:.5em; bottom:-.063em; background:#e4efff; z-index:-1;}
#mainContents .conTitle h4,
#mainContents .conTitle h5,
#mainContents .conTitle h6{display:inline-block; position:relative; padding:0; color:#333; font-weight:700; word-break:keep-all;}
#mainContents .conTitle h4 span.num,
#mainContents .conTitle h5 span.num,
#mainContents .conTitle h6 span.num{display:inline-block; position:relative; line-height:1; margin-right:.125em; padding:0; color:#28388f;}
#mainContents .conTitle h4 span.mini,
#mainContents .conTitle h5 span.mini,
#mainContents .conTitle h6 span.mini{font-size:.75em;}
#mainContents .conTitle h4{line-height:1.4; margin:.5em auto .625em; padding:0; font-size:1.75em;}
#mainContents .conTitle h4 span.mini{margin-left:.25em; color:#666;}
#mainContents .conTitle h5{line-height:1.3; margin:.5em 0 .75em; color:#132b88; font-size:1.5em;}
#mainContents .conTitle h6{line-height:1.2; margin:.5em 0 1em; color:#ba8944; font-size:1.25em;}
#mainContents .con:first-child > .conTitle h4, #mainContents .conTitle:first-child h4,
#mainContents .conTitle:first-child h5, #mainContents .conTitle + .conTitle h5,
#mainContents .conTitle:first-child h6, #mainContents .conTitle + .conTitle h6{margin-top:0;}
#mainContents .conTitle.nobullet h4, #mainContents .conTitle.nobullet h5, #mainContents .conTitle.nobullet h6{padding:0;}
#mainContents .conTitle.nobullet h5:before, #mainContents .conTitle.nobullet h6:before{display:none;}
#mainContents .conTitle.alignCenter{text-align:center;}

#mainContents .mt{margin-top:2.5em;}
#mainContents .mb{margin-bottom:2.5em;}
#mainContents .mb1{margin-bottom:1em;}
#mainContents .alignCenter{text-align:center;}

#mainContents p{line-height:1.5; margin:0 auto .75em; word-break:keep-all;}
#mainContents p.point{position:relative; padding-left:1em; color:#df2d2d;}
#mainContents p.point.black{color:#333;}
#mainContents p.point:before{content:'※'; position:absolute; top:0; left:0; margin-top:-.125em; font-size:1.25em; font-weight:300;}
#mainContents .pointW{padding:.25em 1em; /*background:#ffe8e8;*/ border:1px solid #df2d2d; border-radius:5em; text-align:center;}
#mainContents .pointW p.point{display:inline-block;}
#mainContents p + p{margin-top:-.25em;}
#mainContents p:last-child{margin-bottom:0;}
#mainContents span.highlight{background:#f3ff8f;}

#mainContents i.ico{display:inline-block;}

#mainContents ul{padding:0 .125em;}
#mainContents ul > li{margin:0 auto .75em;}
#mainContents ul ul{margin:.75em auto 0; padding:1em 1.25em; background:#f6f6f6; border-radius:4px; font-size:.938em;}
#mainContents ul ul + p{margin-top:.75em;}
#mainContents ul.list > li{position:relative; padding-left:1.125em;}
#mainContents ul.list > li:before{content:''; display:block; position:absolute; left:0;}
#mainContents ul.list.line > li:before{width:.4em; height:2px; top:.675em; background:#28388f;}
#mainContents ul.list.circle > li:before{width:.313em; aspect-ratio:1; top:.625em; background:#28388f; border-radius:50%;}
#mainContents ul.list.triangle > li:before{width:0; height:0; top:.625em; left:0; border-top:4px solid transparent; border-bottom:4px solid transparent; border-left:4px solid #28388f; line-height:0;}
#mainContents ul li:last-child{margin:0 auto;}

#mainContents ul.email li p{display:inline-block; margin:0;}
#mainContents ul.email li a{display:inline-block; margin-left:.5em; padding:0; border:none; border-radius:0; color:#28388f; font-size:1em; font-weight:400; text-align:inherit; overflow-wrap:anywhere; transition:.3s;}
#mainContents ul.email li a.btn:before{content:''; display:inline-block; width:1em; height:1em; margin:-.125em .25em 0 0; background:transparent; vertical-align:middle;}
#mainContents ul.email li a.btn.email:before{background:url('../images/ico_footer_email.png') no-repeat center / 100%;}
#mainContents ul.email li a.btn.tel:before{background:url('../images/ico_footer_tel.png') no-repeat center / 100%;}
#mainContents ul.email li a:focus,
#mainContents ul.email li a:hover{text-decoration:underline;}

#mainContents .tableW{width:100%; margin:0 auto 1.5em; overflow-x:auto;}
#mainContents .tableW:last-child{margin:0 auto;}
#mainContents table{width:100%; background:#fff; border:1px solid #ddd; border-top:2px solid #333; text-align:center;}
#mainContents table tr th{min-height:40px; padding:.938em .875em; background:#f6f6f6; border-left:1px solid #ddd; border-right:1px solid #ddd; border-bottom:1px solid #ddd; font-weight:700; vertical-align:middle; word-break:keep-all;}
#mainContents table tr th.rowti{background:#f1f4fb; color:#282d3a; font-weight:500;}
#mainContents table tr th:first-child{border-left:none;}
#mainContents table tr th:last-child{border-right:none;}
#mainContents table tbody tr th{background:#fff;}
#mainContents table tr td{line-height:1.4; padding:.75em .875em; border-left:1px solid #ddd; border-right:1px solid #ddd; border-bottom:1px solid #ddd; word-break:keep-all; vertical-align:middle;}
#mainContents table tr td:first-child{border-left:none;}
#mainContents table tr td:last-child{border-right:none;}
#mainContents table tr td.rowti{background:#f1fafd; color:#282d3a; font-weight:500;}
#mainContents table tr td.alignLeft{text-align:left;}
#mainContents table tr td.alignRight{text-align:right;}
#mainContents table tr td.break{word-break:break-all;}
#mainContents table tr td.empty_table{width:100%;}
#mainContents table tr td ol,
#mainContents table tr td ul{text-align:left;}
#mainContents table tr.total th,
#mainContents table tr.total td{background:#f1fafd; border-top:3px double #bbb; font-weight:700;}

#mainContents .btnBox{clear:both; display:inline-block; width:100%;}
#mainContents .btnBox ul.links{}
#mainContents .btnBox ul.links li{display:inline-block;}
#mainContents .btnBox ul.links li a.btn{display:inline-block; padding:1em 2.5em; background:#fff; border:2px solid #28388f; border-radius:5em; color:#28388f; font-size:1.125em; font-weight:600;}
#mainContents .btnBox ul.links li a.btn span{}
#mainContents .btnBox ul.links li a.btn.link{}
#mainContents .btnBox ul.links li a.btn:focus,
#mainContents .btnBox ul.links li a.btn:hover{background:#28388f; color:#fff;}

#mainContents .area01{margin:-12.5em auto 5em;}
#mainContents .area01 .areaBox{margin:0 auto 2.5em; padding:5em 2.5em; background:#fff; border-radius:12px; box-shadow:2px 2px 12px rgba(0,0,0,.1);}
#mainContents .area01 .areaBox.guideW .boxW{display:flex; flex-wrap:wrap; gap:5em; margin:0 auto;}
#mainContents .area01 .areaBox.guideW .boxW .box{flex:1 1 100%; width:100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .emphasize{color:#5f0bfe;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico{width:.938em; height:.938em; margin:0 .125em -.125em 0; background:#ddd;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.calendar{background:transparent url('../images/sub/ico_calendar.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.people{background:transparent url('../images/sub/ico_people.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.bulb{background:transparent url('../images/sub/ico_bulb.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.folder{background:transparent url('../images/sub/ico_folder.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.write{background:transparent url('../images/sub/ico_write.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.examine{background:transparent url('../images/sub/ico_examine.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.medal{background:transparent url('../images/sub/ico_medal.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.speaker{background:transparent url('../images/sub/ico_speaker.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.awards{background:transparent url('../images/sub/ico_awards.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.exclamation{background:transparent url('../images/sub/ico_exclamation.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .conTitle i.ico.question{background:transparent url('../images/sub/ico_question.png') no-repeat center / 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW{display:flex; flex-wrap:wrap; gap:5em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW.column {gap: 2.5em 5em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW > div{flex:1 1 calc(50% - 2.5em); width:calc(50% - 2.5em);}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.w100{flex: 1 1 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div p.theme{margin:0 auto; padding:.5em 1em; background:#28388f; border-radius:1em 1em 0 0; color:#fff; font-size:1.125em; font-weight:600; text-align:center;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.w100 p.theme{max-width: calc(50% - 2.5em); margin:0 0 1em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW .infoW{height:calc(100% - 6em); padding:1.5em .5em; border:1px solid #28388f; border-radius:0 0 1em 1em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW .infoW > ul > li{margin:0 auto 1em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul.indent{padding:0 1.25em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul li p.ti,
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul li p.ti + p{display:inline-block; margin:0; vertical-align:top;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul li p.ti{margin:0 .25em .25em 0; padding:.0625em .5em; background:#e4efff; color:#132b88; font-size:.938em; font-weight:600;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul li p.ti + ul.list{margin-top:.125em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.generalW{}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.shortW{}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.shortW .exampleW ul li .imgW{max-width: 842px;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.shortW .exampleW ul li .imgW img{width: 100%;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW.noteW{gap:1em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW.noteW .note{flex:1 1 100%; padding:1.5em 1.75em 1.75em; background:#f6faff; border:1px dotted #e4efff; border-radius:2px;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW.noteW .note.note01 p.point{margin:-.75em 0 0; font-size:.875em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW.noteW .note.note01 p.point:before{margin-top:-.25em;}
#mainContents .area01 .areaBox.guideW .boxW .box .flexW.noteW .note.note02 p.point{margin-top:.75em;}
#mainContents .area01 .areaBox.guideW .boxW .box .tableW table tr th p.justifyW{display:flex; justify-content:space-between; max-width:4em; text-align:justify;}
#mainContents .area01 .areaBox.guideW .boxW .box .tableW table tr th p.justifyW span{}

@media all and (min-width:1921px){
	#mainVisual .txtBox .txtW{top:6em;}
	#mainVisual .bgBox .pager{margin:0 auto 2.5em;}
}

@media all and (max-width:1279px){
	#mainVisual{min-width:auto; max-height:620px; min-height:auto;}
	#mainVisual .txtBox .txtW{top:5em;}
	#mainVisual .bgBox .pager{bottom:10em; margin:0 auto 1.75em;}
	#mainContents .area01{margin:-10em auto 5em;}

	#mainContents{min-width:960px; font-size:16px;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW{gap:2.5em;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW > div{flex:1 1 100%; width:100%;}
}

@media all and (max-width:1023px){
	#mainVisual{max-height:500px;}
	/*#mainVisual .swiper-container .imgW img{object-fit:inherit;}*/
	#mainVisual .txtBox .txtW{top:1.5em;}
	#mainVisual .bgBox .pager{bottom:8.5em; margin:0 auto 1.5em;}

	#mainContents{min-width:100%;}
	#mainContents .area01{margin:-8.5em auto 5em;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW div.shortW.w100 p.theme{max-width: 100%;}
}

@media all and (max-width:768px){
	.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide{height:auto;}

	#mainVisual{max-height:380px;}
	#mainVisual .txtBox .txtW{top:1.25em;}
	#mainVisual .txtBox .txtW p.ti{font-size:3em;}
	#mainVisual .txtBox .txtW p.date{font-size:1.438em;}
	#mainVisual .bgBox .pager{bottom:5em; margin:0 auto 1.25em;}

	#mainContents{font-size:15px;}
	#mainContents .mt{margin-top:1.5em;}
	#mainContents .mb{margin-bottom:1.5em;}
	#mainContents .conTitle h3{font-size:2em;}
	#mainContents ul.email li p{display:block; margin:0 auto .75em;}
	#mainContents ul.email li a{margin:0 .5em 0 0;}

	#mainContents table tr th{padding:.625em .625em;}
	#mainContents table tr td{padding:.5em .625em;}

	#mainContents .area01{margin:-5em auto 5em;}
	#mainContents .area01 .areaBox.guideW{padding:3em 1.5em;}
}

@media all and (max-width:580px){
	#mainVisual{max-height:320px;}
	#mainVisual .txtBox .txtW p.ti{font-size:2.75em;}
	#mainVisual .bgBox .pager{bottom:2.5em; margin:0 auto 1.25em;}

	#mainContents .pointW{padding:.25em .5em;}

	#mainContents ul.email li a{margin-bottom:.75em;}
	#mainContents ul.email li a:last-child{margin-bottom:0;}

	#mainContents .area01{margin:-2.5em auto 5em;}
	#mainContents .area01 .areaBox.guideW{padding:2.5em .5em; box-shadow:none;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul.indent{padding:0 .875em;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul li p.ti + p{width:calc(100% - 3em);}
}

@media all and (max-width:480px){
	#mainVisual{max-height:240px;}
	#mainVisual .txtBox .txtW{top:.75em;}
	#mainVisual .txtBox .txtW p.ti{margin:0 auto .313em; font-size:2em;}
	#mainVisual .txtBox .txtW p.date{font-size:1.25em;}
	#mainVisual .bgBox .pager{margin:0 auto .75em;}

	#mainContents{font-size:14px;}
	#mainContents table{font-size:.938em;}
	#mainContents .pointW{padding:.313em .75em; border-radius:4px; text-align:left;}

	#mainContents .area01 .areaBox.guideW .boxW .box .flexW .infoW{padding:1em;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul.indent{padding:0 .125em;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW div ul li p.ti + p{width:100%;}
	#mainContents .area01 .areaBox.guideW .boxW .box .flexW.noteW .note{padding:1.125em 1.25em 1.25em;}

@media all and (max-width:319px){
}

/* ie hack */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) and (max-width:768px){
}