html{
	font-size: 10px;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

body{
	font-family: "Yu Gothic", "游ゴシック", YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', "メイリオ", "Meiryo", "ＭＳ ゴシック", sans-serif;
	color: #313131;
	line-height:1.5;
}
body.ie {
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
a{
	color: #005174;
	text-decoration: none;
}
main{
	display: block;
}

/* 共通
--------------------------------------------------*/

#container-wpr{
	position: relative;
}

/* pc */
@media print,only screen and (min-width: 641px){

	.sp {
	  display: none!important;
	}
	body{
		font-size: 1.4rem;
	}
	a:hover{
		text-decoration:underline;
	}
	#content,
	#container{
		width: 1100px;
		margin: 0 auto 120px auto;
	}
	#content{
		margin-top: 0;
	}
	#container:after {
	  content: "";
	  display: table;
	  clear: both;
	}
	#main{
		width: 800px;
		float: left;
		line-height: 2;
	}
	#side{
		width: 260px;
		float: right;
	}

}
/* sp */
@media screen and (max-width: 640px){

	.pc {
	  display: none!important;
	}
	img{
	  width: 100%;
		height: auto;
		vertical-align: bottom;
	}
	html{
		font-size: 11.7px;
	}
	#content,
	#title,
	#title-en{
		margin-top: 13.3vw;
	}
	#aside{
		display: none;
	}
	#main{
		margin:0 1rem 2rem 1rem;
	}

}

/* ヘッダー
--------------------------------------------------*/

/* pc */
@media print,only screen and (min-width: 641px){
	#header{
		width: 100%;
		position:fixed;
		top: 0;
		left: 0;
		z-index: 100;
		background-color: #fff;
	}

	#header1{
		background: linear-gradient(-90deg,#00284a, #006286);
		padding: 12px 0;
	}
	#header1-in{
		width: 1100px;
		overflow: hidden;
		margin: 0 auto;
	}
	#header1 #hnav,
	#header1 #lang{
		float: right;
	}
	#header1 #hnav a:hover,
	#header1 #lang a:hover{
		text-decoration: none;
	}
	#header #hnav{
		margin:3px 24px 0 0;
	}
	#header #hnav li{
		display: inline;
		margin-left: 30px;
	}
    #header #hnav .guardian {
        margin-left: 20px;
    }
	#header #hnav li a{
		color: #fff;
		font-size: 13px;
		padding: 5px 0;
	}
	#header #hnav .instagram img,
    #header #hnav .youtube img,
	#header #hnav .tiktok img {
        width: 24px;
        height: 24px;
    }
	#header #hnav .guardian a{
		background: url(../images/cmn/hnav-icon1.svg) left center no-repeat;
		background-size: 22px auto;
		padding-left: 32px;
	}
	#header #hnav .access a{
		background: url(../images/cmn/hnav-icon2.svg) left center no-repeat;
		background-size: 12px auto;
		padding-left: 23px;
	}
	#header1 #lang{
		width: 100px;
		text-align: center;
	}
	#header1 #lang a{
		width: 98px;
		color: #0fbff1;
		font-size: 13px;
		border: 1px #0fbff1 solid;
		display: inline-block;
		padding: 3px;
	}
	#header2{
		width: 1100px;
		margin: 0 auto;
		position: relative;
		z-index: 10;
	}
	#header2:after {
	  content: "";
	  display: table;
	  clear: both;
	}
	#header2 .logo{
		width: 340px;
		float: left;
		margin-top: 12px;
	}
	#header2 .logo img{
		width: 100%;
	}
	#header2 #gnav{
		width: 760px;
		float: right;
		text-align: right;
	}
	#header2 #gnav>ul>li{
		height: 85px;
		display: inline-block;
		position: relative;
	}
	#header2 #gnav>ul>li.top{
		display: none;
	}
	#header2 #gnav>ul>li:before{
		width: 1px;
		content: "";
		background-color: #e5e5e5;
		position: absolute;
		top: 30px;
		left: 0;
		bottom: 25px;
	}
	#header2 #gnav>ul>li:last-child:after{
		width: 1px;
		content: "";
		background-color: #e5e5e5;
		position: absolute;
		top: 30px;
		bottom: 25px;
	}
	#header2 #gnav>ul>li>a{
		height: 85px;
		display: block;
		color: #313131;
		padding: 34px 15px;
	 }
	#header2 #gnav>ul>li>a:hover{
		color: #005174;
		text-decoration: none;
		position: relative;
	 }
	#header2 #gnav>ul>li>a:hover:after{
		width: 10px;
		height: 7px;
		content: "";
		background: url(../images/cmn/arw-d-gb.svg) 0 0 no-repeat;
		background-size: 10px auto;
		display: block;
		position: absolute;
		bottom: 16px;
		left: 50%;
		transform: translateX(-50%);
	 }
	#header2 #gnav>ul>li>ul{
		width: 230px;
		text-align: left;
		position: absolute;
		left: 0;
		top: 89px;
		display: none;
	 }
	#header2 #gnav>ul>li:last-child>ul{
		left: auto;
		right: 0;
	 }
	#header2 #gnav>ul>li>ul>li>ul{
		display: none;
	 }
	#header2 #gnav>ul>li>ul>li>a{
		width: 230px;
		color: #fff;
		background-color: #006286;
		border-top:1px #518fa5 solid;
		padding: 13px 33px 13px 20px;
		display: block;
		opacity: 0.8;
	 }
	#header2 #gnav>ul>li>ul>li>ul>li>a{
		padding-left: 35px;
	 }
	#header2 #gnav>ul>li>ul>li:first-child>a{
		border-top:none;
	 }
	#header2 #gnav>ul>li>ul>li>a:hover{
		opacity: 1;
		text-decoration: none;
	}
	#header2 #gnav>ul>li>ul>li:hover ul {
        display: block;
    }
    #header2 #gnav>ul>li>ul>li>ul>li>a {
        display: block;
        padding: 5px 20px 5px 40px;
        background-color: #006286;
        color: #fff;
    }
    #header2 #gnav>ul>li>ul>li>ul>li:first-child a {
        padding: 15px 20px 5px 40px;
    }
    #header2 #gnav>ul>li>ul>li>ul>li:last-child a {
        padding: 5px 20px 15px 40px;
    }
	#header .hamburger{
        display:none;
	}

}



