/* font */
/*
 * "LigatureSymbols" is lisenced under the SIL Open Font License 1.1
 * http://kudakurage.com/ligature_symbols/
 */

@font-face {
	font-family: 'LigatureSymbols';
	src: url('../font/LigatureSymbols/LigatureSymbols-2.11.eot');
	src: url('../font/LigatureSymbols/LigatureSymbols-2.11.eot?#iefix') format('embedded-opentype'),
		url('../font/LigatureSymbols/LigatureSymbols-2.11.woff') format('woff'),
		url('../font/LigatureSymbols/LigatureSymbols-2.11.ttf') format('truetype'),
		url('../font/LigatureSymbols/LigatureSymbols-2.11.svg#LigatureSymbols') format('svg');
	font-weight: var(--fontWeightNormal);
	font-style: normal;
}

*{
	min-width: 0%;
	min-height: 0%;
}

/*---------------------------------
	CSSカスタムプロパティ start
---------------------------------*/
:root {
	/* フォント */
	/* 使用するフォントによって設定を切り替えてください */
	
	/* 游ゴシック */
	/* --fontFamily: "Noto Sans JP", YuGothic,"Yu Gothic","Avenir","Helvetica Neue","Helvetica","Arial","Hiragino Sans","ヒラギノ角ゴシック","メイリオ", Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif; */
	
	/* Noto Serif Japanese */
	--fontFamily: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	/* 
	注意1：Noto Serif Japanese使用の際はwebfont.jsから、読み込み設定を行うこと(詳しい方法はwebfont.js内コメントを参照ください。
	
	注意2：Noto Serif Japanese使用の際は以下のCSSカスタムプロパティの設定の変更を行うこと
	--fontWeightBold: 600;
	*/
	
	/* KiwiMaru */
	/* --fontFamily: "Kiwi Maru", YuGothic,"Yu Gothic","Avenir","Helvetica Neue","Helvetica","Arial","Hiragino Sans","ヒラギノ角ゴシック","メイリオ", Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif; */
	/* 
	注意1：KiwiMaru使用の際はwebfont.jsから、読み込み設定を行うこと(詳しい方法はwebfont.js内コメントを参照ください。
	
	注意2：KiwiMaru使用の際は以下のCSSカスタムプロパティの設定の変更を行うこと
	--fontWeightBold: 500;
	*/
	
	--fontWeightNormal: 400; /* 通常フォント太さ */
	--fontWeightBold: 600; /* 太文字フォント太さ */
	
	--mainBgColor: #FFF; /* 背景色 */
	--mainTextColor: #333;  /* 文字色 */
	
	/* ヘッダー */
	--headerBgColor: var(--themeSubColor); /* 背景色 */
	--headerTextColor: #333; /* 文字色 */
	
	--themeColor: #087323;
	
	/* ヘッダーメニュー */
	--headerMenuBgColor: var(--themeColor); /* 背景色 */
	--headerMenuTextColor: #FFF; /* 文字色 */
	
	/* ドロワーナビ(タブレット、スマホ時) */
	--drawerNavButtonBgColor: var(--headerMenuBgColor); /* ボタン背景色 */
	--drawerNavButtonIconColor: var(--headerMenuTextColor); /* ボタンアイコン色 */
	--drawerNavBodyBgColor: var(--headerMenuBgColor); /* 背景色 */
	--drawerNavBodyTextColor: var(--headerMenuTextColor); /* 文字色 */
	
	/* フッター */
	--footerBgColor: var(--themeColor); /* 背景色 */
	--footerTextColor: #FFF; /* 文字色 */
	
	/* ボタン */
	--buttonBgColor: var(--themeColor); /* 背景色 */
	--buttonActiveBgColor: #FFF; /* ホバー時背景色 */
	--buttonTextColor: #FFF; /* 文字色 */
	--buttonActiveTextColor: #333; /* ホバー時文字色 */
	--buttonBorderColor: var(--buttonBgColor); /* 枠線色 */
	
	/* 表1 表2 表スタイル 通常 (standardTable--borderGrid・nColumsContents--borderGrid) */
	--tableBordergridHeadBgColor: #E9FFF2; /* th背景色 */
	--tableBordergridHeadTextColor: var(--mainTextColor); /* th文字色 */
	--tableBordergridCellBgColor: transparent; /* td背景色 */
	--tableBordergridCellTextColor: var(--mainTextColor); /* td文字色 */
	--tableBordergridBorderColor: #BFBFBF; /* 枠線色 */
}

/*---------------------------------
	CSSカスタムプロパティ end
---------------------------------*/

/* common */

a[href^="tel:"] {
	cursor: default;
	color: inherit;
	font-size: inherit;
	text-decoration: inherit;
	line-height: inherit;
}

a[href^="tel:"]:hover img{
	opacity: 1;
}

body,thml{
	font-family: var(--fontFamily);
	font-size: 18px;
	font-weight: var(--fontWeightNormal);
	color: var(--mainTextColor);
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	position: relative;
}

body > *{
	flex-grow: 0;
	flex-shrink: 0;
}

body > main{
	flex-grow: 1;
}

/* headline */
.je-title{
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 100%;
	text-align: center;
	margin-bottom: 2em;
}

.je-title .j{
	font-size: 175%;
}

.je-title .e{
	font-size: 100%;
	color: #087323;
}


.iconText{
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
}

/* buttons */

