@charset "UTF-8";

/*
■ フォント設定
■ カラー設定
■ 汎用
■ アイコン
■ 横幅最大値・左右余白設定

■ フローティングバナー
■ ページの先頭へ（PageTop）
■ フッター（Footer）

■ 見出し（h1〜）
■ 本文
■ 画像
■ 区切り線（hr）

■ セクション
■ 関連情報（RelatedInfo）

■ カラム（Col）

■ ナビゲーション

■ 記述リスト（DLHori、DLVert、DLTable）
■ 表組み
■ 囲み（Box）
■ リスト各種
■ テキストリンクアイコン
■ ボタン
■ ページネーション
■ 検索窓

■ タブメニュー
■ アコーディオンメニュー

■ 印刷用設定
*/



/* ■ フォント設定 ==================================================================================== */

/*
フォント
基準サイズ
*/


/* フォント --------------------------------------------------- */

body {
font-family: "Noto Sans JP","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",Sans-Serif;
}

.WF1 {
font-family: 'Plus Jakarta Sans', sans-serif;
}


/* 基準サイズ --------------------------------------------------- */

@media only screen and (max-width: 767px) {

	html {
	font-size: 62.5%;
	}
	
	body {
	font-size: 1.6em;
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 1.8em;
	}

}

@media print, screen and (min-width: 768px) {

	html {
	font-size: 56%;
	}

	body {
	font-size: 1.6em;
	}

	h1,h2,h3,h4,h5,h6,p,th,td,dl,ul,ol,caption,blockquote,input,select,textarea,div {
	line-height: 2.0em;
	}

}

@media print, screen and (min-width: 1201px) {

	html {
	font-size: 62.5%;
	}

}



/* ■ カラー設定 ==================================================================================== */

/* 
本文・body背景
リンク
アラート
テキスト個別
ボーダー個別
背景個別
*/


/* 本文・body背景 --------------------------------------------------- */

body {
color: #000;
background: #fff;
}


/* リンク --------------------------------------------------- */

a:link {
color: #1669ac;
text-decoration: none;
}

a:active {
color: #1669ac;
text-decoration: none;
}

a:visited {
color: #1669ac;
text-decoration: none;
}

a:hover {
/* color: #1669ac; */
text-decoration: none;
}

.LinkLine {
text-decoration: underline !important;
}

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {

}

@media print, screen and (min-width: 1201px) {

	a:link {
	-webkit-transition: color 0.3s ease 0.01s, background-color 0.3s ease 0.01s, opacity 0.3s ease 0.01s;
	transition: color 0.3s ease 0.01s, background-color 0.3s ease 0.01s, opacity 0.3s ease 0.01s;
	}

/*
	a:hover {
	opacity: 0.7;
	}
*/

}


/* アラート --------------------------------------------------- */

.Alert {
color: #e50c0c;
}

.Box.Alert,
.Box1.Alert {
border-color: #e50c0c;
}


/* テキスト個別 --------------------------------------------------- */

.TxtColor1 {
color: #fff !important;
}

.TxtColor2 {
color: #b8b8b8 !important;
}

.TxtColor3 {
color: #b8b8b8 !important;
}


/* ボーダー個別 --------------------------------------------------- */

.BorderColor1 {
border-color: #ccc !important;
}

.BorderColor2 {
border-color: #ccc !important;
}

.BorderColor3 {
}


/* 背景個別 --------------------------------------------------- */

.BgColor1 {
/* background-color: #fffbfb !important; */
background-color: #ffeff7 !important;
}

.BgColor2 {
background-color: #f5fffb !important;
}

.BgColor3 {
/* background-color: #fffbf2 !important; */
background-color: #feffe6 !important;
}



/* ■ 汎用 ==================================================================================== */

#Wrapper {
min-width: 320px;
}

p {
font-feature-settings: "palt";
}

/* 非アクティブ */
.Disabled {
opacity: 0.3;
pointer-events: none;
}

.Disabled:hover {
opacity: 0.3;
}

/* ポジション指定 */
.PosUnit {
position: relative;
}

.PosItem {
position: absolute;
left: 0;
top: 0;
}

.SE {
display: none;
}

@media only screen and (max-width: 767px) {

	.PC {
	display: none !important;
	}

}

@media only screen and (max-width: 372px) {

	.SE {
	display: block;
	}
	
}

@media print, screen and (min-width: 768px) {

	.SP {
	display: none !important;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ アイコン ==================================================================================== */



/* ■ 横幅最大値・左右余白設定 ==================================================================================== */

#Header {
width: 100%;
}

@media only screen and (max-width: 767px) {

}

@media print, screen and (min-width: 768px) {


}

@media print, screen and (min-width: 1201px) {

}



/* ■ フローティングバナー ==================================================================================== */

#FloatingBanner {
position: fixed;
z-index: 1000;
}

@media only screen and (max-width: 767px) {

	#FloatingBanner {
	left: 0;
	right: 0;
	bottom: 1rem;
	margin: 0 1rem;
	}

	#FloatingBanner img {
	width: 100%;
	}

}

@media print, screen and (min-width: 768px) {

	#FloatingBanner {
	right: 0;
	top: 29rem;
	}

	#FloatingBanner img {
	width: 5rem;
	}

}



/* ■ ページの先頭へ（PageTop） ==================================================================================== */

#PageTop {
display: none;
position: fixed;
z-index: 3000;
}

@media only screen and (max-width: 767px) {

	#PageTop {
	right: 15px;
	bottom: 70px;
	}

	#PageTop img {
	width: 40px;
	height: auto;
	}

}

@media print, screen and (min-width: 768px) {

	#PageTop {
	right: 0;
	bottom: 0;
	}

	#PageTop img {
	width: 70px;
	height: auto;
	}

}