/* sp */
@media screen and (max-width: 640px){
	#header2{
		width: 100%;
		height: 13.3vw;
		position:fixed;
		top: 0;
		left: 0;
		z-index: 100;
		background-color: #fff;
		box-shadow: 0 1px 5px rgba(0,0,0,0.3);
	}
	#header2 h1,
	#header2 .logo{
		width: 46.5vw;
		margin: 2vw 1rem;
	}
	#header #nav-wpr{
		overflow-y: scroll; /* has to be scroll, not auto */
		-webkit-overflow-scrolling: touch;
		max-height: calc( 100vh - 13.3vw );
		background: linear-gradient(-90deg,#00284a, #006286);
		padding: 1rem;
		display: none;

	}
	#header nav{
	  background-color: #fff;

	}

	#header #gnav>ul>li{
		border-bottom: 1px #f0f0f0 solid;
	}
	#header #gnav>ul>li:last-child{
		border-bottom:none;
	}
	#header #gnav>ul>li>a,
	#header #gnav>ul>li.current-menu-item.close>a,
	#header #gnav>ul>li.current-menu-ancestor.close>a{
		display: block;
		color: #005073;
		font-size: 1.4rem;
		padding: 1rem 2.6rem 1rem 1.7rem;
		position: relative;
	 }
	#header #gnav>ul>li>a:before{
		width: 0.9rem;
		height: 1.2rem;
		content: "";
		background: url(../images/sp/arw-plus.svg) center center no-repeat;
		background-size: 0.9rem auto;
		position: absolute;
		right: 1.7rem;
		top:50%;
		transform:translateY(-50%);
		transition:transform .3s ease;
	}
	#header #gnav>ul>li:first-child>a:before
	{
		background: url(../images/sp/arw-gnav.svg) center center no-repeat;
		background-size: 0.9rem auto;
		display: block;
	}
	#header #gnav>ul>li.open>a:before,
	#header #gnav>ul>li.open.current-menu-parent>a:before{
		background: url(../images/sp/arw-m.svg) center center no-repeat;
		transform:translateY(-50%) rotate(180deg);
	}
	#header #gnav>ul>li>ul{
		display: none;
	}
	#header #gnav>ul>li>ul li{
		border-top: 1px #f0f0f0 solid;
	}
	#header #gnav>ul>li>ul>li a{
		background:#f6f6f6 url(../images/sp/arw-gnav.svg) right 1.7rem center no-repeat;
		background-size: 0.9rem auto;
		display: block;
		font-size: 1.3rem;
		padding: 1rem 2.6rem 1rem 2.5rem;
	}
	#header #gnav>ul>li>ul>li>ul>li>a{
		padding: 1rem 2.6rem 1rem 4rem;
	}
	#header #hnav{
		display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
		margin: 1rem -1rem 0 -1rem;
	}
	#header #hnav li{
		width: 50%;
		border-top: 1px #336a86 solid;
		border-bottom: 1px #336a86 solid;
		border-left: 1px #336a86 solid;
	}
	#header #hnav li:first-child{
		border-left: none;
	}
	#header #hnav li a{
		padding: 1rem;
		color: #fff;
		font-size: 1.4rem;
		display: block;
		padding: 1rem 0.3rem 1rem 3.4rem;
	}
	#header #hnav li:first-child a{
		background: url(../images/cmn/hnav-icon1.svg) 1.1rem center no-repeat;
		background-size: 1.5rem auto;
	}
	#header #hnav li:last-child a{
		background: url(../images/cmn/hnav-icon2.svg) 1.4rem center no-repeat;
		background-size: 0.9rem auto;
	}
	#header #lang-btn{
		width: 20rem;
		margin:1.5rem auto 0.5rem auto;
		text-align: center;
	}
	#header #lang-btn a{
		border: 1px #01abdb solid;
		padding: 0.5rem;
		display: block;
		color: #0fbff1;
		font-size: 1.6rem;
	}
	#header #lang-menu{
		display: none;
		background: linear-gradient(-90deg,#00284a, #006286);
		padding: 1rem;
	}
	#header #lang-menu a{
		background: url(../images/cmn/arw-g.svg) right 1.5rem center no-repeat;
		background-size: 0.8rem auto;
		background-color: #fff;
		font-size: 1.3rem;
		display: block;
		padding: 1rem 1.5rem;
	}
	#header .sp_snsList {
		display: flex;
    	position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 16.5vw;
	}
	#header .sp_snsList a {
        display: block;
	}
	#header .sp_snsList > * {
		width: 7.813vw;
	}
	#header #instagram,
	#header #youtube {
		margin-right: 3vw;
	}
	#header #hamburger{
		width: 13.3vw;
		height: 13.3vw;
		position: absolute;
		top: 0;
		right: 0;
	  	cursor: pointer;
		text-indent: -9999px;
		z-index: 100;
		border-left: 1px #e5e5e5 solid;
	}
	#header #hamburger .hamburger-txt:after{
		width: 100%;
		height: 3vw;
		content: "MENU";
		left: 0;
		color: #005073;
		font-size: 2.3vw;
		position: absolute;
		bottom: 2vw;
		text-indent: 1px;
		text-align: center;
	}
	.menu-open #header #hamburger .hamburger-txt:after{
		content: "閉じる";
	}
	#header #hamburger .hamburger-lines{
		height: 70%;
		width:55%;
		margin: 0 auto 5% auto;
		position: relative;
	}
	#header #hamburger .hamburger-lines>div{
	  background-color: #006286;
	  width:100%;
	  height:0.6vw;
	  transition: transform .3s ease, opacity .3s ease;
	  position: absolute;
	  left:0;
	  top:45%;
	}
	#header #hamburger .hamburger-lines>div:first-child{
	  transform: translateY(-370%);
	}
	#header #hamburger .hamburger-lines>div:last-child{
	  transform: translateY(370%);
	}
	.menu-open #header #hamburger .hamburger-lines>div:first-child{
	  transform: rotate(225deg);
	}
	.menu-open #header #hamburger .hamburger-lines>div:nth-child(2){
	  transform: translateX(-50%);
	  opacity: 0;
	}
	.menu-open #header #hamburger .hamburger-lines>div:last-child{
	  transform: rotate(-225deg);
	}

}

/* フッター
--------------------------------------------------*/

#footer1{
	background-color:#f6f6f6;
}
#footer1 .links{
	display: flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#footer2{
	background: linear-gradient(-90deg,#00284a, #006286);
}

#snav li a{
	display: block;
	color: #fff;
}
#snav li:first-child a{
	background-color: #c13462;
}
#snav li:nth-child(2) a{
	background-color: #53b5d1;
}
#snav li:last-child a{
	background-color: #959595;
}
#footer1 .about .social{
	display: flex;
	justify-content: space-between;
}
/* pc */
@media print,only screen and (min-width: 641px){

	#footer1{
		padding:35px 0 17px 0;
	}
	#footer1 h2{
		text-align: center;
		margin-bottom: 25px;
	}
	#footer1 .links{
		width: 935px;
		margin: 0 auto 20px auto;
	}
	#footer1 .links:after{
		width: 285px;
	}
	#footer1 .links li{
		width: 285px;
		margin-bottom: 20px;
	}
	#footer1 .links li img{
		width: 100%;
		height: auto!important;
	}
	#footer1 .about{
		overflow: hidden;
	}
	#footer1 .about .logo{
		width: 342px;
		float: left;
	}
	#footer1 .about .logo img{
		width: 100%;
	}
	#footer1 .about .add{
		width: 620px;
		float: left;
		margin: 25px 0 0 40px;
	}
	#footer1 .about .social{
		width: 95px;
		float: right;
		margin-top: 10px;
	}
	#footer1 .about .social li{
		width: 40px;
	}
	#footer1 .about .social li img{
		width: 100%;
	}
	#footer1-in,
	#footer2-in{
		width: 1100px;
		margin: 0 auto;
	}
	#footer2{
		padding:15px 0;
		overflow: hidden;
	}
	#footer2 #fnav{
		width: 50%;
		float: left;
	}
	#footer2 #fnav li{
		display: inline;
		margin-right: 25px;
	}
	#footer2 #fnav li a{
		background: url(../images/cmn/arw-lb.svg) left center no-repeat;
		color:#fff;
		text-decoration: none;
		padding-left: 18px;
	}
	#footer2 #fnav li a:hover{
		text-decoration: underline;
	}
	#footer2 p.copy{
		width: 50%;
		float: right;
		color: #fff;
		font-size: 12px;
		text-align: right;
	}
	#footer1 .links:after{
		content: "";
		height: 0;
	}
	#snav{
		position: absolute;
		right: 0;
		top: 0;
		overflow: hidden;
		z-index: 10;
	}
	body.home #snav{
		top:440px;
	}
	#snav li{
		width: 45px;
		margin-bottom: 15px;
		position: relative;
	}
	#snav li:last-child{
		margin-bottom: 25px;
	}
	#snav li:after{
		width: 70px;
		height: 68px;
		content: "";
		background-color: #eee;
		display: block;
		transform:rotate(23deg);
		position: absolute;
		left: 0;
		bottom: -11px;
		z-index: -1;
	}
	#snav li a{
		font-size: 1.6rem;
		line-height: 1.2;
		padding: 18px 0 18px 15px;
	}
	#snav li:last-child a{
		background:#959595 url(../images/pc/arw-pagetop.png) center 15px no-repeat;
		background-size: 15px auto;
		padding-top: 44px;
		padding-bottom: 20px;
	}
	#snav li:last-child img{
		width: 12px;
		margin-left: 1px;
	}
	#snav li a:hover{
		text-decoration: none;
	}
	#snav li:first-child a:hover{
		background-color: #b02451;
	}
	#snav li:nth-child(2) a:hover{
		background-color: #399eba;
	}
	#snav li:last-child a:hover{
		background-color: #7d7d7d;
	}

}

