@charset "utf-8";

/*初期設定*/
body {
	background-color: #000;
	font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", serif;
	font-weight: 600;
	font-feature-settings: "palt"/*, "kern"*/;
	-webkit-font-feature-settings: "palt"/*, "kern"*/;
	color: #fff;
}
body * {
	box-sizing: border-box;
}
img {
	width: 100%;
	max-width: 100%;
}
a {
	text-decoration: none;
}
.material-icons {
	display: inline-flex;
	vertical-align: middle;
}
.pc_only {
	display: none !important;
}
.c_min {
}
.c_gothic {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif;
	font-weight: bold;
}
.Flex {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
.FlCenter {
	/* 上下中央 */
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.FlBottom {
	/* 下揃え */
	-ms-flex-align: flex-end;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}
.FlWrap {
	/* 折り返し */
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.FlJustifySB {
	/* 左右均等 */
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.FlJustifyCenter {
	/* 左右中央 */
	justify-content: center;
}
#c_wrapper {
	margin: 0 auto;
	position: relative;
	background:
		url("../img/common/c_cont_bg_1.png") no-repeat right top,
		url("../img/common/c_cont_bg_2.jpg") no-repeat center bottom;
	background-size: 
		45.333% auto,
		contain auto;
}

/*ハンバーガーメニュー*/
#c_hum {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;
	width: 100%;
}
@media screen and (min-width:960px) {
	#c_hum {
		right: calc((100% - 960px) / 2);
	}
}
#c_hum_open {
	position: absolute;
	top: 12px;
	right: 10px;
	width: 46px;
}
#c_hum_navi {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #dadada;
	display: none;
}
#c_hum_navi_hdr {
	padding: 20px 10px 0 15px;
	background-color: #fff;
}
#c_hum_navi_hdr_l {
}
#c_hum_navi_logo {
	width: 39px;
}
#c_hum_navi_name {
	font-size: 16px;
	color: #595757;
	margin-left: 19px;
}
#c_hum_navi_close {
	width: 46px;
	padding-top: 2px;
}
#c_hum_navi_fix {
	padding: 30px 15px 0;
	background-color: #fff;
}
#c_hum_navi_fix li {
	margin-top: 3px;
}
#c_hum_navi_fix li a {
	width: 100%;
	display: inline-block;
	color: #fff;
	padding: 10px 15px;
}
#c_hum_navi_fix li:nth-of-type(1) a {
	background-color: #b5272d;
}
#c_hum_navi_fix li:nth-of-type(2) a {
	background-color: #000;
}
#c_hum_navi_scroll {
	padding-top: 8px;
	background-color: #fff;
}
@media screen and (max-height:760px) {
	#c_hum_navi_scroll {
		overflow-y: scroll;
		height: calc(100vh - 138px);
	}
}
#c_hum_navi_scroll_main_list li a {
	width: 100%;
	display: inline-block;
	color: #666666;
	padding: 10px 30px;
}
#c_hum_navi_scroll_main_list li a:hover {
	color: #fff;
	background-color: #888889;
}
#c_hum_navi_scroll_main_list li a i.hide {
	display: none;
}
#c_hum_navi_scroll_lang_list {
	display: none;
}
#c_hum_navi_scroll_lang_list li a {
	padding-left: 45px;
}
#c_hum_navi_scroll_sns {
	background-color: #b8b8b8;
	/*padding: 17px 30px;*/
	padding: 17px 120px;
}
#c_hum_navi_scroll_sns_navi li {
	margin: 0 4px;
}
#c_hum_navi_scroll_sns_navi li:nth-of-type(1) {
	width: 33px;
	display: none;
}
#c_hum_navi_scroll_sns_navi li:nth-of-type(2) {
	width: 30px;
}
#c_hum_navi_scroll_sns_navi li:nth-of-type(3) {
	width: 30px;
}
#c_hum_navi_scroll_sns_navi li:nth-of-type(4) {
	width: 29px;
}


/*ヘッダー*/
.c_hdr {
	min-height: 180px;
	text-align: center;
	background: url("../img/common/c_hdr_bg.png") no-repeat left top;
	background-size: auto 152px;
	padding: 80px 0;
}
.c_hdr h1 {
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0.08em;
}

/*コンテンツ*/
.c_cont {
	padding-bottom: 9.33%;
}
.c_cont_inr {
	width: 80%;
	margin: 0 auto;
}

/*コンテンツ　下部リンク*/
.c_cont_btm {
	margin-top: 15%;
}
.c_cont_btm_list li {
	margin-top: 10px;
}
.c_cont_btm_list li a {
	display: block;
	width: 162px;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0.14em;
	color: #000;
	text-align: center;
	margin: 0 auto;
	padding: 16px 0;
	background: #fff url("../img/common/c_cont_btm_arrow.png") no-repeat right center;
	background-size: 14px auto;
}

