@charset "utf-8";

/*--------------------------------------------------------------------------------------------------------------------------------------------------------------
HOME
--------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*----------------------------------------------------
【追加コード】2020.07.10 HOMEの「JA/EN」仕組み [トム]
----------------------------------------------------*/

.home-language-config-button { position:fixed; right: -15px; width: 72px; z-index: 500;}
.home-language-config-button .ModeMenu2__btn { height:72px; padding: 20px 0 0 0; }
.home-language-config-button .ModeMenu2 li:first-child { margin-right:12px; }
.home-language-config-button .ModeMenu2 li:first-child .ModeMenu2__btn > .inner::after { right:-9px; }
.home-language-config-button .ModeMenu2__btn > .inner::before { bottom:3px; }
.home-language-config-button {
	/* 変更：　iOS Safariでも動く */
	transition: opacity .3s, visibility 0s ease .3s;
	opacity: 0;
	visibility: hidden;
}
.home-language-config-button.-show {  
	/* 変更：　iOS Safariでも動く */
	transition-delay: 0s;
	opacity: 1;
	visibility: visible;
}
@media screen and (max-width:1023px) { /* tablet */
	.home-language-config-button { display:none; }
}

/*----------------------------------------------------
メインビジュアル　背景
----------------------------------------------------*/
/*
.MainVisuaBgOuter { position:relative; width:100%; height:100%;
	z-index:216;  }*/
/* .Main, .FooterOuter HeaderOuter での比較 */



/*-----------------------
スライド背景
-----------------------*/
.Main__bg.-home {}
.Main__bg.-home .MainVisual__bg { position:relative; height:100%; }
.Main__bg.-home .MainVisual__bg > .slide { overflow:hidden; position:absolute; top:0; left:0; width:100%; height:100%; opacity:0; transition:all .6s; transform:translate3d(0, 0, 0); /*バグ対策*/
	z-index:217;
}
.Main__bg.-home .MainVisual__bg > .slide.-active { opacity:1; }
.Main__bg.-home .MainVisual__bg > .slide > .inner { content:''; width:100%; height:100%; background-size:cover; background-repeat:no-repeat; background-position:center; }

/*-----------------------
パーティクル
-----------------------*/
.Main__bg.-home .MainVisual__particle { position:absolute; top:0; left:0; width:100%; height:100%; opacity:.3;
	z-index:218; }






/*----------------------------------------------------
メインビジュアル
----------------------------------------------------*/


/*-----------------------
スライドメイン
-----------------------*/
.MainVisual__main { width:100%; padding:0 112px; box-sizing:border-box; position:absolute; top:calc(50% + 0px); margin:0 auto; left:0; right:0; transform:translateY(-50%); }
.MainVisual__main > .inner { position:relative; width:100%; }
.MainVisual__main > .inner > .inner { margin:0 auto; max-width:1024px; position:relative; }
.MainVisual__main .swiper-container { width:100%; height:100%; overflow:visible; }
.MainVisual__main .swiper-wrapper { position:relative;
	z-index:227; /* .swiper-button-next,.swiper-button-prev との比較 */ }
.MainVisual__main .swiper-slide { box-sizing:border-box; }
.MainVisual__main .swiper-slide a { display:block; }
.MainVisual__main .swiper-slide a img { overflow:hidden; }
.MainVisual__main .swiper-container img.-pc { display:block; }
.MainVisual__main .swiper-container img.-sp { display:none; }
@media screen and (max-width:1600px) { /* pc3 macbookpro15 */ }
@media screen and (max-width:1400px) { /* pc2 macbookpro13 */ }
@media screen and (max-width:1199px) { /* pc1 tablet横表示 ＆ PC小 */ }
@media screen and (max-width:1023px) { /* tablet tablet */
	.PageHeader.-home { overflow:hidden; /*max-height:600px;*/ height:auto !important;  }
	.PageHeader.-home > .inner { height:auto; padding-top:64%; }
	.MainVisual__main { padding:0 72px 0 0; }
}
@media screen and (max-width:767px) { /* sp_3 6Plus */
	.MainVisual__main .swiper-container img.-pc { display:none; }
	.MainVisual__main .swiper-container img.-sp { display:block; }
	.PageHeader.-home > .inner { height:auto; padding-top:121%; /*jsで上書き*/ }
	.MainVisual__main { padding:0 16px; }
	.MainVisual__main .swiper-slide a { position:relative; padding-top:100%; }
	.MainVisual__main .swiper-slide a img { width:100%; height:100%; position:absolute; top:0; left:0; object-fit:cover; font-family:'object-fit:cover;'; }
}
@media screen and (max-width:413px) { /* sp_2 6 */ }
@media screen and (max-width:374px) { /* sp_1 5 */ }