/* sp */
@media screen and (max-width: 640px){

	#footer1{
		padding: 0 0 1.5rem 0;
	}
	#footer1 h2{
		width: 6.8rem;
		margin: 0 auto 1.8rem auto;
	}
	#footer1 .links{
		width: 85%;
		margin: 0 auto;
	}
	#footer1 .links li{
		width: 45%;
		margin-bottom: 1.5rem;
	}
	#footer1 .about{
		border-top: 1px #e3e3e3 solid;
	}
	#footer1 .about .logo{
		width: 25rem;
		max-width: calc(100% - 2rem);
		margin: 0.5rem auto 1rem auto;
	}
	#footer1 .about .add{
		font-size: 1.1rem;
		text-align: center;
	}
	#footer1 .about .social{
		width: 9.5rem;
		margin:1.5rem auto;
	}
	#footer1 .about .social li{
		width: 4rem;
	}
	#footer2{
		padding:0 0 1.5rem 0;
	}
	#footer2 #fnav{
		background-color: #f6f6f6;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		border-top: 1px #e3e3e3 solid;
	}
	#footer2 #fnav li{
		width: 50%;
		border-bottom: 1px #e3e3e3 solid;
		border-right: 1px #e3e3e3 solid;
	}
	#footer2 #fnav li:nth-child(even){
		border-right: none;
	}
	#footer2 #fnav li a{
		background: url(../images/cmn/arw-lb.svg) 1.3rem center no-repeat;
		background-size: 0.8rem auto;
		color:#313131;
		font-size: 1.3rem;
		text-decoration: none;
		padding:1rem 1rem 1rem 3.2rem;
		display: block;
	}
	#footer2 p.copy{
		color: #fff;
		font-size: 0.9rem;
		text-align: center;
		padding-top: 1.5rem;
	}
	#snav{
		background-color: #f6f6f6;
		padding: 1.5rem 1rem 0.1rem 1rem;
	}
	#snav li{
		margin-top: 15px;
		text-align: center;
	}
	#snav li:first-child{
		margin-top: 0;
	}
	#snav li br{
		display: none;
	}
	#snav li a{
		background: url(../images/cmn/arw-w-sp.svg) right 1.2rem center no-repeat;
		background-size: 1.2rem auto;
		font-size: 1.6rem;
		padding: 1rem 2rem;
	}
	.sp-pagetop{
		border-top: 1px #eee solid;
		text-align: center;
	}
	.sp-pagetop a{
		color: #959595;
		font-size: 1.3rem;
		padding: 1.3rem;
		display: block;
	}
	.sp-pagetop a span{
		background: url(../images/cmn/arw-pagetop.svg) left center no-repeat;
		background-size: 1.2rem auto;
		padding-left: 2rem;
	}
}

/* メインイメージ
--------------------------------------------------*/

#top-mainImg .txt{
	position: absolute;
}
#top-mainImg .icon{
	opacity: 0.3;
}

#top-emergency .h{
	background-color: #a40000;
	color: #fff;
}
#top-emergency ul time{
	color: #707070;
}
#top-pickup{
	background-color: #d7e7ec;
}

/* バナー
--------------------------------------------------*/
#top-banners2{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
#top-banners2 a {
	display: block;
	transition: .2s;
}
/* pc */
@media print,only screen and (min-width: 641px){
	#top-banners2{
		margin: 0 -15px;
		justify-content: center;
	}
	#top-banners2 li{
		display: inline-block;
		margin:0 15px 30px 15px;
		width:345px;
	}
	#top-banners2 li img{
		width:100%;
	}
	/* #top-banners2 li:nth-child(3n+1){
		margin-left:0;
	}
	#top-banners2 li:nth-child(3n+3){
		margin-right:0;
	} */
	#top-banners2 li a:hover {
		opacity: .8;
	}
}
/* sp */
@media screen and (max-width: 640px){
	#top-banners2 {
		text-align: center;
		padding: 0 4.532vw;
		justify-content: space-between;
	}
	#top-banners2 li {
		width: calc(50% - 2.031vw);
		margin-bottom: 5.5vw;
	}
}
/* pc */
@media print,only screen and (min-width: 641px){

	#top-emergency{
		display: flex;
		justify-content: space-between;
		border: 1px #a40000 solid;
		margin-bottom: 30px;
	}
	#top-emergency .h{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 140px;
	}
	#top-emergency ul{
		width: 938px;
		margin: 20px 0;
	}
	#top-emergency ul li{
		overflow: hidden;
		margin-bottom: 10px;
	}
	#top-emergency ul li:last-child{
		margin-bottom: 0;
	}
	#top-emergency ul time{
		width: 6em;
		float: left;
	}
	#top-emergency ul .txt{
		width: calc(100% - 8em);
		float: left;
	}
	#top-pickup{
		padding: 17px 0 16px 20px;
		display: flex;
		justify-content: space-between;
		margin-top: 54px;
	}
	#top-pickup .h{
		background:url(../images/pc/pickup-arw.png) right center no-repeat;
		display: flex;
		align-items: center;
		padding-right: 35px;
	}
	#top-pickup .txt{
		width: 910px;
		font-size: 16px;
		display: flex;
		align-items: center;
	}
	.briefing_btn {
	    margin: 0 189px;
    	margin-top: 50px;
   		height: 70px;
	}
	.festival_btn {
		float: left;
		margin-right: 32px;
    	width: 345px;
	}
	.junior_btn {
   		float: left;
    	margin-right: 32px;
    	width: 345px;
	}
	.senior_btn {
    	float: left;
    	width: 345px;
	}
}
/* sp */
@media screen and (max-width: 640px){
	#top-emergency .h{
		text-align: center;
		font-size: 1.3rem;
		padding: 0.8rem;
	}
	#top-emergency ul li{
		border-bottom: 1px #f0f0f0 solid;
		padding: 0.8rem 1rem;
	}
	#top-emergency ul time{
		font-size: 1.1rem;
		display: block;
		margin-bottom: 0.3rem;
	}
	#top-emergency ul .txt{
		font-size: 1.3rem;
	}
	#top-pickup{
		padding: 3vw 4vw;
		margin: 4.532vw 4.532vw 0;
	}
	#top-pickup .h{
		background:url(../images/sp/pickup-arw.png) right center no-repeat;
		background-size: 2.5vw auto;
		width: 26vw;
		margin-bottom: 2.66vw;
	}
	#top-pickup .h img{
		width: 20vw;
	}
	#top-pickup .txt{
		line-height: 1.538;
		font-size: 3.4vw;
	}
	.briefing_btn {
    	margin: 20px 0;
    	padding-left: unset;
	}
	.container_btn {
		margin: 0 auto;
		overflow: hidden;
	}
	.junior_btn {
	 /*    display: block; */
	    margin-left: 3%;
    	width: 45%;
    	float: left;
	}
	.senior_btn {
	    display: block;
	    margin-right: 3%;
    	width: 45%;
    	float: right;
	}
}

