/***************************************
	レイアウト用CSS
	
	＜共通カラーコード＞
	・オリゾンブルー：#6dacbd （109/172/189）
	・淡いブルー:#dbeaee
	・ロゴカラー：#2a3133 （42 / 49 / 51）
	・リンクボタンカラー（濃いオリゾンブルー）#36535b
	
***************************************/


/**
 * 　一部リセットを上書き
 **/
 



span{
	color:inherit;
	font-weight:inherit;
}

img{
	vertical-align:top;
}


/**
 * 共通仕様
 **/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400&display=swap');

html{
	overflow-x:hidden;
}

body{
	font-family: 'Noto Sans JP', sans-serif;
	color:#444444;
	letter-spacing:0.1em;
	line-height:1.6;
	overflow-x:hidden;
}


a:link , a:visited{
	color:#3a72aa;
	transition:.3s;
}

a:hover , a:active{
	color:#6c9bd2;
	transition:.3s;
}

img{
	max-width:100%;
	height:auto;
}


.sp-only , .smp-only{
	display:none;
}

.pc-center{
	text-align:center;
}


/* ヘッダー */


	/* ハンバーガーメニュートリガー */
	
header .humburger-menu-trigger{
	display:none;
}	
	
/*
	
header .humburger-menu-trigger{
	position:fixed;
	right:6px;
	top:0;
	z-index:10002;
}

header .humburger-menu-trigger-icon{
	position: relative;
	width:42px;
	height:40px;
	margin-top:20px;
	transition:.3s;
}

header .humburger-menu-trigger-icon:hover{
	cursor:pointer;
	background:#eeeeee;
}

header .humburger-menu-trigger .opening{
	transition: all .4s;
}

header .humburger-menu-trigger .opening:hover{

}

header .humburger-menu-trigger-icon span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 12px;
	height: 2px;
	border-radius: 2px;
	background: #2a3133;
	width: 45%;
}


header .humburger-menu-trigger-icon span:nth-of-type(1) {
	top:35%;
}

header .humburger-menu-trigger-icon span:nth-of-type(2) {
	top:50%;
}

header .humburger-menu-trigger-icon span:nth-of-type(3) {
	top:65%;
}

header .humburger-menu-trigger .opening span:nth-of-type(1) {
	top:50%;
	transform: rotate(45deg);
	background:#2a3133;
}

header .humburger-menu-trigger .opening span:nth-of-type(2) {
	background-color: rgba(255, 255, 255, 0);
	display:none;
}

header .humburger-menu-trigger .opening span:nth-of-type(3) {
	top:50%;
	transform: rotate(-45deg);
	background:#2a3133;
}

header .humburger-menu-trigger:hover span:nth-of-type(1),
header .humburger-menu-trigger-icon:hover span:nth-of-type(2),
header .humburger-menu-trigger:hover span:nth-of-type(3){
	background: #6dacbd !important;
}

*/

	/* ハンバーガーメニュー */
	
