@charset "UTF-8";

/*
■ リセット

■ テキスト・フォント設定
■ 変数設定
■ カラー設定
■ 横幅

■ ヘッダー
■ グローバルナビ
■ ユティリティ
■ パン屑
■ ページタイトル
■ フッター
■ ページの先頭へ

■ 見出し
■ リード
■ 画像

■ セクション
■ 関連情報
■ お問い合わせ欄
■ 戻るリンク

■ カラム

■ リスト
■ 表組み
■ 記述リスト

■ ページ内リンク
■ ボタンリスト
■ リンクリスト
■ 目次メニュー
■ パネルメニュー
■ アコーディオンメニュー

■ ボックス

■ テキストリンク
■ ボタン
■ アイコン

■ 動画埋め込み
■ マップ埋め込み

■ フォーム

■ 汎用モーダル

■ 個別調整

■ 印刷用設定

■ JSライブラリ
*/



/* ■ リセット ==================================================================================== */

* { margin: 0; padding: 0; }
*,*:before,*:after,*::before,*::after { box-sizing: border-box; }
body { line-height: 1; -webkit-text-size-adjust: none; }
*:focus { outline: none; }
figure,img,picture,video,canvas,svg { display: block; width: 100%; height: auto; border: none; vertical-align: bottom; }
form { margin: 0; padding: 0; }
li { list-style-type: none; }
table { width: 100%; border-collapse: collapse; border-spacing: 0; }
strong, em { font-style: normal; }
input, select, textarea, button { border-style: none; font-size: inherit; }
button { cursor: pointer; }

pre {
margin-top: 1rem;
padding: 0 2rem;
border: 1px solid #ededed;
font-size: 1.4rem;
line-height: 1.6em;
background-color: #f8f8f8;
overflow: scroll;
}



/* ■ テキスト・フォント設定 ==================================================================================== */

body {
font-size: 1.6rem;
letter-spacing: 0.1em;
font-family: "Helvetica Neue",Arial,"Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",Sans-Serif;
overflow-wrap: anywhere;
}

.Lang_en body {
letter-spacing: 0.075em;
}

input, select, textarea {
font-family: "Helvetica Neue",Arial,"Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",Sans-Serif;
}

h1,h2,h3,h4,h5,h6,th,dt,strong,em {
font-weight: bold;
}

small {
font-size: calc(var(--f-m) * 0.8);
}

@media only screen and (max-width: 767px) {

	html {
	font-size: calc(10 / 16 * 100%);
	}

}

@media print, screen and (min-width: 768px) {

	html {
	font-size: calc(9 / 16 * 100%);
	}

}

@media print, screen and (min-width: 1110px) {

	html {
	font-size: calc(10 / 16 * 100%);
	}

}



/* ■ 変数設定 ==================================================================================== */

/*
カラー
フォントサイズ・行間
gap（余白）
border-radius
*/


/* カラー --------------------------------------------------- */

:root {
--c-1: #2569a3;	/* ネイビー：見出し等 */
--c-2: #a1d2ea;	/* 薄めブルー：背景等 */
--c-3: #73afcc;	/* ブルー：ボーダー等 */
--c-4: #f6f9fa;	/* グレー：背景等 */
--c-5: #d8d8d8;	/* グレー：ボーダー等 */
--c-link: #2569a3;
--c-hover-bg: #ebf8ff;
--c-hover-text: #0f4571;
--c-alert: #de1159;
--c-b1: #a6433a; /* 資源事業 */
--c-b2: #2569a3; /* 製錬事業 */
--c-b3: #3d8f44; /* 材料事業 */
}


/* フォントサイズ・行間 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	:root {
	--f-s: 1.2rem;
	}

	:root {
	--f-m: 1.4rem;
	}

	:root {
	--l-m: 2;
	}

}

@media print, screen and (min-width: 768px) {

	:root {
	--f-s: 1.4rem;
	}

	:root {
	--f-m: 1.6rem;
	}

	:root {
	--l-m: 2.2;
	}

}


/* gap（余白） --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	/* パーツ初期値 */
	:root {
	--gap-int: 1.8rem;
	}

}

@media print, screen and (min-width: 768px) {

	/* パーツ初期値 */
	:root {
	--gap-int: 3rem;
	}

}


/* border-radius --------------------------------------------------- */

:root {
--r-1: 0.2rem;
--r-2: 0.2rem;
}



/* ■ カラー設定 ==================================================================================== */

/*
テキスト・背景
リンク
アラート色
*/


/* テキスト・背景 --------------------------------------------------- */

body {
color: #000;
background-color: #fff;
}


/* リンク --------------------------------------------------- */

a:link {
color: var(--c-link);
text-decoration: none;
}

a:active {
color: var(--c-link);
text-decoration: none;
}

a:visited {
color: var(--c-link);
text-decoration: none;
}

a:hover {
color: var(--c-link);
text-decoration: none;
}

a.LinkLine {
text-decoration: underline;
text-underline-offset: 4px;
}

@media (hover: hover) {

	a:link {
	transition: color 0.2s ease 0.01s, background-color 0.2s ease 0.01s, opacity 0.2s ease 0.01s;
	}

	a:hover {
	color: var(--c-hover-text);
	}

}


/* アラート --------------------------------------------------- */

.Alert {
color: var(--c-alert) !important;
}

.Box.Alert {
border-color: var(--c-alert) !important;
}

.ListDisc.Alert li:before,
.ListDiscS.Alert li:before {
background-color: var(--c-alert) !important;
}



/* ■ 横幅 ==================================================================================== */

body {
min-width: 120rem;
}