/* トップ
--------------------------------------------------*/
#top-news {
	position: relative;
	z-index: 1;
}
#top-news::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../images/cmn/cmn-bg.jpg) no-repeat top center/cover;
	z-index: -1;
}
#top-news .day time{
	color: #707070;
}
#top-news .day .cat{
	color: #fff;
}
#top-news .h{
	color: #005174;
}
#top-news .r .item{
	border-bottom: 1px #f0f0f0 solid;
}
#top-news .r a{
	display: block;
}
#top-news .r .item a{
	overflow: hidden;
}
#top-news .new img{
	vertical-align: middle;
	margin-left: 10px;
}
#top-pages ul li{
	background-color: #313131;
	position: relative;
	border-bottom: 1px #fff solid;
}
#top-pages ul li div{
	width: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: rgba(5,152,206,0.5);
}
#top-sns {
	position: relative;
	border-top: solid 1px #e8e8e8;
	border-bottom: solid 1px #e8e8e8; 
}
#top-sns::before,
#top-sns::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background: #c6c6c6;
}
#top-sns::before {
	top: 5px;
}
#top-sns::after {
	bottom: 5px;
}
#top-sns .h {
	display: block;
	z-index: 1;
	color: #313131;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing: .1em;
	text-align: center;
}
#top-sns .h img {
	display: block;
	width: 100%;
}
#top-sns #top-sns-list {
	display: flex;
	justify-content: space-between;
}
#top-sns #top-sns-list li a {
	display: block;
	text-align: center;
}
#top-sns #top-sns-list li a p {
	color: #0d0d0d;
}
/* pc */
@media print,only screen and (min-width: 641px){
	#top-news{
		padding-bottom: 40px;
		margin-bottom: 60px;
	}
	#top-news::before {
		top: 8rem;
		left: -5rem;
		width: calc(100vw - 5rem);
		min-width: 1250px;
		margin-right: calc(50% - 50vw);
		height: calc(100% - 8rem);
	}
	#top-news h2{
		margin: 60px 0 10px 0;
	}
	#top-news h2 img {
		width: 1186px;
	}
	.top-news-in{
		display: flex;
		justify-content: space-between;
		position: relative;
		padding-top: 6.5rem;
	}
	#top-news .l{
		width: 400px;
	}
	#top-news a{
		display: block;
	}
	#top-news a:hover{
		text-decoration: none;
	}
	#top-news a:hover .h{
		text-decoration: underline;
	}
	#top-news .l .pic img,
	#top-news .r .pic img{
		width: 100%;
		height:auto!important;
	}
	#top-news .r{
		width: 620px;
	}
	#top-news .l .pic{
		margin-bottom: 25px;
	}
	#top-news .l .day{
		margin-bottom: 19px;
	}
	#top-news .r .day{
		margin-bottom: 20px;
	}
	#top-news .day time{
		font-size: 16px;
		margin-right: 13px;
		position: relative;
		top: 0.1em;
		left: 0;
	}
	#top-news .day .cat{
		font-size: 13px;
		padding: 5px 10px;
	}
	#top-news .h{
		font-size: 18px;
		margin-bottom: 17px;
	}
	#top-news .l .txt{
		font-size: 15px;
		border-bottom: 1px #e5e5e5 solid;
		padding-bottom: 20px;
	}
	#top-news #tnav{
		position: absolute;
		top: 0;
		left: 0;
		text-align: left;
		white-space: nowrap;
	}
	#top-news #tnav ul {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		margin: -6.8px -6.8px 0;
	}
	#top-news #tnav li{
		display: block;
		width: 110px;
		margin: 6.8px;
		padding: 3px;
		cursor: pointer;
		position: relative;
		color: #005174;
		text-align: center;
		background: #fff;
		border-radius: 1.5rem;
		border: 1px solid #c0c0da;
		transition: .2s;
		font-size: 15px;
	}
	#top-news .top-news-in:has(#tnav li:nth-child(n+10)) {
		padding-top: 9rem;
	}
	#top-news #tnav li.current {
		color: #fff;
		background: #005174;
		border-color: #005174;
	}
	#top-news #tnav li:hover {
		color: #fff;
		background: #005174;
		border-color: #005174;
	}
	#top-news .list{
		border-top: 1px #e5e5e5 solid;
		margin-bottom: 40px;
	}
	#top-news .r .item {
		border-bottom: 1px #e5e5e5 solid;
	}
	#top-news .r .item a{
		display: flex;
		padding: 20px 0;
	}
	#top-news .r .item .txt{
		flex: 1;
	}
	#top-news .r .item .pic{
		width: 150px;
		margin-right: 25px;
	}
	#top-news .pic {
		overflow: hidden;
	}
	#top-news .pic img {
		transition: .2s;
	}
	#top-news a:hover .pic img {
        transform: scale(1.1);
    }
	#top-pages ul{
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
	}
	#top-pages ul li{
		width: 50%;
		background-color: #313131;
		border-left: 1px #fff solid;
		overflow: hidden;
	}
	#top-pages ul li:nth(odd){
		border-left: none;
	}
	#top-pages ul li div{
		width: 550px;
		padding: 24px 24px 22px 24px;
	}
	#top-pages ul li div img{
		width: auto;
		height: 32px;
	}
	#top-pages ul li a{
		transition: 0.5s ease-in-out;
	}
	#top-pages ul li a:hover{
		opacity: 0.8;
	}
	#top-pages ul li a picture img{
		width: 550px;
		height: auto;
		transition: 0.5s ease-in-out;
	}
	#top-pages ul li a:hover picture img{
		transform: scale(1.05,1.05);
	}
	#top-sns {
		display: flex;
		align-items: center;
		margin: 55px 0 80px;
		padding: 40px 10px 30px 37px;
	}
	#top-sns .h {
		margin-top: -10px;
		margin-right: 40px;
		line-height: 1.542;
		font-size: 24px;
	}
	#top-sns #top-sns-list li {
		margin: 0 25px;
	}
	#top-sns #top-sns-list li a img {
		width: 53px;
	}
	#top-sns #top-sns-list li a p {
		margin-top: 15px;
		font-size: 16px;
	}
	#top-sns #top-sns-list li a:hover {
		text-decoration: none;
		opacity: .8;
	}
	#top-sns #top-sns-list li a:hover p {
		text-decoration: none;
	}
}
/* sp */
@media screen and (max-width: 640px){
	#top-news {
		padding-bottom: 8vw;
	}
	#top-news::before {
		top: 6.4vw;
		left: 0;
		width: 100%;
		height: calc(100% - 6.4vw);
	}
	#top-news h2 {
		margin: 0 -1.5vw 4vw 0;
		text-align: right;
	}
	#top-news h2 img {
		width: 92.344vw;
	}
	#top-news .l {
		position: relative;
	}
	#top-news .l a {
		display: flex;
		margin-bottom: 5.5vw;
		padding: 0 4.532vw;
	}
	#top-news .detail{
		flex: 1;
	}
	#top-news .l .pic {
		width: 35.938vw;
		margin-right: 4.3vw;
	}
	#top-news .day {
		display: flex;
		align-items: center;
	}
	#top-news .l .day{
		margin-bottom: 2.3vw;
	}
	#top-news .r .day{
		margin-bottom: 2.3vw;
	}
	#top-news .new img{
        width: 7vw;
        margin-left: 2.5vw;
	}
	#top-news .day time{
		font-size: 2.9vw;
		margin-right: 1.5vw;
	}
	#top-news .day .cat {
		font-size: 2.35vw;
		padding: .25vw 1.6vw .25vw 1.6vw;
	}
	#top-news .h{
        line-height: 1.538;
        font-size: 3.4vw;
	}	  
	#top-news .l .txt{
		display: none;
	}
	#top-news #tnav{
		position: relative;
	}
	#top-news #tnav .h{
		border-top: 1px #e2e4eb solid;
		border-bottom: 1px #e2e4eb solid;
		text-align: center;
        font-size: 3.4vw;
		padding: 2.7vw 0;
	}
	#top-news #tnav .h span{
		background: url(../images/cmn/arw-d-b.svg) right center no-repeat;
		background-size: 3vw auto;
		padding-right: 5.5vw;
	}
	#top-news select{
		width: 100%;
		position: absolute;
		top: 0;
		bottom: 0;
		opacity: 0;
	}
	#top-news .list{
		margin-bottom: 5.2vw;
	}
	#top-news .r .item {
		border-color: #e2e3ea;
	}
	#top-news .r .item a{
		display: flex;
		padding: 4.026vw 4.532vw;
	}
	#top-news .r .item .txt{
		flex: 1;
	}
	#top-news .r .item .pic{
		width: 26.563vw;
		margin-right: 4.5vw;
	}
	#top-pages ul li{
		background-color: #fff;
	}
	#top-pages ul li div{
		width: 100vw;
		padding: 1.5rem 1.2rem 1.3rem 1.2rem;
	}
	#top-pages ul li div img{
		width: auto;
		height:6.4vw;
	}
	#top-sns {
		margin: 9.4vw 4.532vw 11vw;
		padding: 6vw 0 7vw;
	}
	#top-sns .h {
		margin-bottom: 6.8vw;
		line-height: 1.5;
		font-size: 5.6vw;
	}	  
	#top-sns #top-sns-list {
		justify-content: center;
		flex-wrap: wrap;
	}
	#top-sns #top-sns-list li {
		width: 22.4vw;
	}
	#top-sns #top-sns-list li:nth-child(-n+3) {
		width: 24vw;
	}
	#top-sns #top-sns-list li:nth-child(n+4) {
		margin-top: 5.5vw;
	}
	#top-sns #top-sns-list li a img {
		width: 12.032vw;
	}
	#top-sns #top-sns-list li a p {
		margin-top: 2vw;
		font-size: 1.3rem;
	}
}