header .hamburger-menu-section{
	display:none;
}

	
/*

header .hamburger-menu-section{
	display:none;
	position:fixed;
	right:-500px;
	top:0;
	z-index:9999;
	background:#ffffff;
	overflow-y:auto;
	width:480px;
	height:auto;
	max-height:100%;
}

header .hamburger-menu-background-filter{
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:rgba(0,0,0,0.4);
	display:none;
}

header .hamburger-menu-body{
	padding:72px 20px 0px 60px;
	position:relative;
}

header .hamburger-menu-body .logo{
	width:180px;
}

header .hamburger-menu-body ul.hamburger-menu-main-list{
	margin-top:40px;
}

header .hamburger-menu-body ul.hamburger-menu-main-list li{
	margin-bottom:14px;
}

header .hamburger-menu-body ul.hamburger-menu-main-list li a:link,
header .hamburger-menu-body ul.hamburger-menu-main-list li a:visited{
	color:#2a3133;
}

header .hamburger-menu-body ul.hamburger-menu-main-list li a:hover,
header .hamburger-menu-body ul.hamburger-menu-main-list li a:active{
	color:#6dacbd;
}

header .hamburger-menu-body ul.hamburger-menu-sns-list{
	display:flex;
	margin-top:30px;
}

header .hamburger-menu-body ul.hamburger-menu-sns-list li{
	max-height:32px;
	margin:0 20px 20px 0;
}

header .hamburger-menu-body ul.hamburger-menu-sns-list li img{
	max-height:32px;
}

header .hamburger-menu-body ul.hamburger-menu-sns-list li a:hover{
	opacity:0.5;
}


header .hamburger-menu-body ul.hamburger-menu-sub-list{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	padding-top:40px;
	margin-top:20px;
	width:360px;
}

header .hamburger-menu-body ul.hamburger-menu-sub-list::before{
	border-top:1px solid #2a3133;
	position:absolute;
	top:0;
	left:0;
	width:100px;
	height:1px;
	content:"";
}

header .hamburger-menu-body ul.hamburger-menu-sub-list li:nth-of-type(odd){
	width:100px;
	margin:0 20px 8px 0;
}

header .hamburger-menu-body ul.hamburger-menu-sub-list li:nth-of-type(even){
	width:220px;
	margin:0 20px 8px 0;
}

header .hamburger-menu-body ul.hamburger-menu-sub-list li a:link,
header .hamburger-menu-body ul.hamburger-menu-sub-list li a:visited{
	color:#2a3133;
	font-size:14px;
}

header .hamburger-menu-body ul.hamburger-menu-sub-list li a:hover,
header .hamburger-menu-body ul.hamburger-menu-sub-list li a:active{
	color:#6dacbd;
}


header .hamburger-menu-body .hamburger-menu-tel{
	margin-top:40px;
	display:flex;
	align-items:center;
}

header .hamburger-menu-body .hamburger-menu-tel .tel-icon{
	height:54px;
	margin-right:12px;
}

header .hamburger-menu-body .hamburger-menu-tel .tel-icon img{
	width:auto;
	max-height:54px;
}

header .hamburger-menu-body .hamburger-menu-tel .tel-info{
	color:#2a3133;
	font-size:12px;
	line-height:100% !important;
	letter-spacing:0.02em;
}

header .hamburger-menu-body .hamburger-menu-tel .tel-info .tel-number{
	font-size:38px;
	padding-top:8px;
	line-height:100% !important;
	letter-spacing:0.1em;
}



		
header .hamburger-menu-body ul.hamburger-menu-fixed-reaction-list{
	position:sticky;
	bottom:0;
	margin:40px -20px 0 -60px;
	display:flex;
	background:#ffffff;
}

header .hamburger-menu-body ul.hamburger-menu-fixed-reaction-list li{
	width:100%;
	text-align:center;
}

header .hamburger-menu-body ul.hamburger-menu-fixed-reaction-list li.contact{
	margin-right:1px;
}

header .hamburger-menu-body ul.hamburger-menu-fixed-reaction-list li a:link,
header .hamburger-menu-body ul.hamburger-menu-fixed-reaction-list li a:visited{
	display:flex;
	background:#6dacbd;
	padding:10px 10px;
	color:#ffffff;
	font-size:14px;
	letter-spacing:0.02em;
	text-align:center;
	justify-content:center;
}

header .hamburger-menu-body ul.hamburger-menu-fixed-reaction-list li a img{
	max-height:1.4rem;
	width:auto;
	margin-right:4px;
}



	/* ヘッダーロゴ＆メインナビ */
	
header .header-contact-fixed-section{
	position:fixed;
	top:30px;
	right:20px;
	z-index:9999;
}

header .header-contact-fixed-section a:link,
header .header-contact-fixed-section a:visited{
	background:#6c9bd2;
	padding:16px 14px;
	font-size:20px;
	color:#ffffff;
	display:block;
	border-radius:20px;
}

header .header-content-section{
	max-width:1600px;
	margin:20px auto;
}

header .header-content-section .header-logo{
	width:44%;
}

header .header-content-section .header-logo img{
	max-width:640px;
	width:100%;
	margin-left:30px;
}

header .header-content-section .header-logo-section .header-logo-sub-caption{
	font-size:20px;
	padding:10px 20px 10px 30px;
}

	/* ぱんくず */
	
header .topic-path{
	max-width:1600px;
	margin:20px auto 40px;
}
	
header .topic-path ul{
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	margin-left:28px;
}

header .topic-path ul li{
	float:left;
	font-size:88%;
	margin-bottom:20px;
	margin-right:22px;
	position:relative;
}

header .topic-path ul li::after{
	content:">";
	position:absolute;
	right:-16px;
	color:#999999;
}

header .topic-path ul li:last-of-type::after{
	content:"";
}

header .topic-path ul li.topic-path-link a:link , header .topic-path ul li.topic-path-link a:visited{
	border:2px solid #cc9966;
	background:url('../img/icon/arrow_gray.png') no-repeat #ffffff;
	background-position:100% center;
	text-decoration:none;
	padding:6px 20px 6px 10px;
	color:#cc9966;
	transition:.3s;
}

header .topic-path ul li.topic-path-link a:hover , header .topic-path ul li.topic-path-link a:active{
	background:url('../img/icon/arrow_white.png') no-repeat #fff3cd;
	background-position:100% center;
	color:#cc9966;
}

header .topic-path ul li img{
	margin-bottom:-4px;
	margin-right:6px;
}