@media only screen and (max-width: 767px) {

	body {
	min-width: 32rem;
	}

	.Width_1 {
	padding: 0 2.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Wrapper {
	max-width: 200rem;
	margin: 0 auto;
	}

	.Width_1 {
	max-width: 111rem;
	margin: 0 auto;
	padding: 0 3rem;
	}

}



/* ■ ヘッダー ==================================================================================== */

.Header {
position: sticky;
top: 0;
z-index: 1000;
background-color: #fff;
}

.Header.is_Scrolled {
box-shadow: 0px 6px 10px -8px rgba(0, 0, 0, 0.3);
}

.Header_Inner {
position: relative;
}

.Header_Logo {
display: inline-block;
position: relative;
z-index: 10000;
}

@media only screen and (max-width: 767px) {

	.Header {
	height: 5rem;
	}

	.Header_Inner {
	display: flex;
	}

	.Header_Logo {
	margin-right: auto;
	padding-left: 1.6rem;
	padding-top: 1.8rem;
	}

	/* 英語版 */
	.Lang_en .Header_Logo {
	transform: translateY(0.3rem);
	}

	.Header_ServiceName {
	width: 13.1rem;
	}

	/* 英語版 */
	.Lang_en .Header_ServiceName {
	width: 22rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Header_Inner {
	position: relative;
	padding-top: 1.6rem;
	}

	.Header_Logo {
	padding-left: 3rem;
	transform: translateY(2.4rem);
	}

	/* 英語版 */
	.Lang_en .Header_Logo {
	transform: translateY(2rem);
	}

	.Header_ServiceName {
	width: 19.1rem;
	}

	/* ハンバーガーメニュー */
	#Header_HamburgerMenu {
	display: none;
	}

	/* 英語版 */
	.Lang_en .Header_Inner {
	padding-top: 2.7rem;
	}

	.Lang_en .Header_ServiceName {
	width: 32rem;
	}

}



/* ■ グローバルナビ（GlobalNav） ==================================================================================== */

/*
SmartMenus：初期設定
親メニュー
子メニュー
*/


/* SmartMenus：初期設定 --------------------------------------------------- */
.sm { position: relative; z-index: 9999; -webkit-tap-highlight-color: rgba(0,0,0,0); }
.sm,.sm ul,.sm li { display: block; list-style: none; margin: 0; padding: 0; line-height: normal; direction: ltr; text-align: left; }
.sm-rtl,.sm-rtl ul,.sm-rtl li { direction: rtl; text-align: right; }
.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6 { margin: 0; padding: 0; }
.sm ul { display: none; }
.sm li,.sm a { position: relative; }
.sm a.disabled { cursor: default; }
.sm::after { content: ""; display: block; height: 0; font: 0px/0 serif; clear: both; overflow: hidden; }
.sm *,.sm *::before,.sm *::after { box-sizing: inherit; }


/* 親メニュー --------------------------------------------------- */

a.GlobalNav_Parent {
display: block;
position: relative;
font-weight: bold;
}

@media only screen and (max-width: 767px) {

	.GlobalNav {
	display: none;
	position: fixed;
	left: 0;
	top: 5rem;
	z-index: 10000;
	width: 100%;
	height: 100vh;
	padding-bottom: 20rem;
	background-color: #fff;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	}

	.GlobalNav_List {
	padding: 2rem 2.5rem;
	}

	a.GlobalNav_Parent {
	position: relative;
	padding: 2rem 0.8rem;
	border-top: 1px solid var(--c-2);
	}

	.GlobalNav_List_Each:last-child a.GlobalNav_Parent {
	border-bottom: 1px solid var(--c-2);
	}

	/* プラス・マイナス */
	a.GlobalNav_Parent.has-submenu::before,
	a.GlobalNav_Parent.has-submenu::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 1.5rem;
	height: 0.1rem;
	background-color: var(--c-1);
	content: "";
	}
	
	a.GlobalNav_Parent.has-submenu::after {
	transform: rotate(90deg);
	}
	
	a.GlobalNav_Parent.has-submenu.highlighted::after {
	display: none;
	}

	/* 矢印 */
	a.GlobalNav_Parent.no_Child::before {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 0.8rem;
	height: 0.8rem;
	border-top: 1px solid var(--c-link);
	border-right: 1px solid var(--c-link);
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center;
	content: "";
	}
	
	a.GlobalNav_Parent.no_Child::after {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 1.8rem;
	height: 0.1rem;
	background-color: var(--c-link);
	transform: translateY(-50%);
	content: "";
	}

}

@media print, screen and (min-width: 768px) {

	.GlobalNav {
	display: block !important;
	}

	.GlobalNav_List {
	display: flex;
	justify-content: flex-end;
	padding-right: 1rem;
	}

	.GlobalNav_List > li {
	position: static !important;
	}

	a.GlobalNav_Parent {
	padding: 2rem 2rem 2rem 2rem;
	color: #000;
	}

	a.GlobalNav_Parent.is_Current::after {
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 70%;
	height: 0.3rem;
	background-color: var(--c-1);
	transform: translateX(-50%);
	content: "";
	}

	.GlobalNav_List_Each:hover a.GlobalNav_Parent {
	color: var(--c-1);
	}

}

@media print, screen and (min-width: 1200px) {

	.GlobalNav {
	margin-top: 1.9rem;
	}

	.GlobalNav_List {
	padding-right: 6rem;
	}

	a.GlobalNav_Parent {
	padding: 0.5rem 3rem 2rem 3rem;
	}

}


/* 子メニュー --------------------------------------------------- */

.GlobalNav_Menu_Each a,
.GlobalNav_Banner_Each a {
display: block;
position: relative;
font-weight: bold;
font-weight: 500;
font-feature-settings: "palt";
letter-spacing: 0.2em;
color: #000;
}

/* 英語版 */
.Lang_en .GlobalNav_Menu_Each a,
.Lang_en .GlobalNav_Banner_Each a {
letter-spacing: 0.1em;
}

/* 矢印 */
.GlobalNav_Menu_Each a::before {
position: absolute;
width: 0.8rem;
height: 0.8rem;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: translateY(-50%) rotate(45deg);
transform-origin: center;
content: "";
}

.GlobalNav_Menu_Each a::after {
position: absolute;
height: 0.1rem;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

@media only screen and (max-width: 767px) {

	.GlobalNav_Menu_Each a {
	padding: 1.8rem 3rem 1.8rem 4.4rem;
	border-top: 1px solid #fff;
	font-size: 1.3rem;
	line-height: 1.6;
	font-weight: bold;
	background-color: #f0f5f6;
	}

	/* 矢印 */
	.GlobalNav_Menu_Each a::before {
	left: 2.4rem;
	top: 2.8rem;
	}

	.GlobalNav_Menu_Each a::after {
	left: 1.5rem;
	top: 2.8rem;
	width: 1.8rem;
	}

	/* バナー */
	.GlobalNav_Banner_Each a {
	display: flex;
	align-items: center;
	padding: 1.8rem 3rem 1.8rem 1.5rem;
	border-top: 1px solid #fff;
	font-size: 1.3rem;
	line-height: 1.6;
	font-weight: bold;
	background-color: #f0f5f6;
	}

	.GlobalNav_Banner_Photo {
	width: 10.5rem;
	}

	.GlobalNav_Banner_Lead {
	flex: 1;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	}

	/* 矢印 */
	.GlobalNav_Banner_Each a::before {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 0.8rem;
	height: 0.8rem;
	border-top: 1px solid var(--c-link);
	border-right: 1px solid var(--c-link);
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center;
	content: "";
	}
	
	.GlobalNav_Banner_Each a::after {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 1.8rem;
	height: 0.1rem;
	background-color: var(--c-link);
	transform: translateY(-50%);
	content: "";
	}

}

@media print, screen and (min-width: 768px) {

	.GlobalNav_Child {
	position: absolute;
	left: 0;
	width: 100% !important;
	max-width: none !important;
	border-bottom: 1px solid var(--c-3);
	background-color: #fff;
	box-shadow: 0px 8px 20px -8px rgba(0, 0, 0, 0.4);
	transform: translateY(-0.3rem);
	}

	.GlobalNav_Menu {
	margin: 0 2rem;
	padding: 0 8rem 1rem 6rem;
	border-top: 1px solid var(--c-3);
	}

	.GlobalNav_Menu_Unit {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0 3rem;
	padding: 2.5rem 0 3.5rem;
	}

	.GlobalNav_Menu_Each:nth-child(2) {
	grid-column: span 3;
	display: grid;
	grid-template-rows: repeat(3, auto);
	grid-auto-flow: column;
	grid-template-columns: repeat(3, 1fr); 
	gap: 0 3rem;
	}

	.GlobalNav_Menu_Each.is_Adjusted {
	grid-template-columns: repeat(3, 1fr) 0.6fr;
	}
	
	.GlobalNav_Menu_Each a {
	padding: 1.6rem 3rem 1.6rem 0.1rem;
	border-bottom: 1px solid var(--c-3);
	font-size: 1.5rem;
	line-height: 1.6;
	}

	.GlobalNav_Menu_Each:first-child a {
	padding: 1rem 0 1rem 3.5rem;
	border-bottom: none;
	font-size: 2.8rem;
	line-height: 1.4;
	letter-spacing: 0.05em;
	color: var(--c-link);
	}

	/* 矢印 */
	.GlobalNav_Menu_Each:first-child a::before {
	left: 1.2rem;
	top: 3rem;
	}

	.GlobalNav_Menu_Each:first-child a::after {
	left: 0;
	top: 3rem;
	width: 2rem;
	}

	.GlobalNav_Menu_Each:not(:first-child) a::before {
	right: 0.5rem;
	top: 2.8rem;
	}

	.GlobalNav_Menu_Each:not(:first-child) a::after {
	right: 0.5rem;
	top: 2.8rem;
	width: 1.6rem;
	}

	/* バナー */
	.GlobalNav_Banner {
	padding: 0 8rem 0 6rem;
	background-color: var(--c-4);
	}

	.GlobalNav_Banner_Unit {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0 3rem;
	margin: 0 2rem;
	padding: 3.5rem 0;
	}

	.GlobalNav_Banner_Each:nth-child(1) {
	grid-column: 2;
	}

	.GlobalNav_Banner_Each a {
	font-size: 1.5rem;
	line-height: 1.6;
	}

	.GlobalNav_Banner_Lead {
	position: relative;
	margin-top: 1.2rem;
	padding-left: 1rem;
	padding-right: 3rem;
	}

	/* 矢印 */
	.GlobalNav_Banner_Lead::before {
	position: absolute;
	right: 1rem;
	top: 1.2rem;
	width: 0.8rem;
	height: 0.8rem;
	border-top: 1px solid var(--c-link);
	border-right: 1px solid var(--c-link);
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center;
	content: "";
	}
	
	.GlobalNav_Banner_Lead::after {
	position: absolute;
	right: 1rem;
	top: 1.2rem;
	width: 1.6rem;
	height: 0.1rem;
	background-color: var(--c-link);
	transform: translateY(-50%);
	content: "";
	}

}

@media (hover: hover) {

	.GlobalNav_Menu_Each a:hover,
	.GlobalNav_Banner_Each a:hover {
	color: var(--c-1);
	}

}



/* ■ ユティリティ ==================================================================================== */

/*
レイアウト
印刷・サイトマップ
言語切替
検索窓
ハンバーガーメニュー
*/

.UtilityNav {
position: absolute;
top: 0;
right: 0;
background-color: #f0f5f6;
}


/* レイアウト --------------------------------------------------- */

.UtilityNav_Inner {
display: flex;
align-items: center;
}

@media only screen and (max-width: 767px) {

	.UtilityNav_Inner {
	padding-left: 1.8rem;
	}

	.UtilityNav_SP {
	padding: 1rem 2rem 0;
	}

}

@media print, screen and (min-width: 768px) {

	.UtilityNav_Inner {
	padding: 0.8rem 2rem 0.8rem 2rem;
	}

}


/* 印刷・サイトマップ --------------------------------------------------- */

a.UtilityNav_Print,
a.UtilityNav_Sitemap {
display: flex;
align-items: center;
font-weight: bold;
color: #000;
}

@media only screen and (max-width: 767px) {

	a.UtilityNav_Sitemap {
	margin-left: 1rem;
	margin-top: 3rem;
	font-size: 1.3rem;
	font-weight: bold;
	font-weight: 500;
	}

	a.UtilityNav_Sitemap::before {
	background-image: url(/assets/img/common/icon/Icon_Sitemap.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	content: "";
	}

	a.UtilityNav_Sitemap::before {
	width: 2.1rem;
	height: 1.9rem;
	margin-right: 0.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	a.UtilityNav_Print,
	a.UtilityNav_Sitemap {
	font-size: 1.2rem;
	}

	a.UtilityNav_Print::after,
	a.UtilityNav_Sitemap::after {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	content: "";
	}
	
	a.UtilityNav_Print::after {
	width: 1.9rem;
	height: 1.9rem;
	margin-left: 0.6rem;
	background-image: url(/assets/img/common/icon/Icon_Print.png);
	transform: translateY(-0.1rem);
	}

	a.UtilityNav_Sitemap {
	margin-left: 2rem;
	}

	a.UtilityNav_Sitemap::after {
	width: 2.1rem;
	height: 1.9rem;
	margin-left: 0.4rem;
	background-image: url(/assets/img/common/icon/Icon_Sitemap.png);
	}

}

@media (hover: hover) {

	a.UtilityNav_Print:hover,
	a.UtilityNav_Sitemap:hover {
	color: var(--c-link);
	}

}


/* 言語切替 --------------------------------------------------- */

.UtilityNav_Lang {
display: flex;
align-items: center;
}

.UtilityNav_Lang_Mds,
.UtilityNav_Lang_Current,
.UtilityNav_Lang_Link {
font-weight: bold;
}

.UtilityNav_Lang_Current {
color: #fff;
background-color: var(--c-1);
}

.UtilityNav_Lang_Link {
background-color: #fff;
}

@media only screen and (max-width: 767px) {

	.UtilityNav_Lang_Mds,
	.UtilityNav_Lang_Current,
	.UtilityNav_Lang_Link {
	font-size: 1rem;
	}

	.UtilityNav_Lang_Mds {
	margin-right: 0.6rem;
	}

	.UtilityNav_Lang_Current,
	.UtilityNav_Lang_Link {
	padding: 0.6rem 0.8rem;
	}

}

@media print, screen and (min-width: 768px) {

	.UtilityNav_Lang {
	margin-left: 2rem;
	padding-left: 2rem;
	border-left: 1px solid var(--c-3);
	}

	.UtilityNav_Lang_Mds,
	.UtilityNav_Lang_Current,
	.UtilityNav_Lang_Link {
	font-size: 1.2rem;
	}

	.UtilityNav_Lang_Mds {
	margin-right: 0.6rem;
	}

	.UtilityNav_Lang_Current,
	.UtilityNav_Lang_Link {
	padding: 0.6rem 0.6rem;
	}

}


/* 検索窓 --------------------------------------------------- */

.UtilityNav_Search_Unit {
display: flex;
align-items: center;
position: relative;
border: 1px solid var(--c-3);
border-radius: 100vh;
}

.SearchBox_Txt {
border-radius: 100vh 0 0 100vh;
vertical-align: middle;
background-color: #fff;
}

.SearchBox_Btn {
padding: 0 1rem;
border-radius: 0 100vh 100vh 0;
text-indent: -9999px;
background-color: #fff;
background-image: url(/assets/img/common/icon/Icon_Search.png);
background-repeat: no-repeat;
background-position: left 50% top 50%;
cursor: pointer;
appearance: none;
}

@media only screen and (max-width: 767px) {

	.UtilityNav_Search {
	position: relative;
	}

	.SearchBox_Txt {
	flex: 1;
	height: 3em;
	padding: 0 2rem;
	font-size: 1.6rem;
	line-height: 2.4;
	}

	.SearchBox_Btn {
	width: 6rem;
	height: 3em;
	background-size: 2rem 2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.UtilityNav_Search {
	margin-left: 2rem;
	}

	.SearchBox_Txt {
	width: 18rem;
	height: 2.8rem;
	padding: 0 1rem;
	font-size: 1.2rem;
	line-height: 2.4;
	}

	.SearchBox_Btn {
	width: 4rem;
	height: 2.8rem;
	background-size: 1.3rem 1.3rem;
	}

}


/* ハンバーガーメニュー --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	#Header_HamburgerMenu {
	display: block;
	position: relative;
	width: 6rem;
	height: 5rem;
	margin-left: 1.6rem;
	font-size: 1rem;
	text-indent: -9999px;
	}

	#Header_HamburgerMenu::before {
	position: absolute;
	left: 0;
	top: 50%;
	width: 0.1rem;
	height: 3rem;
	background-color: var(--c-3);
	transform: translateY(-50%);
	content: "";
	}

	#Header_HamburgerMenu .HamburgerItem {
	display: block;
	position: absolute;
	left: 1.8rem;
	top: 2.3rem;
	width: 2.5rem;
	height: 0.2rem;
	background-color: var(--c-1);
	transition: 0.3s ease 0.01s;
	}

	#Header_HamburgerMenu .HamburgerItem:nth-child(1) {
	transform: translateY(-7px);
	}

	#Header_HamburgerMenu .HamburgerItem:nth-child(3) {
	transform: translateY(7px);
	}

	#Header_HamburgerMenu.is_Opened .HamburgerItem:nth-child(1) {
	transform: translateY(0px) rotate(45deg);
	}

	#Header_HamburgerMenu.is_Opened .HamburgerItem:nth-child(2) {
	transform: translateX(6.3333333333px);
	opacity: 0;
	}

	#Header_HamburgerMenu.is_Opened .HamburgerItem:nth-child(3) {
	transform: translateY(0px) rotate(-45deg);
	}

	/* 開いた時のbodyの制御 */
	body.is_Opened {
	overflow: hidden;
	}

}



/* ■ パン屑 ==================================================================================== */

.BreadCrumb_Wrap {
background-color: #f6f9fa;
}

.BreadCrumb_Inner {
display: flex;
align-items: center;
}

.BreadCrumb_Inner li {
position: relative;
margin-right: 0.4rem;
padding-left: 1.4rem;
}

.BreadCrumb_Inner li {
display: inline;
position: relative;
margin-right: 0.4rem;
padding-left: 1.4rem;
}

.BreadCrumb_Inner li::after {
display: block;
position: absolute;
left: 0;
top: 0.4rem;
width: 0;
height: 0;
border-style: solid;
border-top: 4px solid transparent;
border-bottom: 4px solid transparent;
border-left: 7px solid var(--c-2);
border-right: 0;
content: '';
}

.BreadCrumb_Inner li:first-child {
background-image: url(/assets/img/common/icon/Icon_PathHome.png);
background-repeat: no-repeat;
}

.BreadCrumb_Inner li:first-child::after {
display: none;
}

.BreadCrumb_Inner li:last-child a {
color: #000;
text-decoration: none;
}

@media only screen and (max-width: 767px) {

	.BreadCrumb {
	margin-top: 2rem;
	padding: 0 1rem;
	}

	.BreadCrumb_Wrap {
	padding: 1.2rem 1.6rem 0.6rem;
	}

	.BreadCrumb_Inner {
	width: 100%;
	padding-bottom: 0.8rem;
	overflow-x: scroll;
	overflow-y: hidden;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	}

	.BreadCrumb_Inner li {
	font-size: 1rem;
	}

	.BreadCrumb_Inner li:first-child {
	padding-left: 1.8rem;
	background-position: 0 10%;
	background-size: 1rem 1rem;
	}

	.BreadCrumb_Inner li::after {
	top: 0.2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.BreadCrumb {
	padding: 0 2rem;
	}

	.BreadCrumb_Wrap {
	padding: 2rem 4rem;
	}

	.BreadCrumb_Inner li {
	font-size: 1.3rem;
	line-height: 1.6;
	}

	.BreadCrumb_Inner li:first-child {
	padding-left: 1.8rem;
	background-position: 0 49%;
	background-size: 1.1rem 1.2rem;
	}

	.BreadCrumb_Inner li::after {
	top: 0.4rem;
	}

}



/* ■ ページタイトル ==================================================================================== */

/*
KVなし
KVあり
KV下リンク
*/


/* KVなし --------------------------------------------------- */

.PageTitle_Inner {
background-color: #f6f9fa;
}

.PageTitle_Cate {
font-weight: bold;
color: var(--c-1);
}

/* 英語版 */
.Lang_en .PageTitle_Cate {
letter-spacing: 0.05em;
}

.PageTitle_Mds {
border-top: 1px solid var(--c-1);
font-feature-settings: "palt";
letter-spacing: 0.05em;
}

/* 英語版 */
.Lang_en .PageTitle_Mds {
letter-spacing: 0.01em;
}

@media only screen and (max-width: 767px) {

	.PageTitle {
	padding: 0 1rem;
	}

	.PageTitle_Inner {
	padding: 1.4rem 1.5rem 3rem;
	}

	.PageTitle_Cate {
	margin-bottom: 1.5rem;
	font-size: 1.6rem;
	}

	.PageTitle_Mds {
	padding-top: 2rem;
	font-size: 3.3rem;
	line-height: 1.2;
	}

	.PageTitle_En {
	margin-top: 1rem;
	font-size: 1.3rem;
	line-height: 1.4;
	}

}

@media print, screen and (min-width: 768px) {

	.PageTitle {
	padding: 0 2rem;
	}

	.PageTitle_Inner {
	padding: 4rem 4rem;
	}

	.PageTitle_Cate {
	margin-bottom: 2rem;
	font-size: 2.6rem;
	}

	.PageTitle_Mds {
	padding-top: 3rem;
	font-size: 5.6rem;
	line-height: 1.2;
	}

	.PageTitle_En {
	margin-top: 1.8rem;
	font-size: 1.6rem;
	line-height: 1.4;
	}

}


/* KVあり --------------------------------------------------- */

.PageKV_Inner {
position: relative;
}

.PageKV_Txt,
.PageKV_Cap {
position: absolute;
color: #fff;
}

.PageKV_En {
font-weight: bold;
}

.PageKV_Photo img {
width: 100%;
}

@media only screen and (max-width: 767px) {

	.PageKV {
	padding: 0 1rem;
	}

	.PageKV_Txt {
	left: 1.5rem;
	top: 15%;
	}

	.PageKV_Mds {
	font-size: min(8.8vw, 3.3rem);
	}

	.PageKV_En {
	margin-left: 0.2rem;
	margin-top: 1rem;
	font-size: min(3.47vw, 1.3rem);
	}

	.PageKV_Photo {
	aspect-ratio: 710 / 480; 
	}

	.PageKV_Cap {
	left: 1.5rem;
	bottom: 3rem;
	font-size: 1.4rem;
	text-shadow: 1px 1px 0 #000, -1px -1px 0 #000,
	-1px 1px 0 #000, 1px -1px 0 #000,
	0px 1px 0 #000, 0 -1px 0 #000,
	-1px 0 0 #000, 1px 0 0 #000;
	}

}

@media print, screen and (min-width: 768px) {

	.PageKV {
	padding: 0 2rem;
	}

	.PageKV_Txt {
	left: 4rem;
	top: 50%;
	transform: translateY(-50%);
	}

	.PageKV_Mds {
	font-size: min(4vw, 5.6rem);
	}

	.PageKV_En {
	margin-left: 0.4rem;
	margin-top: 2rem;
	font-size: min(1.14vw, 1.6rem);
	}

	.PageKV_Photo {
	aspect-ratio: 2000 / 548; 
	}

	.PageKV_Cap {
	right: 4rem;
	bottom: 4rem;
	font-size: 1.8rem;
	}

}


/* KV下リンク --------------------------------------------------- */

.KV_Link_List {
display: flex;
}

@media only screen and (max-width: 767px) {

	.KV_Link_List {
	flex-flow: column;
	gap: 0.5rem;
	margin-top: -3rem;
	padding: 0 2.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.KV_Link_List {
	justify-content: flex-end;
	gap: 1rem;
	margin-top: -3rem;
	}

	.KV_Link_List a {
	font-size: min(1.6vw, 1.8rem);
	}

}

@media print, screen and (min-width: 1110px) {

	.KV_Link_List li {
	flex: 0 0 35rem;
	}

	.KV_Link_List a {
	width: 100%;
	}

}


/* ■ フッター ==================================================================================== */

/*
レイアウト
ロゴ
メインメニュー
サブメニュー
コピーライト
*/


/* レイアウト --------------------------------------------------- */

.Footer {
border-top: 1px solid var(--c-2);
}

.Footer_Inner {
display: flex;
}

@media only screen and (max-width: 767px) {

	.Footer {
	margin-top: 6rem;
	padding-top: 1rem;
	}

	.Footer_Inner {
	flex-flow: column;
	padding: 0 2.5rem 3rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Footer {
	margin-top: 12rem;
	}

	.Footer_Inner {
	flex-wrap: wrap;
	padding: 6rem 6rem 3rem;
	}

}


/* ロゴ --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.Footer_Logo {
	order: 3;
	margin-top: 5rem;
	}

	.Footer_ServiceName {
	width: 18.2rem;
	}

	/* 英語版 */
	.Lang_en .Footer_ServiceName {
	width: 26rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Footer_Logo {
	margin-top: 0.5rem;
	}

	/* 英語版 */
	.Lang_en .Footer_Logo {
	margin-top: 1.2rem;
	}

	.Footer_ServiceName {
	width: 22.8rem;
	}

	/* 英語版 */
	.Lang_en .Footer_ServiceName {
	width: 34rem;
	}

}

@media print, screen and (min-width: 1300px) {

	/* 英語版 */
	.Lang_en .Footer_ServiceName {
	width: 38rem;
	}

}


/* メインメニュー --------------------------------------------------- */

.Footer_Menu a {
display: block;
}

a.Footer_Menu_Parent {
font-weight: bold;
color: var(--c-1);
}

.Footer_Menu_Child a {
font-feature-settings: "palt";
letter-spacing: 0.2em;
color: #000;
}

/* 英語版 */
.Lang_en .Footer_Menu_Child a {
letter-spacing: 0.1em;
}

@media only screen and (max-width: 767px) {

	.Footer_Menu {
	order: 2;
	}

	a.Footer_Menu_Parent {
	position: relative;
	padding: 2rem 0.8rem;
	border-top: 1px solid var(--c-2);
	}

	.Footer_Menu_L_Upper .Footer_Menu_Unit:first-child a.Footer_Menu_Parent {
	border-top: none;
	}

	.Footer_Menu_Unit:has(+ .Footer_Menu_Unit_Sub) a.Footer_Menu_Parent {
	border-bottom: 1px solid var(--c-2);
	}

	/* プラス・マイナス */
	a.Footer_Menu_Parent::before,
	a.Footer_Menu_Parent::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 1.5rem;
	height: 0.1rem;
	background-color: var(--c-1);
	content: "";
	}
	
	a.Footer_Menu_Parent::after {
	transform: rotate(90deg);
	}
	
	a.Footer_Menu_Parent.is_Opened:after {
	display: none;
	}

	/* 矢印 */
	a.Footer_Menu_Parent.no_Child::before {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 0.8rem;
	height: 0.8rem;
	border-top: 1px solid var(--c-link);
	border-right: 1px solid var(--c-link);
	background-color: transparent;
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center;
	content: "";
	}
	
	a.Footer_Menu_Parent.no_Child::after {
	position: absolute;
	top: 50%;
	right: 1.5rem;
	width: 1.8rem;
	height: 0.1rem;
	background-color: var(--c-link);
	transform: translateY(-50%);
	content: "";
	}

	/* 子メニュー */
	.Footer_Menu_Child {
	display: none;
	}

	.Footer_Menu_Child a {
	position: relative;
	padding: 1.8rem 3rem 1.8rem 4.4rem;
	border-top: 1px solid #fff;
	font-size: 1.3rem;
	line-height: 1.6;
	font-weight: bold;
	background-color: #f0f5f6;
	}

	/* 矢印 */
	.Footer_Menu_Child a::before {
	position: absolute;
	left: 2.4rem;
	top: 2.8rem;
	width: 0.8rem;
	height: 0.8rem;
	border-top: 1px solid var(--c-link);
	border-right: 1px solid var(--c-link);
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center;
	content: "";
	}
	
	.Footer_Menu_Child a::after {
	position: absolute;
	left: 1.5rem;
	top: 2.8rem;
	width: 1.8rem;
	height: 0.1rem;
	background-color: var(--c-link);
	transform: translateY(-50%);
	content: "";
	}

	/* サブ */
	.Footer_Menu_Unit_Sub {
	margin-top: 2rem;
	}

	.Footer_Menu_Unit_Sub a {
	position: relative;
	padding: 0.8rem 0 0.8rem 3.4rem;
	font-size: 1.5rem;
	line-height: 1.4;
	}

	/* 矢印 */
	.Footer_Menu_Unit_Sub a::before {
	position: absolute;
	left: 1.4rem;
	top: 1.8rem;
	width: 0.8rem;
	height: 0.8rem;
	border-top: 1px solid var(--c-link);
	border-right: 1px solid var(--c-link);
	transform: translateY(-50%) rotate(45deg);
	transform-origin: center;
	content: "";
	}
	
	.Footer_Menu_Unit_Sub a::after {
	position: absolute;
	left: 0.4rem;
	top: 1.8rem;
	width: 1.8rem;
	height: 0.1rem;
	background-color: var(--c-link);
	transform: translateY(-50%);
	content: "";
	}

}

@media print, screen and (min-width: 768px) {

	.Footer_Menu {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 4rem;
	width: 65%;
	margin-left: auto;
	}

	.Footer_Menu_L_Upper {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4rem;
	}

	.Footer_Menu_L_Lower {
	margin-top: 4rem;
	}

	.Footer_Menu_Unit_Others {
	margin-top: 2rem;
	}

	a.Footer_Menu_Parent {
	padding-top: 1.2rem;
	padding-bottom: 1.2rem;
	border-bottom: 1px solid var(--c-1);
	font-size: 1.6rem;
	}

	/* 子メニュー */
	.Footer_Menu_Child {
	display: block !important;
	margin-top: 1.6rem;
	}

	.Footer_Menu_Child_Col2 {
	columns: 2;
	column-gap: 4rem; 
	}

	.Footer_Menu_Child a {
	padding: 0.8rem 0;
	font-size: 1.4rem;
	line-height: 1.6;
	}

	/* サブ */
	.Footer_Menu_Unit_Sub {
	margin-top: 2rem;
	}

	.Footer_Menu_Unit_Sub a {
	padding: 0.3rem 0;
	font-size: 1.4rem;
	line-height: 1.4;
	}

}

@media (hover: hover) {

	a.Footer_Menu_Parent:hover {
	color: #000;
	}

	.Footer_Menu_Child a:hover {
	color: var(--c-1);
	}

	.Footer_Menu_Unit_Sub a:hover {
	color: #000;
	}

}


/* サブメニュー --------------------------------------------------- */

.Footer_SubMenu {
display: flex;
width: 100%;
}

.Footer_SubMenu a {
color: #000;
}

@media only screen and (max-width: 767px) {

	.Footer_SubMenu {
	order: 2;
	flex-flow: column;
	gap: 2rem;
	margin-top: 2.2rem;
	padding-left: 0.8rem;
	padding-top: 3rem;
	border-top: 1px solid var(--c-2);
	}

	.Footer_SubMenu a {
	font-size: 1.3rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Footer_SubMenu {
	align-content: center;
	gap: 3rem;
	width: 100%;
	margin-top: 6rem;
	}

	.Footer_SubMenu a {
	font-size: 1.2rem;
	}

}


@media (hover: hover) {

	.Footer_SubMenu a:hover {
	color: var(--c-1);
	}

}


/* コピーライト --------------------------------------------------- */

.Footer_Copyright {
letter-spacing: 0.04em;
background-color: var(--c-2);
}

@media only screen and (max-width: 767px) {

	.Footer_Copyright {
	padding: 1.8rem 2.5rem;
	font-size: 1rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Footer_Copyright {
	padding: 2.2rem 6rem;
	font-size: 1.1rem;
	}

}



/* ■ ページの先頭へ ==================================================================================== */

.PageTop {
display: none;
position: fixed;
z-index: 3000;
}

.PageTop a {
display: block;
text-indent: -9999px;
background-image: url(/assets/img/common/icon/Icon_PageTop.png);
background-repeat: no-repeat;
background-position: center center;
}

@media only screen and (max-width: 767px) {

	.PageTop {
	right: 1rem;
	bottom: 3rem;
	}

	.PageTop a {
	width: 4rem;
	height: 4rem;
	background-size: 2rem auto;
	}

}

@media print, screen and (min-width: 768px) {

	.PageTop {
	right: 2rem;
	bottom: 3rem;
	}

	.PageTop a {
	width: 6rem;
	height: 6rem;
	background-size: 2.6rem auto;
	}

}



/* ■ 見出し ==================================================================================== */

.MdsH2,
.MdsH3,
.MdsH4,
.MdsH5 {
font-weight: bold;
font-feature-settings: "palt";
letter-spacing: 0.1em;
}

/* 英語版 */
.Lang_en .MdsH2,
.Lang_en .MdsH3,
.Lang_en .MdsH4,
.Lang_en .MdsH5 {
letter-spacing: 0.05em;
}

/* h3 */
.MdsH3 {
border-bottom: 1px solid var(--c-3);
}

/* h4 */
.MdsH4 {
position: relative;
}

.MdsH4::before {
position: absolute;
left: 0;
background-color: var(--c-2);
content: "";
}

/* h5 */
.MdsH5 {
}

@media only screen and (max-width: 767px) {

	/* h2 */
	.MdsH2 {
	padding: 1.6rem 0 1.6rem 1.6rem;
	border-left: 4px solid var(--c-1);
	font-size: 2.4rem;
	line-height: 1.4;
	}

	/* h3 */
	.MdsH3 {
	padding-bottom: 1.1rem;
	font-size: 2rem;
	line-height: 1.4;
	}

	/* h4 */
	.MdsH4 {
	margin-top: 1.5rem;
	padding-left: 2rem;
	font-size: 1.5rem;
	line-height: 1.4;
	}

	.MdsH4::before {
	top: 0.45rem;
	width: 1.3rem;
	height: 1.3rem;
	}

	/* h5 */
	.MdsH5 {
	margin-top: 1.5rem;
	font-size: 1.4rem;
	line-height: 1.4;
	}

}

@media print, screen and (min-width: 768px) {

	/* h2 */
	.MdsH2 {
	padding: 2.7rem 0 2.7rem 2rem;
	border-left: 5px solid var(--c-1);
	font-size: 3.2rem;
	line-height: 1.4;
	}

	/* h3 */
	.MdsH3 {
	padding-bottom: 2rem;
	font-size: 2.6rem;
	line-height: 1.4;
	}

	/* h4 */
	.MdsH4 {
	margin-top: 2.5rem;
	padding-left: 2.6rem;
	font-size: 2rem;
	line-height: 1.5;
	}

	.MdsH4::before {
	top: 0.75rem;
	width: 1.6rem;
	height: 1.6rem;
	}

	/* h5 */
	.MdsH5 {
	margin-top: 2.5rem;
	font-size: 1.8rem;
	line-height: 1.8;
	}

}



/* ■ リード ==================================================================================== */

@media only screen and (max-width: 767px) {

	.LeadMain {
	margin-top: 2.4em;
	font-size: var(--f-m);
	line-height: 2;
	}

	/* 英語版 */
	.Lang_en .LeadMain {
	line-height: 1.7;
	}

	.Lead {
	margin-top: 1.5rem;
	font-size: var(--f-m);
	line-height: 2;
	}

	/* 英語版 */
	.Lang_en .Lead {
	line-height: 1.7;
	}

	.Lead_Cap {
	margin-top: 0.6rem;
	font-size: 1.3rem;
	line-height: 1.6;
	}

}

@media print, screen and (min-width: 768px) {

	.LeadMain {
	margin-top: 4em;
	font-size: var(--f-m);
	line-height: 2.2;
	}

	/* 英語版 */
	.Lang_en .LeadMain {
	line-height: 2;
	}

	.Lead {
	margin-top: 2.4rem;
	font-size: var(--f-m);
	line-height: 2.2;
	}

	/* 英語版 */
	.Lang_en .Lead {
	line-height: 2;
	}

	.Lead_Cap {
	margin-top: 1.4rem;
	font-size: 1.5rem;
	line-height: 1.6;
	}

}



/* ■ 画像 ==================================================================================== */

.Photo {
margin-left: auto;
margin-right: auto;
}

.ImgBorder {
border: 1px solid var(--c-5);
}

.ImgBorder_Btm {
border-bottom: 1px solid var(--c-5);
}

@media only screen and (max-width: 767px) {

	.Photo {
	margin-top: 1.8rem;
	}

	/* 横スクロール表示 */
	.PhotoScroll {
	padding-bottom: 0.5rem;
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	}

	.PhotoScroll img {
	max-width: 100%;
	min-width: 60rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Photo {
	margin-top: 3rem;
	}

}



/* ■ セクション ==================================================================================== */

@media only screen and (max-width: 767px) {

	.SectionMain {
	padding-top: 4rem;
	}

	.SectionSub {
	padding-top: 3rem;
	}

}

@media print, screen and (min-width: 768px) {

	.SectionMain {
	padding-top: 8rem;
	}

	.SectionSub {
	padding-top: 5rem;
	}

}



/* ■ 関連情報 ==================================================================================== */

.RelatedInfo_Mds {
background-color: var(--c-2);
}

.RelatedInfo_List {
display: grid;
}

.RelatedInfo_List li {
display: grid;
align-items: center;
grid-template-rows: subgrid;
grid-row: span 1;
border-bottom: 1px solid var(--c-3);
}

.RelatedInfo_List a {
position: relative;
}

/* 矢印 */
.RelatedInfo_List a::before {
position: absolute;
top: 50%;
right: 1rem;
width: 8px;
height: 8px;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: translateY(-50%) rotate(45deg);
transform-origin: center;
content: "";
}

.RelatedInfo_List a::after {
position: absolute;
top: 50%;
right: 1rem;
height: 1px;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

@media only screen and (max-width: 767px) {

	.RelatedInfo {
	margin-top: 4rem;
	}

	.RelatedInfo_Mds {
	padding: 1.2rem 1.2rem;
	font-size: 1.5rem;
	line-height: 1.4;
	}

	.RelatedInfo_List {
	grid-template-columns: repeat(1, 1fr);
	}

	.RelatedInfo_List a {
	padding: 1.8rem 5rem 1.8rem 1rem;
	font-size: 1.4rem;
	line-height: 1.5;
	background-color: #fff;
	}

	/* 矢印 */
	.RelatedInfo_List a::after {
	width: 1.8rem;
	}

}

@media print, screen and (min-width: 768px) {

	.RelatedInfo {
	margin-top: 10rem;
	}

	.RelatedInfo_Mds {
	padding: 2rem 2rem;
	font-size: 1.8rem;
	}

	.RelatedInfo_List {
	grid-template-columns: repeat(2, 1fr);
	gap: 0 4rem;
	}

	.RelatedInfo_List a {
	padding: 1.9rem 4rem 1.9rem 1rem;
	font-size: 1.6rem;
	line-height: 1.5;
	background-color: #fff;
	}

	/* 矢印 */
	.RelatedInfo_List a::after {
	width: 2.2rem;
	}

}



/* ■ お問い合わせ欄 ==================================================================================== */

.ContactInfo {
border: 1px solid var(--c-2);
background-color: var(--c-4);
}

@media only screen and (max-width: 767px) {

	.ContactInfo {
	margin-top: 5rem;
	padding: 2.4rem 1.8rem;
	}

	.ContactInfo_Mds {
	font-size: 2rem;
	}

	.ContactInfo_Department {
	margin-top: 2.2rem;
	font-size: 1.5rem;
	line-height: 1.5;
	}

	.ContactInfo_Lead {
	margin-top: 1rem;
	font-size: var(--f-m);
	line-height: 1.5;
	}

}

@media print, screen and (min-width: 768px) {

	.ContactInfo {
	margin-top: 8rem;
	padding: 4rem 4rem;
	}

	.ContactInfo_Mds {
	font-size: 2.4rem;
	}

	.ContactInfo_Department {
	margin-top: 2.2rem;
	font-size: 1.8rem;
	line-height: 1.5;
	}

	.ContactInfo_Lead {
	margin-top: 1rem;
	font-size: var(--f-m);
	line-height: 1.5;
	}

}



/* ■ 戻るリンク ==================================================================================== */

@media only screen and (max-width: 767px) {

	.Link_Back {
	margin-top: 5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Link_Back {
	margin-top: 8rem;
	}

}



/* ■ カラム ==================================================================================== */

/*
成り行き
固定
調整
*/


.Cols {
display: grid;
margin-top: var(--gap-int);
}


/* 成り行き --------------------------------------------------- */

.ColAuto3 {
grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
}

.ColAuto4 {
grid-template-columns: repeat(auto-fit, minmax(24rem, 1fr));
}


/* 固定 --------------------------------------------------- */

.Col2 {
grid-template-columns: repeat(2, 1fr);
}

.Col3 {
grid-template-columns: repeat(3, 1fr);
}

.Col4 {
grid-template-columns: repeat(4, 1fr);
}

.Col5 {
grid-template-columns: repeat(5, 1fr);
}

.Col6 {
grid-template-columns: repeat(6, 1fr);
}


@media only screen and (max-width: 767px) {

	.Cols {
	gap: 1.6rem;
	}

	.Col2_SP {
	grid-template-columns: repeat(2, 1fr);
	}

	.Col3_SP {
	grid-template-columns: repeat(3, 1fr);
	}

	.Col4_SP {
	grid-template-columns: repeat(4, 1fr);
	}

	.Col5_SP {
	grid-template-columns: repeat(5, 1fr);
	}

	.Col6_SP {
	grid-template-columns: repeat(6, 1fr);
	}

	/* 2対1 */
	.Col2v1 {
	grid-template-columns: 1fr;
	}

	/* 1対2 */
	.Col1v2 {
	grid-template-columns: 1fr;
	}

}

@media print, screen and (min-width: 768px) {

	.Cols {
	gap: 4rem;
	}

	.Col2_PC {
	grid-template-columns: repeat(2, 1fr);
	}

	.Col3_PC {
	grid-template-columns: repeat(3, 1fr);
	}

	.Col4_PC {
	grid-template-columns: repeat(4, 1fr);
	}

	.Col5_PC {
	grid-template-columns: repeat(5, 1fr);
	}

	.Col6_PC {
	grid-template-columns: repeat(6, 1fr);
	}

	/* 2対1 */
	.Col2v1 {
	grid-template-columns: 2fr 1fr;
	}

	/* 1対2 */
	.Col1v2 {
	grid-template-columns: 1fr 2fr;
	}

}


/* 調整 --------------------------------------------------- */

.Cols_Align_C {
align-items: center;
}

.is_Span2 {
grid-column: span 2;
}

.is_Span3 {
grid-column: span 3;
}

.is_Span4 {
grid-column: span 4;
}

@media only screen and (max-width: 767px) {

	.Cols_Table_Adjust {
	gap: 0;
	}

	.Cols_Table_Adjust .ColItem:not(:first-of-type) th,
	.Cols_Table_Adjust .ColItem:not(:first-of-type) td {
	border-top: 0;
	}

	.is_Span2_SP {
	grid-column: span 2;
	}

	.is_Span3_SP {
	grid-column: span 3;
	}

	.is_Span4_SP {
	grid-column: span 4;
	}

}

@media print, screen and (min-width: 768px) {

	.is_Span2_PC {
	grid-column: span 2;
	}

	.is_Span3_PC {
	grid-column: span 3;
	}

	.is_Span4_PC {
	grid-column: span 4;
	}

}



/* ■ リスト各種 ==================================================================================== */

/*
ディスク：中
ディスク：小
米印：中
米印：小
連番：中
連番：小
連番米印：小
入れ子調整
*/

.List {
margin-top: var(--gap-int);
}

.List li {
position: relative;
}

.List li::before {
display: inline-block;
position: absolute;
}

/* ディスク：中（ListDisc） */
.ListDisc li::before {
border-radius: 100%;
background-color: var(--c-1);
content: '';
}

/* ディスク：小（ListDiscS） */
.ListDiscS li::before {
border-radius: 100%;
background-color: var(--c-1);
content: '';
}

/* 米印：中（ListKome） */
.ListKome li::before {
content: '※';
}

/* 英語版 */
.Lang_en .ListKome li::before {
content: '*';
}

/* 米印：小（ListKomeS） */
.ListKomeS li::before {
content: '※';
}

/* 英語版 */
.Lang_en .ListKomeS li::before {
content: '*';
}

/* 連番：中（ListNum） */
.ListNum {
counter-reset: ListNum;
}

.ListNum li::before {
counter-increment: ListNum;
content: counter(ListNum)".";
}

/* 連番：小（ListNumS） */
.ListNumS {
counter-reset: ListNumS;
}

.ListNumS li::before {
counter-increment: ListNumS;
content: counter(ListNumS)".";
}

/* 連番米印：小（ListKomeNumS） */
.ListKomeNumS {
counter-reset: ListKomeNumS;
}

.ListKomeNumS li::before {
counter-increment: ListKomeNumS;
content: "※"counter(ListKomeNumS);
}

/* 英語版 */
.Lang_en .ListKomeNumS li::before {
counter-increment: ListKomeNumS;
content: "*"counter(ListKomeNumS);
}

@media only screen and (max-width: 767px) {

	.ListNoMarker li,
	.ListDisc li,
	.ListKome li,
	.ListNum li {
	font-size: var(--f-m);
	line-height: 1.6;
	}

	.ListNoMarker li:not(:first-child),
	.ListDisc li:not(:first-child),
	.ListKome li:not(:first-child),
	.ListNum li:not(:first-child) {
	margin-top: 0.8rem;
	}

	.ListDiscS li,
	.ListKomeS li,
	.ListNumS li,
	.ListKomeNumS li {
	font-size: var(--f-s);
	line-height: 1.7;
	}

	.ListDiscS li:not(:first-child),
	.ListKomeS li:not(:first-child),
	.ListNumS li:not(:first-child),
	.ListKomeNumS li:not(:first-child) {
	margin-top: 0.75rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListNoMarker li,
	.ListDisc li,
	.ListKome li,
	.ListNum li {
	font-size: var(--f-m);
	line-height: 1.8;
	}

	.ListNoMarker li:not(:first-child),
	.ListDisc li:not(:first-child),
	.ListKome li:not(:first-child),
	.ListNum li:not(:first-child) {
	margin-top: 0.8rem;
	}

	.ListDiscS li,
	.ListKomeS li,
	.ListNumS li,
	.ListKomeNumS li {
	font-size: var(--f-s);
	line-height: 1.7;
	}

	.ListDiscS li:not(:first-child),
	.ListKomeS li:not(:first-child),
	.ListNumS li:not(:first-child),
	.ListKomeNumS li:not(:first-child) {
	margin-top: 0.75rem;
	}

}


/* マーカーなし --------------------------------------------------- */


/* ディスク：中 --------------------------------------------------- */

.ListDisc li > .ListDisc li::before {
width: 0.8rem;
height: 0.1rem;
border-radius: 0;
}

@media only screen and (max-width: 767px) {

	.ListDisc li {
	padding-left: 1.7rem;
	}

	.ListDisc li::before {
	left: 0.2rem;
	top: 0.7rem;
	width: 0.8rem;
	height: 0.8rem;
	}

	/* 入れ子時 */
	.ListDisc li > .ListDisc li {
	margin-top: 0.8rem;
	padding-left: 1.8rem;
	}

	.ListDisc li > .ListDisc li::before {
	top: 1rem;
	}

	/* Android */
	.Android .ListDisc li::before {
	top: 0.9rem;
	}

	.Android .ListDisc li > .ListDisc li::before {
	top: 1.3rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListDisc li {
	padding-left: 1.8rem;
	}

	.ListDisc li::before {
	left: 0.2rem;
	top: 0.9rem;
	width: 0.8rem;
	height: 0.8rem;
	}

	.Mac .ListDisc li::before {
	top: 1rem;
	}

	/* 入れ子時 */
	.ListDisc li > .ListDisc li {
	margin-top: 0.8rem;
	padding-left: 2rem;
	}

	.ListDisc li > .ListDisc li::before {
	left: 0.3rem;
	top: 1.3rem;
	}

}

/* Firefox */
@-moz-document url-prefix() {

	.ListDisc li::before {
	top: 1rem;
	}

	.Mac .ListDisc li::before {
	top: 1.1rem;
	}

	/* 入れ子時 */
	.ListDisc li > .ListDisc li::before {
	top: 1.4rem;
	}

}


/* ディスク：小（ListDiscS） --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.ListDiscS li {
	padding-left: 1.6rem;
	}

	.ListDiscS li::before {
	left: 0.4rem;
	top: 0.7rem;
	width: 0.6rem;
	height: 0.6rem;
	}

	/* Android */
	.Android .ListDiscS li:before {
	top: 0.7rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListDiscS li {
	padding-left: 1.6rem;
	}

	.ListDiscS li::before {
	left: 0.4rem;
	top: 0.8rem;
	width: 0.6rem;
	height: 0.6rem;
	}

	.Mac .ListDiscS li::before {
	top: 0.9rem;
	}

	/* Safari */
	_::-webkit-full-page-media,
	_:future, :root .ListDiscS li::before {
	top: 0.8rem;
	}

}


/* 米印：中（ListKome） --------------------------------------------------- */

.ListKome li:before {
left: 0.2rem;
background-color: inherit;
}

@media only screen and (max-width: 767px) {

	.ListKome li {
	padding-left: 1.7rem;
	}

	.ListKome li::before {
	top: -0.3rem;
	font-size: 1.5rem;
	}

	/* Android */
	.Android .ListKome li::before {
	top: 0;
	}

	/* 英語版 */
	.Lang_en .ListKome li::before {
	top: -0.4rem;
	font-size: 2.2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListKome li {
	padding-left: 2.2rem;
	}

	.Mac .ListKome li {
	padding-left: 1.8rem;
	}

	.ListKome li::before {
	top: 0;
	}

	.Mac .ListKome li::before {
	top: -0.15rem;
	}

	/* 英語版 */
	.Lang_en .ListKome li::before {
	top: -0.2rem;
	font-size: 2.2rem;
	}

}


/* 米印：小（ListKomeS） --------------------------------------------------- */

.ListKomeS li::before {
left: 0.2rem;
background-color: inherit;
}

@media only screen and (max-width: 767px) {

	.ListKomeS li {
	padding-left: 1.6rem;
	}

	.ListKomeS li::before {
	top: -0.15rem;
	}

	/* Android */
	.Android .ListKomeS li::before {
	top: 0;
	}

	/* 英語版 */
	.Lang_en .ListKomeS li::before {
	top: -0.1rem;
	font-size: 1.6rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListKomeS li {
	padding-left: 2rem;
	}

	.Mac .ListKomeS li {
	padding-left: 1.5rem;
	}

	.ListKomeS li::before {
	top: 0;
	}

	.Mac .ListKomeS li::before {
	top: -0.1rem;
	}

	/* 英語版 */
	.Lang_en .ListKomeS li::before {
	top: -0.1rem;
	font-size: 1.8rem;
	}

}


/* 連番：中（ListNum） --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.ListNum {
	padding-left: 0.5rem;
	}

	.ListNum li {
	padding-left: 1.8rem;
	}

	.ListNum li::before {
	left: 0.1rem;
	top: -0.1rem;
	}

	.ListNum li:nth-child(n+10)::before {
	left: -0.7rem;
	}

	/* 入れ子時 */
	.ListNum li > .ListNum li {
	margin-top: 0.8rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListNum {
	padding-left: 1.2rem;
	}

	.ListNum li {
	padding-left: 1rem;
	}

	.ListNum li::before {
	left: -0.8rem;
	top: 0;
	}

	.ListNum li:nth-child(n+10)::before {
	left: -1.6rem;
	}

	/* 入れ子時 */
	.ListNum li > .ListNum li {
	margin-top: 0.8rem;
	}

}


/* 連番：小（ListNumS） --------------------------------------------------- */

.ListNumS {
padding-left: 0.4rem;
}

@media only screen and (max-width: 767px) {

	.ListNumS li {
	padding-left: 1.7rem;
	}

	.ListNumS li::before {
	left: 0.1rem;
	top: 0;
	}

	.ListNumS li:nth-child(n+10)::before {
	left: -0.7rem;
	}

	/* 入れ子時 */
	.ListNum li > .ListNumS li {
	margin-top: 0.8rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListNumS li {
	padding-left: 1.7rem;
	}

	.ListNumS li::before {
	left: 0.1rem;
	top: 0;
	}

	.ListNumS li:nth-child(n+10)::before {
	left: -0.45rem;
	}

	/* 入れ子時 */
	.ListNum li > .ListNumS li {
	margin-top: 0.8rem;
	}

}


/* 連番米印：小（ListKomeNumS） --------------------------------------------------- */

.ListKomeNumS {
padding-left: 0.4rem;
}

.ListKomeNumS li::before {
letter-spacing: 0.1em;
}

@media only screen and (max-width: 767px) {

	.ListKomeNumS li {
	padding-left: 2.4rem;
	}

	.ListKomeNumS li::before {
	left: 0.1rem;
	top: 0;
	}

	.ListKomeNumS li:nth-child(n+10)::before {
	left: -0.7rem;
	}

}

@media print, screen and (min-width: 768px) {

	.ListKomeNumS li {
	padding-left: 3rem;
	}

	.Mac .ListKomeNumS li {
	padding-left: 2.4rem;
	}

	.ListKomeNumS li::before {
	left: 0.1rem;
	top: 0;
	}

	.ListKomeNumS li:nth-child(n+10)::before {
	left: -0.45rem;
	}

}


/* インライン表示 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.List.ListInline_SP li {
	display: inline-block;
	margin-right: 1rem;
	}

}

@media print, screen and (min-width: 768px) {

	.List.ListInline_PC li {
	display: inline-block;
	margin-right: 1rem;
	}

}


/* 入れ子調整 --------------------------------------------------- */

.List li > .List {
margin-top: 0;
}



/* ■ 表組み ==================================================================================== */

.Table1,
.Table2 {
margin-top: var(--gap-int);
}

.Table1 {
table-layout: fixed;
}

.Table1 th,
.Table2 th,
.Table1 td,
.Table2 td {
padding: 0.75rem 1.5rem;
border: 1px solid var(--c-3);
line-height: 1.6;
}

.Table1 th,
.Table2 th {
background-color: #cce6f6;
}

.Table1 td,
.Table2 td {
background-color: #fff;
}

.Table1 th {
text-align: left;
}

/* 均等幅 */
.TableEqual {
table-layout: fixed;
}

@media only screen and (max-width: 767px) {

	.Table1 th,
	.Table2 th,
	.Table1 td,
	.Table2 td {
	padding: 1.6rem 1.6rem;
	font-size: 1.3rem;
	}

	.Table1 th {
	width: 40%;
	}

	/* 縦並び */
	.Table1_SP th,
	.Table1_SP td {
	display: block;
	}

	.Table1_SP tr:not(:first-of-type) th,
	.Table1_SP td {
	border-top: none;
	}

	.Table1_SP th {
	width: 100%;
	}

	/* 横スクロール表示 */
	.TableScroll {
	padding-bottom: 1rem;
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	}

	.TableScroll table {
	min-width: 60rem;
	}

	.TableScroll th,
	.TableScroll td {
	white-space: normal;
	}

	/* 均等幅 */
	.TableEqual_SP {
	table-layout: fixed;
	}

/*
	.TableScroll .TableEqual {
	table-layout: inherit;
	}
*/

}

@media print, screen and (min-width: 768px) {

	.Table1 th,
	.Table2 th,
	.Table1 td,
	.Table2 td {
	padding: 1.6rem 1.6rem;
	font-size: 1.5rem;
	}

	.Table1 th {
	width: 30%;
	}

	/* 均等幅 */
	.TableEqual_PC {
	table-layout: fixed;
	}

}



/* ■ 記述リスト ==================================================================================== */

/*
左右
上下
*/


/* 左右 --------------------------------------------------- */

.DLHori {
margin-top: var(--gap-int);
border-top: 1px solid var(--c-5);
}

.DLHori dl {
display: flex;
border-bottom: 1px solid var(--c-5);
line-height: 1.6;
}

.DLHori dd {
flex: 1;
}

@media only screen and (max-width: 767px) {

	.DLHori dl {
	padding: 1.2rem 0;
	}

	.DLHori dt,
	.DLHori dd {
	font-size: var(--f-m);
	}

	.DLHori dt {
	width: 30%;
	}

	.DLHori dd {
	width: 70%;
	padding-left: 1.2rem;
	}

	/* 縦並び */
	.DLHori_SP dl {
	flex-flow: column;
	}

	.DLHori_SP dt,
	.DLHori_SP dd {
	width: 100%;
	}

	.DLHori_SP dd {
	margin-top: 0.4rem;
	padding-left: 0;
	}

}


@media print, screen and (min-width: 768px) {

	.DLHori dl {
	padding: 2rem 0;
	}

	.DLHori dt,
	.DLHori dd {
	font-size: var(--f-m);
	}

	.DLHori dt {
	width: 16rem;
	}

	.DLHori dd {
	padding-left: 1.2rem;
	}


}


/* 上下 --------------------------------------------------- */

.DLVert {
margin-top: var(--gap-int);
border-top: 1px solid var(--c-5);
}

.DLVert dl {
border-bottom: 1px solid var(--c-5);
line-height: 1.6;
}

@media only screen and (max-width: 767px) {

	.DLVert dl {
	padding: 1.2rem 0;
	}

	.DLVert dt,
	.DLVert dd {
	font-size: var(--f-m);
	}

	.DLVert dd {
	margin-top: 0.4rem;
	}

}

@media print, screen and (min-width: 768px) {

	.DLVert dl {
	padding: 2rem 0;
	}

	.DLVert dt,
	.DLVert dd {
	font-size: var(--f-m);
	}

	.DLVert dd {
	margin-top: 0.4rem;
	}

}



/* ■ ページ内リンク ==================================================================================== */

.InPageLink {
display: flex;
flex-wrap: wrap;
border-top: 1px solid var(--c-1);
}

@media only screen and (max-width: 767px) {

	.InPageLink {
	gap: 1.2rem;
	margin-top: 4rem;
	padding-top: 1.6rem;
	}

}

@media print, screen and (min-width: 768px) {

	.InPageLink {
	gap: 2rem;
	margin-top: 8rem;
	padding-top: 2rem;
	}

}



/* ■ ボタンリスト ==================================================================================== */

.BtnList a {
display: flex;
align-items: center;
}

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

	.BtnList {
	gap: 2rem 4rem;
	}

}



/* ■ リンクリスト ==================================================================================== */

.LinkList_1,
.LinkList_2,
.LinkList_3 {
display: grid;
margin-top: var(--gap-int);
}

.LinkList_1 a {
display: block;
font-feature-settings: "palt";
letter-spacing: 0.1em; 
}

.LinkList_3 {
border-top: 1px solid var(--c-3);
}

.LinkList_1 li,
.LinkList_2 li {
border-bottom: 1px solid var(--c-5);
}

.LinkList_3 li {
border-bottom: 1px solid var(--c-3);
}

.LinkList_2 li,
.LinkList_3 li {
display: flex;
align-items: center;
}

.LinkList_2 a,
.LinkList_3 a {
display: block;
position: relative;
width: 100%;
font-size: var(--f-m);
font-weight: bold;
}

.LinkList_3 a {
color: #000;
}

/* 矢印 */
.LinkList_2 a::before,
.LinkList_3 a::before {
position: absolute;
top: 50%;
width: 8px;
height: 8px;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: translateY(-50%) rotate(45deg);
transform-origin: center;
content: "";
}

.LinkList_2 a::after,
.LinkList_3 a::after {
position: absolute;
top: 50%;
height: 1px;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

/* 別窓 */
a.LinkList_NewWin::before,
.LinkList_2 a.is_NewWin::before,
.LinkList_3 a.is_NewWin::before {
display: none;
}

a.LinkList_NewWin::after,
.LinkList_2 a.is_NewWin::after,
.LinkList_3 a.is_NewWin::after {
position: absolute;
background-color: inherit;
background-image: url(/assets/img/common/icon/Icon_NewWin.png);
background-size: cover;
content: '';
}

@media only screen and (max-width: 767px) {

	.LinkList_1,
	.LinkList_2 {
	grid-template-columns: repeat(1, 1fr);
	}

	.LinkList_1 li {
	padding: 1.6rem 0;
	}

	/* 矢印あり */
	.LinkList_2 a,
	.LinkList_3 a {
	padding: 1.6rem 5rem 1.6rem 1rem;
	line-height: 1.6;
	}

	.LinkList_2 a::after,
	.LinkList_3 a::after {
	width: 1.8rem;
	}

	.LinkList_2 a::before,
	.LinkList_2 a::after,
	.LinkList_3 a::before,
	.LinkList_3 a::after {
	right: 1.4rem;
	}

	/* 別窓 */
	a.LinkList_NewWin::after,
	.LinkList_2 a.is_NewWin::after,
	.LinkList_3 a.is_NewWin::after {
	right: 1.6rem;
	width: 1.3rem;
	height: 1.1rem;
	}

}

@media print, screen and (min-width: 768px) {

	.LinkList_1,
	.LinkList_2 {
	grid-template-columns: repeat(2, 1fr);
	gap: 0 4rem;
	}

	.LinkList_1 li {
	padding: 2rem 0;
	}

	.LinkList_3 {
	grid-template-columns: repeat(1, 1fr);
	}

	/* 矢印あり */
	.LinkList_2 a,
	.LinkList_3 a {
	padding: 1.8rem 5rem 1.8rem 1rem;
	line-height: 1.6;
	}

	.LinkList_3 a {
	font-weight: 500;
	}

	.LinkList_2 a::after,
	.LinkList_3 a::after {
	width: 2.2rem;
	}

	.LinkList_2 a::before,
	.LinkList_2 a::after,
	.LinkList_3 a::before,
	.LinkList_3 a::after {
	right: 2.1rem;
	}

	/* 別窓 */
	a.LinkList_NewWin::after,
	.LinkList_2 a.is_NewWin::after,
	.LinkList_3 a.is_NewWin::after {
	right: 2.4rem;
	width: 1.4rem;
	height: 1.2rem;
	}

}

@media (hover: hover) {

	.LinkList_3 a:hover {
	color: var(--c-link);
	}

}



/* ■ 目次メニュー ==================================================================================== */

.IndexMenu a {
display: grid;
grid-template-rows: subgrid;
grid-row: span 2;
gap: 0;
position: relative;
border: 1px solid var(--c-1);
background-color: #fff;
}

.IndexMenu_LeadUnit {
border-top: 1px solid var(--c-3);
}

.IndexMenu_Mds {
font-weight: bold;
}

.IndexMenu_Lead {
color: #000;
}

/* 矢印 */
.IndexMenu a::before {
position: absolute;
width: 0.8rem;
height: 0.8rem;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: translateY(-50%) rotate(45deg);
transform-origin: center;
content: "";
}

.IndexMenu a::after {
position: absolute;
height: 0.1rem;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

/* 別窓 */
a.IndexMenu_NewWin::before,
.IndexMenu a.is_NewWin::before {
display: none;
}

a.IndexMenu_NewWin::after,
.IndexMenu a.is_NewWin::after {
position: absolute;
background-color: inherit;
background-image: url(/assets/img/common/icon/Icon_NewWin.png);
background-size: cover;
content: '';
}

@media only screen and (max-width: 767px) {

	.IndexMenu_Wrap {
	padding-top: 2rem;
	}

	.IndexMenu a {
	padding: 1.6rem 1.6rem 2rem;
	}

	.IndexMenu_Mds {
	padding-right: 4rem;
	font-size: 1.5rem;
	line-height: 1.6;
	}

	.IndexMenu_LeadUnit {
	margin-top: 1.6rem;
	padding-top: 1.6rem;
	}

	.IndexMenu_Lead {
	font-size: 1.3rem;
	line-height: 1.7;
	}

	/* 矢印 */
	.IndexMenu a::before {
	right: 2.1rem;
	top: 2.8rem;
	}

	.IndexMenu a::after {
	right: 2.1rem;
	top: 2.8rem;
	width: 2.2rem;
	}

	/* 別窓 */
	a.IndexMenu_NewWin::after,
	.IndexMenu a.is_NewWin::after {
	right: 2.4rem;
	width: 1.3rem;
	height: 1.1rem;
	}


}

@media print, screen and (min-width: 768px) {

	.IndexMenu_Wrap {
	padding-top: 7rem;
	}

	.IndexMenu a {
	padding: 2.5rem 3rem 3rem;
	}

	.IndexMenu_Mds {
	padding-right: 4rem;
	padding-bottom: 2rem;
	font-size: 1.8rem;
	line-height: 1.6;
	}

	.IndexMenu_LeadUnit {
	padding-top: 1rem;
	}

	.IndexMenu_Lead {
	margin-top: 1.2rem;
	font-size: 1.5rem;
	line-height: 1.7;
	}

	/* 矢印 */
	.IndexMenu a::before {
	right: 3.2rem;
	top: 3.9rem;
	}

	.IndexMenu a::after {
	right: 3.2rem;
	top: 3.9rem;
	width: 2.2rem;
	}

	/* 別窓 */
	a.IndexMenu_NewWin::after,
	.IndexMenu a.is_NewWin::after {
	right: 3.4rem;
	width: 1.4rem;
	height: 1.2rem;
	}

}

@media (hover: hover) {

	.IndexMenu a:hover {
	background-color: var(--c-hover-bg);
	}

}



/* ■ パネルメニュー ==================================================================================== */

.PanelMenu li {
display: flex;
border: 1px solid var(--c-1);
}

.PanelMenu a {
display: flex;
flex-direction: column;
flex: 1;
position: relative;
background-color: #fff;
}

.PanelMenu_LeadUnit {
display: flex;
flex-direction: column;
flex: 1;
}

.PanelMenu_Mds_Sub {
font-feature-settings: "palt";
letter-spacing: 0.1em;
}

/* 英語版 */
.Lang_en .PanelMenu_Mds_Sub {
letter-spacing: 0.05em;
}

.PanelMenu_Mds {
font-weight: bold;
font-feature-settings: "palt";
letter-spacing: 0.1em;
}

/* 英語版 */
.Lang_en .PanelMenu_Mds {
letter-spacing: 0.05em;
}

.PanelMenu_Lead {
color: #000;
}

/* 矢印 */
.PanelMenu a::before {
position: absolute;
width: 0.8rem;
height: 0.8rem;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: translateY(-50%) rotate(45deg);
transform-origin: center;
content: "";
}

.PanelMenu a::after {
position: absolute;
height: 0.1rem;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

/* 別窓 */
a.PanelMenu_NewWin::before,
.PanelMenu a.is_NewWin::before {
display: none;
}

a.PanelMenu_NewWin::after,
.PanelMenu a.is_NewWin::after {
position: absolute;
background-color: inherit;
background-image: url(/assets/img/common/icon/Icon_NewWin.png);
background-size: cover;
content: '';
}

/* PDF */
.PanelMenu a.is_PDF::before {
display: none;
}

.PanelMenu a.is_PDF::after {
position: absolute;
background-color: inherit;
background-image: url(/assets/img/common/icon/Icon_PDF.png);
background-size: cover;
content: '';
}

/* Book */
.PanelMenu a.is_Book::before {
display: none;
}

.PanelMenu a.is_Book::after {
position: absolute;
background-color: inherit;
background-image: url(/assets/img/common/icon/Icon_Book.png);
background-size: cover;
content: '';
}

@media only screen and (max-width: 767px) {

	.PanelMenu_LeadUnit {
	padding: 1.6rem 1.6rem 5rem;
	}

	.PanelMenu_Mds_Sub {
	margin-bottom: 0.5rem;
	font-size: 1.3rem;
	line-height: 1.3;
	}

	.PanelMenu_Mds {
	font-size: 1.5rem;
	line-height: 1.6;
	}
	
	.PanelMenu_Lead {
	margin-top: 1.2rem;
	font-size: 1.3rem;
	line-height: 1.7;
	}

	/* 矢印 */
	.PanelMenu a::before {
	right: 2rem;
	bottom: 2rem;
	}

	.PanelMenu a::after {
	right: 2rem;
	bottom: 2.7rem;
	width: 2.2rem;
	}

	/* 別窓 */
	a.PanelMenu_NewWin::after,
	.PanelMenu a.is_NewWin::after {
	right: 2rem;
	bottom: 2rem;
	width: 1.3rem;
	height: 1.1rem;
	}

	/* PDF */
	.PanelMenu a.is_PDF::after {
	right: 2rem;
	bottom: 1rem;
	width: 1.6rem;
	height: 1.6rem;
	}

	/* Book */
	.PanelMenu a.is_Book::after {
	right: 2rem;
	bottom: 1rem;
	width: 1.5rem;
	height: 1.8rem;
	}

	/* 2カラム時調整 */
	.Col2_SP .PanelMenu_LeadUnit {
	padding: 1.2rem 1.2rem 5rem;
	}

	.Col2_SP .PanelMenu_Mds {
	font-size: 1.3rem;
	}

	/* 英語版 */
	.Lang_en .Col2_SP .PanelMenu_Mds {
	font-size: 1.3rem;
	line-height: 1.4;
	}

}

@media print, screen and (min-width: 768px) {

	.PanelMenu_LeadUnit {
	padding: 2rem 2.5rem 6rem;
	}

	.PanelMenu_Mds_Sub {
	margin-bottom: 0.5rem;
	font-size: 1.6rem;
	line-height: 1.3;
	}

	.PanelMenu_Mds {
	font-size: 1.8rem;
	line-height: 1.5;
	}

	/* 英語版 */
	.Lang_en .PanelMenu_Mds {
	line-height: 1.5;
	}
	
	.PanelMenu_Lead {
	margin-top: 1.2rem;
	font-size: 1.4rem;
	line-height: 1.7;
	}

	/* 矢印 */
	.PanelMenu a::before {
	right: 2rem;
	bottom: 2rem;
	}

	.PanelMenu a::after {
	right: 2rem;
	bottom: 2.7rem;
	width: 2.2rem;
	}

	/* 別窓 */
	a.PanelMenu_NewWin::after,
	.PanelMenu a.is_NewWin::after {
	right: 2rem;
	bottom: 2rem;
	width: 1.4rem;
	height: 1.2rem;
	}

	/* PDF */
	.PanelMenu a.is_PDF::after {
	right: 2rem;
	bottom: 1rem;
	width: 2.2rem;
	height: 2.2rem;
	}

	/* Book */
	.PanelMenu a.is_Book::after {
	right: 2rem;
	bottom: 1rem;
	width: 2rem;
	height: 2.4rem;
	}

}

@media (hover: hover) {

	.PanelMenu a:hover {
	background-color: var(--c-hover-bg);
	}

}



/* ■ アコーディオンメニュー ==================================================================================== */

.AccoMenu {
margin-top: var(--gap-int);
border-bottom: 1px solid var(--c-2);
}

.AccoMenu_Target {
display: none;
}

.AccoMenu_Mds {
border-top: 1px solid var(--c-2);
}

a.AccoMenu_Btn {
display: block;
font-weight: bold;
background-color: var(--c-4);
}

a.AccoMenu_Btn.is_Opened {
color: #000;
}

@media only screen and (max-width: 767px) {

	a.AccoMenu_Btn {
	padding: 2rem 4rem 2rem 2rem;
	font-size: 1.5rem;
	line-height: 1.6;
	}

	.AccoMenu_Target {
	padding: 2rem 2rem;
	}

}

@media print, screen and (min-width: 768px) {

	a.AccoMenu_Btn {
	padding: 2.4rem 6rem 2.4rem 2rem;
	font-size: 2rem;
	line-height: 1.6;
	}

	.AccoMenu_Target {
	padding: 2.4rem 2rem;
	}

}



/* ■ ボックス ==================================================================================== */

.Box {
margin-top: var(--gap-int);
border: 1px solid var(--c-5);
}

.Box_2 {
margin-top: var(--gap-int);
border: 3px solid var(--c-2);
}

@media only screen and (max-width: 767px) {

	.Box {
	padding: 2rem 2rem;
	}

	.Box_2 {
	padding: 2rem 2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Box {
	padding: 3rem 3rem;
	}

	.Box_2 {
	padding: 3rem 3rem;
	}

}



/* ■ テキストリンク ==================================================================================== */

.LinkFwd,
.LinkBack,
.LinkDown,
.LinkNewWin,
.LinkPDF,
.LinkFile,
.LinkBook,
.LinkMovie,
.LinkRSS {
display: inline-block;
position: relative;
line-height: 1.6;
font-weight: bold;
}

/* 進む・戻る */
.LinkFwd::before,
.LinkBack::before {
position: absolute;
width: 0.8rem;
height: 0.8rem;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: rotate(45deg);
transform-origin: center;
content: "";
}

.LinkFwd::after,
.LinkBack::after {
position: absolute;
height: 0.1rem;
background-color: var(--c-link);
content: "";
}

/* 戻る */
.LinkBack::before {
transform: rotate(225deg);
}

/* 下へ */
.LinkDown::before {
position: absolute;
left: 0;
width: 1rem;
height: 1rem;
margin-top: -0.5rem;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: rotate(135deg);
content: '';
}

/* 別窓 */
.LinkNewWin::after {
display: inline-block;
width: 1.2rem;
height: 1rem;
background-image: url(/assets/img/common/icon/Icon_NewWin.png);
background-size: cover;
content: '';
}

/* PDF */
.LinkPDF::before {
position: absolute;
left: 0;
background-image: url(/assets/img/common/icon/Icon_PDF.png);
background-size: cover;
content: '';
}

/* Book */
.LinkBook::before {
position: absolute;
background-image: url(/assets/img/common/icon/Icon_Book.png);
background-size: cover;
content: '';
}

/* Movie */
.LinkMovie::before {
position: absolute;
background-image: url(/assets/img/common/icon/Icon_Movie.png);
background-size: cover;
content: '';
}

/* PDF */
.LinkRSS::before {
position: absolute;
left: 0;
background-image: url(/assets/img/common/icon/Icon_RSS.png);
background-size: cover;
content: '';
}

/* ファイル */
.LinkFile::before {
position: absolute;
left: 0;
background-image: url(/assets/img/common/icon/Icon_File.png);
background-size: cover;
content: '';
}

@media only screen and (max-width: 767px) {

	.LinkFwd,
	.LinkBack,
	.LinkDown,
	.LinkNewWin,
	.LinkPDF,
	.LinkFile,
	.LinkBook,
	.LinkMovie,
	.LinkRSS {
	font-size: var(--f-m);
	}

	/* 進む */
	.LinkFwd {
	padding-left: 2.6rem;
	}

	.LinkFwd::before {
	left: 1rem;
	top: 0.65rem;
	}

	.LinkFwd::after {
	left: 0;
	top: 1rem;
	width: 1.8rem;
	}

	/* 進む：矢印右 */
	.LinkFwd.LinkFwd_R {
	padding-left: 0;
	padding-right: 2.6rem;
	}

	.LinkFwd.LinkFwd_R::before {
	left: inherit;
	right: 0;
	top: 0.65rem;
	}

	.LinkFwd.LinkFwd_R::after {
	left: inherit;
	right: 0;
	top: 1rem;
	width: 1.8rem;
	}

	/* 戻る */
	.LinkBack {
	padding-left: 2.6rem;
	}

	.LinkBack::before {
	left: 0;
	top: 0.65rem;
	}

	.LinkBack::after {
	left: 0;
	top: 1rem;
	width: 1.8rem;
	}

	/* 別窓 */
	.LinkNewWin::after {
	margin-left: 0.4rem;
	}

	/* 下へ */
	.LinkDown {
	padding-left: 2.4rem;
	}

	.LinkDown::before {
	left: 0.4rem;
	top: 0.8rem;
	}

	/* PDF */	
	.LinkPDF {
	padding-left: 2.6rem;
	}

	.LinkPDF::before {
	top: 0.2rem;
	width: 1.6rem;
	height: 1.6rem;
	}

	/* PDF：Inline指定 */
	.LinkPDF.Inline {
	padding-left: 2.2rem;
	}

	.LinkPDF.Inline::before {
	top: 0.1rem;
	}

	/* PDF：ListKomeS内 */
	.ListKomeS .LinkPDF {
	padding-left: 2rem;
	font-size: var(--f-s);
	}

	.ListKomeS .LinkPDF::before {
	top: 0.05rem;
	width: 1.4rem;
	height: 1.4rem;
	}

	/* ファイル */	
	.LinkFile {
	padding-left: 2.6rem;
	}

	.LinkFile::before {
	top: 0.2rem;
	width: 1.6rem;
	height: 1.6rem;
	}

	/* Book */	
	.LinkBook {
	padding-left: 2.6rem;
	}

	.LinkBook::before {
	left: 0.2rem;
	top: 0.15rem;
	width: 1.5rem;
	height: 1.8rem;
	}

	/* Movie */	
	.LinkMovie {
	padding-left: 2.6rem;
	}

	.LinkMovie::before {
	left: 0.2rem;
	top: 0.3rem;
	width: 1.5rem;
	height: 1.5rem;
	}

	/* RSS */	
	.LinkRSS {
	padding-left: 2rem;
	}

	.LinkRSS::before {
	top: 0.4rem;
	width: 1.3rem;
	height: 1.3rem;
	}

}

@media print, screen and (min-width: 768px) {

	.LinkFwd,
	.LinkBack,
	.LinkDown,
	.LinkNewWin,
	.LinkPDF,
	.LinkFile,
	.LinkBook.
	.LinkMovie,
	.LinkRSS {
	font-size: var(--f-m);
	}

	/* 進む */
	.LinkFwd {
	padding-left: 3.4rem;
	}

	.LinkFwd::before {
	left: 1.4rem;
	top: 0.85rem;
	}

	.LinkFwd::after {
	left: 0;
	top: 1.2rem;
	width: 2.2rem;
	}

	/* 進む：矢印右 */
	.LinkFwd.LinkFwd_R {
	padding-left: 0;
	padding-right: 3.4rem;
	}

	.LinkFwd.LinkFwd_R::before {
	left: inherit;
	right: 0;
	top: 0.85rem;
	}

	.LinkFwd.LinkFwd_R::after {
	left: inherit;
	right: 0;
	top: 1.2rem;
	width: 2.2rem;
	}

	/* 戻る */
	.LinkBack {
	padding-left: 3.4rem;
	}

	.LinkBack::before {
	left: 0;
	top: 0.85rem;
	}

	.LinkBack::after {
	left: 0;
	top: 1.2rem;
	width: 2.2rem;
	}

	/* 別窓 */
	.LinkNewWin::after {
	margin-left: 0.4rem;
	}

	/* 下へ */
	.LinkDown {
	padding-left: 3rem;
	}

	.LinkDown::before {
	left: 0.6rem;
	top: 0.95rem;
	}

	/* PDF */
	.LinkPDF {
	padding-left: 3.4rem;
	}

	.LinkPDF::before {
	top: 0.15rem;
	width: 2.2rem;
	height: 2.2rem;
	}

	/* PDF：Inline指定 */
	.LinkPDF.Inline {
	padding-left: 3rem;
	}

	.LinkPDF.Inline::before {
	top: -0.15rem;
	}

	/* PDF：ListKomeS内 */
	.ListKomeS .LinkPDF {
	padding-left: 2.6rem;
	font-size: var(--f-s);
	}

	.ListKomeS .LinkPDF::before {
	top: 0.05rem;
	width: 1.8rem;
	height: 1.8rem;
	}

	/* PDF */
	.LinkFile {
	padding-left: 3.4rem;
	}

	.LinkFile::before {
	top: 0.15rem;
	width: 2.2rem;
	height: 2.2rem;
	}

	/* Book */
	.LinkBook {
	padding-left: 3.4rem;
	}

	.LinkBook::before {
	left: 0.3rem;
	top: 0.05rem;
	width: 2rem;
	height: 2.4rem;
	}

	/* Movie */
	.LinkMovie {
	padding-left: 3.4rem;
	}

	.LinkMovie::before {
	left: 0.3rem;
	top: 0.2rem;
	width: 2rem;
	height: 2rem;
	}

	/* RSS */
	.LinkRSS {
	padding-left: 2.4rem;
	}

	.LinkRSS::before {
	top: 0.35rem;
	width: 1.6rem;
	height: 1.6rem;
	}

}



/* ■ ボタン ==================================================================================== */

.BtnS,
.BtnM {
display: inline-block;
position: relative;
line-height: 1.5;
font-weight: bold;
}

/* 英語版 */
.Lang_en .BtnS,
.Lang_en .BtnM {
letter-spacing: 0.05em;
}

/* 矢印 */
.BtnAllowRight::before,
.BtnAllowBack::before {
position: absolute;
top: 50%;
width: 0.8rem;
height: 0.8rem;
border-top: 1px solid var(--c-link);
border-right: 1px solid var(--c-link);
transform: translateY(-50%) rotate(45deg);
transform-origin: center;
content: "";
}

.BtnAllowRight::after,
.BtnAllowBack::after {
position: absolute;
top: 50%;
height: 0.1rem;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

/* 別窓 */
.BtnNewWin::after {
position: absolute;
top: 50%;
background-image: url(/assets/img/common/icon/Icon_NewWin.png);
background-size: cover;
transform: translateY(-50%);
content: "";
}

/* PDF */
.BtnPDF::after {
position: absolute;
top: 50%;
background-image: url(/assets/img/common/icon/Icon_PDF.png);
background-size: cover;
transform: translateY(-50%);
content: "";
}

/* ダウンロード */
.BtnDownload::after {
position: absolute;
top: 48%;
background-image: url(/assets/img/common/icon/Icon_Download.png);
transform: translateY(-48%);
content: "";
}

/* 戻る */
.BtnAllowBack {
text-align: center;
}

.BtnAllowBack::before {
left: 2rem;
transform: translateY(-50%) rotate(225deg);
}

.BtnAllowBack::after {
left: 2rem;
}

/* 閉じる */
.BtnClose {
text-align: center;
}

.BtnClose::before,
.BtnClose::after {
position: absolute;
top: 50%;
height: 0.1rem;
background-color: var(--c-link);
transform: translateY(-50%);
content: "";
}

.BtnClose::before {
transform: rotate(-45deg);
}

.BtnClose::after {
transform: rotate(45deg);
}

/* カラー：1 */
.BtnColor1,
a.BtnColor1 {
border: 1px solid var(--c-1);
background-color: #fff;
}

.BtnColor1::after {
border-color: #fff;
}

/* カラー：2 */
.BtnColor2,
a.BtnColor2 {
color: #fff;
background-color: var(--c-1);
}

.BtnColor2::before {
border-color: #fff;
}

.BtnColor2::after {
background-color: #fff;
}

@media only screen and (max-width: 767px) {

	.BtnS {
	font-size: 1.3rem;
	}

	.BtnM {
	font-size: 1.5rem;
	}

	/* 矢印 */
	.BtnS.BtnAllowRight {
	padding: 1.2rem 4rem 1.2rem 1.5rem;
	}

	.BtnM.BtnAllowRight {
	padding: 1.8rem 4rem 1.8rem 1.5rem;
	}

	.BtnAllowRight::before {
	right: 1.2rem;
	}

	.BtnAllowRight::after {
	right: 1.2rem;
	width: 1.8rem;
	}

	/* 別窓 */
	.BtnS.BtnNewWin {
	padding: 1.2rem 4rem 1.2rem 1.5rem;
	}

	.BtnM.BtnNewWin {
	padding: 1.8rem 4rem 1.8rem 1.5rem;
	}

	.BtnNewWin::after {
	right: 1.4rem;
	width: 1.3rem;
	height: 1.1rem;
	}

	/* PDF */
	.BtnS.BtnPDF {
	padding: 1.2rem 4rem 1.2rem 1.5rem;
	}

	.BtnM.BtnPDF {
	padding: 1.8rem 4rem 1.8rem 1.5rem;
	}

	.BtnPDF::after {
	right: 1.4rem;
	width: 1.6rem;
	height: 1.6rem;
	}

	/* ダウンロード */
	.BtnS.BtnDownload {
	padding: 1.2rem 5rem 1.2rem 1.5rem;
	}

	.BtnM.BtnDownload {
	padding: 1.8rem 5rem 1.8rem 1.5rem;
	}

	.BtnDownload::after {
	right: 1.2rem;
	width: 1.8rem;
	height: 1.8rem;
	background-size: 1.8rem 1.8rem;
	}

	/* 戻る */
	.BtnS.BtnAllowBack {
	padding: 1.2rem 6rem 1.2rem 7rem;
	}

	.BtnM.BtnAllowBack {
	padding: 1.8rem 6rem 1.8rem 7rem;
	}

	.BtnAllowBack::before {
	left: 1.2rem;
	}

	.BtnAllowBack::after {
	left: 1.2rem;
	width: 1.8rem;
	}

	/* 閉じる */
	.BtnS.BtnClose {
	padding: 1.2rem 6rem 1.2rem 7rem;
	}

	.BtnM.BtnClose {
	padding: 1.8rem 6rem 1.8rem 7rem;
	}

	.BtnClose::before {
	left: 1.2rem;
	width: 1.8rem;
	}

	.BtnClose::after {
	left: 1.2rem;
	width: 1.8rem;
	}

}

@media print, screen and (min-width: 768px) {

	.BtnS {
	font-size: 1.5rem;
	}

	.BtnM {
	font-size: 1.8rem;
	}

	/* 矢印 */
	.BtnS.BtnAllowRight {
	padding: 1.2rem 8rem 1.2rem 2.5rem;
	}

	.BtnM.BtnAllowRight {
	padding: 1.8rem 8rem 1.8rem 3rem;
	}

	.BtnAllowRight::before {
	right: 2rem;
	}

	.BtnAllowRight::after {
	right: 2rem;
	width: 2.2rem;
	}

	/* 別窓 */
	.BtnS.BtnNewWin {
	padding: 1.2rem 8rem 1.2rem 2.5rem;
	}

	.BtnM.BtnNewWin {
	padding: 1.8rem 8rem 1.8rem 3rem;
	}

	.BtnNewWin::after {
	right: 2rem;
	width: 1.4rem;
	height: 1.2rem;
	}

	/* PDF */
	.BtnS.BtnPDF {
	padding: 1.2rem 8rem 1.2rem 2.5rem;
	}

	.BtnM.BtnPDF {
	padding: 1.8rem 8rem 1.8rem 3rem;
	}

	.BtnPDF::after {
	right: 2rem;
	width: 1.6rem;
	height: 1.6rem;
	}

	/* ダウンロード */
	.BtnS.BtnDownload {
	padding: 1.2rem 7rem 1.2rem 2.5rem;
	}

	.BtnM.BtnDownload {
	padding: 1.8rem 7rem 1.8rem 3rem;
	}

	.BtnDownload::after {
	right: 1.6rem;
	width: 2rem;
	height: 2rem;
	background-size: 2rem 2rem;
	}

	/* 戻る */
	.BtnS.BtnAllowBack {
	padding: 1.2rem 6rem 1.2rem 8rem;
	}

	.BtnM.BtnAllowBack {
	padding: 1.8rem 6rem 1.8rem 8rem;
	}

	.BtnAllowBack::before {
	left: 2rem;
	}

	.BtnAllowBack::after {
	left: 2rem;
	width: 2.2rem;
	}

	/* 閉じる */
	.BtnS.BtnClose {
	padding: 1.2rem 6rem 1.2rem 8rem;
	}

	.BtnM.BtnClose {
	padding: 1.8rem 6rem 1.9rem 8rem;
	}

	.BtnClose::before {
	left: 2rem;
	width: 2.2rem;
	}

	.BtnClose::after {
	left: 2rem;
	width: 2.2rem;
	}

}

@media (hover: hover) {

	a.BtnColor1:hover {
	background-color: var(--c-hover-bg);
	}

	a.BtnColor2:hover {
	background-color: #1d588a;
	}

}



/* ■ アイコン ==================================================================================== */

/*
プラス・マイナス
*/


/* プラス・マイナス --------------------------------------------------- */

.Icon_PlusMinus {
display: block;
position: relative;
}

.Icon_PlusMinus::before,
.Icon_PlusMinus::after {
display: block;
position: absolute;
top: 50%;
background-color: var(--c-1);
content: "";
}

.Icon_PlusMinus::after {
transform: rotate(90deg);
}

.Icon_PlusMinus.is_Opened::after {
display: none;
}

@media only screen and (max-width: 767px) {

	.Icon_PlusMinus::before,
	.Icon_PlusMinus::after {
	right: 1.6rem;
	width: 2rem;
	height: 0.1rem;
	}

}

@media print, screen and (min-width: 768px) {

	.Icon_PlusMinus::before,
	.Icon_PlusMinus::after {
	right: 2rem;
	width: 2.4rem;
	height: 0.2rem;
	}

}


/* ■ 動画埋め込み ==================================================================================== */

/* video */
video {
margin-top: var(--gap-int);
}

/* iframe */
.MovieWrap {
position: relative;
width: 100%;
margin-top: var(--gap-int);
padding-top: 56.25%;
/* aspect-ratio: 16 / 9; */
overflow: hidden;
}

.MovieWrap iframe {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
}



/* ■ マップ埋め込み ==================================================================================== */

.MapWrap {
position: relative;
width: 100%;
/* aspect-ratio: 16 / 9; */
margin-top: var(--gap-int);
padding-top: 56.25%;
overflow: hidden;
}

.MapWrap iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}



/* ■ フォーム ==================================================================================== */

/*
リセット・変数
セレクトボックス
*/


/* リセット・変数 --------------------------------------------------- */

.FormUnit input,
.FormUnit textarea,
.FormUnit select {
-webkit-appearance: none;
appearance: none;
}


/* セレクトボックス --------------------------------------------------- */

.FormUnit select {
border: 1px solid var(--c-1);
color: #000;
background: url(/assets/img/common/icon/Icon_Form_Select.png) no-repeat;
background-size: 1rem auto;
}

@media only screen and (max-width: 767px) {

	.FormUnit select {
	line-height: 2.5;
	padding-left: 1rem;
	padding-right: 5rem;
	background-position: 94% 50%;
	}

}

@media print, screen and (min-width: 768px) {

	.FormUnit select {
	line-height: 2.5;
	padding-left: 1rem;
	padding-right: 4rem;
	background-position: 95% 50%;
	}

}

/* Firefox用調整 */
@-moz-document url-prefix() {
	.FormUnit select {
	padding-left: 0.6rem;
	}
}



/* ■ 汎用モーダル ==================================================================================== */

/*
ベース
本体
中身
前後ナビ・件数
閉じるボタン
*/


/* ベース --------------------------------------------------- */

.VersatileModal_Content {
display: none;
}

.VersatileModal {
position: fixed;
z-index: 1000;
inset: 0;
visibility: hidden;
opacity: 0;
pointer-events: none;
transition: opacity 0.3s ease, visibility 0.3s ease;
}

.VersatileModal.is_Active {
visibility: visible;
opacity: 1;
pointer-events: auto;
}

/* 背景 */
.VersatileModal_Overlay {
position: absolute;
inset: 0;
background-color: rgba(0, 0, 0, 0.6);
}

/* モーダル表示中 */
body.is_ModalOpen {
overflow: hidden;
}


/* 本体 --------------------------------------------------- */

.VersatileModal_Inner {
position: relative;
z-index: 1;
width: min(90%, 100rem);
background-color: #fff;
overflow-y: auto;
}

@media only screen and (max-width: 767px) {

	.VersatileModal_Inner {
	max-height: 80vh;
	margin: 10vh auto 0;	
	padding: 2rem 2rem 10rem;
	}

}

@media print, screen and (min-width: 768px) {

	.VersatileModal_Inner {
	max-height: 90vh;
	margin: 5vh auto 0;	
	padding: 4rem 4rem;
	}

}


/* 中身 --------------------------------------------------- */

.VersatileModal_Body {
position: relative;
}


/* 閉じるボタン --------------------------------------------------- */

.VersatileModal_Close {
position: absolute;
z-index: 2;
border: 1px solid var(--c-1);
background-color: #fff;
cursor: pointer;
}

.VersatileModal_Close::before,
.VersatileModal_Close::after {
position: absolute;
top: 50%;
left: 50%;
height: 0.2rem;
background: var(--c-1);
content: "";
}

.VersatileModal_Close::before {
transform: translate(-50%, -50%) rotate(45deg);
}

.VersatileModal_Close::after {
transform: translate(-50%, -50%) rotate(-45deg);
}

@media only screen and (max-width: 767px) {

	.VersatileModal_Close {
	top: 1rem;
	right: 1rem;
	width: 4.5rem;
	height: 4.5rem;
	}
	
	.VersatileModal_Close::before,
	.VersatileModal_Close::after {
	width: 2.5rem;
	}

}

@media print, screen and (min-width: 768px) {

	.VersatileModal_Close {
	top: 2rem;
	right: 2rem;
	width: 7rem;
	height: 7rem;
	}

	.VersatileModal_Close::before,
	.VersatileModal_Close::after {
	width: 4rem;
	}

}




/* ■ 個別調整 ==================================================================================== */

/*
汎用
左・右・中央 寄せ
上・下・中央 寄せ
マージントップ
マージンボトム
パディングトップ
パディング右
横幅「%」指定
横幅「px」指定
フォントサイズ
行間
*/


/* 汎用 --------------------------------------------------- */

/* ボーダー無し */
.NoBorder {
border: none !important;
}

/* パディング無し */
.NoPadding {
padding: 0 !important;
}

/* 横幅「Inherit」 */
.WidthInherit {
width: inherit !important;
}

/* インラインブロック化 */
.InlineB {
display: inline-block !important;
}

/* インライン化 */
.Inline {
display: inline !important;
}

/* opacity:1 */
.Opacity1 {
opacity: 1 !important;
}

/* 太字にしない */
.FontWN {
font-weight: normal !important;
}

/* 文字詰め「palt」 */
.TxtPalt {
font-feature-settings: "palt" !important;
letter-spacing: 0.05em !important; 
}

/* 箱組「TxtJustify」 */
.TxtJustify {
text-align: justify !important;
}

/* 非改行 */
.WS_Nowrap {
white-space: nowrap !important;
}

/* 改行 */
.WS_Normal {
white-space: normal !important;
}

/* 非アクティブ */
.Disabled {
opacity: 0.3;
pointer-events: none;
}

.Disabled:hover {
opacity: 0.3;
}

@media only screen and (max-width: 767px) {

	.PC {
	display: none !important;
	}

	/* 文字詰め「palt」 */
	.TxtPalt_SP {
	font-feature-settings: "palt" !important;
	letter-spacing: 0.05em !important; 
	}

	/* インライン化 */
	.Inline_SP {
	display: inline !important;
	}

}

@media print, screen and (min-width: 768px) {

	.SP {
	display: none !important;
	}

	/* 文字詰め「palt」 */
	.TxtPalt_PC {
	font-feature-settings: "palt" !important;
	letter-spacing: 0.05em !important; 
	}

	/* インライン化 */
	.Inline_PC {
	display: inline !important;
	}

}


/* 左・右・中央 寄せ --------------------------------------------------- */

.AlignL {
text-align: left !important;
}

.AlignC {
text-align: center !important;
}

.AlignR {
text-align: right !important;
}

@media only screen and (max-width: 767px) {

	.AlignL_SP {
	text-align: left !important;
	}

	.AlignC_SP {
	text-align: center !important;
	}

	.AlignR_SP {
	text-align: right !important;
	}

}

@media print, screen and (min-width: 768px) {

	.AlignL_PC {
	text-align: left !important;
	}

	.AlignC_PC {
	text-align: center !important;
	}

	.AlignR_PC {
	text-align: right !important;
	}

}


/* 上・下・中央 寄せ --------------------------------------------------- */

.ValignT {
vertical-align: top !important
}

.ValignB {
vertical-align: bottom !important
}

.ValignM {
vertical-align: middle !important
}

@media only screen and (max-width: 767px) {

	.ValignT_SP {
	vertical-align: top !important
	}
	
	.ValignB_SP {
	vertical-align: bottom !important
	}

	.ValignM_SP {
	vertical-align: middle !important
	}
	
}

@media print, screen and (min-width: 768px) {

	.ValignT_PC {
	vertical-align: top !important
	}
	
	.ValignB_PC {
	vertical-align: bottom !important
	}

	.ValignM_PC {
	vertical-align: middle !important
	}
	
}


/* フロート --------------------------------------------------- */

/* ClearFix */
.CF::after { display: block; clear: both; content: ""; }

@media only screen and (max-width: 767px) {

	.FloatL,
	.FloatL_SP {
	float: left;
	margin: 2rem 2rem 1rem 0;
	}

	.FloatR,
	.FloatR_SP {
	float: right;
	margin: 2rem 0 1rem 2rem;
	}

}

@media print, screen and (min-width: 768px) {

	.FloatL,
	.FloatL_PC {
	float: left;
	margin: 3.5rem 3rem 1rem 0;
	}

	.FloatR,
	.FloatR_PC {
	float: right;
	margin: 3.5rem 0 1rem 3rem;
	}

}


/* マージントップ --------------------------------------------------- */

.MT0 {
margin-top: 0 !important;
}

.MT5 {
margin-top: 0.5rem !important;
}

.MT10 {
margin-top: 1rem !important;
}

.MT15 {
margin-top: 1.5rem !important;
}

.MT20 {
margin-top: 2rem !important;
}

.MT25 {
margin-top: 2.5rem !important;
}

.MT30 {
margin-top: 3rem !important;
}

.MT35 {
margin-top: 3.5rem !important;
}

.MT40 {
margin-top: 4rem !important;
}

.MT45 {
margin-top: 4.5rem !important;
}

.MT50 {
margin-top: 5rem !important;
}

.MT55 {
margin-top: 5.5rem !important;
}

.MT60 {
margin-top: 6rem !important;
}

.MT65 {
margin-top: 6.5rem !important;
}

.MT70 {
margin-top: 7rem !important;
}

.MT75 {
margin-top: 7.5rem !important;
}

.MT80 {
margin-top: 8rem !important;
}

.MT85 {
margin-top: 8.5rem !important;
}

.MT90 {
margin-top: 9rem !important;
}

.MT95 {
margin-top: 9.5rem !important;
}

.MT100 {
margin-top: 10rem !important;
}

@media only screen and (max-width: 767px) {

	.MT0_SP {
	margin-top: 0 !important;
	}

	.MT5_SP {
	margin-top: 0.5rem !important;
	}

	.MT10_SP {
	margin-top: 1rem !important;
	}

	.MT15_SP {
	margin-top: 1.5rem !important;
	}

	.MT20_SP {
	margin-top: 2rem !important;
	}

	.MT25_SP {
	margin-top: 2.5rem !important;
	}

	.MT30_SP {
	margin-top: 3rem !important;
	}

	.MT35_SP {
	margin-top: 3.5rem !important;
	}

	.MT40_SP {
	margin-top: 4rem !important;
	}

	.MT45_SP {
	margin-top: 4.5rem !important;
	}

	.MT50_SP {
	margin-top: 5rem !important;
	}

	.MT55_SP {
	margin-top: 5.5rem !important;
	}

	.MT60_SP {
	margin-top: 6rem !important;
	}

	.MT65_SP {
	margin-top: 6.5rem !important;
	}

	.MT70_SP {
	margin-top: 7rem !important;
	}

	.MT75_SP {
	margin-top: 7.5rem !important;
	}

	.MT80_SP {
	margin-top: 8rem !important;
	}

	.MT85_SP {
	margin-top: 8.5rem !important;
	}

	.MT90_SP {
	margin-top: 9rem !important;
	}

	.MT95_SP {
	margin-top: 9.5rem !important;
	}

	.MT100_SP {
	margin-top: 10rem !important;
	}

	.MT_Sec {
	margin-top: 4rem;
	}

}

@media print, screen and (min-width: 768px) {

	.MT0_PC {
	margin-top: 0rem !important;
	}

	.MT5_PC {
	margin-top: 0.5rem !important;
	}

	.MT10_PC {
	margin-top: 1rem !important;
	}

	.MT15_PC {
	margin-top: 1.5rem !important;
	}

	.MT20_PC {
	margin-top: 2rem !important;
	}

	.MT25_PC {
	margin-top: 2.5rem !important;
	}

	.MT30_PC {
	margin-top: 3rem !important;
	}

	.MT35_PC {
	margin-top: 3.5rem !important;
	}

	.MT40_PC {
	margin-top: 4rem !important;
	}

	.MT45_PC {
	margin-top: 4.5rem !important;
	}

	.MT50_PC {
	margin-top: 5rem !important;
	}

	.MT55_PC {
	margin-top: 5.5rem !important;
	}

	.MT60_PC {
	margin-top: 6rem !important;
	}

	.MT65_PC {
	margin-top: 6.5rem !important;
	}

	.MT70_PC {
	margin-top: 7rem !important;
	}

	.MT75_PC {
	margin-top: 7.5rem !important;
	}

	.MT80_PC {
	margin-top: 8rem !important;
	}

	.MT85_PC {
	margin-top: 8.5rem !important;
	}

	.MT90_PC {
	margin-top: 9rem !important;
	}

	.MT95_PC {
	margin-top: 9.5rem !important;
	}

	.MT100_PC {
	margin-top: 10rem !important;
	}

	.MT_Sec {
	margin-top: 8rem;
	}

}


/* マージンボトム --------------------------------------------------- */

.MB0 {
margin-bottom: 0 !important;
}

.MB5 {
margin-bottom: 0.5rem !important;
}

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

.MB15 {
margin-bottom: 1.5rem !important;
}

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

.MB25 {
margin-bottom: 2.5rem !important;
}

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

.MB35 {
margin-bottom: 3.5rem !important;
}

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

.MB45 {
margin-bottom: 4.5rem !important;
}

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

@media only screen and (max-width: 767px) {

	.MB0_SP {
	margin-bottom: 0 !important;
	}

	.MB5_SP {
	margin-bottom: 0.5rem !important;
	}

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

	.MB15_SP {
	margin-bottom: 1.5rem !important;
	}

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

	.MB25_SP {
	margin-bottom: 2.5rem !important;
	}

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

	.MB35_SP {
	margin-bottom: 3.5rem !important;
	}

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

	.MB45_SP {
	margin-bottom: 4.5rem !important;
	}

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

}

@media print, screen and (min-width: 768px) {

	.MB0_PC {
	margin-bottom: 0rem !important;
	}

	.MB5_PC {
	margin-bottom: 0.5rem !important;
	}

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

	.MB15_PC {
	margin-bottom: 1.5rem !important;
	}

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

	.MB25_PC {
	margin-bottom: 2.5rem !important;
	}

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

	.MB35_PC {
	margin-bottom: 3.5rem !important;
	}

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

	.MB45_PC {
	margin-bottom: 4.5rem !important;
	}

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

}


/* パディングトップ --------------------------------------------------- */

.PT0 {
padding-top: 0 !important
}


/* パディング右 --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	.PR100_SP {
	padding-right: 10rem !important;
	}

	.PR150_SP {
	padding-right: 15rem !important;
	}

	.PR200_SP {
	padding-right: 20rem !important;
	}

	.PR250_SP {
	padding-right: 25rem !important;
	}

	.PR300_SP {
	padding-right: 300rem !important;
	}

}

@media print, screen and (min-width: 768px) {

	.PR100_PC {
	padding-right: 10rem !important;
	}

	.PR150_PC {
	padding-right: 15rem !important;
	}

	.PR200_PC {
	padding-right: 20rem !important;
	}

	.PR250_PC {
	padding-right: 25rem !important;
	}

	.PR300_PC {
	padding-right: 300rem !important;
	}

}


/* 横幅「%」指定 --------------------------------------------------- */

.W5 {
width: 5% !important;
}

.W10 {
width: 10% !important;
}

.W15 {
width: 15% !important;
}

.W20 {
width: 20% !important;
}

.W25 {
width: 25% !important;
}

.W30 {
width: 30% !important;
}

.W35 {
width: 35% !important;
}

.W40 {
width: 40% !important;
}

.W45 {
width: 45% !important;
}

.W50 {
width: 50% !important;
}

.W55 {
width: 55% !important;
}

.W60 {
width: 60% !important;
}

.W65 {
width: 65% !important;
}

.W70 {
width: 70% !important;
}

.W75 {
width: 75% !important;
}

.W80 {
width: 80% !important;
}

.W85 {
width: 85% !important;
}

.W90 {
width: 90% !important;
}

.W95 {
width: 95% !important;
}

.W100 {
width: 100% !important;
}

.W_OneThird {
width: calc(100% / 3) !important;
}

@media only screen and (max-width: 767px) {

	.W5_SP {
	width: 5% !important;
	}

	.W10_SP {
	width: 10% !important;
	}

	.W15_SP {
	width: 15% !important;
	}

	.W20_SP {
	width: 20% !important;
	}

	.W25_SP {
	width: 25% !important;
	}

	.W30_SP {
	width: 30% !important;
	}

	.W35_SP {
	width: 35% !important;
	}

	.W40_SP {
	width: 40% !important;
	}

	.W45_SP {
	width: 45% !important;
	}

	.W50_SP {
	width: 50% !important;
	}

	.W55_SP {
	width: 55% !important;
	}

	.W60_SP {
	width: 60% !important;
	}

	.W65_SP {
	width: 65% !important;
	}

	.W70_SP {
	width: 70% !important;
	}

	.W75_SP {
	width: 75% !important;
	}

	.W80_SP {
	width: 80% !important;
	}

	.W85_SP {
	width: 85% !important;
	}

	.W90_SP {
	width: 90% !important;
	}

	.W95_SP {
	width: 95% !important;
	}

	.W100_SP {
	width: 100% !important;
	}

}

@media print, screen and (min-width: 768px) {

	.W5_PC {
	width: 5% !important;
	}

	.W10_PC {
	width: 10% !important;
	}

	.W15_PC {
	width: 15% !important;
	}

	.W20_PC {
	width: 20% !important;
	}

	.W25_PC {
	width: 25% !important;
	}

	.W30_PC {
	width: 30% !important;
	}

	.W35_PC {
	width: 35% !important;
	}

	.W40_PC {
	width: 40% !important;
	}

	.W45_PC {
	width: 45% !important;
	}

	.W50_PC {
	width: 50% !important;
	}

	.W55_PC {
	width: 55% !important;
	}

	.W60_PC {
	width: 60% !important;
	}

	.W65_PC {
	width: 65% !important;
	}

	.W70_PC {
	width: 70% !important;
	}

	.W75_PC {
	width: 75% !important;
	}

	.W80_PC {
	width: 80% !important;
	}

	.W85_PC {
	width: 85% !important;
	}

	.W90_PC {
	width: 90% !important;
	}

	.W95_PC {
	width: 95% !important;
	}

	.W100_PC {
	width: 100% !important;
	}

}


/* 横幅「px」指定 --------------------------------------------------- */

.WP100 {
min-width: 10rem !important;
}

.WP150 {
min-width: 15rem !important;
}

.WP200 {
min-width: 20rem !important;
}

.WP250 {
min-width: 25rem !important;
}

.WP300 {
min-width: 30rem !important;
}

.WP350 {
min-width: 35rem !important;
}

.WP400 {
min-width: 40rem !important;
}

.WP450 {
min-width: 45rem !important;
}

.WP500 {
min-width: 50rem !important;
}

.WP550 {
min-width: 55rem !important;
}

.WP600 {
min-width: 60rem !important;
}

.WP650 {
min-width: 65rem !important;
}

.WP700 {
min-width: 70rem !important;
}

.WP750 {
min-width: 75rem !important;
}

.WP800 {
min-width: 80rem !important;
}

.WP850 {
min-width: 85rem !important;
}

.WP900 {
min-width: 90rem !important;
}

.WP950 {
min-width: 95rem !important;
}

.WP1000 {
min-width: 100rem !important;
}

@media only screen and (max-width: 767px) {

	.WP100_SP {
	min-width: 10rem !important;
	}

	.WP150_SP {
	min-width: 15rem !important;
	}

	.WP200_SP {
	min-width: 20rem !important;
	}

	.WP250_SP {
	min-width: 25rem !important;
	}

	.WP300_SP {
	min-width: 30rem !important;
	}

	.WP350_SP {
	min-width: 35rem !important;
	}

	.WP400_SP {
	min-width: 40rem !important;
	}

	.WP450_SP {
	min-width: 45rem !important;
	}

	.WP500_SP {
	min-width: 50rem !important;
	}
	
	.WP550_SP {
	min-width: 55rem !important;
	}
	
	.WP600_SP {
	min-width: 60rem !important;
	}
	
	.WP650_SP {
	min-width: 65rem !important;
	}
	
	.WP700_SP {
	min-width: 70rem !important;
	}
	
	.WP750_SP {
	min-width: 75rem !important;
	}
	
	.WP800_SP {
	min-width: 80rem !important;
	}
	
	.WP850_SP {
	min-width: 85rem !important;
	}
	
	.WP900_SP {
	min-width: 90rem !important;
	}
	
	.WP950_SP {
	min-width: 95rem !important;
	}
	
	.WP1000_SP {
	min-width: 100rem !important;
	}

}

@media print, screen and (min-width: 768px) {

	.WP100_PC {
	min-width: 10rem !important;
	}

	.WP150_PC {
	min-width: 15rem !important;
	}

	.WP200_PC {
	min-width: 20rem !important;
	}

	.WP250_PC {
	min-width: 25rem !important;
	}

	.WP300_PC {
	min-width: 30rem !important;
	}

	.WP350_PC {
	min-width: 35rem !important;
	}

	.WP400_PC {
	min-width: 40rem !important;
	}

	.WP450_PC {
	min-width: 45rem !important;
	}

	.WP500_PC {
	min-width: 50rem !important;
	}
	
	.WP550_PC {
	min-width: 55rem !important;
	}
	
	.WP600_PC {
	min-width: 60rem !important;
	}
	
	.WP650_PC {
	min-width: 65rem !important;
	}
	
	.WP700_PC {
	min-width: 70rem !important;
	}
	
	.WP750_PC {
	min-width: 75rem !important;
	}
	
	.WP800_PC {
	min-width: 80rem !important;
	}
	
	.WP850_PC {
	min-width: 85rem !important;
	}
	
	.WP900_PC {
	min-width: 90rem !important;
	}
	
	.WP950_PC {
	min-width: 95rem !important;
	}
	
	.WP1000_PC {
	min-width: 100rem !important;
	}

}


/* フォントサイズ --------------------------------------------------- */

.FontSizeSSS {
font-size: calc(var(--f-m) * 0.7) !important;
line-height: 1.5;
}

.FontSizeSS {
font-size: calc(var(--f-m) * 0.8) !important;
line-height: 1.6;
}

.FontSizeS {
font-size: calc(var(--f-m) * 0.9) !important;
line-height: 1.6;
}

.FontSizeM {
font-size: var(--f-m) !important;
line-height: 1.6;
}

.FontSizeL {
font-size: calc(var(--f-m) * 1.15) !important;
line-height: 1.4;
}

.FontSizeLL {
font-size: calc(var(--f-m) * 1.4) !important;
line-height: 1.3;
}

.FontSizeLLL {
font-size: calc(var(--f-m) * 1.8) !important;
line-height: 1.2;
}


/* 行間 --------------------------------------------------- */

.LineHeight11 {
line-height:1.1 !important;
}

.LineHeight12 {
line-height:1.2 !important;
}

.LineHeight13 {
line-height:1.3 !important;
}

.LineHeight14 {
line-height:1.4 !important;
}

.LineHeight15 {
line-height:1.5 !important;
}

.LineHeight16 {
line-height:1.6 !important;
}

.LineHeight17 {
line-height:1.7 !important;
}

.LineHeight18 {
line-height:1.8 !important;
}

.LineHeight19 {
line-height:1.9 !important;
}

.LineHeight20 {
line-height:2.0 !important;
}

@media only screen and (max-width: 767px) {

	.LineHeight11_SP {
	line-height:1.1 !important;
	}
	
	.LineHeight12_SP {
	line-height:1.2 !important;
	}

	.LineHeight13_SP {
	line-height:1.3 !important;
	}

	.LineHeight14_SP {
	line-height:1.4 !important;
	}

	.LineHeight15_SP {
	line-height:1.5 !important;
	}

	.LineHeight16_SP {
	line-height:1.6 !important;
	}

	.LineHeight17_SP {
	line-height:1.7 !important;
	}

	.LineHeight18_SP {
	line-height:1.8 !important;
	}

	.LineHeight19_SP {
	line-height:1.9 !important;
	}

	.LineHeight20_SP {
	line-height:2.0 !important;
	}

}

@media print, screen and (min-width: 768px) {

	.LineHeight11_PC {
	line-height:1.1 !important;
	}
	
	.LineHeight12_PC {
	line-height:1.2 !important;
	}

	.LineHeight13_PC {
	line-height:1.3 !important;
	}

	.LineHeight14_PC {
	line-height:1.4 !important;
	}

	.LineHeight15_PC {
	line-height:1.5 !important;
	}

	.LineHeight16_PC {
	line-height:1.6 !important;
	}

	.LineHeight17_PC {
	line-height:1.7 !important;
	}

	.LineHeight18_PC {
	line-height:1.8 !important;
	}

	.LineHeight19_PC {
	line-height:1.9 !important;
	}

	.LineHeight20_PC {
	line-height:2.0 !important;
	}

}



/* ■ 印刷用設定 ==================================================================================== */

@media print {

	body {
	min-width: 100rem !important;
	}

	.GlobalNav,
	.UtilityNav,
	.BreadCrumb,
	.Footer {
	display: none !important;
	}

	.Header {
	height: 10rem !important;
	}

	.Wrapper {
	max-width: 100% !important;
	margin: 0 auto !important;
	}

	/* メインセクションで改ページさせない場合は以下をコメントアウト */
/*
	.SectionMain:not(:first-of-type) {
	page-break-before: always;
	}
*/

}



/* ■ JSライブラリ ==================================================================================== */

/*
Swiper
*/


/**
 * Swiper 12.1.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 18, 2026
 */

:root{--swiper-theme-color:#007aff}:host{display:block;margin-left:auto;margin-right:auto;position:relative;z-index:1}.swiper{display:block;list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:initial;display:flex;height:100%;position:relative;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);width:100%;z-index:1}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{display:block;flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px;.swiper-cube-shadow,.swiper-slide{transform-style:preserve-3d}}.swiper-css-mode{>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{display:none}}>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}&.swiper-horizontal{>.swiper-wrapper{scroll-snap-type:x mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}}&.swiper-vertical{>.swiper-wrapper{scroll-snap-type:y mandatory}>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}}&.swiper-free-mode{>.swiper-wrapper{scroll-snap-type:none}>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}}&.swiper-centered{>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}}&.swiper-centered.swiper-horizontal{>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}}&.swiper-centered.swiper-vertical{>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:var(--swiper-centered-offset-after);min-width:1px;width:100%}}}.swiper-3d{.swiper-slide-shadow,.swiper-slide-shadow-bottom,.swiper-slide-shadow-left,.swiper-slide-shadow-right,.swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-slide-shadow{background:#00000026}.swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-slide-shadow-top{background-image:linear-gradient(0deg,#00000080,#0000)}.swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,#00000080,#0000)}}.swiper-lazy-preloader{border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid #0000;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-watch-progress .swiper-slide-visible,.swiper:not(.swiper-watch-progress){.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode{.swiper-wrapper:after{content:"";left:0;pointer-events:none;position:absolute;top:0}}.swiper-virtual.swiper-css-mode.swiper-horizontal{.swiper-wrapper:after{height:1px;width:var(--swiper-virtual-size)}}.swiper-virtual.swiper-css-mode.swiper-vertical{.swiper-wrapper:after{height:var(--swiper-virtual-size);width:1px}}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{align-items:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));cursor:pointer;display:flex;height:var(--swiper-navigation-size);justify-content:center;position:absolute;width:var(--swiper-navigation-size);z-index:10;&.swiper-button-disabled{cursor:auto;opacity:.35;pointer-events:none}&.swiper-button-hidden{cursor:auto;opacity:0;pointer-events:none}.swiper-navigation-disabled &{display:none!important}svg{height:100%;object-fit:contain;transform-origin:center;width:100%;fill:currentColor;pointer-events:none}}.swiper-button-lock{display:none}.swiper-button-next,.swiper-button-prev{margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto;.swiper-navigation-icon{transform:rotate(180deg)}}.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}.swiper-horizontal{.swiper-button-next,.swiper-button-prev,~.swiper-button-next,~.swiper-button-prev{margin-left:0;margin-top:calc(0px - var(--swiper-navigation-size)/2);top:var(--swiper-navigation-top-offset,50%)}&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next,&~.swiper-button-prev,.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev,&~.swiper-button-next,.swiper-button-next{left:auto;right:var(--swiper-navigation-sides-offset,4px)}&.swiper-rtl .swiper-button-next,&.swiper-rtl~.swiper-button-next,&~.swiper-button-prev,.swiper-button-prev{.swiper-navigation-icon{transform:rotate(180deg)}}&.swiper-rtl .swiper-button-prev,&.swiper-rtl~.swiper-button-prev{.swiper-navigation-icon{transform:rotate(0deg)}}}.swiper-vertical{.swiper-button-next,.swiper-button-prev,~.swiper-button-next,~.swiper-button-prev{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - var(--swiper-navigation-size)/2);margin-top:0;right:auto}.swiper-button-prev,~.swiper-button-prev{bottom:auto;top:var(--swiper-navigation-sides-offset,4px);.swiper-navigation-icon{transform:rotate(-90deg)}}.swiper-button-next,~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto;.swiper-navigation-icon{transform:rotate(90deg)}}}.swiper-pagination{position:absolute;text-align:center;transform:translateZ(0);transition:opacity .3s;z-index:10;&.swiper-pagination-hidden{opacity:0}&.swiper-pagination-disabled,.swiper-pagination-disabled>&{display:none!important}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);left:0;top:var(--swiper-pagination-top,auto);width:100%}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden;.swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullet-active,.swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullet-active-next-next{transform:scale(.33)}}.swiper-pagination-bullet{background:var(--swiper-pagination-bullet-inactive-color,#000);border-radius:var(--swiper-pagination-bullet-border-radius,50%);display:inline-block;height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));button&{appearance:none;border:none;box-shadow:none;margin:0;padding:0}.swiper-pagination-clickable &{cursor:pointer}&:only-child{display:none!important}}.swiper-pagination-bullet-active{background:var(--swiper-pagination-color,var(--swiper-theme-color));opacity:var(--swiper-pagination-bullet-opacity,1)}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{left:var(--swiper-pagination-left,auto);right:var(--swiper-pagination-right,8px);top:50%;transform:translate3d(0,-50%,0);.swiper-pagination-bullet{display:block;margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0}&.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px;.swiper-pagination-bullet{display:inline-block;transition:transform .2s,top .2s}}}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets{.swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}&.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap;.swiper-pagination-bullet{transition:transform .2s,left .2s}}}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute;.swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}.swiper-rtl & .swiper-pagination-progressbar-fill{transform-origin:right top}&.swiper-pagination-horizontal,&.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-horizontal>&,.swiper-vertical>&.swiper-pagination-progressbar-opposite{height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0;width:100%}&.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,&.swiper-pagination-vertical,.swiper-horizontal>&.swiper-pagination-progressbar-opposite,.swiper-vertical>&{height:100%;left:0;top:0;width:var(--swiper-pagination-progressbar-size,4px)}}.swiper-pagination-lock{display:none}.swiper-scrollbar{background:var(--swiper-scrollbar-bg-color,#0000001a);border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;&.swiper-scrollbar-disabled,.swiper-scrollbar-disabled>&{display:none!important}&.swiper-scrollbar-horizontal,.swiper-horizontal>&{bottom:var(--swiper-scrollbar-bottom,4px);height:var(--swiper-scrollbar-size,4px);left:var(--swiper-scrollbar-sides-offset,1%);position:absolute;top:var(--swiper-scrollbar-top,auto);width:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);z-index:50}&.swiper-scrollbar-vertical,.swiper-vertical>&{height:calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2);left:var(--swiper-scrollbar-left,auto);position:absolute;right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);width:var(--swiper-scrollbar-size,4px);z-index:50}}.swiper-scrollbar-drag{background:var(--swiper-scrollbar-drag-bg-color,#00000080);border-radius:var(--swiper-scrollbar-border-radius,10px);height:100%;left:0;position:relative;top:0;width:100%}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%;>canvas,>img,>svg{max-height:100%;max-width:100%;object-fit:contain}}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-direction:column;flex-wrap:wrap}.swiper-fade{&.swiper-free-mode{.swiper-slide{transition-timing-function:ease-out}}.swiper-slide{pointer-events:none;transition-property:opacity;.swiper-slide{pointer-events:none}}.swiper-slide-active{pointer-events:auto;& .swiper-slide-active{pointer-events:auto}}}.swiper.swiper-cube{overflow:visible}.swiper-cube{.swiper-slide{backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1;.swiper-slide{pointer-events:none}}&.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}.swiper-slide-active,.swiper-slide-next,.swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube-shadow{bottom:0;height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0;&:before{background:#000;bottom:0;content:"";filter:blur(50px);left:0;position:absolute;right:0;top:0}}}.swiper-cube{.swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}}.swiper-cube{.swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-slide-shadow-cube.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}}.swiper.swiper-flip{overflow:visible}.swiper-flip{.swiper-slide{backface-visibility:hidden;pointer-events:none;z-index:1;.swiper-slide{pointer-events:none}}.swiper-slide-active{&,& .swiper-slide-active{pointer-events:auto}}}.swiper-flip{.swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-slide-shadow-flip.swiper-slide-shadow-top{backface-visibility:hidden;z-index:0}}.swiper-creative{.swiper-slide{backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}}.swiper.swiper-cards{overflow:visible}.swiper-cards{.swiper-slide{backface-visibility:hidden;overflow:hidden;transform-origin:center bottom}}