@media print, screen and (min-width: 1090px) {

}



/* ■ フッター（Footer） ==================================================================================== */

#Footer .Copyright {
text-align: center;
}

#FooterlNav {
position: relative;
}

@media only screen and (max-width: 767px) {

	#Footer {
	margin-top: -7.5rem;
	padding: 4rem 0 8rem 0;
	background: url(/assets_cp/summer2025/img/footer/Texture_Bg_SP.png) no-repeat center top;
	background-size: 100% auto;
	}

	#Footer .CampaginBanner_List {
    margin: 3rem 1.5rem 0 1.5rem;
	}	
	
	#Footer .BtnEcTopWrap {
    margin: 3rem 1.5rem 0 1.5rem;
	}

	#Footer .BtnEcTopWrap .BtnL {
	padding: 10px 0 12px 15px;
	}	

	#Footer .Copyright {
	margin-top: 30px;
	font-size: 1.0rem;
	}

	#FooterlNav {
	padding: 0 0.5rem;
	}

	/* タブ案内イラスト */
	#FooterlNav .NavInfoIllust {
	width:32.5rem;
	top: -12.5rem;
	left: 0;
	right: 0;
	margin: 0 auto 0 auto;
	}
	
}

@media only screen and (max-width: 372px) {
	
}

@media print, screen and (min-width: 768px) {

	#Footer {
	margin-top: -11rem;
	padding: 11rem 5rem 3rem 5rem;
	background: url(/assets_cp/summer2025/img/footer/Texture_Bg_PC.png) no-repeat center top;
	background-size: 100% auto;
	}

	#Footer .CampaginBanner_List {
    max-width: 54rem;
    margin: 6rem auto 0 auto;
	}	

	#Footer .BtnEcTopWrap {
    width: 48rem;
    margin: 6rem auto 0 auto;
	}

	#Footer .BtnEcTopWrap .BtnL {
	padding: 15px 0 18px 20px;
	}
		
	#Footer .Copyright {
	margin-top: 60px;
	font-size: 1.3rem;
	}

	/* タブ案内イラスト */
	#FooterlNav .NavInfoIllust {
	width: 42.5rem;
	top: -18.5rem;
	left: 0;
	right: 0;
	margin: 0 auto 0 21.25rem;
	}

}

@media print, screen and (min-width: 1090px) {

	#FooterlNav {
	max-width: 94rem;
	margin: 0 auto;
	padding: 0;
	}
	
}




/* ■ 見出し（h1〜） ==================================================================================== */

/* h2 */
.MdsH2 {
line-height: 1.0em;
text-align: center;
}

/* 多角形 */
.MdsPolygon {
position: relative;
margin: 0 auto;
text-align: center;
font-feature-settings: "palt";
}

.MdsPolygon .Inside {
display: flex;
align-items: center;
justify-content: center;
position: absolute;
}

@media only screen and (max-width: 767px) {
	
	/* 多角形 */
	.MdsPolygon {
	line-height: 1.4em;
	}
	
	.MdsPolygon .Inside {
	top: 2px;
	left: 2px;
	right: 2px;
	bottom: 2px;
	}
}

@media only screen and (max-width: 372px) {
	
}

@media print, screen and (min-width: 768px) {
	
	/* 多角形 */
	.MdsPolygon {
	line-height: 1.0em;
	}
	
	.MdsPolygon .Inside {
	top: 3.5px;
	left: 3.5px;
	right: 3.5px;
	bottom: 3.5px;
	}
	
}

@media print, screen and (min-width: 1090px) {

}



/* ■ セクション ==================================================================================== */

/* 多角形 --------------------------------------------------- */

/*
.SectionPolygon {
position: relative;
width: 100%;
height: 100vmin;
margin: 0 auto;
}

.SectionPolygon:before {
display: block;
padding-top: 100%; 
content: "";
}

.SectionPolygon .Inside {
position: absolute;
}
*/

@media only screen and (max-width: 767px) {

	.MdsPolygon .Inside {
	top: 1.5px;
	left: 1.5px;
	right: 1.5px;
	bottom: 1.5px;
	}

}

@media print, screen and (min-width: 768px) {

	.SectionPolygon .Inside {
	top: 2px;
	left: 2px;
	right: 2px;
	bottom: 2px;
	}


}

@media print, screen and (min-width: 1090px) {

}





/* ■ カラム（Col） ==================================================================================== */

@media only screen and (max-width: 767px) {

	/* 6カラム */
	.Col6_SP {
	margin: 0 -0.5%;
	}
	
	.Col6_SP .ColItem,
	.Col6_SP .wp-block-column {
	width: calc(16% - 0.5%);
	margin: 0 0.5% 1%;
	}

	/* 5カラム */
	.Col5_SP {
	margin: 0 -1%;
	}
	
	.Col5_SP .ColItem,
	.Col5_SP .wp-block-column {
	width: calc(19% - 1%);
	margin: 0 1% 2%;
	}

	/* 4カラム */
	.Col4_SP {
	margin: 0 -1.5%;
	}

	.Col4_SP .ColItem,
	.Col4_SP .wp-block-column {
	width: calc(23.5% - 1.5%);
	margin: 0 1.5% 2%;
	}

	/* 3カラム */
	.Col3_SP {
	margin: 0 -1%;
	}

	.Col3_SP .ColItem,
	.Col3_SP .wp-block-column {
	width: calc(32.33333333% - 1%);
	margin: 0 1% 2%;
	}

	/* 2カラム */
	.Col2_SP {
	margin: 0 -2%;
	}

	.Col2_SP .ColItem,
	.Col2_SP .wp-block-column {
	width: calc(48% - 2%);
	margin: 0 2% 2%;
	}

	/* 1カラム */
	.Col1_SP .ColItem,
	.Col1_SP .wp-block-column {
	width: 100%;
	margin-top: 5px;
	}

		/* 1カラム 内 2カラム */
		.Col1_SP .Col2_SP {
		margin: 0 -2%;
		}
	
		.Col1_SP .Col2_SP .ColItem,
		.Col1_SP .Col2_SP .wp-block-column {
		width: calc(48% - 2%);
		margin: 0 2% 2%;
		}

		/* 1カラム 内 3カラム */
		.Col1_SP .Col3_SP {
		margin: 0 -1%;
		}
	
		.Col1_SP .Col3_SP .ColItem,
		.Col1_SP .Col3_SP .wp-block-column {
		width: calc(32.33333333% - 1%);
		margin: 0 1% 2%;
		}

	.Col {
	margin-top: 15px;
	}

}