/* セカンド
--------------------------------------------------*/


#title{
	color: #fff;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: normal;
	display: flex;
	align-items: center;
	background-repeat: no-repeat;
	background-position: center center;
}
#title .txt{
	display: block;
}
#title .h{
	position: relative;
}
#title .h:before{
	content: "";
	height: 1px;
	background-color: #fff;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
/* pc */
@media print,only screen and (min-width: 641px){
	#title{
		height: 250px;
		background-image: url(../images/pc/second_mainpc2020.jpg);
		background-size: cover;
		margin-top: 140px;
	}
	#title.news{
		background-image: url(../images/pc/news_mainpc2024.jpg);
		background-size: cover;
	}
	.post-type-news #title{
		background-image: url(../images/pc/news_mainpc2024.jpg);
		background-size: cover;
	}
	.post-type-blog #title{
		background-image: url(../images/pc/second_mainpc2020.jpg);
		background-size: cover;
	}
	#title.overseas{
		background-image: url(../images/pc/overseas_mainpc2021.jpg);
		background-size: cover;
	}
	#title h1{
		width: 1100px;
		margin: 0 auto;
	}
	#title .txt{
		font-size: 18px;
		margin-bottom: 5px;
	}
	#title .h{
		font-size: 40px;
		padding-left: 75px;
	}
	#title .h:before{
		width: 62px;
	}
	.bread{
		width: 1100px;
		margin: 10px auto;
	}
	.bread li{
		font-size: 14px;
		display: inline-block;
	}
	.bread li a{
		margin-right: 10px;
		padding:5px 20px 5px 0;
		display: block;
		background: url(../images/cmn/arw-bread.svg) right center no-repeat;
		background-size: 8px auto;
	}
	#rnav>li{
		border-bottom: 1px #f0f0f0 solid;
	}
	#rnav>li>a{
		display: block;
		color: #005073;
		font-size: 1.6rem;
		padding: 1.5rem 2.6rem 1.5rem 1rem;
		position: relative;
	 }
	#rnav>li>a:before{
		width: 0.9rem;
		height: 1.2rem;
		content: "";
		background: url(../images/sp/arw-gnav.svg) center center no-repeat;
		background-size: 0.9rem auto;
		position: absolute;
		right: 1.7rem;
		top:50%;
		transform:translateY(-50%);
		transition:transform .3s ease;
	}
	#rnav>li.menu-item-has-children>a:before{
		width: 0.9rem;
		height: 1.2rem;
		content: "";
		background: url(../images/sp/arw-plus.svg) center center no-repeat;
		background-size: 0.9rem auto;
		position: absolute;
		right: 1.7rem;
		top:50%;
		transform:translateY(-50%);
		transition:transform .3s ease;
	}
	#rnav>li.top>a{
		color: #fff!important;
		font-size: 1.8rem!important;
		background-color:#006286!important;
	}
	#rnav>li.top>a:hover{
		background-color:#0a6e93!important;
	}
	#rnav>li.top>a:before{
		background: url(../images/cmn/arw-gb.svg) center center no-repeat!important;
		background-size: 0.9rem auto!important;
		transform: translateY(-50%)!important;
	}
	#rnav>li.open.menu-item-has-children>a:before{
		background: url(../images/sp/arw-m.svg) center center no-repeat;
		transform:translateY(-50%) rotate(180deg);
	}
	#rnav>li>ul{
		display: none;
	}
	#rnav>li>ul>li,
	#rnav>li>ul>li>ul>li{
		border-top: 1px #f0f0f0 solid;
	}
	#rnav>li>ul>li>a{
		background:#f6f6f6 url(../images/sp/arw-gnav.svg) right 1.7rem center no-repeat;
		background-size: 0.9rem auto;
		display: block;
		font-size: 1.4rem;
		padding: 1.4rem 4.3rem 1.4rem 2.3rem;
	}
	#rnav li>ul>li>ul>li>a{
		background:#f6f6f6 url(../images/sp/arw-gnav.svg) right 1.7rem center no-repeat;
		background-size: 0.9rem auto;
		display: block;
		font-size: 1.4rem;
		padding: 1.4rem 4.3rem 1.4rem 3.7rem;
	}
	#rnav li a:hover,
	#rnav li.current-menu-item>ul>li>a:hover,
	#rnav li.current-menu-item>ul>li>ul>li>a:hover{
		background-color:#eaf4f8;
		text-decoration: none;
	}
	#rnav li.current-menu-item>a,
	#rnav li.current-menu-item>a:hover{
		background-color:#d6eaf2;
	}

}