/*-----------------------
次へ後ろへエリア
-----------------------*/
.MainVisual__main .swiper-button-next,
.MainVisual__main .swiper-button-prev { cursor:pointer; outline:none; margin:0; background-size:16px auto; background-repeat:no-repeat; top:0; position:absolute; width:240px; height:100%;
	z-index:228; /* .swiper-wrapper との比較 */ }
/* 次へ後ろへアイコン */
.MainVisual__main .swiper-button-prev,
.MainVisual__main .swiper-container-rtl .swiper-button-next { background-image: url(../img/home/swiper-button-next.png); left:-240px; right:auto; background-position:right 12px top 50%; }
.MainVisual__main .swiper-button-next,
.MainVisual__main .swiper-container-rtl .swiper-button-prev { background-image: url(../img/home/swiper-button-prev.png); right:-240px; left:auto; background-position:left 12px top 50%; }
@media screen and (max-width:1023px) { /* tablet tablet */

/* 次へ後ろへアイコン */
.MainVisual__main .swiper-button-prev,
.MainVisual__main .swiper-container-rtl .swiper-button-next { background-image: url(../img/home/swiper-button-next.png); left:-4px; right:auto; background-position:right 16px top 50%; background-size:auto 16px; }
.MainVisual__main .swiper-button-next,
.MainVisual__main .swiper-container-rtl .swiper-button-prev { background-image: url(../img/home/swiper-button-prev.png); right:-4px; left:auto; background-position:left 16px top 50%; background-size:auto 16px; }

.MainVisual__main .swiper-button-next,
.MainVisual__main .swiper-button-prev { display:block; top:auto; height:44px; width:44px; bottom:-56px; }
}
@media screen and (max-width:767px) { /* sp_3 6Plus */

/* 次へ後ろへアイコン */
.MainVisual__main .swiper-button-prev,
.MainVisual__main .swiper-container-rtl .swiper-button-next { background-image: url(../img/home/swiper-button-next.png); left:-2px; right:auto; background-position:right 18px top 50%; background-size:auto 16px; }
.MainVisual__main .swiper-button-next,
.MainVisual__main .swiper-container-rtl .swiper-button-prev { background-image: url(../img/home/swiper-button-prev.png); right:-2px; left:auto; background-position:left 18px top 50%; background-size:auto 16px; }

.MainVisual__main .swiper-button-next,
/*.MainVisual__main .swiper-button-prev { display:block; top:auto; height:44px; width:44px; bottom:-50px; }*/
.MainVisual__main .swiper-button-prev { display:block; top:auto; height:44px; width:44px; bottom:-58px; }
}



/*-----------------------
ページネーション
-----------------------*/
.swiper-pagination { position:absolute; right:0; left:0; width:100%; padding:0 72px; box-sizing:border-box; text-align:right; margin:0 auto; /*bottom:34px;*/
	z-index:228; }