header .topic-path ul li.topic-path-caption{
	margin-left:6px;
}



/* フッター */


footer{
	padding:40px 0px 80px;
	margin:0 auto;
	width:1000px;
}

footer ul.footer-site-list{
	display:flex;
	align-items:center;
}

footer ul.footer-site-list > li{
	margin:20px;
}

footer ul.footer-site-list > li dl{
	display:flex;
	align-items:center;
}

footer ul.footer-site-list > li dl dt{
	display:flex;
	align-items:center;
}

footer ul.footer-site-list > li dl dt img{
	height:68px;
	max-width:none;
	width:auto;
}

footer ul.footer-site-list > li dl dd{
	margin-left:20px;
	font-size:14px;
}

footer ul.footer-site-list > li dl dd ul.footer-site-link-list{
	display:flex;
	flex-wrap:wrap;
}

footer ul.footer-site-list li dl dd ul.footer-site-link-list li{
	border-right:1px solid #cccccc;
	padding:0px 5px 0px 0;
	margin-right:10px;
	margin-top:10px;
}

footer ul.footer-site-list li dl dd ul.footer-site-link-list li:last-of-type{
	border-right:none;
}

footer .footer-copyright{
	text-align:center;
	padding:20px 0;
}


/*
footer .footer-title .footer-titel-main{
	padding-top:10px;
	font-size:24px;
	font-weight:bold;
}

footer .footer-main-navi-section{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:30px 0 30px;
}

footer .footer-main-navi-section .footer-main-navi-section-logo{
	width:120px;
	padding-right:20px;
}

footer .footer-main-navi-section .footer-main-navi-section-lists{
	display:flex;
	align-items:flex-start;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li{
	margin:0 30px 8px 0;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li a:link,
footer .footer-main-navi-section .footer-main-navi-section-lists li a:visited{
	color:#2a3133;
	text-decoration:underline;
	font-size:14px;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li a:hover,
footer .footer-main-navi-section .footer-main-navi-section-lists li a:active{
	color:#6dacbd;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li.sns{
	display:flex;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li.sns a:link,
footer .footer-main-navi-section .footer-main-navi-section-lists li.sns a:visited{
	display:flex;
	margin:10px 20px 10px 10px;
	text-decoration:none;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li.sns a:hover,
footer .footer-main-navi-section .footer-main-navi-section-lists li.sns a:active{
	opacity:0.6;
}

footer .footer-main-navi-section .footer-main-navi-section-lists li.sns a img{
	max-height:44px;
}

footer .footer-main-navi-section .footer-main-navi-section-license{
	padding:0 0 0 20px;
	margin-left:20px;
	border-left:1px solid #2a3133;
}

footer .footer-main-navi-section .footer-main-navi-section-license .footer-main-navi-section-license-caption{
	font-size:14px;
	padding-top:14px;
}


footer .footer-company-navi-section ul{
	display:flex;
	margin:0 auto;
	justify-content:center;
}

footer .footer-company-navi-section ul li{
	margin:0 20px;
}

footer .footer-company-navi-section ul li a:link,
footer .footer-company-navi-section ul li a:visited{
	display:block;
	background:#ffffff;
	color:#6dacbd;
	padding:10px 20px 10px;
	text-align:center;
	border-radius:20px;
	min-width:140px;
	letter-spacing:0.02em;
}

footer .footer-company-navi-section ul li a:hover,
footer .footer-company-navi-section ul li a:active{
	background:#6dacbd;
	color:#ffffff;
}

footer .footer-company-navi-section ul li a img{
	max-height:36px;
}

footer .footer-company-navi-section ul li a:hover img{
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
}


footer .footer-related-services-navi-section{
	width:1000px;
	max-width:1000px;
	margin:0 auto;
	padding-top:40px;
}

footer .footer-related-services-navi-section .footer-related-services-navi-body{
	margin-top:10px;
	padding:30px 20px;
	background:#6dacbd;
	border-radius:10px;
}

footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list{
	display:flex;
}

footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list li{
	width:100%;
	margin:0 10px 30px;
	border-radius:20px;
	background:#ffffff;
}


footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list li a:link,
footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list li a:visited{
	display:block;
	background:#ffffff;
	color:#6dacbd;
	padding:10px 20px 10px;
	text-align:center;
	border-radius:20px;
	font-size:14px;
	letter-spacing:0.02em;
}

footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list li a:hover,
footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list li a:active{
	opacity:0.6;
}

footer .footer-related-services-navi-section .footer-related-services-navi-body ul.footer-related-services-navi-list li img{
	max-height:36px;
}
		
footer .footer-related-services-navi-section .footer-related-services-navi-body .footer-related-services-navi-detail-button{
	text-align:center;
}

footer .footer-related-services-navi-section .footer-related-services-navi-body .footer-related-services-navi-detail-button a:link,
footer .footer-related-services-navi-section .footer-related-services-navi-body .footer-related-services-navi-detail-button a:visited{
	display:inline-block;
	background:#36535b;
	color:#ffffff;
	font-size:20px;
	padding:14px 60px;
}


footer .footer-related-services-navi-section .footer-related-services-navi-body .footer-related-services-navi-detail-button a:hover,
footer .footer-related-services-navi-section .footer-related-services-navi-body .footer-related-services-navi-detail-button a:active{
	opacity:0.7;
}

footer .footer-bottom-section{
	display:flex;
	justify-content:center;
	padding:40px 0;
}

footer .footer-bottom-section .footer-bottom-logo img{
	max-height:3.2rem;
}
*/