/* sp */
@media screen and (max-width: 640px){
	#title{
		height: 15rem;
		background-image: url(../images/sp/second_mainsp2020.jpg);
		background-size: cover;
	}
	#title.news{
		background-image: url(../images/sp/news_mainsp2024.jpg);
		background-size: cover;
	}
	.post-type-news #title{
		background-image: url(../images/sp/news_mainsp2024.jpg);
		background-size: cover;
	}
	.post-type-blog #title{
		background-image: url(../images/sp/second_mainsp2020.jpg);
		background-size: cover;
	}
	#title.overseas,
  	.post-type-overseas #title{
		background-image: url(../images/sp/overseas_mainsp2021.jpg);
		background-size: cover;
	}
	#title h1{
		padding: 0 2rem;
	}
	#title .txt{
		font-size: 0.9rem;
		margin-bottom: 0.2rem;
	}
	#title .h{
		font-size: 2rem;
		padding-left: 3.7rem;
	}
	#title .h:before{
		width: 3rem;
	}
	.bread{
		margin:0.4rem 1rem;
	}
	.bread li{
		font-size: 14px;
		display: inline-block;
	}
	.bread li a{
		margin-right: 0.6rem;
		padding:0.2rem 1.5rem 0.2rem 0;
		display: block;
		background: url(../images/cmn/arw-bread.svg) right center no-repeat;
		background-size: 0.7rem auto;
	}
	#rnav{
		display: none;
	}
	#rnav.news-rnav{
		border-top: 1px #f0f0f0 solid;
		display: block;
		margin:0 1rem 2rem 1rem;
	}
	#rnav>li{
		border-bottom: 1px #f0f0f0 solid;
	}
	#rnav>li>a,
	#rnav>li.current-menu-item.close>a,
	#rnav>li.current-menu-ancestor.close>a{
		display: block;
		color: #005073;
		font-size: 1.4rem;
		padding: 1rem 2.6rem 1rem 1.7rem;
		position: relative;
	 }
	#rnav>li>a:before{
		width: 0.9rem;
		height: 1.2rem;
		content: "";
		background: url(../images/sp/arw-plus.svg) center center no-repeat;
		background-size: 0.9rem auto;
		position: absolute;
		right: 1.7rem;
		top:50%;
		transform:translateY(-50%);
		transition:transform .3s ease;
	}
	#rnav>li:first-child{
		display: none;
	}
	#rnav>li.open>a:before,
	#rnav>li.open.current-menu-parent>a:before{
		background: url(../images/sp/arw-m.svg) center center no-repeat;
		transform:translateY(-50%) rotate(180deg);
	}
	#rnav>li>ul{
		display: none;
	}
	#rnav>li>ul>li{
		border-top: 1px #f0f0f0 solid;
	}
	#rnav>li>ul>li>a{
		background:#f6f6f6 url(../images/sp/arw-gnav.svg) right 1.7rem center no-repeat;
		background-size: 0.9rem auto;
		display: block;
		font-size: 1.3rem;
		padding: 1rem 2.6rem 1rem 2.5rem;
	}
	#rnav>li>ul>li>a:hover{
		background-color:#d6eaf2;
	}
}

/* notfound
--------------------------------------------------*/

.notfound{
	text-align: center;
}
.notfound .btn a{
	color: #006286;
	border: 1px #006286 solid;
	display: inline-block;
}

/* pc */
@media print,only screen and (min-width: 641px){

	.notfound{
		margin: 110px 0;
		line-height: 2;
	}
	.notfound .h{
		width: 470px;
		margin: 0 auto 35px auto;
	}
	.notfound .txt{
		margin-bottom: 35px;
	}
	.notfound .btn a{
		background:url(../images/cmn/arw-b2.svg) 18px 1.4em no-repeat;
		background-size: 9px auto;
		padding: 12px 60px 12px 62px;
		font-size: 16px;
	}
	.notfound .btn a:hover{
		background:#006286 url(../images/cmn/arw-w2.svg) 18px 1.4em no-repeat;
		background-size: 9px auto;
		color: #fff;
		text-decoration: none;
	}


}

/* sp */
@media screen and (max-width: 640px){

	.notfound{
		margin: 5rem 1rem;
	}
	.notfound .h{
		width: 27.3rem;
		margin: 0 auto 2.3rem auto;
	}
	.notfound .txt{
		margin-bottom: 2.3rem;
	}
	.notfound .btn a{
		background:url(../images/cmn/arw-b2.svg) right 1.3rem center no-repeat;
		background-size: 0.7rem auto;
		padding: 1.2rem 1.5rem;
		font-size: 1.3rem;
		display: block;
	}
}

/* ニュース
--------------------------------------------------*/

#news-list{
  	border-top: 1px #f0f0f0 solid;
}
#news-list li {
	border-bottom: 1px #f0f0f0 solid;
	line-height: 1.6;
}
#news-list li a{
	display: block;
}
#news-list li time {
	color: #707070;
}
#news-list li span.cat {
	text-align: center;
	color: #fff;
}
#news-list li span.txt {
	display: block;
}
.pagenavi{
	text-align:center;
}
.pagenavi a,
.pagenavi span{
	display:inline-block;
	border: 1px #006286 solid;
}
.pagenavi span{
	background-color:#006286;
	color:#fff;
}
.news-detail-h{
	color: #005073;
	font-weight: normal;
}
.news-data{
	color: #707070;
	text-align: right;
}

/* pc */
@media print,only screen and (min-width: 641px){

	#news-list{
		margin-bottom:30px;
	}
	#news-list li {
		font-size: 16px;
	}
	#news-list li a{
		padding: 11px 7px 11px 7px;
		display: table;
	}
	#news-list li time,
	#news-list li .cat,
	#news-list li .txt{
		display: table-cell;
		vertical-align:top;
	}
	#news-list li time {
		width: 1%;
  		white-space:nowrap;
		font-size: 14px;
		position: relative;
		top:1px;
	}

	#news-list li span.cat {
		width: 7em;
		background-color: transparent!important;
	}
	#news-list li span.cat-in {
		width: 6.5em;
		padding:1px 0 0 0;
		display: inline-block;
		font-size: 13px;
	}
	#news-list li a:hover{
		text-decoration: none;
	}
	#news-list li a:hover .txt{
		text-decoration: underline;
	}
	.pagenavi{
		font-size:18px;
		margin-top:30px;
	}
	.pagenavi a,
	.pagenavi span{
		padding:0 13px;
		margin:0 5px;
	}
	.pagenavi a:hover{
		background-color:#fbfbfb;
		text-decoration:none;
	}
	.news-detail-h{
		font-size: 32px;
		border-bottom: 3px #005073 solid;
		padding: 0 0 4px 6px;
		margin-bottom: 8px;
	}
	.news-data{
		margin-bottom: 20px;
	}
	.news-detail-top{
		text-indent: -9999px;
		border-top: 1px #e5e5e5 solid;
		padding-top: 17px;
		margin-top: 40px;
	}
	.news-detail-top a{
		width: 90px;
		height: 25px;
		border: 1px #005174 solid;
		background: url(../images/cmn/top-off.svg) 26px center no-repeat;
		background-size: 37px auto;
		display: block;
		float: right;
		position: relative;
	}
	.news-detail-top a:before{
		content:"";
		width: 5px;
		height: 8px;
		background: url(../images/cmn/arw-b.svg) 0 0 no-repeat;
		background-size: 5px auto;
		position: absolute;
		top: 50%;
		left: 8px;
		transform: translateY(-50%);
		display: block;
	}
	.news-detail-top a:hover{
		background:#005174 url(../images/cmn/top-on.svg) 26px center no-repeat;
	}
	.news-detail-top a:hover:before{
		background: url(../images/cmn/arw-w.svg) 0 0 no-repeat;
	}

}