/* reset start */
input[type="submit"],
input[type="button"],
input[type="reset"]{
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration,
input[type="reset"]::-webkit-search-decoration{
	display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus,
input[type="reset"]::focus{
	outline-offset: -2px;
}

/* reset end */
.buttons{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 125%;
	font-weight: var(--fontWeightBold);
	margin-top: 1em;
	margin-bottom: 1em;
}

.buttons > *{
	display: block;
	font-size: inherit;
	font-weight: inherit;
	margin: 0.5em 1em;
	padding: 0.5em 2em;
	color: #FFF;
	text-align: center;
	transition: all 0.25s;
}

.buttons > *:hover{
	color: #087323;
	background-color: #FFF;
	text-decoration: none;
}

.buttons > * p{
	margin: 0;
}

/*---------------------------------
	section start
---------------------------------*/
.section{
	padding: 4em 0 6em;
}

.section--access{
	padding: 4em 0 0;
}

.section--color{
	background-color: rgba(0,0,0,0.03);
}

@media(max-width: 600px){
	.section{
		padding: 3em 0 4em;
	}
}

.section-inner{
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	max-width: 1025px;
}

.section--access .section-inner{
	width: 100%;
	max-width: 100%;
}

/*---------------------------------
	section end
---------------------------------*/

/* table */
table{
	table-layout: fixed;
	border: 1px solid #BFBFBF;
	width: 100%;
	background-color: #FFF;
}

.table th{
	width: 25%;
	background-color: #E0E0E0;
	text-align: center;
}

.table th,
.table td{
	padding: 0.75em 1em;
	vertical-align: middle;
}

.table tr:not(:last-of-type) th,
.table tr:not(:last-of-type) td{
	border-bottom: 1px solid #BFBFBF;
}

@media(max-width: 600px){
	.table tr,
	.table th,
	.table td{
		display: block;
		width: 100%;
	}
	.table th,
	.table td{
		border-bottom: none !important;
		text-align: left;
	}
}

/* header */


/* header-nav */
.header-nav{
	background-color: #087323;
	width: 100%;
	font-size: 125%;
	border-top: 1px solid #087323;
	border-bottom: 1px solid #087323;
	position: sticky;
	top: 0;
	left: 0;
	z-index: 100;
}

@media(max-width: 1075px){
	.header-nav{
		font-size: 100%;
	}
}

@media(max-width: 960px){
	.header-nav{
		display: none;
	}
}

.header-nav .nav-list{
	width: 90%;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: stretch;
}

.header-nav .nav-list-item{
	flex-grow: 1;
	flex-shrink: 1;
}

.header-nav .nav-list-link{
	display: block;
	color: #FFF;
	width: 100%;
	height: 100%;
	text-align: center;
	padding: 1em;
	font-weight: var(--fontWeightBold);
	transition: color 0.25s, background-color 0.25s;
}

.header-nav .nav-list-active .nav-list-link,
.header-nav .nav-list-link:hover{
	background-color: #FFF;
	color: #087323;
	text-decoration: none;
}
.header-nav .nav-list-item:not(.nav-list-active) .nav-list-link:hover{
	background-color: rgba(255,255,255,0.9);
}

/* sticky-nav */
@media(min-width: 960px){
	.sticky-nav{
		display: none;
	}
}

.sticky-nav .nav-button{
	position: fixed;
	top: 0;
	right: 0;
	font-size: 200%;
	width: 1.5em;
	height: 1.5em;
	background-color: #087323;
	z-index: 520;
	transition: color 0.25s, background-color 0.25s;
}

@media(max-width: 600px){
	.sticky-nav .nav-button{
		font-size: 175%;
	}
}

.stickynav-active .sticky-nav .nav-button{
	background-color: #FFF;
}

.sticky-nav .nav-button:before{
	content: 'menu';
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #FFF;
}

.stickynav-active .sticky-nav .nav-button:before,
.stickynav-active .sticky-nav .nav-button:after{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 1em;
	height: 0.1em;
	background-color: #087323;
}

.stickynav-active .sticky-nav .nav-button:before{
	transform: translate(-50%,-50%) rotate(45deg);
}

.stickynav-active .sticky-nav .nav-button:after{
	transform: translate(-50%,-50%) rotate(-45deg);
}

.sticky-nav .nav-overray{
	position: fixed;
	top: 0;
	right: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0,0,0,0.5);
	visibility: hidden;
	opacity: 0;
	z-index: 500;
	transition: 0.25s;
}

.stickynav-active .sticky-nav .nav-overray{
	visibility: visible;
	opacity: 1;
}

.sticky-nav .nav-main{
	position: fixed;
	top: 0;
	right: 0;
	background-color: #087323;
	max-width: 100vw;
	width: 20em;
	height: 100vh;
	padding-top: 5em;
	transform: translate(100%, 0);
	z-index: 510;
	transition: transform 0.5s;
}

.stickynav-active .sticky-nav .nav-main{
	transform: translate(0, 0);
}

.sticky-nav .nav-list{
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 110%;
	font-weight: var(--fontWeightBold);
}

.sticky-nav .nav-list-link,
.sticky-nav .nav-list-link:hover{
	text-decoration: none;
}

.sticky-nav .nav-list-link{
	display: block;
	color: #FFF;
	padding: 0.5em 1em;
	transition: background-color 0.25s, color 0.25s;
}

.sticky-nav .nav-list-active{
	background-color: rgba(255,255,255,0.1);
}

.sticky-nav .nav-list-link:hover{
	background-color: #FFF;
	color: #087323;
}

/* footer */

footer{
	background-color: #087323;
	color: #FFF;
	padding: 2em 0 1em;
}

.footer-inner{
	width: 90%;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

@media(max-width: 750px){
	.footer-inner{
		font-size: 90%;
	}
}

.footer-info{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
	margin: 0 0 1em;
}

.footer-info-logo{
	width: 5.5em;
	max-width: 100%;
}

.footer-info-logo img{
	width: 100%;
}

.footer-info-main{
	margin-left: 2em;
}

.footer-info-title{
	font-size: 150%;
	font-weight: var(--fontWeightBold);
	margin-bottom: 0.25em;
}

.footer-info-text{
	font-size: 105%;
	font-weight: var(--fontWeightBold);
	margin: 0;
}

.footerNav{
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	width: 100%;
	margin: 0.5em auto 0;
	padding: 0.75em 0;
	border-top: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
	list-style: none;
}

.footerNavItem{
	display: block;
}

.footerNavLink{
	color: inherit;
}

.footerNavLink:hover{
	color: inherit;
	text-decoration: underline;
}

.footer-no{
	margin: 0 0 1em;
}

.footer-no-text{
	font-size: 125%;
	font-weight: var(--fontWeightBold);
	margin: 0;
}

.footer-copy{
	width: 100%;
	text-align: center;
	margin: 1em 0 0;
}

@media(max-width: 750px){
	.footerNav{
		flex-wrap: wrap;
		justify-content: center;
		gap: 0.5em 1em;
	}
}

@media(max-width: 540px){
	.footer-inner{
		flex-direction: column;
		align-items: stretch;
	}
	.footer-info{
		flex-direction: column;
		align-items: center;
	}
	.footer-info-logo{
		margin-bottom: 1em;
	}
	.footer-info-main{
		margin: 0;
		width: 100%;
	}
	.footer-info-title{
		font-size: 125%;
	}
	.footer-info-text{
		font-size: 100%;
	}
	.footer-no-text{
		font-size: 100%;
	}
	.footer-copy{
		font-size: 90%;
		margin: 0.5em 0 0;
	}
}



/* section-contact */

.section-contact{
	position: relative;
}

.section-contact .section-inner{
	padding: 3em 0 !important;
}

@media(max-width: 750px){
	.section-contact .section-inner{
		padding: 2em 0 !important;
	}
}

.section-contact .contact-bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.section-contact .contact-tiles{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: nowrap;
	position: relative;
	z-index: 2;
}

.section-contact .contact-tiles-item{
	flex-grow: 0;
	flex-shrink: 0;
	width: calc(100% / 2 - 2em);
}

.section-contact .contact-tiles-link,
.section-contact .contact-tiles-link:hover{
	display: block;
	text-decoration: none;
	color: inherit;
	width: 100%;
	height: 100%;
}

.section-contact .contact-tiles-inner{
	background-color: rgba(255,255,255,0.9);
	width: 100%;
	height: 100%;
	padding: 1.5em;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	transition: background-color 0.25s, color 0.25s;
}

.section-contact .contact-tiles-link:not([href^="tel:"]):hover .contact-tiles-inner{
	background-color: rgba(8,115,35,0.9);
	color: #FFF;
}

.section-contact .contact-tiles-title{
	font-size: 125%;
	font-weight: var(--fontWeightBold);
	margin: 0;
}

.section-contact .contact-tiles-no{
	font-size: 200%;
	margin: 0.5em 0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap:nowrap;
}

.section-contact .contact-tiles-no:before{
	content: 'phone';
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	font-size: 125%;
	color: #087323;
	line-height: 100%;
	margin-right: 0.125em;
}

.contact-tiles-mail{
	margin: 0.5em 0;
}

.section-contact .contact-tiles-mail:before{
	content: 'mail';
	font-family: 'LigatureSymbols' !important;
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	font-size: 450%;
	color: #087323;
	line-height: 100%;
	transition: color 0.25s;
}

.section-contact .contact-tiles-link:not([href^="tel:"]):hover .contact-tiles-mail:before{
	color: #FFF;
}

.section-contact .contact-tiles-text{
	font-size: 110%;
	font-weight: var(--fontWeightBold);
	margin: 0;
}

@media(max-width: 1100px){
	.section-contact .contact-tiles{
		font-size: 1.75vw;
	}
}

@media(max-width: 750px){
	.section-contact .contact-tiles{
		flex-direction: column;
		font-size: 100%;
	}
	.section-contact .contact-tiles-item{
		width: 100%;
	}
	.section-contact .contact-tiles-item:not(:last-of-type){
		margin-bottom: 2em;
	}
}

@media(max-width: 460px){
	.section-contact .contact-tiles{
		flex-direction: column;
		font-size: 3.5vw
	}
}



/* kent-web */

.kentFooter{
	text-align: center;
	font-size: 1rem;
	margin: 0;
	padding: 0 1em 0.25em;
	color: var(--footerTextColor);
	background-color: var(--footerBgColor);
}

.kentFooter a{
	color: inherit;
}


/*---------------------------------
	texts start
---------------------------------*/

.texts--alignCenter{
	text-align: center;
}

.texts--alignRight{
	text-align: right;
}

@media(min-width: 1025px){
	.texts--pcAlignCenter{
		text-align: center;
	}
}

.texts--size90{
	font-size: 90%;
}

.texts--size110{
	font-size: 110%;
}

.texts--size125{
	font-size: 125%;
}

.texts--size150{
	font-size: 150%;
}

.texts--size175{
	font-size: 175%;
}

.texts--size200{
	font-size: 200%;
}

.texts--size250{
	font-size: 250%;
}

@media(max-width: 600px){
	.texts--spSize100{
		font-size: 100%;
	}
	
	.texts--spSize110{
		font-size: 110%;
	}

	.texts--spSize125{
		font-size: 125%;
	}

	.texts--spSize150{
		font-size: 150%;
	}

	.texts--spSize175{
		font-size: 175%;
	}

	.texts--spSize200{
		font-size: 200%;
	}
}

.texts--weightBold{
	font-weight: var(--fontWeightBold);
}

.texts--lineHeight100{
	line-height: 100%;
}

.texts--lineHeight200{
	line-height: 200%;
}

.texts--indent1{
	padding-left: 1em;
}

.texts--indent2{
	padding-left: 2em;
}

.texts > *{
	margin: 0 0 1em;
}

.texts--margin0 > *{
	margin: 0;
}

.texts > *:last-of-type{
	margin: 0;
}

.texts_text--colorBlack{
	color: #000;
}

.texts_text--weightBold{
	font-weight: var(--fontWeightBold);
}

.texts_text--size110{
	font-size: 110%;
}

.texts_text--size125{
	font-size: 125%;
}

.texts_text--size150{
	font-size: 150%;
}

.texts_text--size175{
	font-size: 175%;
}

.texts_text--size200{
	font-size: 200%;
}

.texts_text--size225{
	font-size: 225%;
}

.texts_text--size250{
	font-size: 250%;
}

.texts_text--alignRight{
	text-align: right;
}

/*---------------------------------
	texts end
---------------------------------*/

/*---------------------------------
	margin start
---------------------------------*/
.margin--bottom0{
	margin-bottom: 0 !important;
}

.margin--bottom1{
	margin-bottom: 1rem !important;
}

.margin--bottom2{
	margin-bottom: 2rem !important;
}

.margin--bottom3{
	margin-bottom: 3rem !important;
}

.margin--bottom4{
	margin-bottom: 4rem !important;
}

.margin--bottom5{
	margin-bottom: 5rem !important;
}

.margin--bottom10{
	margin-bottom: 10rem !important;
}

@media(max-width: 1024px){
	.margin--tbBottom0{
		margin-bottom: 0 !important;
	}

	.margin--tbBottom1{
		margin-bottom: 1rem !important;
	}

	.margin--tbBottom2{
		margin-bottom: 2rem !important;
	}

	.margin--tbBottom3{
		margin-bottom: 3rem !important;
	}

	.margin--tbBottom4{
		margin-bottom: 4rem !important;
	}

	.margin--tbBottom5{
		margin-bottom: 5rem !important;
	}
}

@media(max-width: 600px){
	.margin--spBottom0{
		margin-bottom: 0 !important;
	}

	.margin--spBottom1{
		margin-bottom: 1rem !important;
	}

	.margin--spBottom2{
		margin-bottom: 2rem !important;
	}

	.margin--spBottom3{
		margin-bottom: 3rem !important;
	}

	.margin--spBottom4{
		margin-bottom: 4rem !important;
	}

	.margin--spBottom5{
		margin-bottom: 5rem !important;
	}
}

.margin--top0{
	margin-top: 0;
}

.margin--top1{
	margin-top: 1rem;
}

.margin--top2{
	margin-top: 2rem;
}

.margin--top3{
	margin-top: 3rem;
}

.margin--top4{
	margin-top: 4rem;
}

.margin--top5{
	margin-top: 5rem;
}

@media(max-width: 1024px){
	.margin--tbTop0{
		margin-top: 0;
	}

	.margin--tbTop1{
		margin-top: 1rem;
	}

	.margin--tbTop2{
		margin-top: 2rem;
	}

	.margin--tbTop3{
		margin-top: 3rem;
	}

	.margin--tbTop4{
		margin-top: 4rem;
	}

	.margin--tbTop5{
		margin-top: 5rem;
	}
}

@media(max-width: 600px){
	.margin--spTop0{
		margin-top: 0;
	}

	.margin--spTop1{
		margin-top: 1rem;
	}

	.margin--spTop2{
		margin-top: 2rem;
	}

	.margin--spTop3{
		margin-top: 3rem;
	}

	.margin--spTop4{
		margin-top: 4rem;
	}

	.margin--spTop5{
		margin-top: 5rem;
	}
}

/*---------------------------------
	margin end
---------------------------------*/

/*---------------------------------
	responsive start
---------------------------------*/
@media(min-width: 1025px){
	.responsive--pcHidden{
		display: none;
	}
}

@media(max-width: 1024px) and (min-width: 601px){
	.responsive--tbHidden{
		display: none;
	}
}


@media(max-width: 600px){
	.responsive--spHidden{
		display: none;
	}
}
/*---------------------------------
	responsive end
---------------------------------*/

/*---------------------------------
	sectionTitle start
---------------------------------*/
.sectionTitle{
	--borderWeight: 3px;
	position: relative;
	padding: 0 0 calc(0.25em + var(--borderWeight));
	font-size: 175%;
	font-weight: var(--fontWeightBold);
	text-align: center;
}

.sectionTitle:after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 2em;
	border-bottom: var(--borderWeight) solid var(--themeColor);
	transform: translateX(-50%);
}

@media(max-width: 750px){
	.sectionTitle{
		font-size: 125%;
	}
}

.sectionSubtitle{
	font-size: 125%;
	font-weight: var(--fontWeightBold);
	margin: 0 0 1em;
}

.decorationTitle{
	font-size: 125%;
	font-weight: var(--fontWeightBold);
	margin: 0 0 1.5em !important;
	padding: 0 0.1em 0.5em;
	border-bottom: 3px solid #CFCFCF;
	position: relative;
}

.decorationTitle:before{
	content: "";
	display: block;
	width: 3.5em;
	height: 3px;
	background-color: var(--themeColor);
	position: absolute;
	bottom: -3px;
	left: 0;
}

/*---------------------------------
	sectionTitle end
---------------------------------*/

/*---------------------------------
	buttons start
---------------------------------*/
.buttons{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 100%;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

.buttons--alignLeft{
	justify-content: flex-start;
}

/*---------------------------------
	buttons end
---------------------------------*/

/*---------------------------------
	standardButton start
---------------------------------*/
.standardButton{
	display: block;
	min-width: 12.5em;
	padding: 1em 1.5em;
	margin: 1em;
	color: var(--buttonTextColor);
	text-align: center;
	text-decoration: none;
	font-weight: var(--fontWeightBold);
	background-color: var(--buttonBgColor);
	border: 2px solid var(--buttonBorderColor);
	transition: background-color 0.25s, color 0.25s;
}

.standardButton:hover{
	color: var(--buttonActiveTextColor);
	text-decoration: none;
	background-color: var(--buttonActiveBgColor);
}

.standardButton:focus{
	outline: none;
}

.standardButton--small{
	display: block;
	min-width: 10em;
	padding: 0.5em 1em;
	font-size: 90%;
}

.standardButton--face{
	background-color: #0865FE;
	border: 2px solid #0865FE;
}

.standardButton--face:hover{
	color: #0865FE;
	background-color: #FFF;
}

.standardButton--line{
	background-color: #00B900;
	border: 2px solid #00B900;
}

.standardButton--line:hover{
	color: #00B900;
	background-color: #FFF;
}

.standardButton--twitter{
	background-color: #1D9BF0;
	border: 2px solid #1D9BF0;
}

.standardButton--twitter:hover{
	color: #1D9BF0;
	background-color: #FFF;
}

/*---------------------------------
	buttons end
---------------------------------*/

/*---------------------------------
	clipButton start
---------------------------------*/
.clipButton{
	display: block;
	padding: 2px;
	margin: 1em;
	text-decoration: none;
	background-color: var(--buttonBgColor);
	border: none;
	transition: background-color 0.25s, color 0.25s;
	position: relative;
}

.clipButtonInner{
	display: block;
	min-width: 12.5em;
	padding: 1em 1.5em;
	margin: 0;
	color: var(--buttonTextColor);
	text-align: center;
	text-decoration: none;
	font-weight: var(--fontWeightBold);
	background-color: transparent;
	transition: background-color 0.25s, color 0.25s;
}

.clipButton:hover{
	color: var(--buttonActiveTextColor);
	text-decoration: none;
	background-color: var(--buttonActiveBgColor);
}

.clipButton:focus{
	outline: none;
}

.clipButton:hover{
	padding: 0;
}

.clipButton:hover .clipButtonInner{
	min-width: calc(12.5em + (2px * 2));
	padding: calc(1em + 2px) calc(1.5em + 2px);
	background: linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%);
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent;
	position: relative;
	z-index: 2;
}

.clipButton:before{
	content: "";
	background-color: #FFF;
	position: absolute;
	top: 2px;
	right: 2px;
	bottom: 2px;
	left: 2px;
	z-index: 1;
	opacity: 0;
	transition: opacity 0.25s;
}

.clipButton:hover:before{
	opacity: 1;
}

.clipButton--insta,
.clipButton--insta:hover{
	background: linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%);
}