/* コンテンツ部分 */

main section{
	max-width:1600px;
	margin-left:auto;
	margin-right:auto;
}

main .container-full{
	max-width:1600px;
	margin-left:auto;
	margin-right:auto;
}

main .container{
	max-width:1560px;
	margin-left:auto;
	margin-right:auto;
	padding-left:20px;
	padding-right:20px;
}


	/* コンテンツ部分の共通属性 */
	
main h1.headline{
	text-align:left;
	width:1000px;
	margin:60px auto 60px;
	font-size:48px;
	font-weight:normal;
	color:#2a3133;
}	
	
	

main h2.headline{
	background:url('../img/index/overview_event_headline_icon.png') no-repeat;
	background-size:60px auto;
	background-position:0 center;
	font-size:28px;
	margin:60px auto 40px;
	max-width:920px;
	padding:0 0 0 80px;
}



main h3.headline{
	margin:60px auto 40px;
	max-width:1000px;
	font-size:24px;
	border-bottom:#fbb03b solid 4px;
	padding-bottom:10px;
}



main p{
	margin-bottom:20px;
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}

main .sup{
	font-size:10px;
	vertical-align:top;
}


.link-button{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	text-align:center;
	padding:20px;
	text-align:center;
}

.link-button a:link,
.link-button a:visited{
	display:flex;
	background:#6c9bd2;
	padding:16px 14px;
	font-size:20px;
	color:#ffffff;
	display:block;
	border-radius:20px;
}

.link-button a:hover,
.link-button a:active{
	display:flex;
	background:#fbb03b;
	padding:16px 14px;
	font-size:20px;
	color:#ffffff;
	display:block;
	border-radius:20px;
	box-shadow:2px 2px 4px gray;
}



		/* 注釈 */
		
.annotation{
	color:#666666;
	font-size:12px;
}


		/* 注釈リスト 番号あり：ul、番号なし：ol */

ul.annotation-list{
	margin:10px auto 20px;
	max-width:1000px;
}

ul.annotation-list li{
	padding-left:20px;
	color:#666666;
	font-size:12px;
	position:relative;
	margin-bottom:5px;
}

ul.annotation-list li::before{
	position:absolute;
	top:0;
	left:0;
	content:"※";
}

ol.annotation-list{
	margin:10px auto 20px;
	counter-reset: listnum; /* カウンターをリセット */
	list-style: none; /* 標準のスタイルは消す */
	max-width:1000px;
}

ol.annotation-list li{
	padding-left:48px;
	color:#666666;
	font-size:12px;
	position:relative;
	margin-bottom:5px;
}

ol.annotation-list li::before{
	position:absolute;
	top:0;
	left:0;
	counter-increment: listnum; /* counter-resetと同じ文字列 */
	content: "※" counter(listnum) "…"; /* カウントした数に応じて番号を表示 */
}






	/* コンテンツ部分の使いまわし */
	
		/* お知らせ */

main .summary-news-wrapper{
	max-width:1200px;
	margin:0 auto 120px;
}		
		
main .summary-news-wrapper ul.summary-news-list{
	border-top:#2a3133 1px solid;
	margin:0 60px;
}

main ul.summary-news-list li{
	border-bottom:#2a3133 1px solid;
}

main ul.summary-news-list li a:link,
main ul.summary-news-list li a:visited{
	display:block;
	background:url('../img/icon/arrow_black_thin.png') no-repeat;
	background-position:98% center;
	background-size:6% auto;
	text-decoration:none;
	color:#555555;
}

main ul.summary-news-list li a:hover,
main ul.summary-news-list li a:active{
	color:#6dacbd;
}

main ul.summary-news-list li a dl{
	padding:16px 12% 16px 20px;
	display:flex;
}

main ul.summary-news-list li a dl dt{
	letter-spacing:0.02em;
	margin-right:10px;
}

main ul.summary-news-list li a dl dd.news-category{
	margin-right:14px;
	white-space: nowrap;
	
}
		