@media print, screen and (min-width: 768px) {

	/* 6カラム */
	.Col6_PC {
	margin: 0 -0.5%;
	}
	
	.Col6_PC .ColItem,
	.Col6_PC .wp-block-column {
	width: calc(16% - 0.5%);
	margin: 0 0.5% 1%;
	}

	/* 5カラム */
	.Col5_PC {
	margin: 0 -1%;
	}
	
	.Col5_PC .ColItem,
	.Col5_PC .wp-block-column {
	width: calc(19% - 1%);
	margin: 0 1% 2%;
	}

	/* 4カラム */
	.Col4_PC {
	margin: 0 -1.5%;
	}

	.Col4_PC .ColItem,
	.Col4_PC .wp-block-column {
	width: calc(23.5% - 1.5%);
	margin: 0 1.5% 2%;
	}

	/* 3カラム */
	.Col3_PC {
	margin: 0 -1%;
	}

	.Col3_PC .ColItem,
	.Col3_PC .wp-block-column {
	width: calc(32.33333333% - 1%);
	margin: 0 1% 2%;
	}

	/* 2カラム */
	.Col2_PC {
	margin: 0 -2%;
	}

	.Col2_PC .ColItem,
	.Col2_PC .wp-block-column {
	width: calc(48% - 2%);
	margin: 0 2% 2%;
	}

	/* 1カラム */
	.Col1_PC .ColItem,
	.Col1_PC .wp-block-column {
	width: 100%;
	margin-top: 5px;
	}

	/* 70：30 */
	.Col73_PC {
	margin: 0 -1%;
	}

	.Col73_PC .ColItem:nth-child(1n),
	.Col73_PC .wp-block-column:nth-child(1n) {
	width: calc(64.66666666% - 1%);
	margin: 0 1% 2%;
	}

	.Col73_PC .ColItem:nth-child(2n),
	.Col73_PC .wp-block-column:nth-child(2n) {
	width: calc(32.33333333% - 1%);
	margin: 0 1% 2%;
	}

		/* 70：30 内 2カラム */
		.Col73_PC .Col2_PC {
		margin: 0 -2%;
		}
	
		.Col73_PC .Col2_PC .ColItem,
		.Col73_PC .Col2_PC .wp-block-column {
		width: calc(48% - 2%);
		margin: 0 2% 2%;
		}

		/* 70：30 内 3カラム */
		.Col73_PC .Col3_PC {
		margin: 0 -1%;
		}
	
		.Col73_PC .Col3_PC .ColItem,
		.Col73_PC .Col3_PC .wp-block-column {
		width: calc(32.33333333% - 1%);
		margin: 0 1% 2%;
		}

	/* 30：70 */
	.Col37_PC {
	margin: 0 -1%;
	}

	.Col37_PC .ColItem:nth-child(1n),
	.Col37_PC .wp-block-column:nth-child(1n) {
	width: calc(32.33333333% - 1%);
	margin: 0 1% 2%;
	}

	.Col37_PC .ColItem:nth-child(2n),
	.Col37_PC .wp-block-column:nth-child(2n) {
	width: calc(64.66666666% - 1%);
	margin: 0 1% 2%;
	}

		/* 30：70 内 2カラム */
		.Col37_PC .Col2_PC {
		margin: 0 -2%;
		}
	
		.Col37_PC .Col2_PC .ColItem,
		.Col37_PC .Col2_PC .wp-block-column {
		width: calc(48% - 2%);
		margin: 0 2% 2%;
		}

		/* 30：70 内 3カラム */
		.Col37_PC .Col3_PC {
		margin: 0 -1%;
		}
	
		.Col37_PC .Col3_PC .ColItem,
		.Col37_PC .Col3_PC .wp-block-column {
		width: calc(32.33333333% - 1%);
		margin: 0 1% 2%;
		}

	/* 25：50：25 */
	.Col252_PC {
	margin: 0 -1%;
	}

	/* マージントップ */
	.Col {
	margin-top: 25px;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ ナビゲーション ==================================================================================== */

/*
多角形
*/


/* 多角形 --------------------------------------------------- */

.MenuPolygon {
position: relative;
margin: 0 auto;
text-align: center;
background: #000;
}

.MenuPolygon .Inside {
/*
display: flex;
align-items: center;
justify-content: center;
*/
position: absolute;
width: 100%;
height: 100%;
background: #fff;
}

@media only screen and (max-width: 767px) {
	
	.MenuPolygon {
	line-height: 1.4em;
	}
	
	.MenuPolygon .Inside {
	top: 2px;
	left: 2px;
	right: 2px;
	bottom: 2px;
	}
}

@media only screen and (max-width: 372px) {
	
}

@media print, screen and (min-width: 768px) {
	
	.MenuPolygon {
	line-height: 1.0em;
	}
	
	.MenuPolygon .Inside {
	top: 3.5px;
	left: 3.5px;
	right: 3.5px;
	bottom: 3.5px;
	}
	
}


@media print, screen and (min-width: 1090px) {

	.InPageLink {
	max-width: 940px;
	margin: 0 auto;
	}

}



/* ■ 記述リスト（DLHori、DLVert、DLTable） ==================================================================================== */

/*
左右（dlh）
上下（dlv）
テーブルスタイル（dlt）
*/


/* 左右（dlh） --------------------------------------------------- */

.DLHori {
border-top: 1px solid #e5e5e5;
}

.DLHori dl {
border-bottom: 1px solid #e5e5e5;
}

.DLHori dt {
width: 25%;
font-weight: 700;
}

.DLHori dd {
width: 75%;
}

@media only screen and (max-width: 767px) {

	/* 左右（dlh） */
	.DLHori {
	margin-top: 15px;
	}

	.DLHori dt,
	.DLHori dd {
	padding: 10px 0;
	font-size: 1.3rem;
	line-height: 1.7em;
	}

	.DLHori dd {
	padding-left: 15px;
	}

}

@media print, screen and (min-width: 768px) {

	.DLHori {
	margin-top: 15px;
	}
	
	.DLHori dt,
	.DLHori dd {
	padding: 10px 0;
	font-size: 1.5rem;
	line-height: 1.8em;
	}

	.DLHori dd {
	padding-left: 10px;
	}

}

@media print, screen and (min-width: 1090px) {

}


/* 上下（dlv） --------------------------------------------------- */

.DLVert {
border-top: 1px solid #e5e5e5;
}

.DLVert dl {
border-bottom: 1px solid #e5e5e5;
}

.DLVert dt {
font-weight: 700;
}

@media only screen and (max-width: 767px) {

	.DLVert {
	margin-top: 15px;
	}

	.DLVert dl {
	padding: 10px 0;
	}

	.DLVert dt,
	.DLVert dd {
	font-size: 1.4rem;
	}

	.DLVert dd {
	line-height: 1.7em;
	}

}

@media print, screen and (min-width: 768px) {

	.DLVert {
	margin-top: 25px;
	}

	.DLVert dl {
	padding: 10px 0;
	}

	.DLVert dt,
	.DLVert dd {
	font-size: 1.5rem;
	}

	.DLVert dd {
	line-height: 1.8em;
	}

}

@media print, screen and (min-width: 1090px) {

}


/* テーブルスタイル（dlt） --------------------------------------------------- */

.DLTable {
border-top: 1px solid #e5e5e5;
}

.DLTable dl {
border-left: 1px solid #e5e5e5;
}

.DLTable dt,
.DLTable dd {
padding: 10px 15px;
border-right: 1px solid #e5e5e5;
border-bottom: 1px solid #e5e5e5;
}

.DLTable dt {
width: 30%;
font-weight: 700;
background: #f2f4fa;
}

@media only screen and (max-width: 767px) {

	.DLTable {
	margin-top: 15px;
	}

	.DLTable dt,
	.DLTable dd {
	font-size: 1.4rem;
	line-height: 1.7em;
	}

}

@media print, screen and (min-width: 768px) {

	.DLTable {
	margin-top: 25px;
	}

	.DLTable dt,
	.DLTable dd {
	font-size: 1.5rem;
	line-height: 1.8em;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 表組み（Table1、Table2） ==================================================================================== */

table {
width: 100%;
}

th {
border: 1px solid #e5e5e5;
text-align: center;
color: #fff;
background: #1669ac;
}

td {
text-align: center;
border: 1px solid #e5e5e5;
background: #fff;
}

/* 項目左（Table1） */
.Table1 th {
}

/* 項目上（Table2） */
.Table2 th {
text-align: center;
}

@media only screen and (max-width: 767px) {

	table {
	margin-top: 15px;
	}

	th,
	td {
	padding: 10px 10px;
	font-size: 1.3rem;
	line-height: 1.6em;
	}


}

@media print, screen and (min-width: 768px) {

	table {
	margin-top: 15px;
	}

	th,
	td {
	padding: 10px 15px;
	font-size: 1.5rem;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 囲み（Box） ==================================================================================== */

.Box1 {
background: #fff;
}

.Box2 {
background: #fff;
}

.Box3 {
background: #fff;
}

.BoxAlert {
border: 2px solid #e50c0c;
background: #fffee8;
}

@media only screen and (max-width: 767px) {

	.Box {
	margin-top: 15px;
	padding: 20px 20px;
	}

	.Box1 {
	border: 1px solid #ed5c74;
	}
	
	.Box2 {
	border: 1px solid #4db087;
	}
	
	.Box3 {
	border: 1px solid #ee9426;
	}

}

@media print, screen and (min-width: 768px) {

	.Box {
	margin-top: 25px;
	padding: 30px 30px;
	}

	.Box1 {
	border: 2px solid #ed5c74;
	}
	
	.Box2 {
	border: 2px solid #4db087;
	}
	
	.Box3 {
	border: 2px solid #ee9426;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ リスト各種 ==================================================================================== */

/*
ディスク（ListDisc）
ディスク：小（ListDiscS）
米印（ListKome）
米印：小（ListKomeS）
連番（ListNum）
連番：小（ListNumS）
米印連番：小（ListKomeNumS）
*/


/* ディスク（ListDisc） --------------------------------------------------- */

.ListDisc li {
margin-bottom: 8px;
line-height: 1.8em;
}

.ListDisc li:before {
left: 2px;
border-radius: 100%;
background: #000;
}

.ListDisc.Alert li:before {
background: #e50c0c;
}

@media only screen and (max-width: 767px) {

	.ListDisc {
	margin-top: 10px;
	}

	.ListDisc li {
	padding-left: 16px;
	font-size: 1.4rem;
	}

	.ListDisc li:before {
	left: 2px;
	top: 9px;
	width: 8px;
	height: 8px;
	}

}

@media print, screen and (min-width: 768px) {

	.ListDisc {
	margin-top: 15px;
	}

	.ListDisc li {
	padding-left: 15px;
	font-size: 1.5rem;
	}
	
	.ListDisc li:before {
	left: 2px;
	top: 10px;
	width: 8px;
	height: 8px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.ListDisc li {
	padding-left: 20px;
	}
	
	.ListDisc li:before {
	width: 10px;
	height: 10px;
	}

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

	.ListDisc li:before {
	top: 9px;
	}

}

/* Firefox */
@-moz-document url-prefix() {

	.ListDisc li:before {
	top: 9px;
	}

}


/* ディスク：小（ListDiscS） --------------------------------------------------- */

.ListDiscS li {
margin-bottom: 5px;
}

.ListDiscS li:before {
border-radius: 100%;
background: #2e478a;
}

@media only screen and (max-width: 767px) {

	.ListDiscS {
	margin-top: 15px;
	}

	.ListDiscS li {
	padding-left: 16px;
	font-size: 86%;
	line-height: 1.7em;
	}
	
	.ListDiscS li:before {
	left: 4px;
	top: 9px;
	width: 6px;
	height: 6px;
	}

	.Android .ListDiscS li:before {
	top: 9px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListDiscS {
	margin-top: 20px;
	}

	.ListDiscS li {
	padding-left: 15px;
	font-size: 1.2rem;
	line-height: 1.8em;
	}
	
	.ListDiscS li:before {
	left: 4px;
	top: 7px;
	width: 6px;
	height: 6px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.ListDiscS li {
	padding-left: 17px;
	font-size: 1.3rem;
	}
	
	.ListDiscS li:before {
	top: 9px;
	width: 7px;
	height: 7px;
	}

}

/* Firefox */
@-moz-document url-prefix() {

	.ListDiscS li:before {
	top: 9px;
	}

}


/* 米印（ListKome） --------------------------------------------------- */

.ListKome li {
margin-bottom: 5px;
}

.ListKome li:before {
left: 1px;
}


@media only screen and (max-width: 767px) {

	.ListKome {
	margin-top: 20px;
	}

	.ListKome li {
	padding-left: 17px;
	line-height: 1.8em;
	}

	.ListKome li:before {
	top: 0px;
	font-size: 93%;
	}

	.Android .ListKome li:before {
	top: 1px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListKome {
	margin-top: 25px;
	}

	.ListKome li {
	padding-left: 16px;
	line-height: 1.8em;
	}
	
	.ListKome li:before {
	top: 1px;
	font-size: 1.4rem;
	}

}

@media print, screen and (min-width: 1090px) {

	.ListKome li {
	padding-left: 18px;
	}

	.Win .ListKome li:before {
	top: -1px;
	}

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

	.Win .ListKome li:before {
	top: 1px;
	}

}

/* Firefox */
@-moz-document url-prefix() {

	.ListKome li:before {
	top: 1px;
	}

	.Win .ListKome li:before {
	top: 0;
	}

}


/* 米印：小（ListKomeS） --------------------------------------------------- */

.ListKomeS li {
margin-bottom: 5px;
line-height: 1.8em;
}

.ListKomeS li:before {
left: 1px;
}

@media only screen and (max-width: 767px) {

	.ListKomeS {
	margin-top: 15px;
	}

	.ListKomeS li {
	padding-left: 16px;
	font-size: 1.2rem;
	}
	
	.ListKomeS li:before {
	top: 0;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListKomeS {
	margin-top: 20px;
	}

	.ListKomeS li {
	padding-left: 13px;
	font-size: 1.3rem;
	}
	
	.ListKomeS li:before {
	top: 0;
	font-size: 1.3rem;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.ListKomeS li {
	padding-left: 15px;
	}

	.ListKomeS li:before {
	top: 1px;
	}

	.Win .ListKomeS li:before {
	top: -1px;
	}

}

/* IE10以上 */
@media all and (-ms-high-contrast: none) {

	.Win .ListKomeS li:before {
	top: 1px;
	}

}


/* 連番（ListNum） --------------------------------------------------- */

.ListNum {
padding-left: 4px;
}

.ListNum li {
margin-bottom: 10px;
line-height: 1.8em;
counter-increment: ListNum;
}

.ListNum li:before {
left: 1px;
top: 0;
font-weight: 700;
}

.ListNum li > ol {
margin-top: 10px;
padding-left: 0;
}

.ListNum li > ol li {
counter-increment: Sub;
}

.ListNum li > ol li:before {
content: counter(Sub)".";
}

@media only screen and (max-width: 767px) {

	.ListNum {
	margin-top: 15px;
	}

	.ListNum li {
	padding-left: 18px;
	font-size: 1.5rem;
	}

	.ListNum li:nth-child(n+10):before {
	left: -8px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListNum {
	margin-top: 15px;
	}

	.ListNum li {
	padding-left: 15px;
	font-size: 1.5rem;
	}

	.ListNum li:nth-child(n+10):before {
	left: -5.5px;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.ListNum li:nth-child(n+10):before {
	left: -8px;
	}

	.ListNum li {
	padding-left: 18px;
	}

}


/* 連番：小（ListNumS） --------------------------------------------------- */

.ListNumS {
padding-left: 4px;
}

.ListNumS li {
margin-bottom: 5px;
font-size: 86%;
counter-increment: ListNum;
}

.ListNumS li:before {
left: 1px;
top: 0;
font-size: 97%;
}

@media only screen and (max-width: 767px) {

	.ListNumS {
	margin-top: 15px;
	}

	.ListNumS li {
	padding-left: 16px;
	line-height: 1.7em;
	}

	.ListNumS li:nth-child(n+10):before {
	left: -7px;
	}

	.Android .ListNumS li:before {
	top: 1px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListNumS {
	margin-top: 20px;
	}

	.ListNumS li {
	padding-left: 13px;
	font-size: 1.2rem;
	line-height: 1.8em;
	}

	.ListNumS li:nth-child(n+10):before {
	left: -4.5px;
	}

}

@media print, screen and (min-width: 1090px) {

	.ListNumS li:nth-child(n+10):before {
	left: -6.5px;
	}

	.ListNumS li {
	padding-left: 16px;
	font-size: 1.3rem;
	}

}


/* 米印連番：小（ListKomeNumS） --------------------------------------------------- */

.ListKomeNumS li {
margin-bottom: 5px;
counter-increment: ListNum;
}

.ListKomeNumS li:before {
left: 1px;
top: 0;
font-size: 97%;
}

@media only screen and (max-width: 767px) {

	.ListKomeNumS {
	margin-top: 15px;
	}

	.ListKomeNumS li {
	padding-left: 26px;
	font-size: 1.2rem;
	line-height: 1.7em;
	}

	.Android .ListKomeNumS li:before {
	top: 1px;
	}
	
}

@media print, screen and (min-width: 768px) {

	.ListKomeNumS {
	margin-top: 20px;
	}

	.ListKomeNumS li {
	padding-left: 22px;
	font-size: 1.3rem;
	line-height: 1.8em;
	}
	
}

@media print, screen and (min-width: 1090px) {

	.ListKomeNumS li {
	padding-left: 25px;
	}

}



/* ■ テキストリンクアイコン ==================================================================================== */

.LinkFwd,
.LinkBack,
.LinkDown,
.LinkUp {
display: inline-block;
position: relative;
padding-left: 16px;
}

.LinkFwd:after,
.LinkBack:after,
.LinkDown:after,
.LinkUp:after {
display: block;
position: absolute;
left: 0;
width: 8px;
height: 8px;
border-top: solid 2px;
border-right: solid 2px;
content: '';
}

.LinkNewWin,
.LinkNewWin2,
.LinkPDF {
display: inline-block;
position: relative;
}

.LinkNewWin,
.LinkNewWin2 {
padding-right: 15px;
}

.LinkPDF {
padding-left: 20px;
}

.LinkNewWin:before,
.LinkNewWin2:before,
.LinkPDF:before,
.LinkNewWin:after,
.LinkNewWin2:after,
.LinkPDF:after {
display: block;
position: absolute;
content: '';
}

/* 進む（LinkFwd） */
.LinkFwd:after {
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* 戻る（LinkBack） */
.LinkBack:after {
left: 2px;
-ms-transform: rotate(225deg);
-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}

/* 下へ（LinkDown） */
.LinkDown:after {
margin-top: -5px;
-ms-transform: rotate(135deg);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

/* 上へ（LinkUp） */
.LinkUp:after {
margin-top: -2px;
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* 別ウインドウ（LinkNewWin） */
.LinkNewWin:before {
right: 0;
top: 50%;
width: 9px;
height: 7px;
margin-top: -2px;
border: 1px solid #185ea7;
background-color: #fff;
}

.LinkNewWin:after {
right: -2px;
top: 40%;
width: 9px;
height: 7px;
margin-top: -2px;
border: 1px solid #185ea7;
border-top: 2px solid;
background-color: #fff;
}

/* 別ウインドウ（LinkNewWin2） */
.LinkNewWin2:before {
right: 0;
top: 50%;
width: 9px;
height: 7px;
margin-top: -2px;
border: 1px solid #fff;
}

.LinkNewWin2:after {
right: -2px;
top: 40%;
width: 9px;
height: 7px;
margin-top: -2px;
border: 1px solid #fff;
background-color: #fff;
}

/* PDF（LinkPDF） */
.LinkPDF:before {
left: 0;
top: 50%;
width: 13px;
height: 16px;
margin-top: -8px;
border: 1px solid #a6a6a6;
background-color: #fff;
}

.LinkPDF:after {
left: -2px;
top: 35%;
width: 10px;
height: 4px;
font-size: 6px;
background-color: #cc0000;
}

@media only screen and (max-width: 767px) {

	.LinkFwd:after,
	.LinkBack:after {
	top: 11px;
	}

	.LinkDown:after,
	.LinkUp:after {
	top: 16px;
	}

	/* PDF（LinkPDF） */
	.LinkPDF {
	}

}

@media print, screen and (min-width: 768px) {

	.LinkFwd:after,
	.LinkBack:after {
	top: 12px;
	}

	.LinkDown:after,
	.LinkUp:after {
	top: 17px;
	}

	/* PDF（LinkPDF） */
	.LinkPDF {
	}
	
}

@media print, screen and (min-width: 1090px) {

	/* PDF（LinkPDF） */
	.LinkPDF {
	}

}



/* ■ ボタン ==================================================================================== */

.Btn {
display: block;
width: 100%;
border-radius: 50px;
box-sizing: border-box;
line-height: 1.0em;
font-weight: bold;
text-align: center;
text-decoration: none;
}

.BtnS,
.BtnM,
.BtnL {
display: inline-block;
position: relative;
border-radius: 50px;
font-weight: 700;
line-height: 1.0em;
text-align: center;
}

/* 矢印 */
.BtnAllowLeft:after,
.BtnAllowRight:after,
.BtnAllowBack:after,
.BtnAllowDownLeft:after,
.BtnAllowDownRight:after,
.BtnAllowUpLeft:after,
.BtnAllowUpRight:after {
display: block;
position: absolute;
top: 50%;
width: 10px;
height: 10px;
margin-top: -6px;
border-top: solid 1px;
border-right: solid 1px;
content: '';
}

/* 矢印：左 */
.BtnAllowLeft:after {
left: 8px;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* 矢印：右 */
.BtnAllowRight:after {
right: 15px;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* 矢印：戻る */
.BtnAllowBack:after {
left: 15px;
-ms-transform: rotate(225deg);
-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}

/* 矢印：下向き左 */
.BtnAllowDownLeft:after {
left: 10px;
margin-top: -6px;
-ms-transform: rotate(135deg);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

/* 矢印：下向き右 */
.BtnAllowDownRight:after {
right: 10px;
margin-top: -6px;
-ms-transform: rotate(135deg);
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}

/* 矢印：上向き左 */
.BtnAllowUpLeft:after {
left: 10px;
margin-top: -3px;
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* 矢印：上向き右 */
.BtnAllowUpRight:after {
right: 10px;
margin-top: -3px;
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* 閉じる */
.BtnClose:before,
.BtnClose:after {
display: block;
position: absolute;
left: 14px;
top: 50%;
height: 14px;
margin-top: -7px;
border: 1px solid;
content: "";
}

/* 拡大 */
.BtnZoom:before {
display: block;
position: absolute;
left: 14px;
top: 50%;
width: 16px;
height: 16px;
margin-top: -8px;
background: url(/img/common/icon/Icon_Search.png) no-repeat;
background-size: contain;
content: "";
}

.BtnClose:before {
transform: rotate(-45deg);
}
.BtnClose:after {
transform: rotate(45deg);
}

/* カラー：1 */
.BtnColor1:link,
.BtnColor1:active,
.BtnColor1:visited,
.BtnColor1:hover {
border: 2px solid #000;
color: #000;
background: #e5e647 url(/assets_cp/summer2023/img/Icon_LinkFwd1.png) no-repeat;
background-size: 15px auto;
background-position: 7% 50%;
}

/*
.BtnColor1:after {
border-color: #1669ac;
}
*/

/* カラー：2 */
.BtnColor2:link,
.BtnColor2:active,
.BtnColor2:visited,
.BtnColor2:hover {
border: 2px solid #1669ac;
color: #fff;
background: #1669ac;
}

/*
.BtnColor2:after {
border-color: #fff;
}
*/

/* カラー：3 */
.BtnColor3:link,
.BtnColor3:active,
.BtnColor3:visited,
.BtnColor3:hover {
color: #fff;
background: #c30000;
}

/*
.BtnColor3:after {
border-color: #fff;
}
*/

/* ご購入はこちら */
.BtnBuy {
border: 2px solid #b8daeb;
background: #f1f8fd url(/images/sp/common/icon/Icon_LinkFwd_Blue.png) no-repeat;
color: #3d5fc4;
}

@media only screen and (max-width: 767px) {

	.BtnS {
	width: 100%;
	padding: 10px 20px 12px 25px;
	font-size: 1.4rem;
	}

	.BtnM {
	width: 100%;
	padding: 14px 20px 16px 20px;
	font-size: 1.4rem;
	}
	
	.BtnL {
	width: 100%;
	padding: 10px 20px 12px 20px;
	font-size: 1.4rem;
	}

	/* プログラム一覧 */
	.BtnProgramWrap {
	margin-top: 25px;
	padding-top: 25px;
	border-top: 3px solid #000;
	}
	
	.BtnProgramWrap .Btn {
	padding-left: 30px;
	}

	/* ご購入はこちら */
	.BtnBuy {
	width: 85%;
	margin-top: 15px;
	padding: 8px 0 8px 7%;
	background-position: 6% 50%;
	background-size: 15px auto;
	font-size: 12px;
	}		
}

@media only screen and (max-width: 372px) {

	.BtnS {
	font-size: 1.1rem;
	}

}

@media print, screen and (min-width: 768px) {

	.BtnS {
	padding: 8px 40px;
	}
	
	.BtnM {
	padding: 12px 40px 15px 40px;
	}
	
	.BtnL {
	padding: 15px 80px 18px 80px;
	font-size: 2.2rem;
	}

	.BtnS.BtnColor1:link,
	.BtnS.BtnColor1:active,
	.BtnS.BtnColor1:visited,
	.BtnS.BtnColor1:hover {
	background-size: 16px auto;
	background-position: 4% 50%;
	}

	.BtnL.BtnColor1:link,
	.BtnL.BtnColor1:active,
	.BtnL.BtnColor1:visited,
	.BtnL.BtnColor1:hover {
	background-size: 28px auto;
	background-position: 4% 50%;
	}
	
	/* 拡大 */
	.BtnZoom {
	padding-right: 20px;
	}

	/* プログラム一覧 */
	.BtnProgramWrap {
	margin: 55px auto 0 auto;
	padding: 55px 50px 0 50px;
	border-top: 4px solid #000;
	text-align: center;
	}

	/* ご購入はこちら */
	.BtnBuy {
	width: 154px;
	margin-top: 20px;
	padding: 8px 0 8px 4.5%;
	background-size: 16px auto;
	background-position: 6% 50%;
	font-size: 14.5px;
	}
			
}

@media print, screen and (min-width: 1090px) {

	/* プログラム一覧 */
	.BtnProgramWrap {
	max-width: 940px;
	padding: 55px 0 0 0;
	}
	
}



/* ■ ページネーション ==================================================================================== */

.PageNation li a {
display: block;
border-radius: 2px;
}

.PageNation li.Prev a,
.PageNation li.Next a {
position: relative;
border: 1px solid #1567a6;
text-indent: -9999px;
background-color: #1567a6;
}

.PageNation li.Prev a:before,
.PageNation li.Next a:before {
display: block;
position: absolute;
top: 50%;
width: 8px;
height: 8px;
margin-top: -5px;
border-top: solid 2px #fff;
border-right: solid 2px #fff;
content: '';
}

.PageNation li.Prev a:before {
left: 45%;
-ms-transform: rotate(225deg);
-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}

.PageNation li.Next a:before {
right: 45%;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {

	.PageNation {
	margin-top: 20px;
	}
	
	.PageNation .Num {
	margin-bottom: -33px;
	font-size: 86%;
	text-align: center;
	}
	
	.PageNation li:not(.Prev):not(.Next) {
	display: none;
	}
	
	.PageNation li a {
	padding: 12px 18px;
	border: 1px solid #1567a6;
	line-height: 1.0em;
	text-indent: -9999px;
	}
	
	.PageNation li.Prev {
	float: left;
	}
	
	.PageNation li.Next {
	float: right;
	}

}

@media print, screen and (min-width: 768px) {

	.PageNation .Num {
	float: left;
	padding: 12px 0;
	line-height: 1.0em;
	}
	
	.PageNation ul {
	float: right;
	}
	
	.PageNation li {
	float: left;
	margin-left: 5px;
	line-height: 1.0em;
	}
	
	.PageNation li a {
	float: left;
	padding: 8px 12px;
	border: 1px solid #ccc;
	}
	
	.PageNation li a:link,
	.PageNation li a:active,
	.PageNation li a:visited {
	text-decoration: none;
	}
	
	.PageNation li.Current a {
	border: 1px solid #ccc;
	font-weight: 700;
	color: #000;
	background: #f2f2f2;
	}
	
	.PageNation li.Prev {
	margin-right: 10px;
	}
	
	.PageNation li.Prev a {
	padding: 8px 20px;
	}
	
	.PageNation li.Next {
	margin-left: 15px;
	}
	
	.PageNation li.Next a {
	padding: 8px 20px;
	}
	
	.PageNation .Abbr {
	display: block;
	padding: 9px 2px;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ タブメニュー ==================================================================================== */

.TabMenu {
display: flex;
justify-content: space-between;
margin-top: 30px;
background: #fff;
}

.TabMenu li {
display: flex;
width: 100%;
margin-right: 1px;
background: #eee;
}

.TabMenu li:last-child {
margin-right: -1px;
}

.TabMenu a {
display: flex;
justify-content: space-between;
flex-direction: column;
justify-content: center;
width: 100%;
padding: 20px 10px;
font-size: 1.5rem;
line-height: 1.4em;
font-weight: 700;
text-align: center;
color: #2e478a;
background: #dfe4f4;
box-shadow: 0px -11px 10px -10px rgba(0,0,0,0.15) inset;
}

.TabMenu a.Current {
color: #fff;
background: #2e478a;
box-shadow: none;
}

.TabMenu a.Current:hover {
opacity: 1;
}

.TabContent {
display: none;
}

.TabContent.Current {
display: block;
}

/* Child */
.TabMenuChild {
display: flex;
justify-content: space-between;
border-right: 1px solid #2e478a;
border-bottom: 1px solid #2e478a;
background: #fff;
}

.TabMenuChild li {
display: flex;
width: 100%;
border-left: 1px solid #2e478a;
border-top: 1px solid #2e478a;
}

.TabMenuChild a {
display: flex;
justify-content: space-between;
flex-direction: column;
justify-content: center;
width: 100%;
padding: 10px 10px;
font-size: 1.5rem;
line-height: 1.4em;
font-weight: 700;
text-align: center;
color: #2e478a;
}

.TabMenuChild a.Current {
background: #dfe4f4;
}

.TabMenuChild a.Current:hover {
opacity: 1;
}

.TabContentChild {
display: none;
}

.TabContentChild.Current {
display: block;
}

@media only screen and (max-width: 767px) {

	.TabContent,
	.TabContentChild {
	display: block !important;
	margin-top: 3px;
	}

	.TabContent:nth-of-type(1) {
	margin-top: 20px;
	}

	.TabContent h2.MdsH2 {
	margin: 0 -15px !important;
	}

	.TabContent h2.MdsH2 a {
	color: #2e478a;
	}

}

@media print, screen and (min-width: 768px) {

	.TabContent {
	margin-top: 50px;
	}

	.TabMenuWrap,
	.TabMenuWrapChild {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1000;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ アコーディオンメニュー ==================================================================================== */

.AccoMenu,
.AccoMenuChild {
display: block;
position: relative;
font-weight: 700;
color: #fff;
background: #1669ac
}

.AccoMenu:after {
display: block;
position: absolute;
top: 50%;
right: 22px;
width: 8px;
height: 8px;
margin-top: -4px;
border-top: 1px solid #fff;
border-right: 1px solid #fff;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
content: '';
}

.AccoMenu:before,
.AccoMenu:after {
display: block;
position: absolute;
top: 50%;
right: 17px;
width: 15px;
height: 2px;
margin-top: 0;
background: #fff;
content: "";
}

.AccoMenu:after {
transform: rotate(90deg);
}

.AccoMenu.Current:after {
display: none;
}

.AccoContent,
.AccoContentChild {
display: none;
}

.AccoMenu,
.AccoMenuChild {
color: #fff !important;
}

@media only screen and (max-width: 767px) {

	.AccoMenu {
	padding: 10px 30px 14px 20px;
	}

}

@media only screen and (max-width: 372px) {

	.AccoMenu {
	font-size: 1.3rem;
	}

}

@media print, screen and (min-width: 768px) {

	.AccoMenu {
	padding: 10px 20px 12px 20px;
	}

}

@media print, screen and (min-width: 1090px) {

}



/* ■ 印刷用設定 ==================================================================================== */