/*---------------------------------
	clipButton end
---------------------------------*/

/*---------------------------------
	textGap start
---------------------------------*/

.textGap{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: flex-start;
	gap: 0 1em;
}

.textGap--add{
	gap: 0 0.75em;
}

/*---------------------------------
	textGap end
---------------------------------*/

/*---------------------------------
	contentAlign start
---------------------------------*/

.contentAlign--center{
	display: flex;
	justify-content: center;
}

.contentAlign--columnCenter{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
}

.contentAlign--textGap{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0 1em;
}

.contentAlign--textGap2{
	gap: 0 2em;
}

@media(max-width: 1024px){
	.contentAlign--tabColumnCenter{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
}

@media(max-width: 600px){
	.contentAlign--spColumnCenter{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
}

/*---------------------------------
	contentAlign end
---------------------------------*/

/*---------------------------------
	commonList end
---------------------------------*/

.commonList{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	width: auto;
	margin: 0;
	padding: 0;
	list-style: none;
}

.commonList--gaps{
	gap: 0.5em 0;
}

.commonListItem{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0 0.5em;
	margin: 0;
}

.commonListItem:before{
	display: block;
	flex-grow: 0;
	flex-shrink: 0;
}

.commonListInner{
	display: block;
	width: 100%;
	margin: 0;
}

@media(min-width: 961px){
	.commonList--col2{
		width: 100%;
		flex-direction: row;
		gap: 0.5em 2em;
	}
	.commonList--col2 > li{
		width: calc((100% - 2em) / 2);
	}
}

.commonList--space > .commonListItem:not(:first-of-type){
	margin-top: 1em;
}

.commonList--full > .commonListItem{
	width: 100%;
}

.commonList--dots > .commonListItem:before{
	content: "";
	display: block;
	width: 0.3em;
	height: 0.3em;
	margin: 0.6em 0;
	border-radius: 50%;
	background-color: var(--mainTextColor);
}

.commonList--mark,
.commonList--markGray{
	width: calc(100% - 0.5em);
	margin: 0 0 0 0.5em;
}

.commonList--mark > .commonListItem:before{
	content: "\203B";
	display: block;
	color: #D00;
	font-weight: var(--fontWeightBold);
}

.commonList--markGray > .commonListItem:before{
	content: "\203B";
	display: block;
	font-weight: var(--fontWeightBold);
}

.commonList--num,
.commonList--simpleNum,
.commonList--circleNum,
.commonList--bracketsNum{
	counter-reset: listNum 0;
	gap: 1em 0;
}

.commonList--numDot{
	counter-reset: listNum 0;
	gap: 0;
}

.commonList--simpleNum{
    gap: 0;
}

.commonList--num > .commonListItem{
	counter-increment: listNum 1;
	gap: 0 3em;
}

.commonList--simpleNum > .commonListItem{
	counter-increment: listNum 1;
	gap: 0 0.5em;
}

.commonList--circleNum > .commonListItem{
	counter-increment: listNum 1;
	gap: 0 0.5em;
}

.commonList--numDot > .commonListItem{
	counter-increment: listNum 1;
	gap: 0 0.25em;
}

.commonList--bracketsNum > .commonListItem{
	counter-increment: listNum 1;
	gap: 0 0.5em;
}

.commonList--num > .commonListItem:before{
	content: counter(listNum);
	color: var(--themeSubColor);
	font-weight: var(--fontWeightBold);
	font-family: var(--fontFamilyMaru);
	font-size: 175%;
	line-height: 1;
	width: 1.5em;
	padding: 0 0 0.25em;
	text-align: center;
	background-image: url("../../images/common/listIcon.svg");
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: bottom center;
	text-shadow: 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF, 0 0 2px #FFF;
}

.commonList--simpleNum > .commonListItem:before{
	content: counter(listNum)".";
}

.commonList--circleNum > .commonListItem:before{
	content: counter(listNum);
	font-size: 85%;
	width: 1.25rem;
	height: 1.25rem;
	border: 1px solid var(--mainTextColor);
	border-radius: 50%;
	lin-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: var(--fontWeightBold);
	margin: calc(0.25rem / 2) 0 0;
}

.commonList--numDot > .commonListItem:before{
	content: counter(listNum)".";
	font-size: 100%;
}

.commonList--bracketsNum > .commonListItem:before{
	content: "("counter(listNum)")";
}

.commonList--custom > .commonListItem:before{
	display: none;
}

.commonList--custom > .commonListIcon{
	display: block;
	flex-grow: 0;
	flex-shrink: 0;
}

.commonList--num > .commonListItem .commonListInner{
	padding-top: 0.25em;
}

.commonList--icon > .commonListItem:not(:first-of-type){
	margin-top: 0.5em;
}

.commonList--icon > li:before{
	content: "";
	display: block;
	width: 1.5em;
	height: 1.5em;
	background-image: url("../../images/common/listIconF.png");
	background-position: center center;
	background-size: contain;
}

.commonList--circle > li:before{
	content: "\25CB";
	display: block;
}

.commonList .commonListItem--star:before{
	content: "\2606";
	width: auto;
	height: auto;
	border: none;
	border-radius: 0;
	margin: 0;
}

.commonList--square > li:before{
	content: "\25A0";
	color: var(--mainTextColor);
}

/*---------------------------------
	commonList end
---------------------------------*/

/*---------------------------------
	contentAlign start
---------------------------------*/

.contentAign--center{
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}

.contentAign--columnCenter{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
}

.contentAign--textGap{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0 1em;
}

@media(max-width: 1024px){
	.contentAign--tabColumnCenter{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
}

@media(max-width: 600px){
	.contentAign--spColumnCenter{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
	}
}

/*---------------------------------
	contentAlign end
---------------------------------*/

/*---------------------------------
	commonDecoration end
---------------------------------*/

.commonDecoration--borderColor{
	border: 1px solid var(--themeColor);
	padding: 1.5em !important;
	background-color: #FFF;
}

.commonDecoration--borderColorBold{
	border: 4px solid var(--themeColor);
	padding: 2em 3em !important;
	background-color: #FFF;
}

.commonDecoration--borderGray{
	border: 1px solid #DFDFDF;
	padding: 1.5em 2.5em !important;
	background-color: #FFF;
}

.commonDecoration--bgColor{
	background-color: var(--themeSubColor);
	padding: 1em !important;
}

.commonDecoration--bgGray{
	background-color: #EFEFEF;
	padding: 1em !important;
}

.commonDecoration--bgWhite{
	background-color: rgba(255,255,255,0.9);
	padding: 1.5em 2.5em 2.5em !important;
}

@media(max-width: 600px){
	.commonDecoration--bgWhite{
		padding: 1.5em 1.5em 2.5em !important;
	}
}

.commonDecoration--separatorColor{
	border-bottom: 1px solid var(--themeSubColor);
	padding-bottom: 1.5em !important;
	margin-bottom: 1.5em !important;
}

.commonDecoration--separatorGray{
	border-bottom: 1px solid #EFEFEF;
	padding: 0 0 1.5em !important;
	margin: 0 0 1.5em !important;
}

.commonDecoration--separatorColor:last-child,
.commonDecoration--separatorGray:last-child{
	margin-bottom: 0 !important;
}

/*---------------------------------
	commonDecoration end
---------------------------------*/

/*---------------------------------
	textMarker end
---------------------------------*/
.textMarker{
	display: inline;
	background: linear-gradient(transparent 60%, var(--themeColor) 60%, var(--themeColor) 100%, transparent 100%);
}
/*---------------------------------
	textMarker end
---------------------------------*/

/*---------------------------------
	faq start
---------------------------------*/

.faqCounter{
	counter-reset: num 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: 1em;
}

.faqItem{
	width: 100%;
	padding: 1em;
	margin: 0;
	background-color: #FFF;
	border: 1px solid #BFBFBF;
	counter-increment: num 1;
}

.faqItem_qaInner{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 0 1em;
}

.faqItem_a{
	border-top: 1px solid #BFBFBF;
}

.faqItem_qaIcon{
	display: flex;
	align-items: baseline;
	gap: 0 0.05em;
	flex-grow: 0;
	flex-shrink: 0;
	font-size: 150%;
	padding: 0.4em 0.25em;
	text-align: left;
	font-weight: bold;
	color: #F93022;
}

.faqItem_a .faqItem_qaIcon{
	color: #226CF9;
}

.faqItem_qaIcon:after{
	content: counter(num);
	font-size: 80%;
}

.faqItem_qTitle{
	flex-grow: 1;
	flex-shrink: 1;
	font-size: 100%;
	padding: 1em 0.5em;
	margin: 0;
	font-weight: var(--fontWeightBold);
	position: relative;
}

.faqItem_qTitle{
	padding: 1em calc(0.5em + (1em * 1.5)) 1em 0.5em;
}

.faqItem_aContent{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.75em 0;
	flex-grow: 1;
	flex-shrink: 1;
	font-size: 100%;
	padding: 1em 0.5em;
	margin: 0;
}

.faqItem_qText{
	font-weight: bold;
}

.faqItem_aText{
	width: 100%;
	margin: 0;
}

.faqItem_qArrow{
	flex-grow: 0;
	flex-shrink: 0;
	font-size: 150%;
	width: 1.5em;
	align-self: stretch;
	padding: 0.4em 0.25em;
	position: relative;
	display: none;
}

.faqItem_qArrow:before{
	content: "down";
	font-family: 'LigatureSymbols';
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	position: absolute;
	top: 0.4em;
	left: 50%;
	transform: translateX(-50%);
	transition: transform 0.5s;
	color: var(--themeColor);
	display: none;
}

.faqItem_q.active .faqItem_qArrow:before{
	transform: translateX(-50%) rotate(180deg);
}

@media(max-width: 750px){
	.faqItem{
		font-size: 85%;
	}
	.faqItem_qaIcon{
		margin-right: 0.25em;
	}
	.faqItem_qTitle,
	.faqItem_aContent{
		padding: 1em 0.25em;
	}
}

/*---------------------------------
	faq end
---------------------------------*/

/*---------------------------------
	flowList start
---------------------------------*/

.flowList{
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	gap: 2.5em;
	list-style: none;
	padding: 0;
	counter-reset: flowNum 0;
}

.flowList--next .flowListItem:not(:last-of-type):after{
	content: "\25BC";
	display: block;
	text-align: center;
	margin: 2.5em auto 0;
	line-height: 1;
	transform: scale(2.25,1.5);
}

.flowListItem{
	display: block;
	counter-increment: flowNum 1;
}

.flowListInner{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	border: 1px solid #BFBFBF;
	padding: 1.25em 2.5em 2em;
}

@media(max-width: 600px){
	.flowListInner{
		padding: 1.25em 1em 2em;
	}
}

.flowListTitle{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: center;
	gap: 0 0.5em;
	width: 100%;
	margin: 0 0 1em;
	font-size: 125%;
	font-weight: var(--fontWeightBold);
	color: var(--themeColor);
}

.flowListTitle:before{
	content: counter(flowNum)".";
	flex-grow: 0;
	flex-shrink: 0;
}

.flowListTitleInner{
	flex-grow: 0;
	flex-shrink: 1;
}

.flowListText{
	margin: 0;
}

/*---------------------------------
	flowList end
---------------------------------*/

/*---------------------------------
	nColumsContents start
---------------------------------*/

.nColumsContents{
	--gapX: 2em;
	--gapY: 3em;
	--nColumn: 1;
	list-style: none;
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: var(--gapY) var(--gapX);
	padding: 0;
	margin: 0;
}

.nColumsContents--gap{
	--gapX: 3em;
}

.nColumsContents_item{
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: calc((100% - (var(--gapX) * (var(--nColumn) - 1))) / var(--nColumn));
}

.nColumsContents_link,
.nColumsContents_link:hover{
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 0.5em;
	width: 100%;
	color: inherit;
	text-decoration: none;
}

@media(min-width: 1025px){
	.nColumsContents--pcCol4{
		--nColumn: 4;
	}
	.nColumsContents--pcCol3{
		--nColumn: 3;
	}
	.nColumsContents--pcCol2{
		--nColumn: 2;
	}
	.nColumsContents--pcCol1{
		--nColumn: 1;
	}
}

@media(max-width: 1024px) and (min-width: 601px){
	.nColumsContents{
		--gapX: 2em;
	}
	.nColumsContents--tbCol4{
		--nColumn: 4;
	}
	.nColumsContents--tbCol3{
		--nColumn: 3;
	}
	.nColumsContents--tbCol2{
		--nColumn: 2;
	}
	.nColumsContents--tbCol1{
		--nColumn: 1;
	}
}

@media(max-width: 600px){
	.nColumsContents{
		--gapX: 1em;
		--gapY: 2em;
	}
	.nColumsContents--spCol4{
		--nColumn: 4;
	}
	.nColumsContents--spCol3{
		--nColumn: 3;
	}
	.nColumsContents--spCol2{
		--nColumn: 2;
	}
	.nColumsContents--spCol1{
		--nColumn: 1;
	}
}

.nColumsContentsTable{
	width: 100%;
	table-layout: fixed;
}

.nColumsContentsTable th,
.nColumsContentsTable td{
	padding: 0.5em;
	vertical-align: top;
}

.nColumsContents--borderGrid .nColumsContentsTable th,
.nColumsContents--borderGrid .nColumsContentsTable td{
	border: 2px solid var(--tableBordergridBorderColor);
}

.nColumsContents--borderBottom .nColumsContentsTable th,
.nColumsContents--borderBottom .nColumsContentsTable td{
	border-bottom: 2px solid #CCC;
}

.nColumsContentsTable th{
	text-align: center;
	font-weight: var(--fontWeightBold);
}

.nColumsContents--borderGrid th{
	background-color: var(--tableBordergridHeadBgColor);
	color: var(--tableBordergridHeadTextColor);
}

.nColumsContents--borderGrid td{
	background-color: var(--tableBordergridCellBgColor);
	color: var(--tableBordergridCellTextColor);
}

.nColumsContentsTable_imageCell,
.nColumsContentsTable_textsCell{
	width: 100%;
	margin: 0;
}

.nColumsContentsTable_imageWrapper{
	position: relative;
	width: 100%;
	padding-top: calc(100% / 4 * 3);
	overflow: hidden;
}

.nColumsContentsTable_imageWrapper--border{
	border: 1px solid #CCC;
}

.nColumsContentsTable_imageWrapper--ratioGold{
	padding-top: 61.8%;
}

.nColumsContentsTable_imageWrapper--ratioOrigin{
	padding-top: 0;
}

.nColumsContentsTable_imageWrapper img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.25s;
}

.nColumsContentsTable_imageWrapper--ratioOrigin img{
	position: static;
	height: auto;
	object-fit: fill;
}

.nColumsContentsTable_imageWrapper--contain img{
	object-fit: contain;
}

a:hover .nColumsContentsTable_imageWrapper img{
	transform: scale(1.1);
}

.nColumsContentsTable_imageLink{
	background-color: #FFF;
	display: block;
}

.nColumsContentsTable_imageLink img{
	transition: opacity 0.25s;
}

.nColumsContentsTable_imageLink:hover img{
	opacity: 0.8;
}

/*---------------------------------
	nColumsContents end
---------------------------------*/

/*---------------------------------
	accessMap start
---------------------------------*/

.accessMap{
	display: block;
	width: 100%;
	height: 50vh;
	position: relative;
}

.accessMap iframe{
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

/*---------------------------------
	accessMap end
---------------------------------*/

/*---------------------------------
	newsPickup start
---------------------------------*/

.newsPickup{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

.newsPickupItem{
	margin-bottom: 0;
	border-bottom: 1px solid #BFBFBF;
}

.newsPickupItem_link,
.newsPickupItem_link:hover{
	color: inherit;
	text-decoration: none;
}

.newsPickupItem_link:hover{
	text-decoration: underline;
}

.newsPickupItem_inner{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.newsPickupItem_date{
	flex-grow: 0;
	flex-shrink: 0;
	width: 8em;
	padding: 0.75em 0.5em;
	margin: 0;
}

.newsPickupItem_title{
	flex-grow: 1;
	flex-shrink: 1;
	padding: 0.75em 0.5em;
	margin: 0;
}

@media(max-width: 600px){
	.newsPickupItem_inner{
		flex-direction: column;
		padding: 0.5em 0.5em;
	}
	.newsPickupItem_date,
	.newsPickupItem_title{
		width: 100%;
		padding: 0;
		margin-bottom: 0.5em;
	}
}

/*---------------------------------
	newsPickup end
---------------------------------*/

/*---------------------------------
	langSelector end
---------------------------------*/

.langSelector{
	padding: 0;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #FFF;
	z-index: 300;
}

@media(max-width: 960px){
	.langSelector{
		display: none;
	}
}

.langSelectorTitle{
	display: flex;
	flex-wrap: nowrap;
	align-items: baseline;
	justify-content: flex-start;
	gap: 0;
	margin: 0;
	padding: 0.25em 0.5em;
	border: 2px solid #333;
	cursor: pointer;
}

.langSelectorTitleItem{
	display: block;
	margin: 0 1em 0 0.5em;
}

.langSelectorTitle:before{
	content: "web";
	font-family: 'LigatureSymbols';
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	font-size: 125%;
}

.langSelectorTitle:after{
	content: "down";
	font-family: 'LigatureSymbols';
	-webkit-text-rendering: optimizeLegibility;
	-moz-text-rendering: optimizeLegibility;
	-ms-text-rendering: optimizeLegibility;
	-o-text-rendering: optimizeLegibility;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-webkit-font-feature-settings: "liga" 1, "dlig" 1;
	-moz-font-feature-settings: "liga=1, dlig=1";
	-ms-font-feature-settings: "liga" 1, "dlig" 1;
	-o-font-feature-settings: "liga" 1, "dlig" 1;
	font-feature-settings: "liga" 1, "dlig" 1;
	transform-origin: center center;
	transition: transform 0.25s;
	line-height: 1;
}

.langSelectorTitle.open:after{
	transform: rotate(180deg);
}

.langListWrapper{
	display: none;
	margin: 0;
	padding: 0;
}

.langList{
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
	border: 2px solid #DFDFDF;
	border-top: none;
}

.langListItem{
	display: block;
	margin: 0;
}

.langListLink{
	display: block;
	padding: 0.5em 0.5em 0.5em calc(0.5em + 1.25em);
	transition: background-color 0.25s;
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

.active .langListLink{
	background-color: #DFDFDF;
	cursor: default;
	pointer-events: none;
}

.langListLink:hover{
	color: inherit;
	background-color: #DFDFDF;
	text-decoration: none;
}

.langListItem--JA{
	order: 2;
}

.langListItem--CN{
	order: 3;
}

.langListItem--KO{
	order: 4;
}

.langListItem--EN{
	order: 5;
}

.langListItem.active{
	order: 1;
}

/*---------------------------------
	langSelector end
---------------------------------*/

/*---------------------------------
	navLang end
---------------------------------*/

.navLang{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	gap: 0.5em 1em;
	width: 100%;
	margin: 1em auto 0;
	padding: 0 1em;
	list-style: none;
}

.navLangItem{
	display: flex;
	align-items: stretch;
	width: calc((100% - 1em) / 2);
}

.navLangItem--JA{
	order: 2;
}

.navLangItem--CN{
	order: 3;
}

.navLangItem--KO{
	order: 4;
}

.navLangItem--EN{
	order: 5;
}

.navLangItem.active{
	order: 1;
}

.navLangLink,
a:not([href]):not([tabindex]).navLangLink{
	display: block;
	width: 100%;
	border: 1px solid #FFF;
	color: var(--mainTextColor);
	background-color: #FFF;
	padding: 0.25em 0.5em;
	transition: color 0.25s, background-color 0.25s;
	text-decoration: none;
}

.navLangLink:hover,
a:not([href]):not([tabindex]).navLangLink:hover,
.navLangItem.active .navLangLink,
.navLangItem.active a:not([href]):not([tabindex]).navLangLink{
	color: #FFF;
	background-color: var(--themeColor);
	text-decoration: none;
}

.navLangItem.active .navLangLink,
.navLangItem.active a:not([href]):not([tabindex]).navLangLink{
	cursor: default;
	pointer-events: none;
}

/*---------------------------------
	navLang end
---------------------------------*/