/* sp */
@media screen and (max-width: 640px){

	#news-list{
		margin-bottom:2.3rem;
	}
	#news-list li {
		font-size: 1.3rem;
	}
	#news-list li a{
		padding: 1.1rem 0;
	}
	#news-list li time {
		margin-right: 5px;
		font-size: 1.1rem;
		position: relative;
		top:0.2em;
	}
	#news-list li span.cat {
		width: 6em;
		padding:1px 3px 1px 3px;
		font-size: 0.7rem;
		display: inline-block;
	}
	#news-list li span.txt {
		display: block;
		margin-top: 0.8rem;
	}

	.pagenavi{
		font-size:1.4rem;
		margin-top:2.3rem;
	}
	.pagenavi a,
	.pagenavi span{
		padding:0.2rem 0.8rem;
		margin:0 0.3rem;
	}
	.pagenavi a:hover{
		background-color:#fbfbfb;
		text-decoration:none;
	}
	.news-detail-h{
		font-size: 2rem;
		border-bottom: 2px #005073 solid;
		padding: 0 0 0.5rem 0.2rem;
		margin-bottom: 0.5rem;
	}
	.news-data{
		margin-bottom: 1.5rem;
	}
	.news-detail-top{
		text-indent: -9999px;
		margin: 1rem 0;
	}
	.news-detail-top a{
		border: 1px #005174 solid;
		background: url(../images/cmn/top-off.svg) center center no-repeat;
		background-size: 3.7rem auto;
		display: block;
		padding: 1rem;
		position: relative;
	}
	.news-detail-top a span:before{
		width: 0.6rem;
		height: 0.9rem;
		content: "";
		background: url(../images/cmn/arw-b.svg) left center no-repeat;
		background-size: 0.5rem auto;
		position: absolute;
		top: 50%;
		left: calc(50% - 3rem);
		transform: translateY(-50%);
		display: block;
	}
}



/* 在校生・保護者の方へ　認証画面
--------------------------------------------------*/


.auth_form{
	width:300px;
	margin:70px auto;
	border:#eee 5px solid;
		padding: 12px 17px 17px 17px;
		font-size: 16px;
	line-height: 1.3;
}
.auth_form_row{
	margin:0 0 15px 0;
}
.auth_form_row div{
	display:inline;
}
.auth_form_row input{
	margin-left:10px;
	padding: 3px;
}
.auth_form_title{
	margin:0 0 15px 0;
	text-align:center;
}

.auth_form_err{
	color:#f00;
	text-align:center;
	margin:0 0 15px 0;
}
.auth_form_btn{
	margin:0 ;
	text-align:center;
}
/* sp */
@media screen and (max-width: 640px){
	.auth_form{
		width: 25rem;
		font-size: 1.2rem;
	}
}
/* english
--------------------------------------------------*/
#title-en{
	width: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
#title-en h1{
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}
/* pc */
@media print,only screen and (min-width: 641px){
	#title-en{
		height: 500px;
		margin-top: 140px;
	}
	#title-en h1{
		top: 300px;
	}
}
/* sp */
@media screen and (max-width: 640px){
	#title-en{
		height: 35.7vw;
	}
	#title-en h1{
		width: 80%;
		top: 18vw;
	}
}
/* top-mv
--------------------------------------------------*/
.top-mv {
	position: relative;
	z-index: 1;
}
.top-mv-bg {
	position: absolute;
	z-index: -1;
}
.top-mv-bg img {
	width: 100%;
	object-fit: cover;
	object-position: top;
}
.top-mv-txt {
	position: absolute;
}
.top-mv-txt img {
	display: block;
	width: 100%;
}
/* pc */
@media print,only screen and (min-width: 641px){
	.top-mv {
		height: 80rem;
	}
	.top-mv-in {
		max-width: 1100px;
		margin: 0 auto;
	}
	.top-mv-bg {
		top: 0;
		right: 4rem;
		width: calc(100vw - 14rem);
		min-width: 1160px;
		margin-left: calc(50% - 50vw);
	}
	.top-mv-bg img {
		height: 80rem;
	}
	.top-mv-movie {
		position: absolute;
		top: 6.3rem;
		right: -.9rem;
		width: 57rem;
	}
	.top-mv-movie #ytPlayerWrap {
		position: relative;
        height: 34.5rem;
        width: 100%;
	}
	.top-mv-movie #ytPlayerWrap::before {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		top: 3rem;
		left: -4rem;
		background-color: rgba(255, 255, 255, 0.302);
	}
	.top-mv-movie #iframe_ytPlayer {
		height: 100% !important;
		margin-top: 0 !important;
	}
	.top-mv-txt {
		top: 51.3rem;
		right: 10rem;
		width: 43rem;
	}
}
/* sp */
@media screen and (max-width: 640px){
	.top-mv {
		height: 146vw;
		padding: 4.532vw;
	}
	.top-mv-movie {
		position: relative;
		width: 100%;
		height: 54.688vw;
	}
	.top-mv-movie #ytPlayerWrap {
		position: relative;
		width: 100%;
		height: 54.688vw;
	}
	.top-mv-movie #iframe_ytPlayer {
		height: 100% !important;
		margin-top: 0 !important;
	}
	.top-mv-bg {
		top: 0;
		left: 0;
		width: 100%;
		height: auto;
	}
	.top-mv-bg img {
		height: 146vw;
	}
	.top-mv-txt {
        top: 100.7vw;
        right: 4.532vw;
        width: 45.313vw;
	}
}

/* top-featured
--------------------------------------------------*/
#top-featured h2 {
	margin: 0 auto;
}
#top-featured h2 img {
	width: 100%;
}
/* pc */
@media print,only screen and (min-width: 641px){
	#top-featured {
		margin-top: 5.4rem;
	}
	#top-featured h2 {
		width: 28.2rem;
	}
}
/* sp */
@media screen and (max-width: 640px){
	#top-featured {
        padding: 6.5vw 0 5vw;
	}
}

/* top-pagePick
--------------------------------------------------*/
/* pc */
@media print,only screen and (min-width: 641px){
	#top-pagePick {
		margin-bottom: 10rem;
	}
}
/* sp */
@media screen and (max-width: 640px){
	#top-pagePick {
		margin-bottom: 12vw;
	}
}

/* top-menu
--------------------------------------------------*/
/* sp */
@media screen and (max-width: 640px){
	#top-menu {
		margin-bottom: 18vw;
	}
}

/* el_btn
--------------------------------------------------*/
.el_btn {
	position: relative;
	display: block;
	margin: 0 auto;
	border: 1px solid #005174;
	background: #fff;
	color: #005174;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	z-index: 1;
	transition: .2s;
}
.el_btn::before,
.el_btn::after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	transition: .2s;
}
.el_btn::before {
	top: 5px;
	right: -5px;
	background-color: rgba(0, 81, 116, 0.102);
	z-index: -1;
}
.el_btn::after {
	top: 0;
	left: 0;
	background-color: #fff;
	z-index: 1;
}
.el_btn span {
	position: relative;
	display: inline-block;
	z-index: 2;
}
.el_btn span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	background: #005174;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transform: translateY(-50%);
	transition: .2s;
} 
/* pc */
@media print,only screen and (min-width: 641px){
	.el_btn {
		width: 300px;
		padding: 21.5px;
		line-height: 1.25;
		font-size: 2rem;
	}
	.el_btn span {
		padding: 0 30px 0 15px;
	}
	.el_btn span::after {
		width: 9px;
		height: 11px;
	} 
	/* hover */
	.el_btn:hover {
		border-color: #005174;
		color: #fff;
	}
	.el_btn:hover::after {
		background: #005174;
	}
	.el_btn:hover span::after {
		background: #fff;
	}
}
/* sp */
@media screen and (max-width: 640px){
	.el_btn {
        width: 66.407vw;
        padding: 3.829vw;
        line-height: 1.25;
        font-size: 4.25vw;
	}
	.el_btn span {
		padding: 0 6.4vw 0 3.2vw;
	}
	.el_btn span::after {
        width: 2.188vw;
        height: 2.813vw;
	} 
}