.swiper-container-horizontal > .swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction { bottom:0; left:0; width:100%; }
.swiper-pagination-bullet { opacity:1; background:#999; margin:0 2px; outline:none; border-radius:0; height:4px; width:24px; }
.swiper-pagination-bullet-active { opacity:1; background:#fff; }
@media screen and (max-width:1199px) { /* pc_s */
	.swiper-pagination { padding:0 40px 0 0; }
}
@media screen and (max-width:1023px) { /* tablet tablet */
	.swiper-pagination { text-align:center; padding:0; bottom:32px !important; width:calc(100% - 160px); left:44px; right:auto; }
}
@media screen and (max-width:767px) { /* sp_3 6Plus */
	/*.swiper-pagination { padding:0; width:calc(100% - 120px); bottom:24px !important; }*/
	.swiper-pagination { padding:0; width:calc(100% - 120px); bottom:32px !important; left:0; right:0; }
}



/*-----------------------
スクロールアイコン
-----------------------*/
.homeScroll-btn { display:block; position:absolute; left:0; right:0; text-align:center; margin:0 auto; height:64px; width:64px;
	z-index:229; 
}
.homeScroll-btn > .txt { font-family:'Roboto', sans-serif; font-size:10px; letter-spacing:.1em; text-indent:.1em; color:#fff; position:absolute; top:40px; left:0; right:0; margin:auto; }
.homeScroll-btn > .arrow { position:absolute; top:calc(50% - 40px); left:50%; width:22px; height:22px; margin-left:-12px; border-left:1px solid #fff; border-bottom:1px solid #fff; -webkit-transform:rotate(-45deg); transform:rotate(-45deg); box-sizing:border-box;
-webkit-transform:rotate(-45deg); transform:rotate(-45deg);
-webkit-animation:sdb 1.5s infinite; animation:sdb 1.5s infinite; }
@-webkit-keyframes sdb {
	0% { -webkit-transform:rotate(-45deg) translate(0, 0); opacity:0; }
	50% { opacity:1; }
	100% { -webkit-transform:rotate(-45deg) translate(-8px, 8px); opacity:0; }
}
@keyframes sdb {
	0% { transform:rotate(-45deg) translate(0, 0); opacity:0; }
	50% { opacity:1; }
	100% { transform:rotate(-45deg) translate(-8px, 8px); opacity:0; }
}
@media screen and (max-width:1023px) { /* tablet tablet */
	.homeScroll-btn { display:none; }
}




/*----------------------------------------------------

----------------------------------------------------*/




/*----------------------------------------------------
トップページ　ニュース　スケジュール
----------------------------------------------------*/
.HomeLayout { padding-left:72px; }
.HomeLayout > .inner { display:table; width:100%; }
.HomeLayout__col { display:table-cell; width:50%; box-sizing:border-box; padding:80px 80px 140px; position:relative; }
.HomeLayout__col.-news {}
.HomeLayout__col.-schedule {}
.HomeLayout__col > .inner { max-width:432px; margin:0 auto; }

/* 見出し */
.HomeLayout__ttl { margin-bottom:28px; font-family:'Roboto', sans-serif; font-weight:300; font-size:32px; }

/* リスト */
.HomeLayout__list {}
.HomeLayout__list > li {}
.HomeLayout__list > li > a { display:block; padding:24px 42px 20px 0; text-decoration:none; color:inherit; position:relative; }
.HomeLayout__list > li > a::after { content:''; display:block; width:10.5px; height:10.5px; border-top:1px solid rgba(0,0,0,.7); border-right:1px solid rgba(0,0,0,.7); -webkit-transform:rotate(45deg) translateY(-50%); transform:rotate(45deg) translateY(-50%); transform-origin:center center; box-sizing:border-box; 
	position:absolute; top:50%; right:23px;
	z-index:3; }
.HomeLayout__list > li > a > .inner { position:relative; padding:0; 
	z-index:2; } /* テキストエリア */
.HomeLayout__list > li > .inner { display:inline-block; padding:24px 42px 20px 0; } /* aタグが無い時の設定 */


/* リストレイアウト */
.HomeLayout__list > li .layout { display:table; width:100%; margin-bottom:8px; }
.HomeLayout__list > li .layout__col { display:table-cell; vertical-align:middle; }

/* タグ */
.HomeLayout__list > li .layout__col.-label { width:80px; padding-right:8px; }
.HomeLayout__list > li .layout__col.-label > .inner { display:block; padding:3px 0 2px; font-family:'Roboto', sans-serif; font-size:10px; text-align:center; }


/* 日付 */
.HomeLayout__list > li .layout__col.-date { width:auto; }
.HomeLayout__list > li .layout__col.-date > .inner { font-family:'Roboto', sans-serif; font-size:12px; position:relative; top:-2px; opacity:1; }
.HomeLayout__list > li .layout__col.-date .fas { margin-right:4px; }
.HomeLayout__list > li .layout__col.-date .far { margin-right:4px; }

/* テキスト */
.HomeLayout__list > li .txt { font-size:12px; line-height:2; }

/* MOREボタン */
.HomeLayout__more { font-family:'Roboto', sans-serif; font-weight:300; letter-spacing:.2em; text-indent:.2em; position:absolute; bottom:64px; left:50%; transform:translateX(-50%); }
.HomeLayout__more > .Btn { display:block; text-decoration:none; color:inherit; }
.HomeLayout__col.-news .HomeLayout__more > .Btn > .inner { display:block; padding:13px 72px; font-size:12px; }
.HomeLayout__col.-schedule .HomeLayout__more > .Btn > .inner { display:block; padding:13px 72px; font-size:12px; }
.hover .HomeLayout__more > .Btn:hover > .inner { opacity:.7; }



/* 記事がない時の設定  */
.HomeLayout__col.-schedule .HomeLayout__list > li.noPrinting { font-size:12px; color:rgba(255,255,255,.9); line-height:1.5; padding-top:24px; }
@media screen and (max-width:1023px) { /* tablet tablet */
	.HomeLayout__col.-schedule .HomeLayout__list > li.noPrinting { border:none; padding:24px 0; font-size:16px; }
}



/* normal */
.normal .HomeLayout { background:#22395F; }
.normal .HomeLayout__col.-news { background:#fff; }
.normal .HomeLayout__col.-schedule { background:rgba(34,58,95,1); }
.normal .HomeLayout__col.-news .HomeLayout__ttl { color:#223a5f; }
.normal .HomeLayout__col.-schedule .HomeLayout__ttl { color:#AA8B5D; }
.normal .HomeLayout__col.-news .HomeLayout__list > li .layout__col.-label > .inner { background:#223a5f; color:rgba(255,255,255,.9); }
.normal .HomeLayout__col.-schedule .HomeLayout__list > li .layout__col.-label > .inner { background:#AA8B5D; color:#151515; }
.normal .HomeLayout__col.-news .HomeLayout__list > li { color:#333; }
.normal .HomeLayout__col.-schedule .HomeLayout__list > li { color:rgba(255,255,255,.9); }
.normal .HomeLayout__col.-news .HomeLayout__list > li .layout__col.-date > .inner { color:rgba(0,0,0,.7); }
.normal .HomeLayout__col.-schedule .HomeLayout__list > li .layout__col.-date > .inner { color:rgba(255,255,255,.7); }
.normal .HomeLayout__col.-news .HomeLayout__list > li > a::after { border-color:rgba(0,0,0,.7); }
.normal .HomeLayout__col.-schedule .HomeLayout__list > li > a::after { border-color:rgba(255,255,255,.7); }
.normal .HomeLayout__col.-news .HomeLayout__more > .Btn > .inner { border:1px solid rgba(0,0,0,.2); color:#333; }
.normal .HomeLayout__col.-schedule .HomeLayout__more > .Btn > .inner { border:1px solid rgba(255,255,255,.2); color:#DEDEDE; }

/* dark */
.dark .HomeLayout { background:#333; }
.dark .HomeLayout__col.-news { background:#222; }
.dark .HomeLayout__col.-schedule { background:#333; }
.dark .HomeLayout__col.-news .HomeLayout__ttl { color:rgba(255,255,255,.9); }
.dark .HomeLayout__col.-schedule .HomeLayout__ttl { color:#AA8B5D; }
.dark .HomeLayout__col.-news .HomeLayout__list > li .layout__col.-label > .inner { background:#223a5f; color:rgba(255,255,255,.9); }
.dark .HomeLayout__col.-schedule .HomeLayout__list > li .layout__col.-label > .inner { background:#AA8B5D; color:#151515; }
.dark .HomeLayout__col.-news .HomeLayout__list > li { color:#DEDEDE; }
.dark .HomeLayout__col.-schedule .HomeLayout__list > li { color:#DEDEDE; }
.dark .HomeLayout__col.-news .HomeLayout__list > li .layout__col.-date > .inner { color:rgba(255,255,255,.7); }
.dark .HomeLayout__col.-schedule .HomeLayout__list > li .layout__col.-date > .inner { color:rgba(255,255,255,.7); }
.dark .HomeLayout__col.-news .HomeLayout__list > li > a::after { border-color:rgba(255,255,255,.7); }
.dark .HomeLayout__col.-schedule .HomeLayout__list > li > a::after { border-color:rgba(255,255,255,.7); }
.dark .HomeLayout__col.-news .HomeLayout__more > .Btn > .inner { border:1px solid rgba(255,255,255,.2); color:#DEDEDE; }
.dark .HomeLayout__col.-schedule .HomeLayout__more > .Btn > .inner { border:1px solid rgba(255,255,255,.2); color:#DEDEDE; }

.HomeLayout__col.-news .HomeLayout__list > li:nth-child(n+4) { display:none; }

@media screen and (max-width:1199px) { /* pc1 tablet横表示 ＆ PC小 */
	.HomeLayout__col { padding:56px 40px 132px; position:relative; }
}
@media screen and (max-width:1023px) { /* tablet tablet */
	.HomeLayout { padding-left:0; }
	.HomeLayout > .inner { display:block; width:100%; }
	.HomeLayout__col { display:block; width:100%; padding:40px 40px 120px; position:relative; }
	.HomeLayout__col.-news {}
	.HomeLayout__col.-schedule {}
	.HomeLayout__col > .inner { max-width:none; }

	.HomeLayout__more { bottom:40px; }

	.normal .HomeLayout__col.-news .HomeLayout__list { border-top:1px solid rgba(0,0,0,.1); }
	.normal .HomeLayout__col.-news .HomeLayout__list > li { border-bottom:1px solid rgba(0,0,0,.1); }
	.dark .HomeLayout__col.-news .HomeLayout__list { border-top:1px solid rgba(255,255,255,.1); }
	.dark .HomeLayout__col.-news .HomeLayout__list > li { border-bottom:1px solid rgba(255,255,255,.1); }
	.normal .HomeLayout__col.-schedule .HomeLayout__list { border-top:1px solid rgba(255,255,255,.1); }
	.normal .HomeLayout__col.-schedule .HomeLayout__list > li { border-bottom:1px solid rgba(255,255,255,.1); }
	.dark .HomeLayout__col.-schedule .HomeLayout__list { border-top:1px solid rgba(255,255,255,.1); }
	.dark .HomeLayout__col.-schedule .HomeLayout__list > li { border-bottom:1px solid rgba(255,255,255,.1); }
}
@media screen and (max-width:767px) { /* sp_3 6Plus */
	.HomeLayout__ttl { margin-bottom:20px; font-size:32px; }
	.HomeLayout__col { padding:20px 16px 0px; }
	


	.normal .HomeLayout__col.-news .HomeLayout__list > li:last-child { border-bottom:none; }
	.dark .HomeLayout__col.-news .HomeLayout__list > li:last-child { border-bottom:none; }
	.normal .HomeLayout__col.-schedule .HomeLayout__list > li:last-child { border-bottom:none; }
	.dark .HomeLayout__col.-schedule .HomeLayout__list > li:last-child { border-bottom:none; }

	.HomeLayout__more { top:16px; left:auto; right:16px; transform:translateX(0); }
	.HomeLayout__col.-news .HomeLayout__more > .Btn > .inner { display:flex; height:40px; justify-content:center; align-items:center; padding:0; width:80px; }
	.HomeLayout__col.-schedule .HomeLayout__more > .Btn > .inner { display:flex; height:40px; justify-content:center; align-items:center; padding:0; width:80px; }

	/* タグ */
	.HomeLayout__list > li .layout__col.-label { width:96px; padding-right:8px; }
	.HomeLayout__list > li .layout__col.-label > .inner { padding:7px 0 6px; font-size:12px; }
	/* 日付 */
	.HomeLayout__list > li .layout__col.-date { }
	.HomeLayout__list > li .layout__col.-date > .inner { font-size:14px; top:0; }
	/* テキスト */
	.HomeLayout__list > li .txt { font-size:16px; line-height:1.5; }
}