/*コンテンツ　フロートナビ*/
#c_cont_fnavi {
	position: fixed;
	left: 0;
	top: 237px;
	width: 10%;
	max-width: 75px;
	z-index: 99;
}
ul#c_cont_fnavi li a {
	display: block;
	position: relative;
	box-shadow: 0 3px 6px rgba(0,0,0,0.4);
}
ul#c_cont_fnavi li a::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: calc(100% - 4px);
	max-width: 71px;
	height: calc(100% - 10px);
	max-height: 158px;
	display: block;
	border-top: solid 5px rgba(255,255,255,0.2);
	border-left: solid 2px rgba(122,122,122,0.3);
	border-right: solid 2px rgba(122,122,122,0.3);
	border-bottom: solid 5px rgba(0,0,0,0.2);
}
ul#c_cont_fnavi li a:hover:after {
	height: calc(100% - 4px);
	max-height: 160px;
	background: rgba(255,255,255,0.2);
	border-top: solid 2px rgba(255,255,255,0.2);
	border-bottom: solid 2px rgba(0,0,0,0.2);
	transition: 0.3s;
}

/*フッター*/
#c_ftr_sns {
	background-color: #b8b8b8;
	padding: 13px 0;
}
#c_ftr_sns_list li:nth-of-type(n+2) {
	margin-left: 28px;
}
#c_ftr_sns_line {
	width: 37px;
}
#c_ftr_sns_twitter {
	width: 34px;
}
#c_ftr_sns_insta {
	width: 33px;
}
#c_ftr_sns_fb {
	width: 32px;
}
#c_ftr_btm {
	color: #b8b8b8;
	background-color: #3c3c3c;
	padding: 25px 0;
}
#c_ftr_btm_navi {
	color: #b8b8b8;
	font-size: 9px;
	letter-spacing: 0.14em;
	width: 320px;
	margin: 0 auto;
}
#c_ftr_btm_navi a {
	color: #b8b8b8;
}
#c_ftr_btm_navi li:nth-of-type(n+2) {
	margin-left: 9px;
}
#c_ftr_btm_navi li:nth-of-type(7) {
	margin-left: 0;
}
#c_ftr_btm_navi li:nth-of-type(n+7) {
	margin-top: 15px;
}
#c_ftr_btm_lang {
	color: #b8b8b8;
	font-size: 9px;
	letter-spacing: 0.14em;
	width: 320px;
	margin: 24px auto 0;
}
#c_ftr_btm_lang li:nth-of-type(n+2):before {
	content: "|";
}
#c_ftr_btm_lang li a {
	color: #b8b8b8;
	margin: 0 1em;
}
#c_ftr_btm_omotenashi {
	width: 156px;
	margin: 24px auto 0;
}
#c_ftr_btm_copy {
	margin-top: 24px;
	font-weight: bold;
	font-size: 4px;
	letter-spacing: 0.14em;
	text-align: center;
}
/* 240807 追加*/
.c_cont_box .sp_header_img {
	width: 159px;
	margin: 0 auto;
}
#info_cont_s_body .h2-add {
	font-size: 1.17em;
}
#info_cont_s_body .h3-add {
	font-size: 12px;
}
#info_cont_s_body .fun-h2 {
	font-size: 12px;
}
.c_gothic .f_navi_add{margin-top: 20px !important;}
#c_ftr_btm_navi {letter-spacing: inherit;}
.c_gothic .f_navi_add li:first-child a{margin: 0 1em;}
.c_gothic .f_navi_add li:first-child:after{content: "||";}
#ez-toc-container {background: none !important; border: 1px solid #e5bd54 !important; padding: 10px 20px 10px 20px !important; margin-bottom: 2em !important;}
#ez-toc-container .ez-toc-title {font-size: 1.17em !important; text-align: center !important;}
#ez-toc-container a {color: #fff !important; font-size: 12px !important;}
.breadcrumbs_wrap{position:absolute;}
.breadcrumbs{padding: 20px 10px 0; font-size: .8rem; line-height: 1.2;}
.breadcrumbs a{color:#fff; text-shadow: #000 0px 0px 3px;}
/* END 240807 追加*/

/* 241117追記 */
.follow-cta {
	background-color: #FFF;
	position: fixed;
	bottom: 0;
	z-index: 1000;
}
.follow-cta__list {
	display: flex;
	gap: 5px;
	padding: 10px 1%;
}
.follow-cta__img {
	width: 30%;
    margin: 0 auto 15px;
}
.follow-cta__name {
	text-align: center;
    color: #000;
	font-size: 14px;
}
.follow-header {
	position: fixed;
    top: 12px;
    right: 66px;
	z-index: 1000;
}
.follow-header__list {
	display: flex;
	gap: 10px;
}
.follow-header__item {
	width: 46px;
}
.follow-header__img {
	width: 60%;
    margin: 0 auto 5px;
}
.follow-header__name {
	font-size: 12px;
    text-align: center;
    color: #FFF;
}

@media screen and (min-width:768px) {
	.follow-cta, .follow-header {
		display: none;
	}
}


/* 20260521 追記 */
@media (max-width: 768px) {
        .hotpot-title {
        font-size: 22px;
        font-weight: bold;
        letter-spacing: 0.08em;
    }

	.c_cont_box h1 {
		font-size: 22px;
		letter-spacing: -0.06em;
	}
    }
/* 20260521 追記 end */

/* 20260629 追記 */
/* フッター（kn-footer） */
.kn-footer {
	background-color: #000;
	padding: 50px 30px;
	color: #e7ddc8;
	-webkit-font-smoothing: antialiased;
}
.kn-footer *,
.kn-footer *::before,
.kn-footer *::after {
	box-sizing: border-box;
}

.kn-footer__inner {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	max-width: 1280px;
	margin: 0 auto;
}

/* ロゴ */
.kn-footer__logo {
	flex: 0 0 auto;
	width: 100px;
}
.kn-footer__logo img {
	display: block;
	width: 100%;
	height: auto;
}

/* ナビ */
.kn-footer__nav {
	flex: 1 1 auto;
}
.kn-footer__cols {
	display: flex;
	flex-wrap: wrap;
	gap: 28px 44px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.kn-footer__col {
	flex: 0 0 auto;
	list-style: none;
}

/* 見出し */
.kn-footer__heading {
	margin: 0 0 14px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.04em;
	color: #e7ddc8;
}
.kn-footer__heading a {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.2s ease;
}
.kn-footer__heading a:hover {
	opacity: 0.7;
}

/* サブリンク */
.kn-footer__list {
	margin: 0;
	padding: 0;
	list-style: none;
}
.kn-footer__list li {
	margin-bottom: 8px;
	list-style: none;
}
.kn-footer__list li:last-child {
	margin-bottom: 0;
}
.kn-footer__list a {
	position: relative;
	display: inline-block;
	padding-left: 1em;
	font-size: 14px;
	line-height: 1.5;
	color: #cfc4ac;
	text-decoration: none;
	transition: opacity 0.2s ease;
}
.kn-footer__list a::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
.kn-footer__list a:hover {
	opacity: 0.7;
}

/* ===== SP（スマホ）===== */
@media screen and (max-width: 767px) {
	.kn-footer {
		padding: 36px 20px;
	}
	.kn-footer__inner {
		flex-direction: column;
		align-items: center;
		gap: 30px;
	}
	.kn-footer__logo {
		width: 90px;
	}
	/* ナビは中央寄せのブロックとして配置し、中身は左揃え */
	.kn-footer__nav {
		width: 100%;
		max-width: 360px;
	}
	/* 2カラム化：HTMLの並び順のまま左右に振り分け */
	.kn-footer__cols {
		gap: 30px 20px;
		justify-content: flex-start;
	}
	.kn-footer__col {
		flex: 0 0 calc(50% - 10px);
		max-width: calc(50% - 10px);
	}
	.kn-footer__heading {
		margin-bottom: 10px;
		font-size: 15px;
	}
	.kn-footer__list a {
		font-size: 13px;
	}
}
/* 20260629 追記 end */

/* 20260831 追記 */
/*ハンバーガーメニュー：CSSアイコン化（1つのボタンが☰⇔✕に変形）*/
#c_hum_open {
	box-sizing: border-box;
	height: 46px;
	border: 2px solid #fff;
	border-radius: 8px;
	z-index: 2;
	transition: border-color 0.3s ease;
}
#c_hum_open span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 60%;
	height: 2px;
	border-radius: 2px;
	background-color: #fff;
	transition: transform 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
}
#c_hum_open span:nth-of-type(1) {
	transform: translate(-50%, -50%) translateY(-7px);
}
#c_hum_open span:nth-of-type(2) {
	transform: translate(-50%, -50%);
}
#c_hum_open span:nth-of-type(3) {
	transform: translate(-50%, -50%) translateY(7px);
}
#c_hum.is-open #c_hum_open {
	border-color: transparent;
}
#c_hum.is-open #c_hum_open span {
	background-color: #999999;
}
#c_hum.is-open #c_hum_open span:nth-of-type(1) {
	transform: translate(-50%, -50%) rotate(45deg);
}
#c_hum.is-open #c_hum_open span:nth-of-type(2) {
	opacity: 0;
}
#c_hum.is-open #c_hum_open span:nth-of-type(3) {
	transform: translate(-50%, -50%) rotate(-45deg);
}
/* 20260831 追記 end */