/* bl_media
--------------------------------------------------*/
.bl_media {
	position: relative;
}
.bl_media::before {
    content: "";
    display: block;
    position: absolute;
    background: url(../images/cmn/cmn-bg.jpg) no-repeat center / 100%;
    z-index: -1;
}
.bl_media_imgWpr img {
	width: 100%;
    object-fit: cover;
}
.bl_media_body {
	color: #313131;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
}
.bl_media_ttl {
	line-height: 1;
}
.bl_media_en img {
	width: 100%;
}
.bl_media_lead {
	position: relative;
	letter-spacing: .1em;
}
.bl_media_lead::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, rgba(244,179,189,1) 0%, rgba(161,200,236,1) 100%);
}
.bl_media_txt {
	text-align: left;
} 
/* pc */
@media print,only screen and (min-width: 641px){
	.bl_media {
		display: flex;
	}
	.bl_media + .bl_media {
		margin-top: 8rem;
	}
	.bl_media::before {
		top: 3.5rem;
		right: 0;
		width: calc(100vw - 10rem);
		min-width: 1200px;
		margin-left: calc(50% - 50vw);
		height: calc(100% - 3.5rem);
	}
	.bl_media__rev {
		flex-direction: row-reverse;
	}
	.bl_media__rev::before {
		right: auto;
		left: 0;
		margin-right: calc(50% - 50vw);
		margin-left: 0;
	}
	.bl_media_imgWpr {
		min-width: 600px;
		width: calc(100vw + 28.97rem);
		margin-left: calc(50% - 50vw);
	}
	.bl_media__rev .bl_media_imgWpr {
		margin-left: auto;
		margin-right: calc(50% - 50vw);
	}
	.bl_media_imgWpr img {
		max-height: 50rem;
	}
	.bl_media_body {
		min-width: 400px;
		margin-top: 3.5rem;
		padding: 5.468rem 4.5rem 4.5rem;
	}
	.bl_media_ttl {
		margin-bottom: 3rem;
		font-size: 4.4rem;
	}
	.bl_media_en {
		width: 19.3rem;
		margin: 0 auto 2.5rem;
	}
	.bl_media:nth-child(2) .bl_media_en {
		width: 19.5rem;
	}
	.bl_media_lead {
		margin-bottom: 1.5rem;
		padding-bottom: .8rem;
		line-height: 1.6;
		font-size: 2rem;
	}
	.bl_media_txt {
		margin-bottom: 2rem;
		line-height: 2;
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 1100px) and (min-width: 641px){
	.bl_media_imgWpr {
		margin-left: 0;
	}
	.bl_media__rev .bl_media_imgWpr {
		margin-right: 0;
	}
}
/* sp */
@media screen and (max-width: 640px){
	.bl_media {
		padding-right: 4.532vw;
		overflow: hidden;
	}
	.bl_media::before {
		top: 5.3vw;
		right: 0;
		width: calc(100% -  4.532vw);
		height: 100%;
		background-size: cover;
	}
	.bl_media__rev {
		padding-right: 0;
		padding-left: 4.532vw;
	}
	.bl_media__rev::before {
		right: auto;
		left: 0;
	}
	.bl_media + .bl_media {
		margin-top: 12.3vw;
	}
	.bl_media_imgWpr img {
		height: 70.313vw;
	}
	.bl_media_body {
		margin-left: 4.532vw;
		padding: 6.2vw 2.5vw 8.8vw 7vw;
	}
	.bl_media__rev .bl_media_body {
		margin-right: 4.532vw;
		margin-left: auto;
		padding: 6.2vw 7vw 8.8vw 2.5vw;
	}
	.bl_media_ttl {
		margin-bottom: 4.7vw;
		font-size: 7.2vw;
	}
	.bl_media_en {
		width: 35.625vw;
		margin: 0 auto 3.2vw;
	}
	.bl_media:nth-child(2) .bl_media_en {
		width: 36.094vw;
	}
	.bl_media_lead {
		margin-bottom: 2.2vw;
		padding-bottom: 2vw;
		line-height: 1.563;
		font-size: 4.25vw;
	}	  
	.bl_media_txt {
		margin-bottom: 6.2vw;
		line-height: 1.692;
        font-size: 3.45vw;
	}
}
/* bl_card
--------------------------------------------------*/
.bl_card {
	position: relative;
	display: block;
}
.bl_card::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	background: linear-gradient(90deg, #fdf0f2 0%, #ecf4fb 100%);
	transition: .2s;
	z-index: -1;
}
.bl_card_imgWpr {
	overflow: hidden;
}
.bl_card_imgWpr img {
	width: 100%;
    object-fit: cover;
    transition: .2s;
}
.bl_card_ttl {
	color: #005174;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
}
.bl_card_ttl span {
	position: relative;
	display: inline-block;
}
.bl_card_ttl span::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    background: #005174;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    transform: translateY(-50%);
    transition: .2s;
}
/* pc */
@media print,only screen and (min-width: 641px){
	.bl_card {
		padding-right: 2rem;
	}
	.bl_card::before {
		top: 3rem;
		right: 0;
		height: calc(100% - 3rem);
	}
	.bl_card_imgWpr img {
		height: 31rem;
	}
	.bl_card_ttl {
		padding: 1.7rem;
		line-height: 1.5;
		font-size: 2.4rem;
	}
	.bl_card_ttl span {
		padding: 0 3rem 0 1.5rem;
	}
	.bl_card_ttl span::after {
		width: 9px;
		height: 11px;
	}
	.bl_cardUnits {
		display: flex;
		flex-wrap: wrap;
	}
	.bl_cardUnits__2col {
		justify-content: space-between;
	}
	.bl_cardUnits__2col .bl_card {
		width: calc(100% / 2 - 3rem);
	}
	/* hover */
	.bl_card:hover::before {
		background: linear-gradient(90deg, #ecf4fb 0%, #fdf0f2 100%);
	}
    .bl_card:hover .bl_card_imgWpr img {
        transform: scale(1.1);
    }
}
/* sp */
@media screen and (max-width: 640px){
	.bl_card {
		padding-right: 4vw;
	}
	.bl_card::before {
		top: 4vw;
		right: 0;
		height: calc(100% - 4vw);
	}
	.bl_card + .bl_card {
		margin-top: 7.8vw;
	}
	.bl_card_imgWpr img {
		height: 53.75vw;
	}
	.bl_card_ttl {
		padding: 3.025vw;
		line-height: 1.5;
		font-size: 4.3vw;
	}
	.bl_card_ttl span {
		padding: 0 5.8vw 0 3vw;
	}
	.bl_card_ttl span::after {
        width: 2.188vw;
        height: 2.813vw;
	}
	.bl_cardUnits {
		padding: 0 4.532vw;
	}
}

.home #content-wpr {
	overflow: hidden;
}
/* pc */
@media print,only screen and (min-width: 641px){
	.home #content-wpr {
		margin-top: 13rem;
	}
}
/* sp */
@media screen and (max-width: 640px){
}