@charset "utf-8";
/*
Theme Name: dazaifutenmangu2
Theme URI: https://dazaifutenmangu.or.jp/
Version: 2.0
*/

/* common
---------------------------------------------------------------------------*/
html {
	height: -webkit-fill-available;
}

body {
	background-color: #FFFFFF;
	color: #606060;
	font-size: 13px;
	font-family: dnp-shuei-mincho-pr6n, '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	font-weight: 500;
	font-style: normal;
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	min-height: 100vh;
	min-height: -webkit-fill-available;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

body.noscroll { overflow-y: scroll; position: fixed; width: 100%; }
.window-height { position: fixed; top: 0; left: 0; width: 0; height: 100vh; z-index: -999; }

::-moz-selection { background: #CCCCCC; color: #606060; }
::selection { background: #CCCCCC; color: #606060; }

p { font-size: 14px; line-height: 1.9; letter-spacing: 0.12em; margin-bottom: 14px; }
p:last-of-type { margin-bottom: 0 !important; padding-bottom: 0 !important; }
address,i { font-style: normal; }
.justify { text-align: justify; }
.notjustify { text-align: left !important; }

h1,h2,h3,h3 a,h4,h5,h6,dt { color: #282828; font-weight: 500; }
strong { font-weight: 500; }

.clearfix:after { content: ''; display: block; clear:both; }

body#pc .pc_view { display: block !important; }
body#pc .sp_view { display: none !important; }g
body#sp .sp_view { display: block !important; }
body#sp .pc_view { display: none !important; }
body#pc .block, body#sp .block { display: block !important; }
body#pc .block, body#sp .none { display: none !important; }
body#sp .sp_view.inline { display: inline-block !important; }
.none { display: none; }

/* #loading
------------------------------------*/
#loading,
.loading {
	display: block;
	opacity: 1;
	position: fixed;
	top: 50%;
	left: 50%;
	border: 1px solid rgba(0,0,0,0.4);
	border-top-color: transparent;
	border-radius: 50%;
	width: 16px;
	height: 16px;
	margin: -8px 0 0 -8px;
	z-index: 99999;
	animation: spin .45s infinite linear;
}

@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* lazyload
------------------------------------*/
.lazy { transition: opacity .15s ease-out !important; opacity: 0; }
.lazy.lazyloaded { opacity: 1; }

/* txt
------------------------------------*/
.normal { font-weight: 400 !important; }
.bold { font-weight: 500 !important; }
.font-gothic { font-family: fot-tsukuardgothic-std, /* 'FOT-筑紫A丸ゴシック Std D',  */'游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; font-weight: 600 !important; }
.font-min { font-family: dnp-shuei-mincho-pr6n, '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif; }
.font-min2 { font-family: 'Noto Serif JP', '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif; }
.font-gothic h1, .font-gothic h2, .font-gothic h3, .font-gothic h4, .font-gothic h5, .font-gothic h6, .font-gothic strong { font-weight: 600 !important; }
.font-serif { font-family: adobe-garamond-pro, '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif; }
.font-sans { font-family: AvenirNextLTPro-Demi, sans-serif; }

p ruby rt { letter-spacing: 0.04em; transform: translateY(-2px) scale(0.9); }

/* link
------------------------------------*/
a { color: #606060; text-decoration: none; -webkit-transform: translateZ(0); }
p a { border-bottom: 1px solid #606060; }
h1 > a { color: #282828; }

.line { display: inline-block; position: relative; padding-bottom: 1px; line-height: 1; }
.line:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #606060;
	width: 100%;
	height: 1px;
	opacity: 0.8;
}

.fade-black { position: relative; }

/*
.fade-black:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.3);
	width: 100%;
	height: 100%;
	z-index: 0;
}

.fade-black > * {
	position: relative;
	width: 100%;
	z-index: 1;
}
*/

.blank {
	position: relative;
/* 	padding-left: 28px !important; */
}

.blank:before {
	display: block;
	content: '';
	position: absolute;
	top: 10px;
	left: 0;
	background: url(img/share/ico-blank@2x.png) no-repeat;
	background-size: cover;
	width: 12px;
	height: 11px;
}

.btn-link .blank:before {
	display: block;
	content: '';
	position: absolute;
	top: calc(50% - 6px);
	left: inherit;
	right: 18px;
}

.btn-link.size-m .blank:before,
.btn-link.size-l .blank:before { right: 16px !important; }
.btn-link.size-s .blank:before { right: 14px !important; }

.btn-set.wide .btn-link .blank:before,
.sec-column2 .btn-link .blank:before { top: calc(50% - 6px); right: 12px; }

.btn-link.blue .blank:before { background-image: url(img/share/ico-blank-blue@2x.png); }
.btn-link .blank i { display: none; }
.dl-line + .btn-link { margin: 26px -2px 0; }
.btn-link.off { pointer-events: none; }
.btn-link.off i { display: none; }
.btn-link.off > span { padding-right: 20px !important; }

/* .btn
------------------------------------*/
.btn-link a,
.btn-link > span {
	display: block;
	position: relative;
	border: 1px solid #DDDDDD;
	border-radius: 40px;
	padding: 13px 30px 13px 32px;
	color: #282828;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.16em;
	text-align: center;
}

.btn-link.size-s a,
.btn-link.size-s > span {
	padding-right: 26px;
	padding-top: 9px;
	padding-bottom: 9px;
	padding-left: 20px;
	font-size: 12px;
	letter-spacing: 0.12em;
}

.btn-link.size-s.left a,
.btn-link.size-s.left > span {
	padding-right: 30px;
	padding-left: 18px;
}

.btn-link.size-s.left a.blank {
	padding-right: 36px;
}

.btn-link.size-s.let a,
.btn-link.size-s.let > span {
	letter-spacing: 0.08em;
}

.btn-link.size-m a,
.btn-link.size-m > span,
.btn-link.size-l a,
.btn-link.size-l > span {
	padding-top: 12px;
	padding-bottom: 11px;
	font-size: 14px;
	letter-spacing: 0.12em;
}

.btn-link.left a,
.btn-link.left > span {
	padding-left: 20px;
	text-align: left;
}

.btn-link a i,
.btn-link > span i {
	display: block;
	background-image: url(img/share/ico-arrow-btn.svg);
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	right: 18px;
	width: 6px;
	height: 11px;
	margin-top: -5px;
}

.btn-link.size-s a i,
.btn-link.size-s > span i { right: 12px; }
.btn-link.size-m a i,
.btn-link.size-m > span i,
.btn-link.size-l a i,
.btn-link.size-l > span i { right: 14px; }

.btn-link.beige a,
.btn-link.beige > span {
	border-color: #CFCDCB;
}
.btn-link.beige a i,
.btn-link.beige > span i {
	background-image: url(img/share/ico-arrow-btn-beige.svg);
}

.btn-link.blue a,
.btn-link.blue > span { border-color: #006EB3; color: #006EB3; }
.btn-link.blue a i,
.btn-link.blue > span i { background-image: url(img/share/ico-arrow-btn-blue.svg); }

.btn-link.btn-nowrap a {
	padding-right: 0;
	padding-left: 0;
	text-align: center;
	letter-spacing: 0.06em;
}

.btn-link.btn-nowrap i {
	display: none;
}

/* .btn-line
------------------------------------*/
.btn-line {
	color: #282828;
	font-size: 12px;
}

.btn-line span {
	display: inline-block;
	border-bottom: 1px solid rgba(0,0,0,0.4);
	padding-bottom: 2px;
	letter-spacing: 0.15em;
	padding-left: 0.1em;
}

/* .btn-back-arrow
------------------------------------*/
.btn-back-arrow {
	display: none;
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 10;
	opacity: 0;
}

body.omatsuri .btn-back-arrow {
	display: none !important;
}

.btn-back-arrow.fixed {
	position: fixed;
}

.btn-back-arrow .art,
.before_art .btn-back-arrow .common,
.btn-back-arrow .wheelchair,
.before_wheelchair .btn-back-arrow .common {
	display: none;
}

.before_art .btn-back-arrow .art,
.before_wheelchair .btn-back-arrow .wheelchair {
	display: block;
}

.btn-back-arrow a,
.btn-next-arrow > div {
	display: block;
	box-sizing: border-box;
	background-color: #DE0000;
	border-radius: 50%;
	width: 34px;
	height: 34px;
	padding: 8px;
}

.btn-back-arrow img,
.btn-next-arrow img {
	width: 100%;
	height: auto;
}

.btn-next-arrow img {
	display: block;
	transform: scaleX(-1);
}

/* .btn-set
------------------------------------*/
.btn-set > div { margin-bottom: 12px; }
.btn-set > div:last-of-type { margin-bottom: 0 !important; }

.btn-set.wide {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-align: center;
	align-items: center;
	justify-content: space-between;
}

.btn-set.wide > div { width: 48%; margin-bottom: 0; }

/* .btn-accordion
------------------------------------*/
.btn-accordion {
	position: relative;
}

.btn-accordion .plus {
	display: block;
	position: absolute;
	top: 50%;
	/* left: 34px; */
	left: 20px;
	width: 11px;
	height: 11px;
	margin-top: -5px;
	transition: .2s ease-out;
}

.btn-accordion .plus:before,
.btn-accordion .plus:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: #282828;
}

.btn-accordion .plus:before { top: 5px; left: 0; width: 100%; height: 1px; }
.btn-accordion .plus:after { top: 0; left: 5px; width: 1px; height: 100%; }
.btn-accordion.active .plus { transform: rotate(-225deg); }
.btn-accordion + dd { display: none; }

/* .btn-submit
------------------------------------*/
.btn-submit {
	width: 100%;
}

.btn-submit a {
	display: block;
	background-color: #686868;
	border-radius: 30px;
	color: #FFFFFF;
	padding: 16px 10px 16px 14px;
	font-size: 13px;
	letter-spacing: 0.08em;
	text-align: center;
	white-space: nowrap;
}

/* sns
------------------------------------*/
.sns li { display: inline-block; margin: 0 1px; }
.sns a { display: inline-block; position: relative; padding: 2px; }
.sns a img { width: 27px; height: auto; }
.sns a .on { display: block; position: absolute; top: 5px; left: 5px; opacity: 0; }


/* #wrap
---------------------------------------------------------------------------*/


/* header
---------------------------------------------------------------------------*/
header {
	position: fixed;
	top: 0;
	left: 0;
	box-sizing: border-box;
	background-color: #FFFFFF;
	width: 100%;
	height: 74px;
	margin: 0;
	padding: 20px 0 0;
	z-index: 1000;
	opacity: 0;
}

header .border {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: rgba(204,204,204,0.5);
	transition: .15s ease-out;
	opacity: 0;
}

header .border.active {
	opacity: 1;
}

body.shiki-single header .border {
	opacity: 0 !important;
}

header.absolute, .btn-nav.absolute {
	position: absolute;
}

header .logo {
	width: 156px;
	margin: 0 auto;
	text-align: center;
	white-space: nowrap;
	transform: translateX(-2px);
}

header .logo strong {
	display: block;
	padding: 0 0 1px 33px;
	color: #2F2A2A;
	font-size: 10px;
	letter-spacing: 0.32em;
	transform-origin: center top;
	transform: scale(0.8);
}

header .logo img {
	width: 100%;
	height: auto;
}

/* .lang
------------------------------------*/
header .lang {
	position: absolute;
	top: 18px;
	left: 12px;
	padding: 15px;
	font-size: 0;
}

header .lang span {
	display: inline-block;
	width: 3px;
	height: 3px;
	margin-left: 6px;
	transform: translateY(-5px);
}

header .lang i {
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 3px 0 3px;
	border-color: #000000 transparent transparent transparent;
	transform-origin: center center;
	transition: .15s ease-out;
}

header .lang.active i {
	transform: rotate(180deg);
}

/* .btn-nav
------------------------------------*/
.btn-nav {
	position: fixed;
	top: 0;
/* 	right: 0; */
	left: calc(100vw - 76px);
	box-sizing: border-box;
	padding: 32px 26px 29px;
	z-index: 10000;
}

.btn-nav div, .btn-nav span {
	display: inline-block;
	transition: .1s ease-out;
}

.btn-nav div {
	position: relative;
	width: 24px;
	height: 11px;
}

.btn-nav span {
	position: absolute;
	left: 0;
	background-color: #000000;
	width: 100%;
	height: 1px;
}

.btn-nav span:nth-of-type(1) { top: 0; }
.btn-nav span:nth-of-type(2) { top: 5px; }
.btn-nav span:nth-of-type(3) { bottom: 0; }

/* .btn-nav.active
------------------------------------*/
.btn-nav.active span:nth-of-type(1) { transform: translateY(5px) rotate(-24deg); }
.btn-nav.active span:nth-of-type(2) { animation: active-menu-bar02 .4s forwards; opacity: 0; }
.btn-nav.active span:nth-of-type(3) { transform: translateY(-5px) rotate(24deg); }
@-webkit-keyframes active-menu-bar02 {100%{ height: 0; }}
@keyframes active-menu-bar02 {100%{ height: 0; }}

/* .nav-sp
------------------------------------*/
.nav-sp,
.lang-nav {
	position: fixed;
	top: 74px;
	left: 0;
	background: #33263E url(img/share/bg-nav.jpg) left top;
	box-sizing: border-box;
	width: 100%;
	height: calc(100% - 74px);
	box-shadow: 0 1px 1px -1px rgba(0,0,0,0.4) inset;
	z-index: -9999;
/* 	display: none; */
	opacity: 0;
}

.nav-sp {
	pointer-events: none;
}

.btn-nav.active + .nav-sp {
/* 	z-index: 9999; */
	pointer-events: auto;
}

.lang-nav {
	display: none;
}

.nav-sp .inner,
.lang-nav-inner {
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 40px 30px 50px;
	-webkit-overflow-scrolling: touch;
	opacity: 0;
}

.nav-sp *,
.lang-nav-inner * { color: #FFFFFF; }

/* .gnav
------------------------------------*/
.nav-sp .snav,
.nav-sp .lnav,
.nav-sp .sns-wrap,
.nav-sp .copyright {
	display: block;
	position: relative;
	z-index: 2;
}

.nav-sp .snav,
.nav-sp .snav ul {
	position: relative;
	z-index: 1;
}

.nav-sp .snav:after {
	display: block;
	content: '';
	position: absolute;
	top: -60px;
	left: -5px;
	background: #33263E url(img/share/bg-nav.jpg) left top;
	width: calc(100% + 5px);
	height: 500px;
	z-index: 0;
}

.gnav {
	position: relative;
	margin-bottom: 60px;
	z-index: 0;
}

.lang-nav .gnav {
	margin-bottom: 0;
}

.gnav dt,
.gnav dd {
	position: relative;
	background: #33263E url(img/share/bg-nav.jpg) left top;
}

.gnav dt {
	border-bottom: 1px solid rgba(255,255,255,0.2);
	z-index: 1;
}

.gnav dd {
	z-index: 0;
}

.gnav dt a,
.gnav dt span {
	display: block;
	padding: 20px 30px 10px 2px;
	font-size: 14px;
	letter-spacing: 0.12em;
}

.lang-nav .gnav dt a {
	padding-top: 26px;
	padding-bottom: 8px;
}

.lang-nav .gnav dt .arrow {
	top: 30px;
}

.gnav .btn-accordion .plus {
	right: 7px;
	left: inherit;
	width: 9px;
	height: 9px;
	margin: 0;
	opacity: 0.4;
}

/*
body.news #gnav-news .plus,
body.about #gnav-about .plus,
body.omairi #gnav-omairi .plus,
body.keidaiannai #gnav-omairi .plus,
body.shiki #gnav-omairi .plus,
body.sozoroaruki #gnav-omairi .plus,
body.shuhen-wo-meguru #gnav-omairi .plus,
body.kigan-omamori #gnav-kigan-omamori .plus,
body.kigan #gnav-kigan-omamori .plus,
body.omamori #gnav-kigan-omamori .plus,
body.omatsuri #gnav-omatsuri .plus {
	opacity: 1;
}
*/

.gnav .btn-accordion .plus:before,
.gnav .btn-accordion .plus:after {
	background-color: #FFFFFF;
}

.gnav .btn-accordion .plus:before { top: 4px; }
.gnav .btn-accordion .plus:after { left: 4px; }

.gnav .btn-accordion.active .plus:before { transform: rotate(10deg); }
.gnav .btn-accordion.active .plus:after { transform: rotate(-10deg); }

.gnav dt .arrow {
	display: inline-block;
	position: absolute;
	top: 22px;
	right: 7px;
	background: url(img/share/ico-arrow-btn-white2.svg) no-repeat;
	width: 7px;
	height: 8px;
	opacity: 0.5;
}

/*
body.art #gnav-art .arrow,
body.access #gnav-access .arrow {
	opacity: 1;
}
*/

.gnav dd {
	display: none;
	overflow: hidden !important;
}

.gnav dd > div {
	padding: 25px 0 25px 0;
}

.gnav dd .link {
	margin: 22px 0 2px 2px;
}

.gnav dd .link + .link {
	margin-top: 10px !important;
}

.gnav #gnav-omairi + dd .link {
	margin-top: 20px;
}

.gnav dd .link:first-child {
	margin-top: 0 !important;
}

.gnav #gnav-about + dd .link,
.gnav #gnav-kigan-omamori + dd .link,
.gnav #gnav-omatsuri + dd .link {
	margin-bottom: 6px;
}

.gnav dd .link a {
	display: inline-block;
	padding: 8px 8px 8px 0;
	font-size: 15px;
	letter-spacing: 0.15em;
}

.gnav dd .link span {
	display: inline-block;
	border-bottom: 1px solid rgba(255,255,255,0.2);
	padding-bottom: 3px;
}

.gnav dd .link a i {
	display: inline-block;
	background: url(img/share/ico-arrow-circle-white.svg) no-repeat;
	background-size: 100% auto;
	width: 16px;
	height: 16px;
	margin-left: 6px;
	transform: translateY(2.5px);
}

.gnav dd li {
	white-space: nowrap;
}

.gnav dd li a {
	display: inline-block;
	position: relative;
	padding: 5px 0 5px 18px;
	background: url(img/share/ico-arrow-btn-white2.svg) left 6px top 12px no-repeat;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.12em;
	transform: translateY(2px);
}

.gnav dd li.let a {
	letter-spacing: 0.1em;
}

.gnav dd li a strong,
.snav li a span {
	display: inline-block;
	position: relative;
	letter-spacing: 0.05em;
}

.gnav dd li a strong:after,
.snav li a span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 2px;
	left: 0;
	background-color: #FFFFFF;
	width: calc(100% - 1px);
	height: 1px;
	opacity: 0;
}

.snav li a span:after {
	bottom: -1px;
}

body.about-sugawaranomichizanekou #mnav-about-sugawaranomichizanekou a strong:after,
body.about-gakumonnokamisama #mnav-about-gakumonnokamisama a strong:after,
body.about-goyuisho #mnav-about-goyuisho a strong:after,
body.about-tenjinsama-ume #mnav-about-tenjinsama-ume a strong:after,
body.keidaiannai-top #mnav-keidaiannai a strong:after,
body.keidaiannai.single #mnav-keidaiannai a strong:after,
body.keidaiannai.art #mnav-keidaiannai-art a strong:after,
body.keidaiannai.toilet #mnav-keidaiannai-toilet a strong:after,
body.keidaiannai.wheelchair #mnav-keidaiannai-wheelchair a strong:after,
body.shiki-spring #mnav-shiki-spring a strong:after,
body.shiki-summer #mnav-shiki-summer a strong:after,
body.shiki-autumn #mnav-shiki-autumn a strong:after,
body.shiki-winter #mnav-shiki-winter a strong:after,
body.sozoroaruki-nature #mnav-sozoroaruki-nature a strong:after,
body.sozoroaruki-art #mnav-sozoroaruki-art a strong:after,
body.sozoroaruki-history #mnav-sozoroaruki-history a strong:after,
body.kigan-juken #mnav-kigan-juken a strong:after,
body.kigan-gakugyou #mnav-kigan-gakugyou a strong:after,
body.kigan-shiken #mnav-kigan-shiken a strong:after,
body.kigan-koutsuu #mnav-kigan-koutsuu a strong:after,
body.kigan-yakuyoke #mnav-kigan-yakuyoke a strong:after,
body.kigan-happou #mnav-kigan-happou a strong:after,
body.kigan-anzan #mnav-kigan-anzan a strong:after,
body.kigan-shichigosan #mnav-kigan-shichigosan a strong:after,
body.kigan-tobiume #mnav-kigan-tobiume a strong:after,
body.kigan-orei #mnav-kigan-orei a strong:after,
body.omamori-gakugyou #mnav-omamori-gakugyou a strong:after,
body.omatsuri-jinkousiki #mnav-omatsuri-jinkousiki a strong:after,
body.omatsuri-ooharaeshiki #mnav-omatsuri-ooharaeshiki a strong:after,
body.omatsuri-25nichisai #mnav-omatsuri-25nichisai a strong:after,
body.omatsuri-tanabata #mnav-omatsuri-tanabata a strong:after,
body.omatsuri-shushisai #mnav-omatsuri-shushisai a strong:after,
body.omatsuri-shichigosan #mnav-omatsuri-shichigosan a strong:after,
body.omatsuri-kouisai #mnav-omatsuri-kouisai a strong:after,
body.omatsuri-usokae-onisube #mnav-omatsuri-usokae-onisube a strong:after,
body.omatsuri-juken-kigan #mnav-omatsuri-juken-kigan a strong:after,
body.omatsuri-kyokusui-no-utage #mnav-omatsuri-kyokusui-no-utage a strong:after,
body.omatsuri-yakubare #mnav-omatsuri-yakubare a strong:after,
body.omatsuri-tenkaiinarisha #mnav-omatsuri-tenkaiinarisha a strong:after,
body.omatsuri-setsubun-yakuyoke #mnav-omatsuri-setsubun-yakuyoke a strong:after,
body.contact #snav-contact a span:after,
body.faq #snav-faq a span:after,
body.agreement #snav-agreement a span:after,
body.privacy #snav-privacy a span:after {
	opacity: 1;
}

.gnav dd ul.inline {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.gnav dd ul.inline li {
	margin-right: 10px;
}

.gnav dd ul.even {
	display: inline-block;
	margin-right: 10px;
	vertical-align: top;
}

.gnav dd ul.even:nth-child(even) { margin-right: 0; }
.gnav dd ul.even li { box-sizing: border-box; }

#gnav-kigan-omamori + dd ul.even:nth-of-type(1) li { margin-bottom: 2px; }
#gnav-kigan-omamori + dd ul.even:nth-of-type(2) li { margin-bottom: -1px; }

.gnav dd ul.even li a {
	letter-spacing: 0.1em;
}

.gnav dd .blank {
	padding-right: 20px;
}

.gnav dd .blank:before {
	background-image: url(img/share/ico-blank-white@2x.png);
	top: 10px;
	left: inherit;
	right: 0;
	opacity: 0.8;
}

@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
	.gnav dd .blank:before {
		top: 8px;
	}
}

#gnav-keidaiannai li { display: inline-block; }
#gnav-keidaiannai li:nth-child(odd) { width: 90px; }
#gnav-keidaiannai li:nth-child(even) { width: calc(100% - 100px); }

#gnav-omatsuri + dd ul { display: inline-block; vertical-align: top; }
#gnav-omatsuri + dd ul:nth-of-type(1) { margin-right: 5%; }
#gnav-omatsuri + dd ul:nth-of-type(3) { width: 100%; margin-top: 4px; }

/* .snav
------------------------------------*/
.snav {
	margin: 0 0 60px 4px;
}

.snav li a {
	display: inline-block;
	background: url(img/share/ico-arrow-btn-gold.svg) no-repeat left center;
	padding: 10px 10px 10px 15px;
	font-size: 14px;
	letter-spacing: 0.18em;
}

/* .lnav
------------------------------------*/
.lnav {
	margin: 0 0 30px 2px;
}

.lnav li a {
	display: inline-block;
	padding: 8px 10px 8px 22px;
	font-size: 12px;
	letter-spacing: 0.16em;
}

.lnav li a.blank:before {
	background-image: url(img/share/ico-blank-white@2x.png);
	top: 9px;
	opacity: 0.8;
}

/* .nav-sp .sns
------------------------------------*/
.nav-sp .sns-wrap {
	margin-bottom: 25px;
}

.nav-sp .sns-wrap h2 {
	margin: 0 0 14px 1px;
	font-size: 10px;
	letter-spacing: 0.18em;
	opacity: 0.5;
}

.nav-sp .sns-wrap .sns {
	display: -webkit-box;
	display: flex;
	margin-left: -6px;
}

.nav-sp .sns-wrap li a {
	display: block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 30px auto;
	width: 30px;
	height: 30px;
	padding: 4px 5px 4px 4px;
}

.nav-sp .sns-wrap li:nth-of-type(1) a { background-image: url(img/share/sns-x-white.svg); }
.nav-sp .sns-wrap li:nth-of-type(2) a { background-image: url(img/share/sns-facebook-white.svg); }
.nav-sp .sns-wrap li:nth-of-type(3) a { background-image: url(img/share/sns-youtube-white.svg); }
.nav-sp .sns-wrap li:nth-of-type(4) a { background-image: url(img/share/sns-instagram-white.svg); }
.nav-sp .sns-wrap li img { display: none; }

/* .nav-sp address
------------------------------------*/
.nav-sp address strong {
	display: block;
	margin-bottom: 14px;
	font-size: 14px;
	letter-spacing: 0.18em;
}

.nav-sp address em {
	font-size: 23px;
	letter-spacing: 0.04em;
}

.nav-sp address em i {
	padding-right: 2px;
	font-size: 16px;
	letter-spacing: 0.02em;
}

.nav-sp address em span {
	padding-left: 4px;
	font-size: 15px;
	letter-spacing: 0.06em;
}

/* .nav-sp .copyright
------------------------------------*/
.nav-sp .copyright {
	margin-top: 20px;
	font-size: 11px;
	transform-origin: left top;
	transform: scale(1);
}


/* footer
---------------------------------------------------------------------------*/
footer {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 120px 6% 40px;
	white-space: nowrap;
	text-align: center;
}

footer, footer a {
	color: #282828;
}

.copyright {
	display: block;
	font-size: 10px;
	letter-spacing: 0.06em;
	transform-origin: center top;
	transform: scale(0.9);
}

footer .logo {
	position: relative;
	width: 32px;
	margin: 0 auto 75px;
}

footer .logo a { display: block; }

footer .logo strong {
	display: block;
	position: absolute;
	top: 41px;
	right: -26px;
	font-size: 10px;
	letter-spacing: 0.28em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
	transform-origin: left top;
	transform: scale(0.9);
}

footer .logo img { width: 100%; height: auto; }

.footer-inner nav {
	margin: -10px 0 20px 6px;
}

.footer-inner nav li a {
	display: inline-block;
	padding: 8px 8px 8px 24px !important;
	font-size: 14px;
	letter-spacing: 0.15em;
}

footer .snav a {
	display: inline-block;
	padding: 6px 6px 10px;
	font-size: 13px;
	letter-spacing: 0.2em;
}

footer .sns {
	margin: 0 0 25px;
}

/*
footer address strong {
	display: block;
	margin-bottom: 12px;
	font-size: 12px;
	letter-spacing: 0.18em;
}

footer address .tel {
	font-size: 16px;
	letter-spacing: 0.06em;
}

footer address .tel i {
	font-size: 15px;
}

footer address .tel span {
	padding-left: 4px;
	font-size: 10px;
	letter-spacing: 0.08em;
}
*/

/* .fnav
------------------------------------*/
.fnav dl > div {
	margin-right: 2vw;
}

.fnav dl > div:nth-of-type(1) { margin-right: 2.2vw; }
.fnav dl > div:nth-of-type(2) { margin-right: 1.8vw; }
.fnav dl > div:nth-of-type(3) { margin-right: 2.8vw; }
.fnav dl > div:nth-of-type(4) { margin-right: 3vw; }

.fnav dt {
	margin: -12px 0 16px -12px;
}

.fnav dd + dt {
	margin-top: 34px;
	margin-bottom: 6px;
}

.fnav dt a {
	display: inline-block;
	padding: 12px;
}

.fnav dd {
	margin: -10px 0 0 -10px;
}

.fnav dd li a {
	display: inline-block;
	padding: 10px;
	font-size: 14px;
	letter-spacing: 0.15em;
}

.fnav dd li a span,
.snav li a span {
	border-bottom: 1px solid rgba(40,40,40,0.3);
	padding-bottom: 2px;
}

.snav li a span {
	padding-bottom: 1px;
}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	display: block;
	width: 100%;
	margin: 0;
	padding: 74px 0 0;
	text-align: left;
}

.contents { opacity: 0; }

figure img {
	width: 100%;
	height: auto;
}

.bg-beige {
	box-sizing: border-box;
	background-color: #FBFAF8;
	width: 100%;
	margin-bottom: 55px;
	padding: 55px 8%;
}

.bg-beige.pd {
	padding-top: 42px;
	padding-bottom: 48px;
}

.bg-beige .title-sub {
	margin-bottom: 24px;
}

/* .contents-column
------------------------------------*/
.column-fix { position: relative; }
.column-fix.absolute { position: absolute; }

.column-fix .mark {
	position: absolute;
	top: 12px!important;
	right: 12px!important;
	box-sizing: border-box;
	background: url(img/share/mark-red.svg) no-repeat center center / 100% auto;
	width: 115px;
	height: 112px;
	text-align: center;
	transform-origin: right top;
	transform: scale(0.8);
	z-index: 10;
}

.column-fix .mark, .column-fix .mark a { color: #FFFFFF; }

.column-fix .mark a,
.column-fix .mark span {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 9px 0 0 4px;
	font-size: 16px;
	line-height: 1.4;
	letter-spacing: 0.1em;
}

.column-img .inner { background-position: center center; background-repeat: no-repeat; background-size: cover; height: 100vw; }
.column-img .inner.btm { background-position: center bottom; }
.column-main figure img { width: 100%; height: auto; -webkit-backface-visibility: hidden; }

/* .sec-common
------------------------------------*/
.sec-common {
	width: 82%;
	margin: 0 auto 100px;
}

.sec-common.middle { width: 88%; }
.sec-common.wide { width: 100%; }

.sec-common.sec-line-top {
	position: relative;
	padding-top: 10px;
}

.sec-common.sec-line-top:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #A5A5A5;
	width: 140px;
	height: 1px;
	opacity: 0.6;
}

div.sec-common {
	width: 100%;
	margin-bottom: 60px;
}

.sec-common.mb { margin-bottom: 55px; }
.sec-common.mbm,.sec-common.mbl { margin-bottom: 70px; }

.sec-common > figure { margin-bottom: 30px; }
.sec-common > figure.mbs { margin-bottom: 28px; }

figure.img-column2 {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

figure.img-column2.center {
	margin: 0 auto 60px;
}

figure.img-column2 img { width: 49.5%; }
figure.img-column2 img:nth-child(odd){ margin-right: 1%; }

figure.img-column2 .inner img { width: 100%; }
figure.img-column2 .inner img:nth-child(odd){ margin-right: 0; }

figure.img-column2 .inner {
	position: relative;
	width: 50%;
	margin: 0;
}

figure.img-column2 .inner figcaption {
	margin: 10px 0 0 10px;
	color: #606060;
	font-size: 10px;
	letter-spacing: 0.12em;
}

.sec-common .txt.mb {
	margin-bottom: 60px;
}

.sec-common .btn-set,
.sec-common .txt-inner > .btn-link,
.sec-common .txt > .btn-link {
	margin: 24px -4px 0;
}

.sec-common .txt-inner > .btn-nowrap {
	margin-right: -6px;
	margin-left: -6px;
}

.sec-common .txt p {
	margin-bottom: 14px;
	letter-spacing: 0.08em;
}

.sec-common .txt.left p.mtb {
	margin-top: 34px;
	margin-bottom: 30px;
}

.sec-common > .btn-set {
	margin-top: 28px;
}

.sec-common .txt-inner > .btn-link + .btn-link,
.sec-common .txt > .btn-link + .btn-link {
	margin-top: 12px;
}

.sec-common h1,
.sec-common h2:not(.title-sub),
.sec-common > figure:first-child + .txt h3 {
	margin-bottom: 20px;
	font-size: 17px;
	text-align: center;
	line-height: 1.75;
	letter-spacing: 0.14em;
}

.sec-common h1.link,
.sec-common h2.link:not(.title-sub),
.sec-common > figure:first-child + .txt h3.link {
	line-height: 1.9;
	letter-spacing: 0.12em;
}

.sec-common h2:not(.title-sub) + p {
	letter-spacing: 0.08em;
}

.column-main .sec-common h3.title-sub { margin-top: 40px; }
.column-main .sec-common h3.title-sub:first-of-type { margin-top: 50px; }

.sec-common .txt {
	margin-bottom: 4px;
	padding: 0 5px;
}

.sec-common p { text-align: justify; letter-spacing: 0.08em; }
.sec-common p.attention,.sec-common p span.attention { font-size: 12px; line-height: 1.7; }

/* .column-main .sec-common.wide.size-s
------------------------------------*/
.column-main .sec-common.wide.size-s { position: relative; padding-top: 75px; }
.column-main .sec-common.wide.size-s + .sec-common.wide.size-s { margin-top: -45px; }
.column-main .sec-common.wide.size-s .sec-center { padding-right: 0; padding-left: 13%; }
.column-main .sec-common.wide.size-s h3.title-sub:first-of-type { margin-top: -5px; margin-bottom: 13px; }
.column-main .sec-common.wide.size-s .sec-center p { margin-bottom: 8px; line-height: 1.8; }
.column-main .sec-common.wide.size-s .sec-center .btn-link { margin: 20px 0 0 -3px; padding-bottom: 5px; }

/* .title-page
------------------------------------*/
.title-page {
	text-align: center;
}

.title-page i {
	display: block;
	background: url(img/share/logo-mark-gray.svg) no-repeat;
	background-size: 100% auto;
	width: 30px;
	height: 30px;
	margin: 0 auto 18px;
}

.title-page i.gold { background-image: url(img/share/logo-mark-gold.svg); }

.title-page h1,
.sec-lead .title-page h2 {
	font-size: 18px;
	line-height: 1.7;
	letter-spacing: 0.1em;
/* 	padding-left: 0.2em; */
}

.sec-lead .title-page h2 {
	padding-top: 0;
	padding-bottom: 0;
}

.title-page h1 .size-s,
.sec-lead .title-page h2 .size-s { display: block; margin-bottom: 7px; font-size: 13px; letter-spacing: 0.14em; }
/* .title-page h1 .size-l { font-size: 24px; } */

.title-page time {
	display: block;
	margin-top: 12px;
	/* color: #888888; */
	font-size: 12px;
	letter-spacing: 0.1em;
}

/* .title-sub
------------------------------------*/
h2.title-sub {
	margin-bottom: 16px;
	font-size: 14px !important;
	line-height: 1.6;
	letter-spacing: 0.08em !important;
	text-align: left !important;
}

h2.title-sub.let {
	letter-spacing: 0.1em !important;
}

h3.title-sub {
	margin-bottom: 18px;
	font-size: 14px !important;
	letter-spacing: 0.14em !important;
	text-align: left !important;
}

/*
.title-sub + p {
	letter-spacing: 0.1em !important;
}
*/

/* .sec-lead
------------------------------------*/
.sec-lead {
	margin: 45px auto 47px;
	text-align: center;
}

.sec-lead.mbl {
	margin-bottom: 80px;
}

.sec-lead .title-page {
	margin-bottom: 20px;
}

.sec-lead > figure:first-child {
	margin-bottom: 30px;
}

.sec-lead h2 {
	margin-bottom: 25px;
	font-size: 14px;
	line-height: 2.0;
	letter-spacing: 0.12em;
}

.sec-lead h2.size-l {
	margin-bottom: 20px;
	font-size: 17px;
}

.sec-lead p,
.sec-center-s p {
	padding: 0 6% 4px calc(6% + 0.25em);
	line-height: 1.9;
	letter-spacing: 0.08em;
}

.sec-lead p .en {
	letter-spacing: 0.06em;
}

.sec-lead.left p {
	padding: 0 10%;
	margin-bottom: 16px;
	text-align: justify;
	word-break: break-all;
}

.sec-lead.left p br { display: none; }

.sec-lead p.attention {
	font-size: 11px;
	line-height: 1.9;
	letter-spacing: 0.18em;
	padding-left: 0.18em;
}

.sec-lead p.attention.left {
	padding: 0 calc(6% + 20px);
	text-align: justify;
}

.column-main .sec-lead > .btn-set,
.column-main .sec-lead > .btn-link {
	max-width: 82%;
	margin: 20px auto 0;
	padding-bottom: 10px;
}

.column-main .sec-lead > .btn-link a {
	display: inline-block;
}

/* .sec-center
------------------------------------*/
.sec-center {
	margin: 0 auto 100px;
}

.column-main .sec-center {
	box-sizing: border-box;
	margin-bottom: 40px;
	padding: 0 5px;
}

.column-main .middle .sec-center {
	padding: 0 5%;
}

.column-main .wide .sec-center.narrow {
	width: calc(82% + 10px);
}

.sec-center.mb {
	margin-bottom: 35px;
}

.sec-center h2 {
	margin-bottom: 20px;
	font-size: 16px;
	line-height: 1.9;
	letter-spacing: 0.12em;
	/* padding-left: 0.2em; */
	text-align: center;
}

.sec-center h2.mbs { margin-bottom: 14px; }

.sec-center h2 span {
	border-bottom: 1px solid rgba(0,0,0,0.4);
	padding: 0 0px 3px 1px;
}

.column-main .sec-center h2 em.size-s {
	display: block;
	padding-top: 8px;
	/* color: #808080; */
	font-size: 13px;
	letter-spacing: 0.08em;
}

.sec-center h2 + .sec-inner {
	margin-top: 25px;
}

.sec-center p {
	text-align: justify;
	letter-spacing: 0.1em;
}

.sec-center p.attention {
	font-size: 11px;
	line-height: 1.9;
}

/* .sec-column2
------------------------------------*/
.sec-column2,
.sec-column4 {
	margin: 0 auto 60px;
	padding: 0 6%;
	text-align: center;
}

.sec-column2 .sec-inner,
.sec-column4 .sec-inner {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.sec-column2 .inner.pb,
.sec-column4 .inner.pb {
	padding-bottom: 52px;
}

.sec-common .sec-column2 .inner.pb,
.sec-common .sec-column4 .inner.pb {
	padding-bottom: 36px;
}

.sec-column2 .inner,
.sec-column4 .inner {
	position: relative;
	width: 46.5%;
	margin-top: 45px;
	text-align: left;
}

.sec-column2 .inner:nth-of-type(1),
.sec-column2 .inner:nth-of-type(2),
.sec-column4 .inner:nth-of-type(1),
.sec-column4 .inner:nth-of-type(2) {
	margin-top: 0;
}

.sec-column2 figure,
.sec-column4 figure {
	margin-bottom: 16px;
}

.sec-column2 .inner > h2,
.sec-column2 .inner > h3,
.sec-column4 .inner > h2,
.sec-column4 .inner > h3 {
	margin-bottom: 12px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.12em;
	padding-left: 0.12em;
	text-align: center;
}

.sec-column2 .inner > h2.let { letter-spacing: 0.06em; padding-left: 0.06em; }
.sec-column2 .inner > h3 .let { letter-spacing: 0.08em; }
.sec-column2 .inner > h3 .pl { padding-left: 10px; }
.sec-column2 .inner > h4 + p { margin-top: 11px; padding-bottom: 10px; }

.sec-column2 .inner > h2:last-of-child,
.sec-column2 .inner > h3:last-of-child,
.sec-column4 .inner > h2:last-of-child,
.sec-column4 .inner > h3:last-of-child {
	margin-bottom: 11px;
}

.sec-column2 .inner > h2 span,
.sec-column4 .inner > h2 span {
	display: block;
	margin-top: 5px;
/* 	padding-bottom: 2px; */
	color: #606060;
	font-size: 13px;
	line-height: 1.55;
	letter-spacing: 0.12em;
}

.sec-column2 .inner > h2 span.color {
	color: #B79267 !important;
}

.sec-column2 .inner > h3 span,
.sec-column4 .inner > h3 span {
	display: block;
	font-size: 13px;
	letter-spacing: 0.12em;
	padding-top: 2px;
}

.sec-column2.center .inner > h3 span,
.sec-column4.center .inner > h3 span {
	display: inline-block;
	padding-left: 4px;
}

.sec-column2 h4,
.sec-column4 h4 {
	margin-bottom: 10px;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.12em;
	/* padding-left: 0.12em; */
	text-align: center;
}

.sec-column2 p,
.sec-column4 p {
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.06em;
	text-align: justify;
	padding: 0 1px;
}

.sec-column2 p span,
.sec-column4 p span {
	display: block;
	margin-top: 10px;
	font-size: 11px;
	line-height: 1.7;
	letter-spacing: 0.06em;
	text-align: justify;
	padding: 0 1px;
}

.sec-column4 p span {
	font-size: 10px;
	letter-spacing: 0.02em;
}

.sec-column2 p br,
.sec-column4 p br { display: none; }

.sec-column2 p .attention,
.sec-column4 p .attention {
	font-size: 11px;
}

.sec-column.juyohin .btn-set,
.sec-column.juyohin .inner > .btn-link,
.sec-column2 .btn-set,
.sec-column2 .inner > .btn-link,
.sec-column4 .btn-set,
.sec-column4 .inner > .btn-link {
	position: absolute;
	bottom: 0;
	left: -2%;
	width: 104%;
}

/* .sec-column2 .inner > .btn-link > a,
.sec-column2 .inner > .btn-link > span {
	padding-top: 7px;
	padding-bottom: 7px;
} */

.sec-column2 .btn-link a,
.sec-column2 .btn-link > span,
.sec-column4 .btn-link a {
	display: block;
}

.sec-column2 .btn-btm {
	margin-top: 17px;
	padding-bottom: 5px;
}

.sec-column2 .btn-btm .btn-link {
	position: inherit;
	margin-bottom: 8px;
}

.sec-column2 .btn-btm .btn-link:last-child { margin-bottom: 0; }

/* .column-main .sec-column2.center
------------------------------------*/
.column-main .sec-column2 {
	padding: 0;
}

.column-main .sec-column2.center .inner.pb {
	padding-bottom: 44px;
}

.column-main .sec-column2.center .inner figure { margin-bottom: 22px; }
.column-main .sec-column2.center .inner > h3 { font-size: 16px; }
.column-main .sec-column2.center .inner { width: 100%; }
.column-main .sec-column2 .credit { margin-top: -2px; }

.column-main .sec-column2 .credit p {
	margin: 0 0 4px;
	font-size: 10px !important;
	font-weight: 400 !important;
	line-height: 1.55;
	letter-spacing: 0.01em;
	text-align: left;
}

.column-main .sec-column2 .credit p:first-of-type {
	margin-top: 12px;
}

.column-main .sec-column2 .credit + p {
	margin-top: 15px !important;
}

.column-main .sec-column2 .credit p br { display: block !important; }

.column-main .sec-column2 p.size-s {
	margin-top: 6px;
	font-size: 10px !important;
	font-weight: 400 !important;
}

/* .sec-column2.juyohin
------------------------------------*/
.sec-column.juyohin .inner.pb {
	position: relative;
	padding-bottom: 65px !important;
}

.sec-column2.juyohin .inner.pb {
	padding-bottom: 50px !important;
}

.sec-column.juyohin figure,
.sec-column2.juyohin figure {
	margin-bottom: 17px;
}

.sec-column.juyohin .txt.flex {
	display: -webkit-box;
	display: flex;
}

.sec-column.juyohin .txt.txt-btm {
	margin-bottom: 25px;
}

.sec-column2.juyohin h2 + p.attention {
	margin-top: -10px;
	padding-bottom: 20px !important;
}

.sec-column.juyohin h3 {
	padding-top: 1px;
	font-size: 14px;
	letter-spacing: 0.06em;
}

.sec-column2.juyohin h3 {
	margin-bottom: 8px;
	font-size: 13px;
	letter-spacing: 0.04em;
}

.sec-column.juyohin .txt.flex h3 {
	margin-right: 20px;
	transform: translateY(3px);
}

.sec-column.juyohin li,
.sec-column2.juyohin li {
	margin-bottom: 0;
	margin-left: 1px;
	padding-left: 10px;
	color: #282828;
	font-size: 12px;
	line-height: 1.7;
}

.sec-column.juyohin li {
	font-size: 13px;
}

/* .sec-column2.wide
------------------------------------*/
.sec-column2.wide {
	display: block;
	margin-bottom: 75px;
	padding: 0 10%;
}

.sec-column2.wide .inner {
	width: 100%;
	margin-bottom: 60px;
}

.sec-column2.wide .inner:last-of-type { margin-bottom: 0; }

.sec-column2.wide figure,
.sec-column2 .inner-sozoroaruki figure,
.sec-center .sec-inner > figure {
	margin-bottom: 24px;
}

.sec-column2.wide h2,
.sec-column2 .inner-sozoroaruki h2 {
	margin-bottom: 16px;
	font-size: 16px;
	letter-spacing: 0.14em;
}

.sec-column2.wide p,
.sec-column2 .inner-sozoroaruki p {
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.08em;
}

.sec-column2.wide .btn-set,
.sec-column2.wide .inner > .btn-link,
.sec-center .sec-inner > .btn-link {
	position: static;
	width: 100%;
	margin-top: 25px;
}

#kiganContents.single .sec-column2.nav-kigan-omamori,
#omamoriContents.single .sec-column2.nav-kigan-omamori {
	margin-bottom: -10px;
}

#kiganContents .sec-column2.nav-kigan-omamori .inner.pb,
#omamoriContents .sec-column2.nav-kigan-omamori .inner.pb {
	padding-bottom: 0;
}

#kiganContents .sec-column2.nav-kigan-omamori .inner > h2,
#omamoriContents .sec-column2.nav-kigan-omamori .inner > h2 {
	margin-bottom: 0;
}

#kiganContents .sec-column2.nav-kigan-omamori p,
#kiganContents .sec-column2.nav-kigan-omamori .btn-set,
#kiganContents .sec-column2.nav-kigan-omamori .btn-link,
#omamoriContents .sec-column2.nav-kigan-omamori p,
#omamoriContents .sec-column2.nav-kigan-omamori .btn-set,
#omamoriContents .sec-column2.nav-kigan-omamori .btn-link {
	display: none;
}

/* .sec-title-vertical
------------------------------------*/
.sec-title-vertical {
	position: relative;
	margin-bottom: 75px;
	padding: 0 7.5% 0 112px;
}

.sec-title-vertical h2 {
	position: absolute;
	top: 6px;
	left: 34px;
}

.sec-title-vertical h2 img {
	width: 44px;
	height: auto;
}

.sec-title-vertical h3 {
	margin: 36px 0 12px;
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 0.14em;
}

.sec-title-vertical h3:first-of-type {
	margin-top: 0;
}

.sec-title-vertical p {
	text-align: justify;
	line-height: 1.9;
	letter-spacing: 0.08em;
}

.sec-title-vertical .attention {
	padding-right: 0;
	font-size: 11px;
	line-height: 1.9;
	letter-spacing: 0.18em;
}

/* .column-main .sec-img-left
------------------------------------*/
/*
.column-main .sec-img-left {
	padding-right: 0;
	padding-left: 0;
}

.column-main .sec-img-left + .sec-img-left {
	margin-top: 60px;
}

.column-main .sec-img-left > figure {
	margin-bottom: 28px;
}

.column-main .sec-img-left .txt-inner {
	padding: 0 5px;
}

.column-main .sec-img-left .txt-inner h3 {
	margin-top: 0;
}

.column-main .sec-img-left .txt-inner h3 + p{
	letter-spacing: 0.16em;
}

.column-main .sec-img-left .txt-inner h3 span {
	display: inline-block;
	font-size: 12px;
	letter-spacing: 0.18em;
}
*/

.column-main .sec-img-left {
	display: -webkit-box;
	display: flex;
	position: relative;
	margin: 0 -8px 40px;
	padding: 38px 0 0;
}

.column-main .sec-img-left.pt {
	padding-top: 58px;
}

.column-main .sec-img-left + .sec-img-left {
	margin-top: 0;
}

.column-main .sec-img-left > figure {
	margin-bottom: 0;
	width: 90px;
	min-width: 90px;
}

.column-main .sec-img-left figure + .txt-inner {
	margin-top: -3px;
	padding: 0 0 0 19px;
}

.column-main .sec-img-left h2,
.column-main .sec-img-left h3 {
	position: absolute;
	top: 2px;
	left: 0;
	margin-top: 0;
	margin-bottom: 14px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.14em;
}

.column-main .sec-img-left h2 strong,
.column-main .sec-img-left h3 strong {
	padding-right: 8px;
}

.column-main .sec-img-left h2 span,
.column-main .sec-img-left h3 span {
	display: inline-block;
	color: #B79267;
	font-size: 12px;
	letter-spacing: 0.12em;
}

.column-main .sec-img-left .txt-inner h4 {
	margin-bottom: 8px;
	padding-top: 1px;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.column-main .sec-img-left .txt-inner p {
	margin-bottom: 10px;
	font-size: 13px;
	line-height: 1.85;
	letter-spacing: 0.05em;
	text-align: justify;
}

/* .column-main .sec-img-left-wide
------------------------------------*/
.column-main .sec-img-left-wide {
	display: block;
	margin-right: 0;
	margin-left: 0;
	padding-top: 0;
}

.column-main .sec-img-left-wide figure {
	width: 100%;
	margin-bottom: 24px;
}

.column-main .sec-img-left-wide figure + .txt-inner {
	margin: 0;
	padding: 0;
}

.column-main .sec-img-left-wide h3 {
	position: static;
	margin-bottom: 16px;
	text-align: center;
	font-size: 16px;
}

.column-main .sec-img-left-wide .txt-inner p {
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.08em;
}

/* .sec-img-left.title-v
------------------------------------*/
.column-main .sec-img-left.title-v { margin-bottom: 20px; }
.column-main .sec-img-left.title-v > figure { margin-bottom: 10px; }
.column-main .sec-img-left.title-v .txt-inner p { margin-bottom: 6px; }
.column-main .sec-img-left.title-v .txt-inner > .btn-link { margin-top: 16px; }

/* .column-main .sec-txt-left
------------------------------------*/
.column-main .sec-txt-left {
	box-sizing: border-box;
/* 	width: 80%; */
	margin: -20px auto 80px;
}

.column-main .sec-txt-left h3 {
	margin: 42px 0 18px;
}

.column-main .sec-txt-left p {
	 letter-spacing: 0.1em;
	text-align: justify;
}

/* .column-main
------------------------------------*/
.column-main h2.title-sub {
	margin-top: 55px;
}

.column-main h2.title-sub.vertical {
	position: absolute;
	top: -54px;
	left: 0;
	margin: 0;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.relation-news h2.title-sub {
	margin-top: 0;
}

/* .txt-side
------------------------------------*/
.txt-side .inner { margin-bottom: 26px; }
.txt-side .inner:last-of-type { margin-bottom: 0; }

.txt-side h3 {
	margin-bottom: 7px !important;
	text-align: left !important;
}

.txt-side h3 strong {
	padding-right: 10px;
	font-size: 15px;
	letter-spacing: 0.16em;
}

.txt-side h3 span {
	color: #B79267;
	font-size: 12px;
	letter-spacing: 0.14em;
}

.txt-side .inner p {
	font-size: 13px;
}


/* .modal-txt
------------------------------------*/
.modal-txt-wrap {
	display: inline-block;
	position: relative;
}

.modal-txt-btn {
	display: inline-block;
	position: relative;
	border-bottom: 1px solid #606060;
	margin: 0 2px 0 26px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.12em;
}

.modal-txt-wrap > .modal-txt-btn { cursor: default; }

a .modal-txt-btn:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 4px;
	left: 0;
	background: #243880;
	width: calc(100% - 22px);
	height: 1px;
}

.modal-txt-btn i {
	position: absolute;
	top: -1px;
	left: -24px;
	background: url(img/share/ico-q.svg) no-repeat;
	background-size: 100% auto;
	width: 18px;
	height: 18px;
}

.modal-txt-btn .size-s.kana {
	margin-right: -4px;
}

.modal-txt {
	position: absolute;
	bottom: -10px;
	left: 10px;
	width: 225px;
	padding-bottom: 32px;
	visibility: hidden;
	opacity: 0;
	transition: .15s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.modal-txt > span {
	display: block;
	box-sizing: border-box;
	position: relative;
	background-color: #243880;
	border-radius: 4px;
	padding: 14px 15px 15px 16px;
	color: #FFFFFF;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.06em;
}

.modal-txt > span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -10px;
	left: 13px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 5px 0 0px;
	border-color: #243880 transparent transparent transparent;
}

.modal-txt-wrap:hover .modal-txt { visibility: visible; opacity: 1; bottom: 0; }


/* .sec-dl
---------------------------------------------------------------------------*/
.sec-dl {
	background-color: #F4F4F4;
}

.sec-dl.narrow {
	position: relative;
	box-sizing: border-box;
	width: 88%;
	margin: 0 auto;
	padding: 5px 5px 0;
}

/*
.sec-dl > span:first-of-type:before,
.sec-dl > span:first-of-type:after,
.sec-dl > span:last-of-type:before,
.sec-dl > span:last-of-type:after {
	display: block;
	content: '';
	position: absolute;
	background-color: #FFFFFF;
	border-radius: 50%;
	width: 18px;
	height: 18px;
	z-index: 1;
}

.sec-dl > span:first-of-type:before { top: -9px; left: -9px; }
.sec-dl > span:first-of-type:after { top: -9px; right: -9px; }
.sec-dl > span:last-of-type:before { bottom: -9px; left: -9px; }
.sec-dl > span:last-of-type:after { bottom: -9px; right: -9px; }
*/


/* .dl-txt
------------------------------------*/
.dl-txt,
.dl-txt dd p {
	line-height: 1.9;
}

.dl-txt > div {
	margin-bottom: 45px;
}

.dl-txt > div:last-of-type { margin-bottom: 0; }

.dl-txt > div > dt {
	margin-bottom: 8px;
	font-size: 16px;
	letter-spacing: 0.2em;
}

#agreementContents .dl-txt > div > dt,
#agreementContents .dl-txt > div > dt {
	font-size: 15px;
	letter-spacing: 0.15em;
}

.dl-txt > div > dt span {
	display: block;
	margin-top: -2px;
	font-size: 11px;
	letter-spacing: 0.1em;
}

.dl-txt > div > dt span.ml {
	display: inline-block;
	margin-left: 3px;
	letter-spacing: 0.18em;
}

.dl-txt > div > dd {
	padding: 1px 0 0 20px;
}

.dl-txt dd p {
	text-align: justify;
}

.dl-txt .list-dot {
	margin: 20px 0;
}

.dl-txt .list-dot:first-child { margin-top: 0; }
.dl-txt .list-dot:last-child { padding-bottom: 10px; }

.dl-txt .list-dot li {
	font-size: 13px;
}

/* .dl-txt-vertical
------------------------------------*/
.dl-txt-vertical > div {
	margin-bottom: 60px;
}

.dl-txt-vertical > div:last-of-type {
	margin-bottom: 0;
}

.dl-txt-vertical dt {
	margin-bottom: 18px;
	font-size: 14px;
	letter-spacing: 0.12em;
}

.dl-txt-vertical dd,
.dl-txt-vertical dd p,
.dl-txt-vertical dd .list-dot li {
	font-size: 14px;
	letter-spacing: 0.06em;
	line-height: 1.75;
	text-align: justify;
}

.dl-txt-vertical dd p { margin-bottom: 13px; }
.dl-txt-vertical dd p br { display: none; }

.dl-txt-vertical dd .list-dot:not(:first-child) { margin-top: 20px; }
.dl-txt-vertical dd .list-dot:not(:last-child) { margin-bottom: 30px; }
.dl-txt-vertical dd .dl-txt-line:first-child { margin-top: 35px; }


/* .dl-txt-line
------------------------------------*/
.dl-txt-line > div {
	position: relative;
	margin-bottom: 26px;
	padding: 0 0 0 32px;
}

.dl-txt-line > div:last-child {
	margin-bottom: 0;
}

.dl-txt-line > div:before {
	display: block;
	content: '';
	position: absolute;
	top: 10px;
	left: 1px;
	background: rgba(0,0,0,0.2);
	width: 15px;
	height: 1px;
}

.dl-txt-line dt {
	margin-bottom: 7px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.dl-txt-line dd p br { display: none; }


/* .dl-num
------------------------------------*/
.dl-num,
.dl-num p {
	font-size: 13px;
	line-height: 1.75;
	letter-spacing: 0.06em;
}

.dl-num > div {
	border-bottom: 2px solid #FFFFFF;
	padding-bottom: 2px;
}

.dl-num > div:last-of-type { border-bottom: none; }

.dl-num > div > dt,
.dl-num > div > dd {
	padding-right: 9%;
	padding-left: 17%;
}

.dl-num > div > dt.btn-accordion,
.dl-num > div > dt.btn-accordion + dd {
	padding-right: 6%;
	padding-left: 50px;
}

.dl-num > div > dt {
	padding-top: 18px;
	padding-bottom: 14px;
	color: #282828;
	font-size: 14px;
	letter-spacing: 0.12em;
}

.dl-num > div.padding-l > dt,
.dl-num > div.padding-l > dd {
	padding-left: 9%;
}

.sec-dl.narrow .dl-num > div > dt {
	padding-bottom: 8px;
}

/* 数字ありの場合
.dl-num > div > dt i:first-of-type {
	padding-right: 2px;
}
*/

.dl-num > div > dt.pt {
	padding-top: 34px;
}

.dl-num > div > dt .plus {
	right: 9%;
	margin-top: -4px;
}

.dl-num > div > dd { padding-bottom: 20px; text-align: justify; }
.dl-num > div > dd .btn-link { margin: 20px -5px 10px; }
.dl-num > div > dd dd .btn-link { margin: 18px -4px 10px; }

/* .dl-line
------------------------------------*/
.dl-line {
	border-top: 1px solid rgba(204,204,204,0.5);
	margin: 20px 0 24px;
	font-size: 13px;
	line-height: 1.75;
	letter-spacing: 0.08em;
}

.dl-line:first-child { margin-top: 0; }
.dl-line:last-child { margin-bottom: 0; }

.dl-line .btn-line {
	color: #606060;
	font-size: 12px;
	line-height: 1;
	white-space: nowrap;
}

.dl-line .btn-line span {
	padding-bottom: 1px;
	padding-left: 0;
}

.dl-line > div {
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid rgba(204,204,204,0.5);
	padding: 14px 2px 12px;
}

.dl-line > div.padding-l { padding: 14px 0 14px; }

.dl-line > div > dt {
	box-sizing: border-box;
	width: 75px;
	min-width: 75px;
	padding-right: 10px;
}

.dl-line.size-s > div > dt { width: 68px; min-width: 68px; }
.dl-line.size-l > div > dt { width: 110px; min-width: 110px; }

.dl-line > div > dd {
	width: 100%;
	letter-spacing: 0.06em;
/* 	text-align: justify; */
}

.dl-line > div > dd .attention {
	display: inline-block;
	margin-top: 5px;
	margin-bottom: 10px;
	font-size: 12px;
	letter-spacing: 0.08em;
	line-height: 1.7;
}

.dl-line > div > dd .attention:last-child { margin-bottom: 0; }

.dl-line > div > dd h3 {
	position: relative;
	margin: 13px 0 6px -2px;
	padding-top: 13px;
	color: #B79267;
	font-size: 13px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.dl-line > div > dd h3:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: -3px;
	background: rgba(204,204,204,0.5);
	width: calc(100% + 3px);
	height: 1px;
}

.dl-line > div > dd h3:first-of-type { border-top: none; margin-top: 0; padding-top: 0; }
.dl-line > div > dd h3:first-of-type:before { display: none; }

.dl-line > div > dd table {
	font-size: 13px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.dl-line > div > dd th {
	box-sizing: border-box;
	padding-right: 1em;
	font-weight: 500;
	white-space: nowrap;
}

.dl-line > div > dd td {
	box-sizing: border-box;
	padding-right: 0.5em;
	padding-bottom: 2px;
}

.dl-line > div > dd td:last-of-type { padding-right: 0; white-space: nowrap; }
.dl-line > div > dd tr:last-of-type td { padding-bottom: 0; }

.dl-line > div > dd .td-padding td { padding-bottom: 8px; }
.dl-line > div > dd .td-padding tr:last-of-type td { padding-bottom: 4px; }

.dl-line > div > dd.th-4em th,
.dl-line > div > dd.td-4em td { min-width: 5.5em; }
.dl-line > div > dd.th-5em th { min-width: 6.5em; }

.dl-line > div > dd .table-wide tr:first-of-type th { padding-top: 2px; }

.dl-line > div > dd .table-wide th,
.dl-line > div > dd .table-wide td {
	display: block;
	width: 100%;
}

.dl-line > div > dd .table-wide th { margin-bottom: 4px; }
.dl-line > div > dd .td-padding.table-wide td { padding-bottom: 14px; }

.dl-line > div > dd td > span.attention {
	margin-top: 0;
}

.dl-line > div > dd td > span.attention,
.dl-line > div > dd td > span.attention .btn-line {
	display: inline-block;
	font-size: 12px;
}

/* .table-th-line
------------------------------------*/
.table-th-line th {
	position: relative;
	z-index: 0;
}

.table-th-line th span {
	position: relative;
	display: inline-block;
	background-color: #FFFFFF;
	padding-right: 7px;
	z-index: 1;
}

.table-th-line th:after {
	display: block;
	content: '';
	position: absolute;
/* 	top: calc(50% - 3px); */
	top: 10px;
	left: 0;
	background: rgba(204,204,204,0.4);
	width: calc(100%);
	height: 1px;
	z-index: 0;
}

.table-th-line td {
	position: relative;
	padding-bottom: 5px !important;
	padding-left: 8px;
	z-index: 1;
}

/* .table-border
------------------------------------*/
.table-border {
	width: 100%;
	color: #282828;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.table-border tr { border-bottom: 1px solid rgba(204,204,204,0.5); }
.table-border th,
.table-border td { padding: 7px 6px 6px; }
.table-border th.center,
.table-border td.center { text-align: center; }
.table-border th.right,
.table-border td.right { text-align: right; letter-spacing: 0.06em;}
.table-border th { font-weight: normal; }
.table-border td span { padding-left: 2px; font-size: 10px; }
.table-border + p { margin-top: 12px; }


/* .table-chronology
------------------------------------*/
.table-chronology {
	box-sizing: border-box;
	border-left: 1px solid rgba(204,204,204,0.5);
	width: 100%;
	font-size: 13px;
	line-height: 1.8;
	text-align: center;
	white-space: nowrap;
}

.table-chronology + .table-chronology {
	margin-top: 30px;
}

.table-chronology th,
.table-chronology td {
	border-right: 1px solid rgba(204,204,204,0.3);
	border-bottom: 1px solid rgba(204,204,204,0.3);
}

#yakuyokeContents .table-chronology th,
#yakuyokeContents .table-chronology td {
	width: calc(100% / 3);
}

#happouContents .table-chronology th,
#happouContents .table-chronology td {
	width: 25%;
}

.table-chronology:not(.color-last) th:nth-of-type(2),
.table-chronology:not(.color-last) td:nth-of-type(2) {
	background-color: #FBFAF8;
	color: #B79267;
}

.table-chronology.color-last th:first-of-type,
.table-chronology.color-last td:first-of-type {
	background-color: #FBFAF8;
	color: #B79267;
}

.table-chronology caption {
	border-top: 1px solid rgba(204,204,204,0.5);
	border-right: 1px solid rgba(204,204,204,0.5);
	border-left: 1px solid rgba(204,204,204,0.5);
	padding: 3px 0 2px 0.3em;
	letter-spacing: 0.3em;
	font-size: 13px;
}

.table-chronology thead {
	border-top: 1px solid rgba(204,204,204,0.5);
}

.table-chronology thead th,
.table-chronology tbody td {
	padding: 4px 8px;
}

.table-chronology thead th {
	padding-left: calc(10px + 0.2em);
	letter-spacing: 0.2em;
	font-size: 15px;
	font-weight: normal;
	vertical-align: middle;
}

.table-chronology thead th em {
	display: block;
	margin-top: -5px;
	font-size: 11px;
	letter-spacing: 0.14em;
}

.table-chronology tbody td {
	padding-left: calc(8px + 0.06em);
	letter-spacing: 0.06em;
	line-height: 1;
	vertical-align: middle;
}

.table-chronology tbody td strong {
	display: block;
	font-size: 20px;
	line-height: 1.4;
}

.table-chronology tbody td strong.size-m {
	font-size: 16px;
	line-height: 1.3;
}

.table-chronology tbody td strong span {
	display: inline-block;
	font-size: 13px;
	margin-left: 2px;
	transform: translateY(-1px);
}

.table-chronology tbody td em {
	display: block;
	margin: -1px 0 6px;
	font-size: 11px;
}

/* .chronology-yakudoshi
------------------------------------*/
.chronology-yakudoshi {
	margin: 20px 0 22px;
}


/* list
---------------------------------------------------------------------------*/

/* .list-dot
------------------------------------*/
.list-dot li {
	position: relative;
	margin: 0 0 8px 3px;
	padding-left: 18px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.list-dot li:last-of-type { margin-bottom: 0; }

.list-dot li:before {
	display: block;
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

/* .list-num
------------------------------------*/
.list-num {
	counter-reset: count-number;
	padding: 10px 0;
}

.list-num:first-child { padding-top: 0; }

.list-num li {
	position: relative;
	margin: 0 0 10px 3px;
	padding-left: 22px;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.list-num li:last-of-type { margin-bottom: 0; }

.list-num li:before {
	display: block;
	counter-increment: count-number;
  content: counters(count-number,'.') '.';
	position: absolute;
	top: 0;
	left: 0;
}

.list-num.jp li:nth-of-type(1):before { content: '一.' }
.list-num.jp li:nth-of-type(2):before { content: '二.' }
.list-num.jp li:nth-of-type(3):before { content: '三.' }
.list-num.jp li:nth-of-type(4):before { content: '四.' }
.list-num.jp li:nth-of-type(5):before { content: '五.' }
.list-num.jp li:nth-of-type(6):before { content: '六.' }
.list-num.jp li:nth-of-type(7):before { content: '七.' }
.list-num.jp li:nth-of-type(8):before { content: '八.' }
.list-num.jp li:nth-of-type(9):before { content: '九.' }
.list-num.jp li:nth-of-type(10):before { content: '十.' }

/* .attention-list
------------------------------------*/
.attention-list li {
	position: relative;
	margin: 0 0 6px 1px;
	padding-left: 15px;
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: 0.06em;
}

.attention-list li:last-of-type { margin-bottom: 0; }

.attention-list li:before {
	display: block;
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

.attention-list li br { display: none; }


/* img
---------------------------------------------------------------------------*/

/* .img-gallery
------------------------------------*/
.img-gallery {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.bg-beige + .sec-common .img-gallery { margin-top: -7px; }

.img-gallery li {
	width: 24.1%;
	margin: 0 1.2% 1.2% 0;
	cursor: pointer;
}

.img-gallery li:nth-of-type(4n) { margin-right: 0; }
.img-gallery li img { width: 100%; height: auto; }

/* .img-gallery-modal
------------------------------------*/
.img-gallery-modal {
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.95);
	width: 100%;
	height: 100%;
	z-index: 10000;
	display: none;
	opacity: 0;
}

.img-gallery-modal,
.img-gallery-modal h1 {
	color: rgba(255,255,255,0.9);
}

.img-gallery-modal .btn-close {
	position: absolute;
	top: 0;
	right: 0;
	padding: 25px;
	cursor: pointer;
	z-index: 2;
}

.img-gallery-modal .btn-close img { width: 30px; height: auto; }

.img-gallery-modal .modal-inner {
	position: relative;
	width: 100vw;
	height: 100vh;
	opacity: 0;
	z-index: 0;
}

.img-gallery-modal .modal-title {
	position: absolute;
	top: 30px;
	left: 25px;
	white-space: nowrap;
	z-index: 1;
}

.img-gallery-modal .modal-title .mark {
	margin-bottom: 18px;
	text-align: center;
}

.img-gallery-modal .modal-title .mark img {
	width: 20px;
	height: auto;
	opacity: 0.8;
}

.img-gallery-modal .modal-title h1 {
	margin-bottom: 20px;
	padding-left: 0;
	font-size: 13px;
	line-height: 1.5;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
}

.img-gallery-modal .modal-title h1 i {
	display: inline-block;
	margin-bottom: -1px;
}

.img-gallery-modal .cnt {
	text-align: center;
	font-size: 14px;
}

.img-gallery-modal .cnt i {
	display: block;
}

.img-gallery-modal .cnt .current {
	position: relative;
	margin-bottom: 8px;
	padding: 0 2px 6px;
}

.img-gallery-modal .cnt .current:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: calc(50% - 10px);
	background: rgba(255,255,255,0.6);
	width: 20px;
	height: 1px;
}

.img-gallery-modal .slider-zoom { z-index: 0; }

.img-gallery-modal .slick-track,
.img-gallery-modal .inner {
	width: 100vw !important;
/* 	height: 100vh !important; */
}

.img-gallery-modal .inner {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
}

.img-gallery-modal .inner img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) !important;
	width: auto;
	max-width: calc(100% - 0px);
	height: auto;
	max-height: calc(100% - 0px);
	margin: 0 auto !important;
	-webkit-backface-visibility: hidden;
}

.img-gallery-modal .inner img + .loading {
	border: 1px solid rgba(255,255,255,255.6);
	border-top-color: transparent;
	display: none;
}

.img-gallery-modal.active .inner img + .loading { display: block; }
.img-gallery-modal .inner img.lazyloaded + .loading { opacity: 0; }

.img-gallery-modal .slick-prev,
.img-gallery-modal .slick-next {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	text-indent: -9999px;
	z-index: 10;
}

.img-gallery-modal .slick-prev { left: 0; background: url(img/share/cursor-left.svg) no-repeat left 25px bottom 25px / 40px auto; opacity: 0; }
.img-gallery-modal .slick-next { right: 0; background: url(img/share/cursor-right.svg) no-repeat right 25px bottom 25px / 40px auto; opacity: 0; }

.img-gallery-modal.active .slick-prev,
.img-gallery-modal.active .slick-next { opacity: 1; }

/* .img-scroll
------------------------------------*/
.img-scroll-wrap {
	overflow: hidden;
	width: 100%;
}

.img-scroll-wrap ul {
	display: -webkit-box;
	display: flex;
	margin-bottom: 3px;
}

.img-scroll-wrap li {
	box-sizing: border-box;
	height: 120px;
	padding: 0 3px 0 0;
}

.img-scroll-wrap li img {
	width: auto;
	height: 100%;
	-webkit-backface-visibility: hidden;
}

/* .img-gallery-wide
------------------------------------*/
.img-gallery-wide {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-bottom: 45px;
}

.img-gallery-wide img {
	width: calc(100% / 3);
	height: auto;
	-webkit-backface-visibility: hidden;
}


/* .nav-page
---------------------------------------------------------------------------*/
.nav-page ul {
	margin: -15px 0 55px;
	padding-right: 6px;
	text-align: center;
}

.nav-page li { display: inline-block; border-right: 1px solid rgba(0,0,0,0.2); }
.nav-page li:first-of-type { border-left: 1px solid rgba(0,0,0,0.2); }

.nav-page a {
	display: block;
	padding: 3px 17px 3px 18px;
}

.nav-page a span {
	position: relative;
	display: inline-block;
	padding-bottom: 2px;
	letter-spacing: 0.2em;
	font-size: 14px;
}

.nav-page a span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.4);
	width: calc(100% - 0.2em);
	height: 1px;
}


/* .nav-sozoroaruki
---------------------------------------------------------------------------*/
.nav-sozoroaruki li {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	white-space: nowrap;
}

.nav-sozoroaruki li.nature { background-image: url(img/sozoroaruki/index/img-nav-sozoroaruki-nature_sp.jpg); }
.nav-sozoroaruki li.art { background-image: url(img/sozoroaruki/index/img-nav-sozoroaruki-art_sp.jpg); }
.nav-sozoroaruki li.history { background-image: url(img/sozoroaruki/index/img-nav-sozoroaruki-history_sp.jpg); }
.nav-sozoroaruki li.architect { background-image: url(img/sozoroaruki/index/img-nav-sozoroaruki-architect_sp.jpg); }

.nav-sozoroaruki li a {
	position: relative;
	display: block;
	width: 100%;
	padding-bottom: 39.5%;
}

.nav-sozoroaruki li.notlink a { pointer-events: none; }

.nav-sozoroaruki li h2,
.nav-sozoroaruki li h3 {
	color: #FFFFFF;
}

.nav-sozoroaruki li h2 {
	position: absolute;
	top: 33%;
	left: 13.5%;
}

.nav-sozoroaruki li.art h2 {
	top: 27%;
}

.nav-sozoroaruki li h2 strong {
	display: block;
}

.nav-sozoroaruki li h2 strong img {
	width: 22px;
	height: auto;
}

.nav-sozoroaruki li.art h2 strong img {
	display: block;
	width: 26px;
	margin-left: -1px;
}

.nav-sozoroaruki li h2 em {
	display: block;
	position: absolute;
	top: 0;
	left: -21px;
	font-size: 10px;
	letter-spacing: 0.1em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.nav-sozoroaruki li h3 {
	position: absolute;
	top: 50%;
	left: 28.5%;
	width: 45%;
	margin-top: -7px;
	font-size: 14px;
	letter-spacing: 0.13em;
}

.nav-sozoroaruki li h3 span {
	display: inline-block;
	border-bottom: 1px solid #FFFFFF;
	padding-bottom: 2px;
}

.nav-sozoroaruki li h3 span.center {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}


/* .nav-detail
---------------------------------------------------------------------------*/
.nav-detail {
	position: relative;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 94%;
	margin: 0px auto;
}

.nav-kigan { background-image: url(img/kigan/index/bg-nav-kigan_sp.jpg); }
.nav-omatsuri { background-image: url(img/omatsuri/index/bg-nav-omatsuri_sp.jpg); }

.nav-detail:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.6);
	width: 100%;
	height: 100%;
	z-index: 1;
}

.nav-detail ul {
	position: relative;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	z-index: 2;
}

.nav-detail li {
	position: relative;
	border-top: 1px solid rgba(255,255,255,0.3);
	width: 50%;
}

.nav-detail li:nth-child(odd):before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background: rgba(255,255,255,0.3);
	width: 1px;
	height: 100%;
}

.nav-detail li a {
	display: block;
	padding: 0 0 36%;
	color: #FFFFFF;
	font-size: 13px;
	line-height: 1.5;
	letter-spacing: 0.12em;
	padding-left: 0.12em;
	text-align: center;
	white-space: nowrap;
}

.nav-detail.nav-omatsuri li a { padding-bottom: 40%; }

.nav-detail li a span {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
}


/* bnr
---------------------------------------------------------------------------*/
.bnr-arrow {
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}

.bnr-arrow img {
	width: 22px;
	height: auto;
}

/* .bnr-gokigan
------------------------------------*/
.bnr-gokigan {
	overflow: hidden;
	position: relative;
	background: url(img/kigan-omamori/bnr-gokigan-bg_sp.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 150px;
	margin-top: 75px;
	color: #FFFFFF;
}

.bg-beige + .bnr-gokigan { margin-top: -55px; }

.bnr-gokigan a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
	color: #FFFFFF;
	text-align: center;
}

.bnr-gokigan a > div {
	position: relative;
	width: 100%;
}

.bnr-gokigan em {
	display: block;
	margin-bottom: 14px;
	font-size: 13px;
	letter-spacing: 0.2em;
	padding-left: 0.2em;
}

.bnr-gokigan i {
	display: block;
	margin: 0 auto 20px;
}

.bnr-gokigan i img {
	width: 20px;
	height: auto;
}

.bnr-gokigan strong {
	display: block;
	font-size: 14px;
	letter-spacing: 0.2em;
	padding-left: 0.2em;
}

/* .bnr-keidaiart
------------------------------------*/
.bnr-keidaiart {
	overflow: hidden;
	position: relative;
	background: url(img/art/bnr-keidaiart-bg_sp.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 200px;
}

.bnr-keidaiart a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.bnr-keidaiart strong {
	display: block;
	position: absolute;
	top: 50%;
	left: 6%;
	margin: -34px 0 0;
}

.bnr-keidaiart strong img {
	width: 156px;
	height: auto;
}

/* .bnr-orei
------------------------------------*/
.bnr-orei {
	width: 80%;
	margin: 0 auto 100px;
}

.bnr-orei a {
	display: block;
	border: 1px solid #dedede;
	border-radius: 5px;
	padding: 22px 22px 20px;
}

.bnr-orei figure {
	width: 100%;
}

.bnr-orei .txt {
	padding: 24px 0 0 4px;
}

.bnr-orei h2 {
	margin: 0 0 12px -1px;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.bnr-orei p {
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.08em;
	text-align: justify;
}

.bnr-orei p br { display: none; }


/* news
---------------------------------------------------------------------------*/
.post-list article {}
.post-list article:nth-of-type(3n) { margin-right: 0; }
.post-list article figure { margin-bottom: 25px; }


/* post single
---------------------------------------------------------------------------*/

/* .post-title
------------------------------------*/
.post-title {
	margin-bottom: 32px;
}

.post-title time {
	display: inline-block;
	letter-spacing: 0.05em;
}

.post-title .post-categories {
	position: relative;
	display: inline-block;
	margin-left: 20px;
	letter-spacing: 0.12em;
}

.post-title .post-categories:before {
	display: block;
	content: '/';
	position: absolute;
	top: 0;
	left: -15px;
}

.post-title .post-categories li {
	display: inline-block;
}

.post-title h1 {
	padding-top: 12px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.12em;
}


/* .post-main
------------------------------------*/
.post-main {
	margin-bottom: 40px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.post-main p {
	margin-bottom: 15px;
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.12em;
	word-break: break-all;
}

.post-main p:last-child { margin-bottom: 0; }
.post-main a { text-decoration: underline; }
.post-main strong { font-weight: bold; }
.post-main em { font-style: italic; }
.post-main del { text-decoration: line-through; }

.post-main img {
	display: block;
	max-width: 100%;
	height: auto;
	padding-bottom: 20px;
}

.post-main .wp-caption {
	max-width: 100%;
	margin-bottom: 25px;
}

.post-main .wp-caption-text {
	margin-top: -5px;
	font-size: 10px;
}

.post-main ul,
.post-main ol,
.post-main blockquote {
	margin: 30px 0;
}

.post-main ul li {
	list-style: disc;
	margin: 0 0 6px 25px;
}

.post-main ol li {
	list-style: decimal;
	margin: 0 0 6px 25px;
}

.post-main ul li:last-of-type,
.post-main ol li:last-of-type {
	margin-bottom: 0;
}

.post-main blockquote {
	background: #F5F5F5;
	padding: 28px 35px;
}

/* .sec-table
------------------------------------*/
.sec-table {
	margin-top: 60px;
}

.sec-table h3 {
	margin-bottom: 20px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.post-table {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 40px;
	font-size: 13px;
	letter-spacing: 0.02em;
}

.post-table tr {
	border-bottom: 1px solid #CCC;
}

.post-table th {
	position: relative;
	box-sizing: border-box;
	width: 20%;
	padding: 13px 15px 12px 5px;
	text-align: left;
	vertical-align: top;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.post-table td {
	box-sizing: border-box;
	width: 80%;
	padding: 13px 5px 12px 0;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

/* .post-link
------------------------------------*/
.post-link {
	overflow: hidden;
	margin: 15px 0 0 -5px;
}

.post-link li {
	float: left;
	margin: 0 10px 10px 0;
}


/* .wp-pagenavi
---------------------------------------------------------------------------*/
.wp-pagenavi {
	overflow: hidden;
	margin-top: 35px;
	padding: 10px 0 45px;
	font-size: 16px;
	letter-spacing: 0;
	text-align: center;
}

.wp-pagenavi a {
	margin: 0 5px;
	padding: 5px;
}

.wp-pagenavi .current {
	display: inline-block;
	border-bottom: 1px solid #666666;
	margin: 0 10px;
	padding: 5px 1px 0;
}

.wp-pagenavi .extend,
.wp-pagenavi a.first,
.wp-pagenavi a.last {
	display: none;
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	display: inline-block;
	box-sizing: border-box;
	border-radius: 50%;
	border: 1px solid rgba(204,204,204,0.5);
	width: 32px;
	height: 32px;
	padding: 8px 0 0 0;
	font-size: 13px;
	letter-spacing: 0;
	text-align: center;
	transform: translateY(-1px);
}

.wp-pagenavi a.previouspostslink { margin-right: 20px; }
.wp-pagenavi a.nextpostslink { margin-left: 20px; }


/* .img-main
---------------------------------------------------------------------------*/
.img-main {
	position: relative;
	background-color: #000000;
	width: 100%;
	-ms-touch-action: manipulation !important;
	touch-action: manipulation !important;
}

.img-main .inner img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.img-main .slick-dots {
	position: absolute;
	bottom: 15px;
	left: 0;
	width: 100%;
	height: 2px;
	text-align: center;
}

.img-main .slick-dots li {
	display: inline-block;
	width: 26px;
	height: 2px;
	margin: 0 3px;
}

.img-main .slick-dots li:first-of-type:last-of-type { display: none; }

.img-main .slick-dots button {
	position: relative;
	width: 26px;
	height: 2px;
	background-color: #FFFFFF;
	text-indent: -9999px;
}

.img-main .slick-dots .slick-active button { background: #D80C28; }
#artContents .img-main .slick-dots .slick-active button,
#sozoroaruki-artContents .img-main .slick-dots .slick-active button { background: #05569A; }
#sozoroaruki-historyContents .img-main .slick-dots .slick-active button { background: #7F487C; }
#sozoroaruki-natureContents .img-main .slick-dots .slick-active button { background: #A8CC53; }


/* .img-main.column4
------------------------------------*/
.img-main.column4 .inner { display: -webkit-box; display: flex; flex-wrap: wrap; }
.img-main.column4 .inner > span { width: 50%; }


/* page top
---------------------------------------------------------------------------*/

/* .img-top
------------------------------------*/
.img-top {
	position: relative;
	width: 100%;
}

.img-top .logo-v {
	position: absolute;
	top: calc((100vh - 74px) / 2);
	left: 25px;
	z-index: 100;
	transform: translateY(-50%);
}

/* .img-top .logo-v img { display: none; } */

.img-top .logo-v strong {
	display: block;
	top: 77px;
	right: -17px;
	background-color: #FFFFFF;
	padding: 6px 6px 6px 5px;
	color: #282828;
	font-size: 13px;
	letter-spacing: 0.3em;
	white-space: nowrap;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
}

@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
	.img-top .logo-v strong {
		padding-left: 6px;
	}
}

.img-top-slide {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: calc(100vh - 74px);
	z-index: 0;
	-ms-touch-action: manipulation !important;
	touch-action: manipulation !important;
}

.img-top-slide .slick-list,
.img-top-slide .slick-track {
	width: 100% !important;
	height: 100% !important;
}

.img-top-slide .inner {
	left: 0 !important;
	height: 100%;
}

.img-top-slide .inner:not(:first-of-type) {
	position: absolute !important;
	top: 0 !important;
}

.img-top-slide .inner picture {
	display: block;
	width: 100%;
	height: 50%;
}

.img-top-slide .inner img {
	display: block;
	object-fit: cover;
	width: 102%;
	height: 100%;
	margin-left: -1%;
}

.img-top-slide .slick-dots {
	display: -webkit-box;
	display: flex;
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 100;
}

.img-top-slide .slick-dots li {
	position: relative;
	width: 22px;
	height: 22px;
}

.img-top-slide .slick-dots button {
	position: relative;
	width: 22px;
	height: 22px;
	text-indent: -9999px;
	transition: .15s linear;
}

.img-top-slide .slick-dots button:after {
	display: block;
	content: '';
	position: absolute;
	top: 8px;
	left: 8px;
	background: #FFFFFF;
	border-radius: 50%;
	width: 6px;
	height: 6px;
}

.img-top-slide .slick-dots button:hover:after,
.img-top-slide .slick-dots .slick-active button:after { background: #535353; }

/* .bnr-top
------------------------------------*/
.bnr-top {
	position: relative;
	width: 250px;
	margin: 45px auto 0;
}

.bnr-top .bnr-close,
.bnr-fix .bnr-top {
	display: none;
}

.bnr-top > a {
	display: block;
	position: relative;
	z-index: 0;
}

.bnr-top > a img { width: 100%; height: auto; }

/* .important-news
------------------------------------*/
.important-news {
	position: relative;
	box-sizing: border-box;
	margin: 55px auto 70px;
	padding: 0 8%;
}

.important-news + .important-news {
	margin-top: -32px;
}

.important-news > h2 {
	margin-bottom: 35px;
	font-size: 16px;
	letter-spacing: 0.14em;
}

.important-news > h2 i {
	display: none;
}

.important-news .sns {
	position: absolute;
	top: -6px;
	right: 8%;
	margin-right: -6px;
}

.important-news .sns li { margin-right: 0; }
.important-news .sns img { width: 25px; height: auto; }
.important-news .sns img.on { display: none !important; }

.important-news .btn-link {
	display: block !important;
	margin-top: 30px;
}

.important-news-list article {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	margin-bottom: 15px;
}

.important-news-list article:last-of-type { margin-bottom: 0; }

.important-news-list figure {
	align-self: flex-start;
	width: 70px;
	min-width: 70px;
}

.important-news-list article > div {
	padding: 0 0 3px 21px;
}

.important-news-list .category {
	display: block;
	margin: 0 0 4px 0;
}

.important-news-list .category a {
	display: inline-block;
	position: relative;
	margin: 0 6px 2px 0;
	font-size: 10px;
	letter-spacing: 0.1em;
}

.important-news-list .category a:before,
.news-list-index article .category a:before,
.news-title .category a:before {
	display: block;
	content: ',';
	position: absolute;
	top: 0;
	right: -4px;
}

.important-news-list .category a:last-of-type:before,
.news-list-index article .category a:last-of-type:before,
.news-title .category a:last-of-type:before { display: none; }

.important-news-list h3 {
	font-size: 13px;
	line-height: 1.65;
	letter-spacing: 0.06em;
}

/* .important-news-list-noimg
------------------------------------*/
.important-news-list-noimg article {
	display: block;
	border-bottom: 1px solid rgba(204,204,204,0.5);
	padding: 14px 3px 6px;
}
	
.important-news-list-noimg article:first-of-type { border-top: 1px solid rgba(204,204,204,0.5); }

.important-news-list-noimg article .category a {
	display: inline-block;
	color: #606060;
	font-size: 10px;
	letter-spacing: 0.1em;
}

.important-news-list-noimg article h3 {
	width: 100%;
}

.important-news-list-noimg article h3 a {
	display: block;
	padding: 6px 0 10px;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.08em;
}

/* .sec-lead
------------------------------------*/
#topContents .sec-lead {
	width: 89%;
	margin: 0 auto 70px;
}

#topContents .sec-lead img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

#topContents .sec-lead h2 {
	margin-bottom: 7px;
	font-size: 18px;
	letter-spacing: 0.15em;
}

#topContents .sec-lead h2 + p{
	letter-spacing: 0.2em;
}

/* .top-nav
------------------------------------*/
.top-nav {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: 85px auto 60px;
}

.top-nav .inner {
	margin-top: 30px;
}

.top-nav .inner a {
	display: block;
	text-align: center;
}

.top-nav h2 {
	font-size: 13px;
	letter-spacing: 0.14em;
}

#topContents .figure-shiki > span { overflow: hidden; }

#topContents .figure-shiki > span > div {
	overflow: hidden;
	width: 100%;
	height: 100%;
}

#topContents .figure-shiki > span > div i {
	width: 59px;
	height: 59px;
	padding-right: 0;
	box-sizing: border-box;
	font-size: 14px;
}

#topContents .figure-shiki > span > div i span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

#topContents .figure-shiki > span > div div { height: 50%; }
#topContents .figure-shiki > span > div div strong,
#topContents .figure-shiki > span > div div em { display: none; }

/* #topContents .sec-sanpai
------------------------------------*/
#topContents .sec-sanpai,
#omairiContents .sec-sanpai { margin-top: 50px; }
#topContents .sec-sanpai + .btn-link { margin: -45px 5% 0; }


/* page news
---------------------------------------------------------------------------*/

/* .news-list-index
------------------------------------*/
.news-list-index {
	padding: 0 6%;
}

.news-list-index article {
	box-sizing: border-box;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	border-bottom: 1px solid rgba(204,204,204,0.5);
	padding: 20px 5px 20px 5px;
}

.news-list-index article:first-of-type { border-top: 1px solid rgba(204,204,204,0.5); }

.news-list-index article figure {
	align-self: flex-start;
	width: 75px;
	min-width: 75px;
}

.news-list-index article figure img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.news-list-index article .txt {
	padding: 0 0 2px 22px;
}

.news-list-index article time {
	display: block;
	margin-bottom: 7px;
	padding-left: 1px;
	color: #282828;
	font-size: 11px;
	letter-spacing: 0.1em;
}

.news-list-index article h2 {
	margin-bottom: 7px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-list-index article h2 a {
	color: #282828;
}

.news-list-index article .category a {
	display: inline-block;
	margin-right: 6px;
	color: #282828;
	font-size: 11px;
	letter-spacing: 0.08em;
}


/* page news single
---------------------------------------------------------------------------*/
#newsContents.single .sec-lead { margin-bottom: 40px; }
#newsContents.single .news-list-index { margin-top: 90px; }
#newsContents.single .news-area { padding: 0 8%; }

/* .news-title
------------------------------------*/
.news-title {
	margin-bottom: 45px;
	text-align: center;
}

.news-title h1 {
	margin-bottom: 13px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-title .category,
.news-title time,
.news-title a {
	display: inline-block;
	font-size: 12px;
	color: #606060;
}

.news-title .category { margin-right: 2px; letter-spacing: 0.14em; }
.news-title .category span { display: inline-block; }
.news-title .category span:last-of-type i { display: none; }
.news-title .category a { margin-right: 6px; }
.news-title time { letter-spacing: 0.08em; }

/* .news-main
------------------------------------*/
.news-main,
.news-main p {
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.06em;
	text-align: justify;
}

.news-main p {
	margin-bottom: 20px;
	word-break: break-all;
}

.news-main p:last-child { margin-bottom: 0; }
.news-main a { text-decoration: underline; word-break: break-all; }
.news-main strong { font-weight: bold; }
.news-main em { font-style: italic; }
.news-main del { text-decoration: line-through; }

.news-main img {
	display: block;
	max-width: 100%;
	height: auto;
	padding: 20px 0;
}

.news-main > img:first-child,
.news-main > p:first-child img:first-child { padding-top: 0; }

.news-main img + img { margin-top: -10px; }
.news-main .wp-caption { max-width: 100%; margin-bottom: 25px; }
.news-main .wp-caption-text { margin-top: -5px; }

.news-main ul,
.news-main ol,
.news-main blockquote { margin: 30px 0; }

.news-main ul li { list-style: disc; margin: 0 0 6px 25px; }
.news-main ol li { list-style: decimal; margin: 0 0 6px 25px; }
.news-main ul li:last-of-type,
.news-main ol li:last-of-type { margin-bottom: 0; }

.news-main blockquote {
	background: #F5F5F5;
	padding: 28px 35px;
}

/* .sec-table
------------------------------------*/
.sec-table {
	margin-top: 60px;
}

.news-table {
	box-sizing: border-box;
	border-top: 1px solid rgba(204,204,204,0.5);
	width: 100%;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.08em;
}

.news-table tr { border-bottom: 1px solid rgba(204,204,204,0.5); }

.news-table th,
.news-table td {
	padding-top: 14px;
	padding-bottom: 14px;
}

.news-table th {
	position: relative;
	box-sizing: border-box;
	width: 25%;
	padding-right: 10px;
	padding-left: 5px;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}

.news-table td {
	box-sizing: border-box;
	width: 75%;
}

/* .news-link
------------------------------------*/
.news-link { overflow: hidden; margin: 30px 0 0 -2px; }
.news-link li { float: left; margin: 0 12px 12px 0; }


/* page about
---------------------------------------------------------------------------*/
#aboutContents .about-main + .sec-lead {
	margin-top: 40px;
	margin-bottom: -25px;
}

#aboutContents .img-center + .sec-lead {
	margin-top: 32px;
}

#aboutContents .sec-lead h2 {
	margin-bottom: 20px;
	font-size: 14px;
	letter-spacing: 0.25em;
}

#sugawaranomichizanekouContents .img-center,
#goyuishoContents .img-center {
	margin-bottom: 28px;
	padding: 0 10%;
}

#gakumonnokamisamaContents .img-center figcaption {
	box-sizing: border-box;
	padding: 10px 10px 25px;
	color: #777777;
	font-size: 10px;
	line-height: 1.85;
	letter-spacing: 0.06em;
	text-align: justify;
}

#gakumonnokamisamaContents .img-gallery-wide img {
	width: 50%;
}

/* .sec-center-s
------------------------------------*/
.sec-center-s { margin-bottom: 80px; padding: 0 10%; }
.sec-center-s:last-child { margin-bottom: 0; }
.sec-center-s.mt { margin-top: 0; }
.sec-center-s p { margin-bottom: 18px; padding: 0; text-align: justify; }

/* .about-main
------------------------------------*/
.about-main {
	position: relative;
	width: 100%;
	height: 100vh;
	z-index: 999;
}

.about-main > figure {
	position: absolute;
	top: 0;
	left: 0;
	background: url(img/about/index/img-main2.jpg) no-repeat 33% bottom / cover;
	width: 100%;
	height: 100%;
	z-index: 0;
	transform-origin: center center;
	opacity: 0;
}

.about-main .mask {
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.11);
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0;
}

.about-main .title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	z-index: 2;
}

.about-main h1,
.about-main h2 {
	color: #FFFFFF;
	white-space: nowrap;
	opacity: 0;
}

.about-main h1 {
	margin: -20px 0 40px calc(50% - 39px);
	font-size: 20px;
	text-align: left;
	line-height: 1.8;
	letter-spacing: 0.25em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.about-main h2 {
	font-size: 12px;
	line-height: 2.1;
	letter-spacing: 0.24em;
	padding-left: 0.75em;
}

/* .nav-about
------------------------------------*/
.nav-about {
	position: relative;
	margin: 60px auto 45px;
	padding: 40px 6% 0;
}

.nav-about > a {
	display: none;
}

.nav-about ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.nav-about li {
	width: 46%;
	margin: 10% 8% 0 0;
	text-align: center;
}

.nav-about li:nth-of-type(1),
.nav-about li:nth-of-type(2) { margin-top: 0; }
.nav-about li:nth-child(even) { margin-right: 0; }

.nav-about li a { display: block; }
.nav-about li figure { margin-bottom: 18px; }
.nav-about li h2 { font-size: 13px; letter-spacing: 0.13em; }


/* page sugawaranomichizanekou
---------------------------------------------------------------------------*/

/* .poem
------------------------------------*/
.poem {
	margin: 50px auto 45px;
}

.poem h2,
.poem h3 {
	margin-bottom: 32px;
	font-size: 17px;
	letter-spacing: 0.14em;
}

.poem dl + h3 {
	margin-top: 30px;
	color: #606060;
	font-size: 15px;
}

.poem dl + h3:last-of-type {
	margin-bottom: 0;
}

.poem dl > div { position: relative; margin-bottom: 30px; }
.poem dl > div:last-child { margin-bottom: 0; }

.poem dt {
	margin: 0 0 14px;
	font-size: 14px;
	letter-spacing: 0.28em;
}

.poem dd { padding-left: 11px; }
.poem dd.size-l p { margin-bottom: 9px; }
.poem dd.size-s p { font-size: 14px; line-height: 2.1; letter-spacing: 0.12em; }

/* .nav-modal-list
------------------------------------*/
.nav-modal-list {
	margin-top: 75px;
	margin-bottom: 80px;
}

.nav-modal-list ul { border-top: 1px solid rgba(40,40,40,0.15); }
.nav-modal-list li { border-bottom: 1px solid rgba(40,40,40,0.15); }
.nav-modal-list li.current { background-color: #F7F7F7; }

.nav-modal-list li span {
	display: block;
	position: relative;
	box-sizing: border-box;
	padding: 23px 0 22px 12px;
	color: #282828;
	font-size: 14px;
	letter-spacing: 0.16em;
}

.nav-modal-list li span i {
	display: block;
	position: absolute;
	top: 50%;
	right: 15px;
	background: url(img/share/ico-arrow-btn.svg) no-repeat;
	background-size: 5px auto;
	width: 5px;
	height: 10px;
	transform: translateY(-50%);
}

.modal-img-txt .nav-modal-list li span { padding-left: 20px; }
.modal-img-txt .nav-modal-list li span i { right: 20px; }

/* .modal-img-txt
------------------------------------*/
.modal-img-txt {
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFFFFF;
	width: 100%;
	height: 100%;
	z-index: -999;
	opacity: 0;
}

.modal-img-txt .btn-modal-close {
	position: fixed;
	top: 0;
	right: 0;
	padding: 25px;
	z-index: 1;
}

.modal-img-txt .btn-modal-close img {
	width: 30px;
	height: auto;
}

.modal-img-txt-inner {
	position: relative;
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-overflow-scrolling: touch;
}

.modal-img-txt figure,
.modal-img-txt .txt-change {
	display: none;
	opacity: 0;
}

.modal-img-txt figure img {
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.modal-img-txt .txt .inner {
	padding: 60px 10% 60px;
}

.modal-img-txt .txt .inner .btn-link.modal-close {
	margin-top: 45px;
}

.modal-img-txt .txt h2 {
	margin-bottom: 25px;
	font-size: 18px;
	line-height: 1.6;
	letter-spacing: 0.14em;
}

.modal-img-txt .txt p {
	color: #606060;
	margin-bottom: 25px;
	letter-spacing: 0.1em;
}

.modal-img-txt .nav-modal-list {
	margin-bottom: 0;
	opacity: 0;
}

/* .modal-img-txt .poem
------------------------------------*/
.modal-img-txt .poem h3 {
	margin: 30px 0 30px;
}

.modal-img-txt .poem h3:first-child { margin-top: 0; font-size: 15px;}
.modal-img-txt .poem h3:last-child { margin-bottom: 0; font-size: 14px; color: #606060;}

.modal-img-txt .poem dl {
	padding-left: 11px;
	white-space: nowrap;
}

.modal-img-txt .poem dl > div { margin-bottom: 0; }
.modal-img-txt .poem dl > div:first-of-type { margin-bottom: 30px; }
.modal-img-txt .poem dd p { letter-spacing: 0.1em; }

/* .modal-img-txt .poem.size-s
------------------------------------*/
.modal-img-txt .poem.size-s dl { padding-left: 0; }
.modal-img-txt .poem.size-s dl > div:first-of-type { margin-right: 30px; }
.modal-img-txt .poem.size-s dd p { letter-spacing: 0.08em; }


/* page gakumonnokamisama
---------------------------------------------------------------------------*/


/* page goyuisho
---------------------------------------------------------------------------*/


/* page tenjinsama-ume
---------------------------------------------------------------------------*/
#tenjinsama-umeContents .title-page { margin-bottom: 30px; }
#tenjinsama-umeContents .title-page h1 { font-size: 18px; }
#tenjinsama-umeContents .sec-lead { margin-bottom: 60px; }
/* #tenjinsama-umeContents .sec-lead.left p { letter-spacing: 0.16em; } */

/* .ume-history
------------------------------------*/
.ume-history {
	margin: 0 auto 60px;
	padding: 0 9.5%;
}

.ume-history .txt {
	overflow: hidden;
	margin-right: -5px;
	padding-right: 5px;
}

.ume-history h2 {
	margin: 0 0 25px;
	font-size: 17px;
	letter-spacing: 0.14em;
	text-align: center;
}

.ume-history p {
	letter-spacing: 0.08em;
	text-align: justify;
}

.ume-history dl {
	margin: 32px 0 34px;
}

.ume-history dl > div {
	position: relative;
	margin-bottom: 25px;
}

.ume-history dt {
	margin: 0 0 11px -7px;
	font-size: 14px;
	letter-spacing: 0.22em;
}

.ume-history dd {
	padding-left: 2px;
}

.ume-history dd.size-l,
.poem dd.size-l p {
	color: #606060;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.poem dd.size-l p {
	line-height: 2;
	letter-spacing: 0.14em;
	font-size: 14px;
}

.ume-history dd.size-s {
	line-height: 1.9;
	letter-spacing: 0.15em;
}

.ume-history figure {
	margin: 45px 0 35px;
}

.ume-history .kamon {
	float: right;
	margin-right: -5px;
}

.ume-history .kamon img {
	width: 70px;
	height: auto;
	-webkit-backface-visibility: hidden;
}

/* ume-everyone
------------------------------------*/
.ume-everyone {
	margin: 0 auto 60px;
	padding: 0 9.5%;
}

.ume-everyone figure {
	margin-bottom: 40px;
}

.ume-everyone .inner figure img {
	display: block;
	margin-bottom: 10px;
}

.ume-everyone .txt h2,
.ume-iroiro .txt h2 {
	margin-bottom: 32px;
	font-size: 17px;
	letter-spacing: 0.18em;
	text-align: center;
}

.ume-everyone .txt p,
.ume-iroiro .txt p {
	letter-spacing: 0.12em;
	text-align: justify;
}

.ume-everyone .txt p br,
.ume-iroiro .txt p br { display: none; }

/* ume-iroiro
------------------------------------*/
.ume-iroiro .txt {
	padding: 0 9.5%;
}


/* page omairi
---------------------------------------------------------------------------*/
.sec-lead.manner h2 {
	margin-bottom: 15px;
	font-size: 17px;
}

.sec-lead.manner p { padding: 0 10%; }
.sec-lead.manner p br { display: none; }

/* .sec-omairi
------------------------------------*/
.sec-omairi {
	margin: 60px auto 75px;
}

.sec-omairi .btn-set {
	margin-top: 25px;
	padding: 0 8%;
}

.omairi-list {
	margin-top: 60px;
	padding: 0 9%;
}

.omairi-list .inner {
	margin-bottom: 55px;
}

.omairi-list .inner figure {
	margin-bottom: 30px;
}

.omairi-list .inner p {
	padding: 0;
}

#omairiContents .sec-lead .omairi-list .btn-link {
	width: 104%;
	margin-top: 26px;
	margin-left: -2%;
}

/* .sec-sanpai
------------------------------------*/
.sec-sanpai {
	margin-bottom: 75px;
}

.sec-sanpai > figure {
	margin-bottom: 45px;
}

.sec-sanpai .sec-inner {
	padding: 0 5.5%;
}

.sec-sanpai .sanpai-schedule h2 {
	margin: 0 0 10px 2px;
	font-size: 15px;
	letter-spacing: 0.12em;
}

.sec-sanpai .sanpai-schedule h2 + p {
	padding-left: 4px;
	font-size: 13px;
	letter-spacing: 0.12em;
}

.sec-sanpai .sanpai-schedule .dl-schedule {
	margin-top: 18px;
}

/* .dl-schedule
------------------------------------*/
.dl-schedule {
	border-top: 1px solid rgba(204,204,204,0.5);
	border-right: 1px solid rgba(204,204,204,0.5);
	border-left: 1px solid rgba(204,204,204,0.5);
	font-size: 12px;
	letter-spacing: 0.08em;
}

.dl-schedule > div {
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid rgba(204,204,204,0.5);
	font-size: 13px;
}

.dl-schedule dt {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	background-color: #F9F9F9;;
	border-right: 1px solid rgba(204,204,204,0.5);
	width: 46px;
	min-width: 40px;
	padding-top: 0.15em;
	letter-spacing: 0.3em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.dl-schedule dd {
	box-sizing: border-box;
	width: 100%;
	padding: 0 8px;
	font-weight: normal;
}

.dl-schedule dd li {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid rgba(204,204,204,0.5);
	padding: 14px 8px;
	line-height: 1.5;
	text-align: justify;
}

.dl-schedule dd li:last-of-type { border-bottom: none; }

.dl-schedule dd li time {
	white-space: nowrap;
}

.dl-schedule + .attention {
	margin-top: 14px;
}

.dl-schedule + .attention p {
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

/* .sanpai-rinji
------------------------------------*/
.sec-sanpai .sanpai-rinji {
	background-color: #FFF7F7;
	box-sizing: border-box;
	width: 100%;
	margin: 40px auto 0;
	padding: 0 5px;
}

.sec-sanpai .sanpai-rinji .inner {
	box-sizing: border-box;
	padding: 30px 28px 36px;
}

.sec-sanpai .sanpai-rinji h3,
.sec-sanpai .sanpai-rinji h4,
.sec-sanpai .sanpai-rinji time {
	color: #E3503F;
}

.sec-sanpai .sanpai-rinji h3 {
	margin-bottom: 32px;
	padding-right: 17px;
	font-size: 17px;
	letter-spacing: 0.12em;
	text-align: center;
}

.sec-sanpai .sanpai-rinji h3 i {
	display: inline-block;
	margin-right: 15px;
	transform: translateY(5px);
	opacity: 0.3;
}

.sec-sanpai .sanpai-rinji h3 i img {
	width: 30px;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.sec-sanpai .sanpai-rinji h4 {
	margin-bottom: 8px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.sec-sanpai .sanpai-rinji time {
	display: block;
	margin-bottom: 20px;
	font-size: 11px;
	letter-spacing: 0.08em;
}

.sec-sanpai .sanpai-rinji time:last-child {
	margin-bottom: 12px;
}

.sec-sanpai .sanpai-rinji p {
	line-height: 1.85;
	letter-spacing: 0.1em;
	text-align: justify;
}

/* .sanpai-sahou
------------------------------------*/
.sanpai-sahou {
	margin: 60px 0 0 -2px;
}

.sanpai-sahou h2 {
	position: relative;
	margin-bottom: 35px;
	font-size: 16px;
	letter-spacing: 0.1em;
}

.sanpai-sahou h2 strong {
	display: inline-block;
	position: relative;
	background: #FFFFFF;
	padding-right: 12px;
	z-index: 1;
}

.sanpai-sahou h2:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	background-color: rgba(0,0,0,0.1);
	width: calc(100% - 2px);
	height: 1px;
	z-index: 0;
}

.sanpai-sahou li {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.sanpai-sahou li h3 {
	border-top: 1px solid #D80C28;
	border-bottom: 1px solid #D80C28;
	width: 20px;
	font-size: 14px;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.2em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.sanpai-sahou li figure {
	width: calc(100% - 40px);
	min-width: calc(100% - 40px);
	margin: 0;
}

/* .sec-chohai
------------------------------------*/
.sec-chohai {
	margin-bottom: 75px;
}

.sec-chohai figure {
	margin-bottom: 40px;
}

.sec-chohai .inner {
	padding: 0 7.5% 0 75px;
}

.sec-chohai dl > div {
	position: relative;
	margin-bottom: 32px;
}

.sec-chohai dl > div:last-of-type { margin-bottom: 0; }

.sec-chohai dt {
	position: absolute;
	top: -5px;
	left: -43px;
	font-size: 14px;
	letter-spacing: 0.1em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.sec-chohai dd h3 {
	margin: 0 0 10px -1px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.sec-chohai dd p {
	line-height: 1.75;
	letter-spacing: 0.06em;
	text-align: justify;
}

.sec-chohai dd p.attention {
	margin-top: -6px;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.sec-chohai dd .link-instagram {
	display: inline-block;
	margin: 20px 0 6px;
	padding-left: 30px;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.sec-chohai dd .link-instagram i {
	display: inline-block;
	position: absolute;
	top: 1px;
	left: 0;
}

.sec-chohai dd .link-instagram i img {
	width: 20px;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.sec-chohai dd .link-instagram span {
	line-height: 1.7;
	text-decoration: underline;
}

/* .modal-img-side
------------------------------------*/
.modal-img-side {
	overflow-y: scroll;
	position: fixed;
	top: 0;
	left: 0;
	box-sizing: border-box;
	background-color: #FFFFFF;
	width: 100%;
	height: 100vh;
	z-index: -999;
	pointer-events: none;
	opacity: 0;
}

.modal-img-side.active {
	z-index: 10000;
	pointer-events: auto;
}

.modal-img-side .btn-close {
	position: fixed;
	top: 5px;
	right: 10px;
	width: 60px;
	height: 60px;
	z-index: 3;
}

.modal-img-side .btn-close i {
	display: block;
}

.modal-img-side .btn-close i span {
	display: block;
	position: absolute;
	top: 28px;
	background-color: #E94709;
	width: 30px;
	height: 2px;
}

.modal-img-side .btn-close i:nth-of-type(1) span { left: 15px; transform: rotate(30deg); }
.modal-img-side .btn-close i:nth-of-type(2) span { right: 15px; transform: rotate(-30deg); }

.modal-img-side .modal-nav-txt ul {
	white-space: nowrap;
}

.modal-img-side .modal-nav-txt li {
	display: inline-block;
	border-right: 1px solid #282828;
	white-space: nowrap;
}

.modal-img-side .modal-nav-txt li:last-of-type { border-right: none; }
.modal-img-side .modal-nav-txt li.current { pointer-events: none; }

.modal-img-side .modal-nav-txt li span {
	display: block;
	position: relative;
	padding: 2px 18px 4px 16px;
	color: #282828;
	font-size: 15px;
	letter-spacing: 0.12em;
	cursor: pointer;
}

.modal-img-side .modal-nav-txt li span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 2px;
	left: 16px;
	background-color: #282828;
	width: 0;
	height: 1px;
	transition: .1s ease-out;
}

.modal-img-side .modal-nav-txt li.current span:after {
	width: calc(100% - 36px);
}

.modal-img-side .modal-inner {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 0;
}

.modal-img-side .modal-inner.current {
	z-index: 1;
}

.modal-img-side figure {
	width: 100%;
	height: 125vw;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-bottom: 55px;
}

.modal-img-side .temizu figure { background-image: url(img/omairi/img-modal-temizu_sp.jpg); }
.modal-img-side .hairei figure { background-image: url(img/omairi/img-modal-hairei_sp.jpg); background-position: center bottom; }

.modal-img-side .modal-nav-txt {
	margin-top: 80px;
	padding-bottom: 90px;
	text-align: center;
	z-index: 2;
}

.modal-img-side .inner {
	height: 100%;
	padding: 0 9% 90px;
}

.modal-img-side .inner h2 {
	margin-bottom: 25px;
	font-size: 17px;
	letter-spacing: 0.2em;
	white-space: nowrap;
}

.modal-img-side .inner p,
.modal-img-side .inner .list-num li {
	text-align: justify;
}

.modal-img-side .inner p br,
.modal-img-side .inner .list-num li br { display: none; }

.modal-img-side .inner h3 {
	margin: 45px 0 5px;
	color: #606060;
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.1em;
}

.modal-img-side .inner p {
	line-height: 1.95;
	letter-spacing: 0.06em;
}

.modal-img-side .inner .list-num + p {
	margin-top: 25px;
	line-height: 1.9;
}

.modal-img-side .inner .list-num {
	margin: 30px 0 0 -4px;
}

.modal-img-side .inner h3 + .list-num {
	margin-top: 0;
}

.modal-img-side .inner .list-num li {
	padding-left: 28px;
	line-height: 1.75;
}

.modal-img-side .inner p .attention,
.modal-img-side .inner .list-num li .attention {
	display: block;
	font-size: 12px;
}

/* #omairiContents .sec-column
------------------------------------*/
#omairiContents .sec-lead .btn-link {
	width: 82%;
	margin: 28px auto 0;
}

#omairiContents .sec-column2.wide { margin-bottom: 50px; }
#omairiContents .sec-column2.wide .inner { margin-bottom: 45px; }
#omairiContents .sec-column2.wide .inner:last-of-type { margin-bottom: 0; }

/* .inner-sozoroaruki
------------------------------------*/
.sec-column2 .inner-sozoroaruki {
	width: 100%;
	margin-bottom: 45px;
	padding: 0 4.55%;
}

.inner-sozoroaruki figure a {
	display: -webkit-box;
	display: flex;
	height: 160px;
}

.inner-sozoroaruki figure a .img {
	align-self: flex-start;
	width: calc(100% - 110px);
}

.inner-sozoroaruki figure a .img img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.inner-sozoroaruki figure a > div {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	box-sizing: border-box;
	background-color: #F4C8C5;
	/*width: 100%;*/
	width: 110px;
	color: #E3503F;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
	white-space: nowrap;
	text-align: left;
}

.inner-sozoroaruki figure a > div div {
	padding: 5px 3px 0 0;
}

.inner-sozoroaruki figure a > div strong {
	display: block;
	margin: -1px 0 0 8px;
	font-size: 13.5px;
	letter-spacing: 0.1em;
}

.inner-sozoroaruki figure a > div em {
	display: block;
	font-size: 10px;
	line-height: 1.5;
	letter-spacing: 0.1em;
}

/* .figure-shiki
------------------------------------*/
.figure-shiki a,
.figure-shiki > span {
	display: block;
	position: relative;
	width: 100%;
	color: #FFFFFF;
	text-align: center;
	white-space: nowrap;
}

.figure-shiki a > img,
.figure-shiki > span > img {
	display: block;
	position: relative;
	z-index: 0;
}

.figure-shiki a > div,
.figure-shiki span > div {
	position: absolute;
	top: 0;
	left: 0;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	z-index: 1;
}

.figure-shiki a > div i,
.figure-shiki > span > div i {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	box-sizing: border-box;
	background: url(img/share/mark-orange.svg) no-repeat;
	background-size: 100% auto;
	width: 67px;
	height: 67px;
	padding-right: 33.5px;
	font-size: 17px;
	letter-spacing: 0.06em;
	line-height: 0;
	z-index: 2;
}

.figure-shiki a > div i span,
.figure-shiki > span > div i span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.figure-shiki a > div div,
.figure-shiki > span > div div {
	position: relative;
	box-sizing: border-box;
	width: 50%;
	height: calc(90vw / 2 * 0.48);
	padding-top: 7.5%;
	z-index: 1;
}

.figure-shiki a > div div strong,
.figure-shiki > span > div div strong {
	display: block;
	margin-bottom: 5px;
	font-size: 20px;
	letter-spacing: 0;
}

.figure-shiki a > div div em,
.figure-shiki > span > div div em {
	display: block;
	font-size: 13px;
	letter-spacing: 0.04em;
	padding-left: 0.04em;
}

/* .nav-omairi
------------------------------------*/
.nav-omairi { background-color: #FDFBF1; padding: 11% 0 13%; }
.nav-omairi .sec-column2:last-child { margin-bottom: 0; }
.nav-omairi + .bnr-gokigan { margin-top: 0; }
.nav-omairi .sec-column2:not(.wide) .inner { margin-top: 0; }


/* page shiki
---------------------------------------------------------------------------*/

/* .nav-shiki
------------------------------------*/
.nav-shiki li {
	position: relative;
	overflow: hidden;
	background-color: #000000;
}

.nav-shiki li a {
	display: block;
	position: relative;
	z-index: 2;
}

.nav-shiki li img {
	display: block;
	position: relative;
	width: 150%;
	height: auto;
	margin: 0 -25%;
	z-index: 0;
}

.nav-shiki li h2 {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	color: #FFFFFF;
	text-align: center;
	z-index: 2;
}

.nav-shiki li h2 strong {
	display: block;
	box-sizing: border-box;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	margin: 0 auto 2px;
	width: 44px;
	height: 44px;
	padding-top: 15px;
	font-size: 16px;
	letter-spacing: 0;
}

.nav-shiki li:nth-of-type(1) h2 strong { background-image: url(img/share/mark-spring.svg); }
.nav-shiki li:nth-of-type(2) h2 strong { background-image: url(img/share/mark-summer.svg); }
.nav-shiki li:nth-of-type(3) h2 strong { background-image: url(img/share/mark-autumn.svg); }
.nav-shiki li:nth-of-type(4) h2 strong { background-image: url(img/share/mark-winter.svg); }

.nav-shiki li h2 em {
	font-size: 12px;
	letter-spacing: 0.06em;
}


/* page shiki single
---------------------------------------------------------------------------*/
#springContents { background-color: #FCF5F6; }
#summerContents { background-color: #F0F7DF; }
#autumnContents { background-color: #FAF7E2; }
#winterContents { background-color: #F5FCFC; }

body.shiki-single .img-main { margin-bottom: 55px; s}
body.shiki-single .img-main .inner { overflow: hidden; }
body.shiki-single .img-main .inner img { width: 110%; margin-left: -5%; }

body.shiki .sec-lead { margin-bottom: 55px; }
body.shiki-single .nav-shiki { margin-top: 140px; }
body.shiki-single .contents section img { display: block; opacity: 0; }

/* .title-shiki
------------------------------------*/
.title-shiki {
	text-align: center;
}

.title-shiki strong {
	display: block;
	box-sizing: border-box;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 48px;
	height: 48px;
	margin: 0 auto 12px;
	padding: 16px 0 0;
	color: #FFFFFF;
	font-size: 18px;
}

#springContents .title-shiki strong { background-image: url(img/share/mark-spring.svg); }
#summerContents .title-shiki strong { background-image: url(img/share/mark-summer.svg); }
#autumnContents .title-shiki strong { background-image: url(img/share/mark-autumn.svg); }
#winterContents .title-shiki strong { background-image: url(img/share/mark-winter.svg); }

.title-shiki em {
	display: block;
	font-size: 13px;
	letter-spacing: 0.05em;
}

#springContents .title-shiki em { color: #F5ADA8; }
#summerContents .title-shiki em { color: #A8CC53; }
#autumnContents .title-shiki em { color: #EFA057; }
#winterContents .title-shiki em { color: #243880; }


/* .sec-shiki-img
------------------------------------*/
.sec-shiki-img {
	width: 100%;
}

.sec-shiki-img.wide {
	margin-bottom: 75px;
}

.sec-shiki-img.wide img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}

.sec-shiki-img .img-center,
#springContents .img-set1,
#springContents .img-set3,
#summerContents .img-set1,
#summerContents .img-set2,
#summerContents .img-set3,
#autumnContents .img-set1,
#autumnContents .img-set2,
#autumnContents .img-set3,
#autumnContents .img-set4,
#autumnContents .img-set5,
#winterContents .img-set1,
#winterContents .img-set2,
#winterContents .img-set3,
#winterContents .img-set4,
#winterContents .img-set5 {
	position: relative;
	width: 82%;
	margin: 0 auto 75px;
}

#summerContents .img-set1,
#summerContents .img-set2,
#autumnContents .img-set1,
#autumnContents .img-set5,
#winterContents .img-set1 {
	position: relative;
	margin-top: -35px;
	margin-bottom: 40px;
}

.sec-shiki-img .img-center img:not(:last-child) {
	display: block;
	margin-bottom: 40px;
}

/* #springContents .img-set1
------------------------------------*/
#springContents .img-set1,
#autumnContents .img-set2 {
	margin-top: -35px;
}

#springContents .img-set1 .img1-1 {
	margin-bottom: 40px;
}

#springContents .img-set1 .img1-2,
#winterContents .img-set1 .img1-1 {
	width: 64%;
}

#springContents .img-set1 .img1-3,
#winterContents .img-set1 .img1-2 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 28%;
}

/* #springContents .img-set2
------------------------------------*/
#springContents .img-set2 {
	position: relative;
	width: 74%;
	margin: 0 auto 75px;
}

#springContents .img-set2 .img2-1 {
	width: 54%;
	margin: 0 0 13% -1%;
}

#springContents .img-set2 .img2-2 {
	position: absolute;
	top: 20%;
	right: -6%;
	width: 40%;
}

#springContents .img-set2 .img2-3 {
	width: 49%;
	margin: 0 0 16% -10%;
}

#springContents .img-set2 .img2-4 {
	position: absolute;
	bottom: 11.5%;
	right: -6%;
	width: 51%;
}

#springContents .img-set2 .img2-5 {
	width: 39%;
	margin: 0 0 0;
}

/* #summerContents .img-set1
------------------------------------*/
#summerContents .img-set1 .img1-1 {
	width: 56%;
}

#summerContents .img-set1 .img1-2 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 36%;
}

/* #summerContents .img-set2
------------------------------------*/
#summerContents .img-set2 {
	position: relative;
	margin-bottom: 75px;
}

#summerContents .img-set2 .img2-1 {
	width: 37.6%;
	margin-bottom: 40px;
}

#summerContents .img-set2 .img2-2 {
	position: absolute;
	top: 0;
	right: 0;
	width: 56.6%;
}

/* #summerContents .img-set3
------------------------------------*/
#summerContents .img-set3 {
	margin-top: -35px;
}

#summerContents .img-set3 .img3-1 {
	width: 54%;
	margin: 0 0 40px;
}

#summerContents .img-set3 .img3-2 {
	position: absolute;
	top: 10.1%;
	right: 0;
	width: 36.3%;
}

#summerContents .img-set3 .img3-3 {
	width: 100%;
	margin: 0 0 22%;
}

#summerContents .img-set3 .img3-4 {
	width: 33%;
}

#summerContents .img-set3 .img3-5 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 60%;
}

/* #autumnContents .img-set1
------------------------------------*/
#autumnContents .img-set1 .img1-1 {
	width: 100%;
	margin-bottom: 40px;
}

#autumnContents .img-set1 .img1-2 {
	width: 60%;
}

#autumnContents .img-set1 .img1-3 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 33%;
}

/* #autumnContents .img-set2
------------------------------------*/
#autumnContents .img-set2 .img2-1,
#autumnContents .img-set2 .img2-3 {
	width: 36%;
}

#autumnContents .img-set2 .img2-1 {
	margin-bottom: 6%;
}

#autumnContents .img-set2 .img2-2 {
	position: absolute;
	top: 0;
	right: 0;
	width: 56.7%;
}

/* #springContents .img-set3, #autumnContents .img-set3, #autumnContents .img-set4
------------------------------------*/
#springContents .img-set3 .img3-1,
#autumnContents .img-set3 .img3-1,
#autumnContents .img-set4 .img4-1 {
	width: 33%;
	margin: 0 0 10% 4%;
}

#springContents .img-set3 .img3-2,
#autumnContents .img-set3 .img3-2,
#autumnContents .img-set4 .img4-2 {
	position: absolute;
	top: 9%;
	right: -2%;
	width: 54%;
}

#springContents .img-set3 .img3-3,
#autumnContents .img-set3 .img3-3,
#autumnContents .img-set4 .img4-3 {
	width: 37%;
}

/* #autumnContents .img-set5
------------------------------------*/
#autumnContents .img-set5 .img5-1 {
	margin-bottom: 40px;
}

/* #winterContents .img-set2
------------------------------------*/
#winterContents .img-set2 {
	margin-top: -35px;
}

#winterContents .img-set2 .img2-1 {
	margin-bottom: 40px;
}

#winterContents .img-set2 .img2-2 {
	position: absolute;
	top: 0;
	right: 0;
	width: 56%;
}

#winterContents .img-set2 .img2-3 {
	width: 37.4%;
	margin-bottom: 40px;
}

#winterContents .img-set2 .img2-4 {
	width: 56%;
}

#winterContents .img-set2 .img2-5 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 36%;
}

/* #winterContents .img-set3
------------------------------------*/
#winterContents .img-set3 .img3-1 {
	margin-bottom: 40px;
}

#winterContents .img-set3 .img3-2 {
	width: 50%;
}

#winterContents .img-set3 .img3-3 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 40%;
}

/* #winterContents .img-set4
------------------------------------*/
#winterContents .img-set4 {
	margin-top: -15px;
	margin-bottom: 40px;
}

#winterContents .img-set4 .img4-1 {
	position: absolute;
	bottom: 0;
	left: 0;
}

#winterContents .img-set4 .img4-1 {
	width: 40%;
}

#winterContents .img-set4 .img4-2 {
	width: 50%;
	margin-left: 50%;
}

/* #winterContents .img-set5
------------------------------------*/
#winterContents .img-set5 {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 40px;
}

#winterContents .img-set5 .img5-1 {
	width: 37.4%;
}

#winterContents .img-set5 .img5-2 {
	width: 54%;
}


/* page sozoroaruki detail
---------------------------------------------------------------------------*/
#sozoroaruki-historyContents .sozoroaruki-title h1,
#sozoroaruki-historyContents .sozoroaruki-common h2,
#sozoroaruki-historyContents .sozoroaruki-place .place h3 {
	color: #7F487C;
}

#sozoroaruki-artContents .sozoroaruki-title h1,
#sozoroaruki-artContents .sozoroaruki-common h2,
#sozoroaruki-artContents .sozoroaruki-place .place h3 {
	color: #05569A;
}

#sozoroaruki-natureContents .sozoroaruki-title h1,
#sozoroaruki-natureContents .sozoroaruki-common h2,
#sozoroaruki-natureContents .sozoroaruki-place .place h3 {
	color: #75A10D;
}

/* .sozoroaruki-title
------------------------------------*/
.sozoroaruki-title {
	margin: 90px auto 50px;
	padding: 0 9%;
}

.sozoroaruki-title h1 {
	position: relative;
	margin-bottom: 25px;
	text-align: center;
	letter-spacing: 0.16em;
	white-space: nowrap;
}

.sozoroaruki-title i {
	display: block;
	background-repeat: no-repeat;
	background-size: 27px auto;
	width: 28px;
	height: 28px;
	position: absolute;
	top: -48px;
	left: 50%;
	transform: translateX(-50%);
}

#sozoroaruki-historyContents .sozoroaruki-title i { background-image: url(img/share/logo-mark-purple.svg); }
#sozoroaruki-artContents .sozoroaruki-title i { background-image: url(img/share/logo-mark-blue.svg); }
#sozoroaruki-natureContents .sozoroaruki-title i { background-image: url(img/share/logo-mark-green.svg); }

.sozoroaruki-title h1 strong {
	display: block;
	margin-bottom: 20px;
	font-size: 17px;
	letter-spacing: 0.12em;
}

.sozoroaruki-title h1 strong span {
	display: block;
	padding-bottom: 12px;
	font-size: 11px;
	letter-spacing: 0.2em;
	transform: translateY(-1px);
}

.sozoroaruki-title h1 em {
	display: block;
	font-size: 12px;
	letter-spacing: 0.2em;
}

.sozoroaruki-title p {
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.08em;
	text-align: justify;
}

/* .sozoroaruki-profile
------------------------------------*/
.sozoroaruki-profile {
	margin: 0 auto 75px;
	padding: 0 9%;
}

.sozoroaruki-profile figure {
	margin-bottom: 25px;
}

.sozoroaruki-profile h2 {
	display: inline-block;
	position: relative;
	margin-bottom: 13px;
	padding-bottom: 2px;
	font-size: 11px;
	letter-spacing: 0.16em;
}

.sozoroaruki-profile h2:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: rgba(0,0,0,0.3);
	width: calc(100% - -2px);
	height: 1px;
}

.sozoroaruki-profile h3 {
	display: -webkit-box;
	display: flex;
	margin-bottom: 16px;
	letter-spacing: 0.15em;
}

.sozoroaruki-profile h3 em {
	position: relative;
	order: 2;
	margin: 0 0 0 18px;
	font-size: 12px;
	letter-spacing: 0.12em;
	transform: translateY(3px);
}

.sozoroaruki-profile h3 em:before {
	display: block;
	content: '/';
	position: absolute;
	top: 0;
	left: -12px;
}

.sozoroaruki-profile h3 strong {
	order: 1;
	font-size: 16px;
	letter-spacing: 0.12em;
}

.sozoroaruki-profile h3 span {
	padding-left: 1px;
	font-size: 13px;
}

.sozoroaruki-profile h3.wide {
	flex-wrap: wrap;
}

.sozoroaruki-profile h3.wide strong,
.sozoroaruki-profile h3.wide em {
	width: 100%;
}

.sozoroaruki-profile h3.wide em {
	margin: 12px 0 6px;
	transform: translateY(0);
}

.sozoroaruki-profile h3.wide em:before {
	display: none;
}

.sozoroaruki-profile p {
	font-size: 13px;
	line-height: 1.9;
	letter-spacing: 0.06em;
	text-align: justify;
}

/* .sozoroaruki-common
------------------------------------*/
.sozoroaruki-common {
	margin: 0 auto 65px;
	padding: 0 8%;
}

.sozoroaruki-common h2 {
	margin-bottom: 30px;
	font-size: 17px;
	line-height: 1.8;
	letter-spacing: 0.1em;
	text-align: center;
}

.sozoroaruki-common dl {
	padding-left: 45px;
}

.sozoroaruki-common dt,
.sozoroaruki-common dd,
.sozoroaruki-common dd p {
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.06em;
}

.sozoroaruki-common dt {
	position: relative;
	margin: 36px 0 18px;
	text-align: justify;
}

.sozoroaruki-common dt.mt {
	margin-top: 60px;
}

.sozoroaruki-common dt:before {
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: -40px;
	background: rgba(0,0,0,0.2);
	width: 24px;
	height: 1px;
}

.sozoroaruki-common dd {
	position: relative;
	color: #777!important;
}

.sozoroaruki-common dd .name {
	position: absolute;
	top: 4.5px;
	right: calc(100% + 14px);
	min-width: 45px;
	font-size: 13px;
	line-height: 1.4;
	text-align: right;
	letter-spacing: 0.06em;
}

.sozoroaruki-common dd p {
	margin-bottom: 15px;
	text-align: justify;
}

.sozoroaruki-common dd p.indent {
	margin: 18px 0 19px 12px;
}

.sozoroaruki-common dd p.indent span {
	display: block;
	margin-top: 4px;
	padding-bottom: 6px;
	font-size: 12px;
	line-height: 1.8;
}

.sozoroaruki-common dd .btn-link {
	margin: 24px -2px 0;
}

/* .sozoroaruki-common.img-center
------------------------------------*/
.sozoroaruki-common.img-center .img { margin: 0 auto 38px; }
.sozoroaruki-common.img-center .img:not(:first-child) { margin-top: 40px; }
.sozoroaruki-common.img-center .img:last-child { margin-bottom: 0; }
.sozoroaruki-common.img-center .img img:not(:last-of-type) { display: block; margin-bottom: 15px; }

/* .sozoroaruki-common.img-side
------------------------------------*/
.sozoroaruki-common + .sozoroaruki-common.img-side {
	margin-top: -20px;
}

.sozoroaruki-common.img-side figure {
	margin-bottom: 35px;
	padding-left: 40px;
}

.sozoroaruki-common figcaption {
	margin-top: 5px;
	font-size: 11px;
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.sozoroaruki-common figcaption.credit {
	margin-top: 10px;
	padding-bottom: 5px;
	font-size: 10px;
	letter-spacing: 0.06em;
}

/* .sozoroaruki-common .img-set
------------------------------------*/
.sozoroaruki-common .img-set {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.sozoroaruki-common .img-set figure {
	width: 50%;
}

/* .sozoroaruki-btm
------------------------------------*/
.sozoroaruki-btm {
	box-sizing: border-box;
	border: 1px solid rgba(0,0,0,0.2);
	width: 86%;
	margin: 0 auto;
	padding: 35px 30px 30px 30px;
}

.sozoroaruki-btm figure {
	width: 140px;
	margin: 0 auto 40px;
}

.sozoroaruki-btm .inner { margin-bottom: 30px; }
.sozoroaruki-btm .inner:last-of-type { margin-bottom: 0; }

.sozoroaruki-btm h2 {
	margin-bottom: 14px;
	font-size: 12px;
	letter-spacing: 0.2em;
	white-space: nowrap;
}

.sozoroaruki-btm time {
	display: block;
	margin-bottom: 5px;
	font-size: 12px;
	letter-spacing: 0.1em;
}

.sozoroaruki-btm h3 {
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.12em;
}

.sozoroaruki-btm h3 a {
	text-decoration: underline;
}

.sozoroaruki-btm h3 span {
	padding-left: 6px;
	font-size: 13px;
}

/* .sozoroaruki-place
------------------------------------*/
.sozoroaruki-place {
	width: 86%;
	margin: 90px auto 90px;
}

.sozoroaruki-place h2 {
	margin-bottom: 30px;
	font-size: 13px;
	letter-spacing: 0.18em;
}

.sozoroaruki-place .map {
	position: relative;
	width: 100%;
	margin-bottom: 45px;
}

.sozoroaruki-place .map > img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.sozoroaruki-place .mark-num {
	position: absolute;
	margin: -13px 0 0 -13px;
}

.sozoroaruki-place .place li {
	display: -webkit-box;
	display: flex;
	margin-bottom: 25px;
}

.sozoroaruki-place .place li:last-of-type { margin-bottom: 0; }

.sozoroaruki-place .place figure {
	width: 90px;
	min-width: 90px;
}

.sozoroaruki-place .place .txt {
	padding: 1px 0 0 22px;
}

.sozoroaruki-place .place h3 {
	position: relative;
	margin-bottom: 6px;
	padding-left: 31px;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.08em;
}

.sozoroaruki-place .place h3 i {
	position: absolute;
	top: -3px;
	left: -2px;
	padding-top: 5px;
	line-height: 1;
	transform: scale(0.9);
}

.sozoroaruki-place .place h3 em {
	display: block;
	margin: 5px 0 0 2px;
	font-size: 11px;
	line-height: 1.4;
	letter-spacing: 0.02em;
}

.sozoroaruki-place .place p {
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.04em;
	text-align: justify;
}

.sozoroaruki-place .place p em {
	display: block;
	margin: 9px 0 0 1px;
	font-size: 10px;
	line-height: 1.35;
	letter-spacing: 0.02em;
	text-align: left;
}

.sozoroaruki-place .place p em.inline {
	display: inline-block;
}

.sozoroaruki-place .place p em.attention {
	margin-top: 8px;
	font-size: 11px;
	letter-spacing: 0.06em;
}


/* #sozoroaruki-historyContents
------------------------------------*/
#sozoroaruki-historyContents .img-set01 { margin-bottom: 34px; }
#sozoroaruki-historyContents .img-set01 figure:nth-of-type(1) { width: 35%; }
#sozoroaruki-historyContents .img-set01 figure:nth-of-type(2) { width: 62%; }

#sozoroaruki-historyContents .img-set02 { margin: 45px -9.5% -10px; }
#sozoroaruki-historyContents .img-set02 figure {
	position: relative;
	overflow: hidden;
	width: 50%;
	height: 0;
	padding-bottom: 40%;
}
#sozoroaruki-historyContents .img-set02 figure img {
	position: absolute;
	top: 0;
	width: 120%;
	height: auto;
}
#sozoroaruki-historyContents .img-set02 figure:nth-of-type(1) img { left: 0; }
#sozoroaruki-historyContents .img-set02 figure:nth-of-type(2) img { left: -7%; }

#sozoroaruki-historyContents .sozoroaruki-place .map-mark-num { background-image: url(img/share/mark-purple.svg); }
#sozoroaruki-historyContents .sozoroaruki-place .mark-num1 { top: 46%; left: 41.5%; }
#sozoroaruki-historyContents .sozoroaruki-place .mark-num2 { top: 83.5%; left: 39.5%; }
#sozoroaruki-historyContents .sozoroaruki-place .mark-num3 { top: 79.5%; left: 35.5%; }
#sozoroaruki-historyContents .sozoroaruki-place .mark-num4 { top: 80.5%; left: -3%; }
#sozoroaruki-historyContents .sozoroaruki-place .mark-num5 { top: 80.5%; left: 13%; }


/* #sozoroaruki-artContents
------------------------------------*/
/* #sozoroaruki-artContents .sozoroaruki-title h1 strong span { display: block; margin: 16px 0 0; padding: 0; } */
/* #sozoroaruki-artContents .sozoroaruki-title h1 strong span:first-of-type { display: none; } */

#sozoroaruki-artContents .sozoroaruki-place .map-mark-num { background-image: url(img/share/mark-blue.svg); }
#sozoroaruki-artContents .sozoroaruki-place .mark-num1 { top: 92%; left: 31%; }
#sozoroaruki-artContents .sozoroaruki-place .mark-num2 { top: 54.5%; left: 78.2%; }
#sozoroaruki-artContents .sozoroaruki-place .mark-num3 { top: 18%; left: 51.5%; }
#sozoroaruki-artContents .sozoroaruki-place .mark-num4 { top: 0; left: 50.5%; }

#sozoroaruki-artContents .sozoroaruki-place .place h3 + p { margin-left: 31px; }
#sozoroaruki-artContents .sozoroaruki-place .place h3 + p + p {
	margin-left: 31px;
	font-size: 11px;
	line-height: 1.7;
}

/* #sozoroaruki-natureContents
------------------------------------*/
#sozoroaruki-natureContents .sozoroaruki-place .map-mark-num { background-image: url(img/share/mark-green.svg); }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num1 { top: 34%; left: 13.3%; }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num2 { top: 48%; left: 19.5%; }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num3 { top: 66.5%; left: 19.5%; }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num4 { top: 86.5%; left: 35.5%; }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num5 { top: 51.5%; left: 28.5%; }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num6 { top: 18%; left: 37.5%; }
#sozoroaruki-natureContents .sozoroaruki-place .mark-num7 { top: 18%; left: 47%; }
#sozoroaruki-natureContents .sozoroaruki-place .place h3 { margin-bottom: 8px; letter-spacing: 0.1em; }


/* page shuhen-wo-meguru
---------------------------------------------------------------------------*/
#shuhen-wo-meguruContents .sec-column2.wide {
	padding: 0 8%;
}

#shuhen-wo-meguruContents .sec-column2.wide figure {
	margin-bottom: 28px;
}

#shuhen-wo-meguruContents .sec-column2.wide h2 {
	margin-bottom: 22px;
}

#shuhen-wo-meguruContents .sec-column2.wide h2 span {
	margin-top: 6px;
	font-size: 12px;
	letter-spacing: 0.1em;
}

#shuhen-wo-meguruContents .sec-column2.wide p {
	padding: 0 8px;
	text-align: justify;
}

#shuhen-wo-meguruContents .sec-column2 + .btn-set {
	width: 88%;
	margin: 0 auto;
}


/* page kigan
---------------------------------------------------------------------------*/
#kiganContents .img-center {
	margin-bottom: 55px;
}

.sec-relation-kigan {
	margin-bottom: 75px;
}

/* .kigan-list-other
------------------------------------*/
.kigan-list-other {
	margin: 0 auto 75px;
	padding: 0 6%;
}

.kigan-list-other .inner {
	box-sizing: border-box;
	border: 1px solid #DEDEDE !important;
	margin-bottom: 20px;
	padding: 30px 30px 25px;
}

.kigan-list-other .inner:last-of-type { margin-bottom: 0; }

.kigan-list-other .inner.wide > div:not(:last-child){
	margin-bottom: 15px;
}

.kigan-list-other .inner h2 {
	margin-bottom: 14px;
	font-size: 15px;
	letter-spacing: 0.12em;
}

.kigan-list-other .inner p {
	font-size: 12px;
	line-height: 1.9;
	letter-spacing: 0.12em;
	text-align: justify;
}

.kigan-list-other .inner p.let { letter-spacing: 0.08em; }
.kigan-list-other .inner p br { display: none; }

.kigan-list-other .inner .btn-set { margin: 20px -5px 0; }
.kigan-list-other .inner .btn-set > div { margin-bottom: 8px; }

/* .relation-faq
------------------------------------*/
.relation-faq {
	margin-bottom: 55px;
}

/* .faq-list-s
------------------------------------*/
.faq-list-s { border-top: 1px solid rgba(204,204,204,0.5); margin: 0 -10px; }
.faq-list-s > div { border-bottom: 1px solid rgba(204,204,204,0.5); }

.faq-list .faq-list-s {
	margin-right: 0;
	margin-left: 0;
}

.faq-list-s dt {
	padding: 19px 10px 18px 42px;
	color: #282828;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.faq-list-s dt .plus {
	top: 29px;
}

.faq-list-s dd {
	padding: 0 10px 30px 42px;
}

.faq-list-s dd,
.faq-list-s dd p {
	font-size: 13px;
	line-height: 1.8;
	letter-spacing: 0.06em;
	text-align: justify;
	margin-bottom: 16px;
}

/* .faq-table
------------------------------------*/
.faq-table {
	margin-top: 30px;
}

.faq-table h4 {
	margin-bottom: 7px;
	color: #606060;
	font-size: 14px;
	letter-spacing: 0.08em;
}

.faq-table p {
	margin-top: 13px;
}

.faq-table table {
	border-top: 1px solid rgba(204,204,204,0.8);
	width: 100%;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.06em;
	text-align: center;
}

.faq-table tr {
	border-bottom: 1px solid rgba(204,204,204,0.8);
}

.faq-table th,
.faq-table td {
	padding: 10px 9px 9px;
}

.faq-table th {
	font-weight: normal;
}

.faq-table th:first-of-type {
	border-right: 1px solid rgba(204,204,204,0.8);
}

.faq-table tr:first-of-type th {
	padding-top: 16px;
	padding-bottom: 16px;
}

.faq-table tr:first-of-type th { width: 40%; }
.faq-table tr:first-of-type th:last-of-type { width: 60%; }

/* .relation-news
------------------------------------*/
.relation-news { position: relative; }
.relation-news .news-list article { margin-bottom: 18px; }
.relation-news .btn-link { margin: 26px -3px 0; }

/* .news-list
------------------------------------*/
.news-list article {
	margin-bottom: 10px;
}

.news-list article:last-of-type { margin-bottom: 0; }

.news-list article a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}

.news-list figure {
	width: 60px;
	min-width: 60px;
}

.news-list figure + div {
	padding: 0 0 2px 18px;
}

.news-list time {
	display: block;
	margin-bottom: 6px;
	color: #B79267;
	font-size: 12px;
	letter-spacing: 0.06em;
}

.news-list h3 {
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}


/* page omamori
---------------------------------------------------------------------------*/
#sec-yuusou {
	margin-top: -74px;
	padding-top: 74px;
}

#sec-ofuda,
#sec-omamori {
	margin-top: -110px;
	padding-top: 110px;
}

#sec-ofuda,
#sec-omamori {
	padding-right: 10%;
	padding-left: 10%;
}

#sec-ofuda p,
#sec-omamori p {
	padding: 0;
}

#sec-ofuda p br, #sec-omamori p br { display: none; }

#omamoriContents .nav-kigan-omamori {
	margin-top: 180px;
}

/* .sec-column2
------------------------------------*/
#omamoriContents .sec-column2:not(.nav-kigan-omamori) { margin-bottom: 90px; }
#omamoriContents .sec-column2.nav-kigan-omamori { margin-top: 0; }
#omamoriContents .sec-column2 h2 span { color: #282828; font-size: 12px; margin-top: 5px; }
#omamoriContents .sec-column2 .btn-link { margin-top: 20px;}
#omamoriContents .sec-column2 .btn-link + .btn-link { margin-top: 5px;}

/* .sec-yuusou
------------------------------------*/
.sec-yuusou {
	margin-bottom: 80px;
}

.sec-yuusou figure {
	margin-bottom: 38px;
}

.sec-yuusou .txt {
	padding: 0 10%;
}

.sec-yuusou .txt h2 {
	margin-bottom: 26px;
	text-align: center;
	letter-spacing: 0.18em;
}

.sec-yuusou .txt h2 em {
	display: block;
	margin-bottom: 12px;
	font-size: 12px;
	letter-spacing: 0.24em;
}

.sec-yuusou .txt h2 strong {
	font-size: 16px;
}

.sec-yuusou .txt p { text-align: justify; }
.sec-yuusou .txt p br { display: none; }

.sec-yuusou .txt .btn-link {
	margin: 20px 0 0 -6px;
}


/* page keidaiannai
---------------------------------------------------------------------------*/


/* page shinzenshiki
---------------------------------------------------------------------------*/
#shinzenshikiContents .title-page h1,
.sec-shinzenshiki-step .lead h2,
.shinzenshiki-step > div h3,
.sec-shinzenshiki-outline h2,
.sec-shinzenshiki-outline h3 {
	color: #B8972D;
	font-weight: 500;
}

#shinzenshikiContents .sec-lead { margin-bottom: 65px; }
#shinzenshikiContents .sec-lead p { padding: 0 10%; letter-spacing: 0.08em; text-align: justify; }
#shinzenshikiContents .sec-lead p br { display: none; }
#shinzenshikiContents .sec-lead figure { margin-top: 40px; padding: 0 8%; }

/* .scroll-shinzenshiki
------------------------------------*/
.scroll-shinzenshiki {
	margin-bottom: 55px;
}

.scroll-shinzenshiki .img-scroll1 {
	animation: img-scroll1 45s infinite linear both;
	display: flex;
	position: relative;
	width: 910px;
}
@keyframes img-scroll1 {
  from { transform: translateX(0); }
  to { transform: translateX(-910px); }
}

.scroll-shinzenshiki .img-scroll2 {
	animation: img-scroll2 50s infinite linear both;
	display: flex;
	position: relative;
	width: 1032px;
}
@keyframes img-scroll2 {
  from { transform: translateX(-1032px); }
  to { transform: translateX(0); }
}

/* .sec-shinzenshiki-history
------------------------------------*/
.sec-shinzenshiki-history {
	width: 100%;
	margin-bottom: 45px;
}

.sec-shinzenshiki-history figure {
	position: relative;
	z-index: 0;
}

.sec-shinzenshiki-history figure img { width: 100%; height: auto; -webkit-backface-visibility: hidden; }

.sec-shinzenshiki-history .inner {
	position: relative;
	margin-bottom: 30px;
	text-align: center;
	white-space: nowrap;
	z-index: 1;
}

.sec-shinzenshiki-history .inner h2 {
	margin-bottom: 20px;
	color: #B8972D;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.18em;
}

.sec-shinzenshiki-history .inner p {
	margin-bottom: 17px;
	color: #606060;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.9;
	letter-spacing: 0.06em;
}

.sec-shinzenshiki-history .inner p:last-of-type { margin-left: 0; }

/* .sec-shinzenshiki-step
------------------------------------*/
.sec-shinzenshiki-step {
	margin: 0 auto 30px;
	text-align: center;
}

.sec-shinzenshiki-step .lead {
	padding: 0 10%;
}

.sec-shinzenshiki-step .lead h2 {
	margin-bottom: 22px;
	font-size: 17px;
	letter-spacing: 0.18em;
}

.sec-shinzenshiki-step .lead p {
	text-align: justify;
	letter-spacing: 0.08em;
}

.sec-shinzenshiki-step .lead p br { display: none; }

.sec-shinzenshiki-step > figure {
	margin: 46px auto 38px;
}

/* .shinzenshiki-step
------------------------------------*/
.shinzenshiki-step {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	padding: 0 8%;
}

.shinzenshiki-step > div {
	width: 45%;
	margin: 0 0 38px 10%;
}

.shinzenshiki-step > div:nth-child(odd) { margin-left: 0; }

.shinzenshiki-step > div i {
	display: block;
	margin-bottom: 12px;
	color: #B8972D;
	font-size: 18px;
	text-align: center;
}

.shinzenshiki-step > div figure {
	margin-bottom: 22px;
}

.shinzenshiki-step > div figure img { width: 100%; height: auto; -webkit-backface-visibility: hidden; }

.shinzenshiki-step > div > div {
	margin: 0 auto;
	padding-right: 4px;
	text-align: left;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.shinzenshiki-step > div h3 {
	margin-left: 13px;
	font-size: 16px;
	letter-spacing: 0.15em;
}

.shinzenshiki-step > div h3 span {
	padding-top: 4px;
	font-size: 11px;
}

.shinzenshiki-step > div p {
	font-size: 12px;
	line-height: 1.65;
}

.shinzenshiki-step > div ul {
	margin-right: 8px;
	margin-left: -2px;
}

.shinzenshiki-step > div li {
	font-size: 11px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

/* .sec-shinzenshiki-outline
------------------------------------*/
.sec-shinzenshiki-outline {
	text-align: center;
}

.sec-shinzenshiki-outline > figure {
	margin-bottom: 38px;
}

.sec-shinzenshiki-outline h2 {
	margin-bottom: 38px;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.sec-shinzenshiki-outline .inner {
	margin-bottom: 55px;
	padding: 0 7%;
	text-align: left;
}

.sec-shinzenshiki-outline .inner:last-of-type { margin-bottom: 0; }

.sec-shinzenshiki-outline h3 {
	margin-bottom: 24px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.sec-shinzenshiki-outline dl > div {
	border-bottom: 1px solid rgba(204,204,204,0.5);
	padding: 20px 2px 26px 30px;
}

.sec-shinzenshiki-outline dl.side > div {
	display: -webkit-box;
	display: flex;
	padding: 20px 2px 20px;
}

.sec-shinzenshiki-outline dl > div:first-of-type { padding-top: 0; }
.sec-shinzenshiki-outline dl:last-child > div:last-of-type { border-bottom: none; padding-bottom: 0; }

.sec-shinzenshiki-outline dt {
	position: relative;
	margin-bottom: 10px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.sec-shinzenshiki-outline dl.side dt {
	width: 55px;
	min-width: 55px;
	font-weight: 500;
	letter-spacing: 0.4em;
	white-space: nowrap;
}

.sec-shinzenshiki-outline dt i {
	display: block;
	position: absolute;
	top: -1px;
	left: -27px;
	font-size: 17px;
}

@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
	.sec-shinzenshiki-outline dt i {
		top: -3px;
	}
}

.sec-shinzenshiki-outline dd p {
	line-height: 1.8;
	letter-spacing: 0.04em;
	text-align: justify;
}

.sec-shinzenshiki-outline dd p br { display: none; }

.sec-shinzenshiki-outline dd p + .attention-list { margin-top: 10px; }
.sec-shinzenshiki-outline dl.side dd p + .attention-list { margin-top: 6px; }

.sec-shinzenshiki-outline dd .attention-list li { font-size: 12px; }
.sec-shinzenshiki-outline dl + .attention-list { margin-top: 20px; text-align: justify; }

.sec-shinzenshiki-outline dd .box {
	display: inline-block;
	border: 1px solid rgba(96,96,96,0.2);
	margin: 6px 0 18px;
	padding: 9px 12px 9px 14px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 0.08em;
}

/* .map-keidai-wrap
------------------------------------*/
.map-keidai-wrap {
	overflow: hidden;
}

/* .nav-map-keidai
------------------------------------*/
.nav-map-keidai {
	width: calc(100% - 20px);
	margin: 15px auto 15px;
}

.nav-map-keidai ul {
	display: -webkit-box;
	display: flex;
	border: 1px solid #E8E8E8;
	box-shadow: 0 1px 1px 0 rgba(229,229,229,0.5);
	border-radius: 12px;
}

.nav-map-keidai li {
	box-sizing: border-box;
	border-right: 1px solid #E8E8E8;
}

.nav-map-keidai li:last-of-type { border-right: none; }

.nav-map-keidai li.top { width: 22%; }
.nav-map-keidai li.art { width: 20%; }
.nav-map-keidai li.toilet { width: 33%; }
.nav-map-keidai li.wheelchair { width: 25%; }

.nav-map-keidai li a {
	display: block;
	position: relative;
	padding: 7px 0 11px;
	text-align: center;
}

.nav-map-keidai li a:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	opacity: 0;
}

.nav-map-keidai li.top a:after { background: #FFF5F5; border-radius: 12px 0 0 12px; }
.nav-map-keidai li.art a:after { background: #F2F9FF; }
.nav-map-keidai li.toilet a:after { background: #FFF9F4; }
.nav-map-keidai li.wheelchair a:after { background: #F1FBFD; border-radius: 0 12px 12px 0; }

.nav-map-keidai li h2,
.nav-map-keidai li a > img {
	position: relative;
	z-index: 1;
}

.nav-map-keidai li h2 {
	margin-top: 6px;
	font-size: 0;
}

.nav-map-keidai li a:after {
	transition: .15s ease-out;
}

.nav-map-keidai li.active a:after,
#keidaiannaiContents .nav-map-keidai li.top a:after,
.keidaiannai.single #wrap:not(.before_wheelchair_single) .nav-map-keidai li.top a:after,
.keidaiannai.art .nav-map-keidai li.art a:after,
#toiletContents .nav-map-keidai li.toilet a:after,
#wheelchairContents .nav-map-keidai li.wheelchair a:after,
.keidaiannai.single #wrap.before_wheelchair_single .nav-map-keidai li.wheelchair a:after {
	opacity: 1;
}

/* .map-keidai
------------------------------------*/
.map-keidai {
	position: relative;
	width: calc(100% - 40px);
	margin: 0 auto;
	transform: translateX(2px);
}

.map-keidai .map {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.map-keidai .map-mark {
	display: none;
	opacity: 0;
}

.map-keidai .map-mark-in {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.map-keidai .map-mark-in,
.map-keidai .map-mark-bg:after {
	transform: scale(0.9);
}

.map-keidai .lt .map-mark-in,
.map-keidai .lt:after { transform-origin: left top; }
.map-keidai .rt .map-mark-in,
.map-keidai .rt:after { transform-origin: right top; }
.map-keidai .rb .map-mark-in,
.map-keidai .rb:after { transform-origin: right bottom; }
.map-keidai .lb .map-mark-in,
.map-keidai .lb:after { transform-origin: left bottom; }
.map-keidai .ct .map-mark-in,
.map-keidai .ct:after { transform-origin: center top; }
.map-keidai .cb .map-mark-in,
.map-keidai .cb:after { transform-origin: center bottom; }

.map-keidai .map-mark img {
	width: 100%;
	height: auto;
}

.map-keidai .map-mark-bg:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.85);
	border-radius: 20%;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.map-mark-num {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	box-sizing: border-box;
	background: url(img/share/mark-red.svg) no-repeat center center / 100% auto;
	width: 26px;
	height: 26px;
	padding: 6px 0 0;
	text-align: center;
	z-index: 10;
	opacity: 0.9;
}

.map-mark-num-sub {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	box-sizing: border-box;
	background: rgba(255,255,255,1.0);
	border: 1px solid #FC8D88;
	border-radius: 6px;
	width: 20px;
	height: 20px;
	padding: 1px 0 0;
	text-align: center;
	z-index: 10;
}

.map-mark-num img,
.map-mark-num-sub img,
.mark-num i img,
.mark-num-sub i img {
	width: 16px !important;
	height: auto;
}

body.keidaiannai.art .map-mark-num,
body.houmotsuden.single #wrap.before_art_single .map-mark-num,
body.rekishikan.single #wrap.before_art_single .map-mark-num { background-image: url(img/share/mark-blue.svg); }

.before_art .sec-title-keidaiannai .map-mark-num img.num-top,
.sec-title-keidaiannai .map-mark-num img.num-art { display: none; }

.before_art .sec-title-keidaiannai .map-mark-num img.num-art { display: inline-block; }

.map-keidai .mark-num,
.map-keidai .mark-num-sub {
	position: absolute;
	margin: -18px 0 0 -18px;
	padding: 5px;
}

.map-keidai .mark-num i,
.map-keidai .mark-num-sub i {
	position: static;
}

/* before gohonden
.map-keidai .detail-num1 { top: 28.8%; left: 37.6%; }
.map-keidai .detail-num2 { top: 33%; left: 41.6%; }
.map-keidai .detail-num3 { top: 43.4%; left: 37.6%; }
.map-keidai .detail-num4 { top: 66.5%; left: 30.5%; }
.map-keidai .detail-num5 { top: 81.8%; left: 43.8%; }
.map-keidai .detail-num6 { top: 35.6%; left: 17.4%; }

.map-keidai .detail-num7,
#artContents .map-keidai .detail-num1 { top: 45.6%; left: 58.4%; }

.map-keidai .detail-num8,
#artContents .map-keidai .detail-num2 { top: 15.6%; left: 32.6%; }

.map-keidai .detail-num-sub9 { top: 4%; left: 71%; }

.map-keidai .detail-num-sub10.sub10-1 { top: 23%; left: 38.6%; }
.map-keidai .detail-num-sub10.sub10-2 { top: 31%; left: 56.6%; }

.map-keidai .detail-num-sub11 { top: 19.5%; left: 48.5%; }
.map-keidai .detail-num-sub12 { top: 37.4%; left: 54.2%; }
.map-keidai .detail-num-sub13 { top: 49%; left: 41%; }
.map-keidai .detail-num-sub14 { top: 51.2%; left: 47%; }
.map-keidai .detail-num-sub15 { top: 53%; left: 53%; }
.map-keidai .detail-num-sub16 { top: 57.2%; left: 26.4%; }
.map-keidai .detail-num-sub17 { bottom: 51%; left: 96.5%; }
.map-keidai .detail-num-sub18 { top: 63.8%; left: 43.6%; }
.map-keidai .detail-num-sub19 { top: 83%; left: 31.7%; }
.map-keidai .detail-num-sub20 { top: 96%; left: 35.7%; }
*/

.map-keidai .detail-num1 { top: 27.8%; left: 37.5%; }
.map-keidai .detail-num2 { top: 34.8%; left: 37.5%; }
.map-keidai .detail-num3 { top: 31.3%; left: 43.4%; }
.map-keidai .detail-num4 { top: 43.4%; left: 37.5%; }
.map-keidai .detail-num5 { top: 66.5%; left: 30.5%; }
.map-keidai .detail-num6 { top: 81.8%; left: 43.8%; }
.map-keidai .detail-num7 { top: 35.6%; left: 17%; }

.map-keidai .detail-num8,
#artContents .map-keidai .detail-num1 { top: 45.6%; left: 58.4%; }

.map-keidai .detail-num9,
#artContents .map-keidai .detail-num2 { top: 15.6%; left: 32.6%; }

.map-keidai .detail-num-sub10 { top: 4%; left: 71%; }

.map-keidai .detail-num-sub11.sub11-1 { top: 23%; left: 38.6%; }
.map-keidai .detail-num-sub11.sub11-2 { top: 31%; left: 56.6%; }

.map-keidai .detail-num-sub12 { top: 19.5%; left: 48.5%; }
.map-keidai .detail-num-sub13 { top: 37.4%; left: 54.2%; }
.map-keidai .detail-num-sub14 { top: 49%; left: 41%; }
.map-keidai .detail-num-sub15 { top: 51.2%; left: 47%; }
.map-keidai .detail-num-sub16 { top: 53%; left: 53%; }
.map-keidai .detail-num-sub17 { top: 57.2%; left: 26.4%; }
.map-keidai .detail-num-sub18 { bottom: 51%; left: 96.5%; }
.map-keidai .detail-num-sub19 { top: 63.8%; left: 43.6%; }
.map-keidai .detail-num-sub20 { top: 83%; left: 31.75%; }
.map-keidai .detail-num-sub21 { top: 96%; left: 35.7%; }

#artContents .map-keidai .detail-num3 { top: 46.5%; left: 75%; }
#artContents .map-keidai .detail-num4 { top: 62%; left: 83.5%; }
#artContents .map-keidai .detail-num-sub1 { top: 96.5%; left: 35.8%; }
#artContents .map-keidai .detail-num-sub2 { top: 58.5%; left: 75%; }
#artContents .map-keidai .detail-num-sub3 { top: 52%; left: 44%; }
#artContents .map-keidai .detail-num-sub4 { top: 66%; left: 24.5%; }
#artContents .map-keidai .detail-num-sub5 { top: 47%; left: 47.5%; }
#artContents .map-keidai .detail-num-sub6 { top: 61.5%; left: 28%; }
#artContents .map-keidai .detail-num-sub7 { top: 24.5%; left: 58%; }
#artContents .map-keidai .detail-num-sub8 { top: 2.5%; left: 41%; }
#artContents .map-keidai .detail-num-sub9 { top: 58%; left: 82.5%; }
#artContents .map-keidai .detail-num-sub10 { top: 34%; right: 6%; }

.map-keidai .mark-walk {
	position: absolute;
	bottom: calc(51% + 40px);
	right: 4.6%;
	width: 12px;
	margin: 0 -6px -6px 0;
}

.map-keidai .mark-syamusyo { position: absolute; top: 47.2%; left: 7.8%; width: 11.8%; }
.map-keidai .mark-annaijyo { position: absolute; bottom: 12%; left: 25%; width: 11.8%; }
.map-keidai .mark-houmotsuden { position: absolute; top: 45.8%; left: 52.6%; width: 11.8%; }

.map-keidai .mark-wheelchair1 { top: 41.4%; left: 9.4%; }
.map-keidai .mark-wheelchair2 { bottom: 4%; left: 21.6%; }

.map-keidai .map-link-wheelchair { position: absolute; width: 12.2%; height: 11%; z-index: 3; }
.map-keidai .map-link-wheelchair1 { top: 40.5%; left: 7.7%; }
.map-keidai .map-link-wheelchair2 { top: 84.5%; left: 20%; width: 21.4%; height: 13%; }

.map-keidai .map-link-wheelchair a {
	display: block;
	height: 100%;
}

.map-keidai .mark-toilet1,
.map-keidai .mark-toilet2,
.map-keidai .mark-toilet3,
.map-keidai .mark-toilet4,
.map-keidai .mark-toilet5,
.map-keidai .mark-kyukei,
.map-keidai .mark-junyuu,
.map-keidai .mark-tobacco1,
.map-keidai .mark-tobacco2,
.map-keidai .mark-wheelchair1,
.map-keidai .mark-wheelchair2 {
	position: absolute;
	width: 9%;
	z-index: 1;
}

.map-keidai .mark-toilet1 { top: 8.2%; left: 48.4%; }
.map-keidai .mark-toilet3 { bottom: 22.2%; right: 17%; }
.map-keidai .mark-toilet4 { bottom: 4%; left: 31.4%; }
#toiletContents .map-keidai .mark-toilet4 { left: 26.5%; }
.map-keidai .mark-toilet5 { top: 39%; left: 54%; }

.map-keidai .mark-toilet2 { top: 18.5%; left: 12.8%; }
#toiletContents .map-keidai .mark-toilet2 { top: 14%; left: 5%; }
.map-keidai .mark-junyuu { top: 14%; left: 15%; }
.map-keidai .mark-kyukei { top: 20.5%; left: 15%; }
.map-keidai .mark-tobacco1 { top: 20.5%; left: 5%; }
.map-keidai .mark-tobacco2 { bottom: 28.2%; right: 17%; }


/* .map-keidai .route
------------------------------------*/
.map-keidai .route {
	position: absolute;
	top: 34.8%;
	left: 15.5%;
	width: 23.8%;
	z-index: 2;
}

.map-keidai .route .marker {
	position: absolute;
	bottom: 2px;
	left: 0;
	margin: 0 0 -9px -9px;
	z-index: 1;
	opacity: 0;
}

.map-keidai .route .marker .circle1 {
	position: relative;
	background-image: linear-gradient(180deg, #00D9E5 0%, #008D9D 100%);
	border: 2px solid #FFFFFF;
	border-radius: 50%;
	width: 14px;
	height: 14px;
	z-index: 3;
}

.map-keidai .route .marker .circle2 {
	position: absolute;
	top: -1px;
	left: -1px;
	background-color: #FFFFFF;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	transform-origin: center center;
	z-index: 2;
	transform: scale(0.1);
	opacity: 0;
}

.map-keidai .route .marker .circle3 {
	position: absolute;
	top: -5px;
	left: -5px;
	background: #00AFBD;
	border-radius: 50%;
	width: 28px;
	height: 28px;
	transform-origin: center center;
	z-index: 1;
	transform: scale(0.1);
	opacity: 0;
}

.map-keidai .route .marker.active .circle1 {
	animation: route_circle1 4s linear infinite;
}

@keyframes route_circle1 {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.map-keidai .route .marker.active .circle2 {
	animation: route_circle2 2s linear infinite;
}

@keyframes route_circle2 {
	0% { transform: scale(0.1); opacity: 0; }
	10% { transform: scale(0.8); opacity: 0.6; }
	40% { transform: scale(1); opacity: 1; }
	80% { transform: scale(1.2); opacity: 0.6; }
	100% { transform: scale(1.4); opacity: 0; }
}

.map-keidai .route .marker.active .circle3 {
	animation: route_circle3 2s linear infinite;
}

@keyframes route_circle3 {
	0% { transform: scale(0.1); opacity: 0; }
	50% { transform: scale(1); opacity: 1; }
	100% { transform: scale(1.5); opacity: 0; }
}


/* .map-keidai .route-info
------------------------------------*/
.map-keidai .route-info {
	position: absolute;
	top: 7px;
	left: 0;
	padding-left: 40px;
	z-index: 2;
}

.map-keidai .route-info:after {
	display: block;
	content: '';
	position: absolute;
	top: -18px;
	left: -14px;
	background-color: #FFFFFF;
	border-radius: 0 0 10px 0;
	width: 150px;
	height: 47px;
	z-index: -1;
}

.map-keidai .route-info .marker-line {
	position: absolute;
	top: 5px;
	left: 0;
	background-color: #00B2C6;
	width: 0;
	height: 3px;
	z-index: 1;
}

.map-keidai .route-info .marker {
	position: absolute;
	top: 3px;
	left: 14px;
	z-index: 2;
	opacity: 0;
}

.map-keidai .route-info .marker .circle1 {
	position: relative;
	background-image: linear-gradient(180deg, #00D9E5 0%, #008D9D 100%);
	border-radius: 50%;
	width: 7px;
	height: 7px;
	z-index: 3;
}

.map-keidai .route-info .marker .circle2 {
	position: absolute;
	top: -3px;
	left: -3px;
	background-color: #FFFFFF;
	border-radius: 50%;
	width: 13px;
	height: 13px;
	transform-origin: center center;
	z-index: 2;
}

.map-keidai .route-info .marker .circle3 {
	position: absolute;
	top: -7px;
	left: -7px;
	background: #00AFBD;
	border-radius: 50%;
	width: 21px;
	height: 21px;
	transform-origin: center center;
	z-index: 1;
	opacity: 0.5;
}

.map-keidai .route-info span {
	display: block;
	color: #00B2C6;
	font-size: 13px;
	letter-spacing: 0.15em;
	white-space: nowrap;
	opacity: 0;
}

/* .map-keidai-modal
------------------------------------*/
.map-keidai-modal {
	position: relative;
	overflow: hidden;
	background-color: #FAEBE8;
	height: 0;
}

.map-keidai-modal .inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: none;
	opacity: 0;
}

.map-keidai-modal .inner > a,
.map-keidai-modal .inner > div {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	padding: 18px 6%;
}

.map-keidai-modal .inner figure { position: relative; width: 80px; min-width: 80px; }
.map-keidai-modal .inner figure i { top: -8px; left: -7px; padding-left: 1px; }
.map-keidai-modal .inner figure img { border-radius: 2px; }

.map-keidai-modal .inner .txt {
	position: relative;
	box-sizing: border-box;
	min-width: calc(100% - 80px);
	padding: 0 0 0 20px;
	text-align: justify;
}

.map-keidai-modal .inner .txt.link {
	padding-right: 50px;
}

.map-keidai-modal .inner .txt.link .btn-next-arrow {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.map-keidai-modal .inner .txt.link .btn-next-arrow > div {
	width: 32px;
	height: 32px;
}

.map-keidai-modal .inner .txt h4 {
	margin-bottom: 8px;
	color: #DA2338;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.map-keidai-modal .inner .txt h4 span {
	display: inline-block;
	border-bottom: 1px solid #DA2338;
	padding-bottom: 1px;
	line-height: 1;
}

.map-keidai-modal .inner .txt h4 span em {
	padding-left: 2px;
	font-size: 12px;
	font-weight: 600;
}

.map-keidai-modal .inner .txt p {
	color: #282828;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.12em;
	text-align: left;
}

/* .column-keidaiannai
------------------------------------*/
.column-keidaiannai {
	padding-top: 60px;
}

.column-main .sec-column2.keidaiannai-list {
	padding: 0 6%;
}

.keidaiannai-list + .keidaiannai-list {
	margin-top: -15px;
}

.keidaiannai-list .inner h3 {
	margin-bottom: 14px;
	margin-left: -2px;
}

.keidaiannai-list .inner h3 span {
	display: inline-block;
	position: relative;
	margin-left: -5px;
	padding-left: 34px;
}

.keidaiannai-list.sub .inner h3 span {
	padding-left: 28px;
}

.keidaiannai-list .inner h3 span em {
	padding-left: 3px;
	font-size: 11px;
	font-weight: 500;
}

.keidaiannai-list .map-mark-num { top: -2px; left: 0; line-height: 1; padding-top: 6px; }
.keidaiannai-list .map-mark-num-sub { top: 1px; left: 0; line-height: 1; padding-top: 1px; }

.column-main .sec-column2.keidaiannai-list h4.let {
	letter-spacing: 0.06em;
}


/* page keidaiannai / art
---------------------------------------------------------------------------*/
body.keidaiannai.art .map-mark-num {
	background-image: url(img/share/mark-blue.svg);
}

body.keidaiannai.art .map-mark-num-sub {
	border-color: #00599C;
}

body.keidaiannai.art .keidaiannai-list .map-mark-num-sub {
	position: inherit;
	margin: 0 auto 10px;
}

body.keidaiannai.art .map-keidai-modal,
body.keidaiannai.art .map-keidai-modal .inner > a,
body.keidaiannai.art .map-keidai-modal .inner > div {
	background-color: #E8F6FA;
}

body.keidaiannai.art .map-keidai-modal .inner .txt h4 { color: #00599C; }
body.keidaiannai.art .map-keidai-modal .inner .txt h4 span { border-color: #00599C; }

body.keidaiannai.art .btn-back-arrow a,
body.keidaiannai.art .btn-next-arrow > div,
#wrap.before_art_single #houmotsudenContents .btn-back-arrow a,
#wrap.before_art_single #houmotsudenContents .btn-next-arrow > div,
#wrap.before_art_single #rekishikanContents .btn-back-arrow a,
#wrap.before_art_single #rekishikanContents .btn-next-arrow > div {
	background-color: #00599C;
}

.keidaiannai-list-art {
	background-color: #E8F6FA;
	box-sizing: border-box;
	margin: 100px 0 -75px;
	padding: 50px 0 45px;
}

.keidaiannai-list-art > h2 {
	margin-bottom: 38px;
	color: #005A9A;
	font-size: 17px;
	text-align: center;
	letter-spacing: 0.2em;
}

.keidaiannai-list-art > h2 i {
	display: block;
	margin: -69px 0 20px;
}

#artContents .keidaiannai-list .inner h3,
.keidaiannai-list-art .keidaiannai-list.sub .inner h3 {
	color: #005A9A;
}

#artContents .keidaiannai-list:not(.sub) .inner h3 span {
	font-size: 13px;
	letter-spacing: 0.08em;
}

.keidaiannai-list-art .keidaiannai-list.sub .inner h3 {
	margin-bottom: 8px;
}

.keidaiannai-list-art .keidaiannai-list.sub .inner h3 span {
	padding-left: 0;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.keidaiannai-list-art .btn-set {
	width: 88%;
	margin: -20px auto 0;
}


/* page keidaiannai / toilet / wheelchair
---------------------------------------------------------------------------*/
#wheelchairContents .column-keidaiannai {
	padding-top: 40px;
}

.column-keidaiannai .sec-center > figure {
	margin-bottom: 28px;
}

.column-keidaiannai .sec-common {
	margin-bottom: 70px;
	margin-top: -40px;
	padding-top: 40px;
}

.column-keidaiannai .sec-common h1 {
	font-size: 17px;
}

.column-keidaiannai .sec-common h1 i {
	display: inline-block;
	padding-right: 14px;
}

.column-keidaiannai .sec-common h1 i img {
	width: 34px;
	height: auto;
}

.column-keidaiannai .sec-common h1 + .size-s {
	margin-top: -10px;
	margin-bottom: 18px;
	text-align: center !important;
}

.column-keidaiannai .sec-common .btn-link {
	margin-top: 20px;
}


/* page keidaiannai / single
---------------------------------------------------------------------------*/
body.keidaiannai.tenkaiinarisha.single .bnr-gokigan {
	display: none;
}

/* .detail-keidaiannai-inner
------------------------------------*/
.detail-keidaiannai-inner > figure {
	position: relative;
}

.detail-keidaiannai-inner .sec-common:not(.wide) + .sec-common.wide {
	margin-top: -40px;
}

.detail-keidaiannai-inner .sec-common.wide {
	width: 82%;
	margin-bottom: 70px;
}

.detail-keidaiannai-inner .sec-common.wide h2.title-sub {
	margin-left: -9px;
	margin-bottom: 22px;
}

.detail-keidaiannai-inner .sec-common.wide h2.title-sub.vertical {
	top: 54px;
}

.detail-keidaiannai .sec-common p {
	font-size: 14px;
	letter-spacing: 0.08em;
}

.detail-keidaiannai .sec-common .sec-column2 p {
	font-size: 12px;
	line-height: 1.8;
}

/* .sec-title-keidaiannai
------------------------------------*/
.sec-title-keidaiannai {
	margin: 55px 0 30px;
	text-align: center;
}

.sec-title-keidaiannai h1 {
	margin-bottom: 30px;
	font-size: 17px;
	letter-spacing: 0.2em;
	margin-left: -2px;
}

.sec-title-keidaiannai h1 > span {
	display: inline-block;
	position: relative;
	margin-left: -4px;
	padding-left: 46px;
}

.sec-title-keidaiannai h1 > span.sub { padding-left: 36px; }

.sec-title-keidaiannai h1 > span em {
	padding-left: 4px;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.18em;
}

.sec-title-keidaiannai h1 > span .map-mark-num { top: -6px; transform: scale(1.3); padding-top: 1px; }

.sec-title-keidaiannai h1 > span .map-mark-num-sub {
	top: -2px;
	transform: scale(1.3);
	padding-top: 4px;
	line-height: 0;
}

.sec-title-keidaiannai h1 > span:has(ruby) { transform: translateY(-6px); }
.sec-title-keidaiannai h1 > span:has(ruby) i { margin-top: 10px; }
.sec-title-keidaiannai h1 ruby > rt { transform: translateY(-4px); }

.sec-title-keidaiannai h1 + p { margin: -18px 0px 18px !important; }

.sec-title-keidaiannai h2 {
	font-size: 17px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}


/* page omatsuri
---------------------------------------------------------------------------*/

/* .sec-omatsuri-tenjin
------------------------------------*/
.sec-omatsuri-tenjin {
	position: relative;
	box-sizing: border-box;
	background-color: #FDFBF1;
	width: 100%;
	margin: 120px auto 60px;
	padding: 85px 0 45px;
}

.sec-omatsuri-tenjin > h2 {
	position: absolute;
	top: -52px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 17.5px;
	line-height: 1.8;
	letter-spacing: 0.2em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
	white-space: nowrap;
}

.omatsuri-main {
	padding: 0 9%;
}

.omatsuri-main figure {
	width: 100%;
	margin-bottom: 24px;
}

.omatsuri-main figure span {
	display: block;
	width: 100%;
}

.omatsuri-main .inner {
	position: relative;
	margin-bottom: 55px;
}

.omatsuri-main h2 {
	margin-bottom: 16px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.12em;
	text-align: center;
}

.omatsuri-main h2 span {
	display: block;
	margin-top: 6px;
	color: #B79267;
	font-size: 13px;
	letter-spacing: 0.1em;
}

.omatsuri-main h3 {
	margin-bottom: 14px;
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: 0.14em;
	text-align: center;
}

.omatsuri-main p br { display: none; }

.omatsuri-main .btn-link {
	margin: 20px -3px 0;
}

.sec-omatsuri-tenjin .sec-column2 {
	margin-bottom: 0;
}

.sec-omatsuri-tenjin .sec-column2 .inner {
	margin-top: 35px;
}

.sec-omatsuri-tenjin .sec-column2 h2 span {
	color: #B79267;
	letter-spacing: 0.15em;
}

.sec-omatsuri-tenjin .sec-column2 p.attention {
	margin-top: -2px;
	font-size: 10px;
	line-height: 1.7;
}

/* .inner:first-of-type
------------------------------------*/
.sec-omatsuri-tenjin .sec-column2 .inner:first-of-type {
	width: 100%;
	margin: 0 0 10px;
	padding-right: 3.5%;
	padding-left: 3.5%;
}

.sec-omatsuri-tenjin .sec-column2 .inner:first-of-type figure { margin-bottom: 20px; }
.sec-omatsuri-tenjin .sec-column2 .inner:first-of-type h2 { font-size: 17px; }

.sec-omatsuri-tenjin .sec-column2 .inner:first-of-type h2 span {
	display: inline-block;
	margin-left: 10px;
	font-size: 13px;
}

.omatsuri-main p,
.sec-omatsuri-tenjin .sec-column2 .inner:first-of-type p {
	font-size: 13px;
	line-height: 1.95;
	letter-spacing: 0.14em;
}

.sec-omatsuri-tenjin .sec-column2 .inner:first-of-type .btn-link {
	position: inherit;
	left: 0;
	width: 100%;
	margin-top: 20px;
}

/* .sec-omatsuri-main
------------------------------------*/
.sec-omatsuri-main { margin-bottom: 60px; }
.sec-omatsuri-main .sec-column2 { margin-bottom: 40px; }
.sec-omatsuri-main .sec-column2 .inner > h2 span { color: #B79267; }

/* .sec-omatsuri-sub
------------------------------------*/
.sec-omatsuri-sub { padding: 0 6%; }
.sec-omatsuri-sub .column-main .sec-img-left { margin: 0 0 35px; }

.sec-omatsuri-sub .column-main .sec-img-left h2.size-s span { font-size: 11px; letter-spacing: 0.08em; }
.sec-omatsuri-sub .column-main .sec-img-left h2.size-s span i { position: absolute; top: 3px; right: 0; }

.sec-omatsuri-sub .column-main .sec-img-left .txt-inner { margin-top: -1px; }
.sec-omatsuri-sub .column-main .sec-img-left .txt-inner p { line-height: 1.8; }

.sec-omatsuri-sub .column-main .sec-img-left .txt-inner .btn-link {
	display: inline-block;
	margin: 12px 0 0 -4px;
}


/* page art
---------------------------------------------------------------------------*/
#artContents .img-main {
	margin-bottom: 60px;
}

#artContents .btn-link.size-l a {
	letter-spacing: 0.12em;
}

.art-lead {
	margin-bottom: 65px;
	padding: 0 10%;
}

.art-lead h1 {
	margin: 0 0 25px 2px;
	font-size: 15px;
	letter-spacing: 0.4em;
	text-align: center;
}

.art-lead h2 { width: 190px; margin: 0 auto 30px; }
.art-lead h2 img { width: 100%; height: auto; }

.art-lead p {
	line-height: 2.1;
	letter-spacing: 0.15em;
	text-align: justify;
}

.art-tenjin .btn-link {
	margin: 28px -5px 0;
}

/* .art-news
------------------------------------*/
.art-news {
	box-sizing: border-box;
	border: 1px solid #DEDEDE;
	border-radius: 6px;
	width: 88%;
	margin: 0 auto 90px;
	padding: 32px 28px 26px;
}

.art-news h2 {
	margin-bottom: 18px;
	color: #606060;
	font-size: 13px;
	letter-spacing: 0.18em;
}

.art-news h3 { margin-bottom: 18px; }
.art-news h3:last-child { margin-bottom: 0; }

.art-news h3 a {
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.art-news h3 strong {
	color: #05569A;
	font-weight: 600;
}

.art-news h3 time {
	display: block;
	padding: 4px 0 0 1px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.14em;
}

.art-news p { text-align: justify; }
.art-news p br { display: none; }

/* .art-event
------------------------------------*/
.art-event {
	box-sizing: border-box;
	background: rgba(230,245,250,0.9);
	margin-bottom: 75px;
	padding: 0 6%;
}

.art-event .eye img { width: 100%; height: auto; }

.art-event .inner {
	border-bottom: 1px solid rgba(5,86,154,0.2);
	padding: 48px 15px 40px;
}

.inner:last-of-type { border-bottom: none; }

.art-event figure {
	position: relative;
}

.art-event figcaption {
	position: absolute;
	top: -25px;
	left: -20px;
	box-sizing: border-box;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	color: #FFFFFF;
	font-size: 13px;
	letter-spacing: 0.1em;
	text-align: center;
	white-space: nowrap;
}

.art-event figcaption.finish { background-color: rgba(88,88,88,0.9); padding: 23px 0 0 3px; }
.art-event figcaption.start { background-color: rgba(0,90,154,0.9); padding: 23px 0 0 3px; }
.art-event figcaption.soon { background-color: rgba(0,155,155,0.9); padding: 16px 0 0 2px; }

.art-event figcaption span {
	display: block;
	margin-bottom: 5px;
	font-size: 10px;
}

.art-event .inner figure {
	background-color: #FFFFFF;
	padding: 5px 5px;
}

.art-event .title {
	background-color: #FFFFFF;
	margin-bottom: 25px;
	padding: 18px 25px 26px;
}

.art-event time,
.art-event h3 {
	color: #05569A;
}

.art-event time {
	display: block;
	font-size: 11px;
	letter-spacing: 0.08em;
}

.art-event h3 {
	margin: 0 0 10px -1px;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.art-event p {
	text-align: justify;
}

/* .art-tenjin
------------------------------------*/
.art-tenjin {
	margin-bottom: 55px;
	padding: 0 10%;
}

.art-tenjin figure {
	position: relative;
	margin-bottom: 35px;
	padding: 0 5%;
}

.art-tenjin .txt {
	position: relative;
}

.art-tenjin h1 {
	margin-bottom: 38px;
	color: #05569A;
	text-align: center;
	white-space: nowrap;
}

.art-tenjin h1 strong {
	display: block;
	margin-bottom: 16px;
	font-size: 20px;
	letter-spacing: 0.14em;
	font-feature-settings: 'palt' 0;
}

.art-tenjin h1 em {
	display: block;
	font-size: 12px;
	letter-spacing: 0.06em;
}

.art-tenjin h2 {
	margin-bottom: 30px;
	text-align: center;
}

.art-tenjin h2 img {
	width: 110px;
	height: auto;
}

.art-tenjin p {
	line-height: 2.0;
	letter-spacing: 0.12em;
	text-align: justify;
}

/* .art-keidai
------------------------------------*/
.art-keidai {
	margin-bottom: 65px;
}

/* .art-keidai-img
------------------------------------*/
.art-keidai-img {
	display: -webkit-box;
	display: flex;
	overflow: hidden;
	width: 100%;
	margin-bottom: 25px;
}

.art-keidai-img .slide {
  animation: infinity-loop 40s infinite linear both;
  display: flex;
  width: calc(200px * 8);
  position: relative;
}

@keyframes infinity-loop {
  from { transform: translateX(0vw); }
  to { transform: translateX(calc(-200px * 8)); }
}

.art-keidai-img figure { width: 200px; }
.art-keidai-img figure > img { display: block; width: calc(100% - 1px); }

.art-keidai-img figcaption {
	display: block;
	padding-left: 4px;
	margin-top: 14px;
	line-height: 1.7;
}

.art-keidai-img figcaption strong {
	display: block;
	margin-bottom: 4px;
	font-size: 13px;
	letter-spacing: 0.06em;
	line-height: 1.4;
}

.art-keidai-img figcaption strong span {
	font-size: 11px;
}

.art-keidai-img figcaption em {
	display: block;
	margin-left: 1px;
	font-size: 10px;
	line-height: 1.4;
	letter-spacing: 0.02em;
}


/* .art-keidai .lead
------------------------------------*/
.art-keidai h2 strong,
.art-keidai h2 em,
.art-keidai .inner h3,
.art-keidai .inner h4,
.art-keidai .inner h5,
.art-keidai-img figcaption {
	color: #05569A;
}

.art-keidai .lead {
	margin-bottom: 60px;
	padding: 0 9%;
}

.art-keidai h2 {
	margin-bottom: 35px;
	text-align: center;
}

.art-keidai h2 strong {
	display: block;
	margin-left: 4px;
	font-size: 19px;
	letter-spacing: 0.2em;
}

.art-keidai h2 em {
	display: block;
	margin-top: 13px;
	font-size: 11px;
	letter-spacing: 0.06em;
}

.art-keidai .lead p {
	padding: 0 6px;
	line-height: 2.1;
	text-align: justify;
}

.art-keidai .lead p br { display: none; }

.art-keidai .btn-set {
	width: calc(100% + 4px);
	margin: 30px -2px 0;
}

.art-keidai .lead .btn-link {
	margin-top: 10px;
}

/* .art-keidai .inner
------------------------------------*/
.art-keidai .inner.main {
	margin-bottom: 65px;
}

#sec-houmotsuden {
	margin-top: 75px;
}

.art-keidai .inner h3 {
	margin-bottom: 10px;
	font-size: 16px;
	letter-spacing: 0.12em;
}

.art-keidai .inner#sec-houmotsuden figure {
	margin-bottom: 40px;
	padding: 0 10%;
}

.art-keidai .inner-s {
	padding: 0 10%;
}

.art-keidai .inner h4 {
	margin: 0 0 20px 1px;
	font-size: 16px;
	letter-spacing: 0.14em;
}

.art-keidai .inner.main h4 {
	margin-bottom: 15px;
	font-size: 15px;
}

.art-keidai .inner h5 {
	margin-bottom: 20px;
	font-size: 19px;
	line-height: 1.65;
	letter-spacing: 0.12em;
}

.art-keidai .inner p {
	letter-spacing: 0.1em;
	text-align: justify;
}

.art-keidai .inner .btn-link { margin: 30px -5px 0; }
.art-keidai .inner .btn-link + .btn-link { margin-top: 10px; }

/* .art-keidai .info
------------------------------------*/
.art-keidai .info {
	margin-top: 25px;
}

.sec-common .info {
	margin-top: 60px;
}

.sec-common .info .btn-link {
	display: none;
}

.sec-common .info + .btn-link {
	margin: 30px -3px 0;
}

.info dl {
	box-sizing: border-box;
	background-color: #E6F5FA;
	margin-bottom: 12px;
	padding: 20px 16px 6px 20px;
	color: #2F465B;
	font-size: 13px;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

.sec-common .info dl {
	background-color: #F4F4F4;
	margin-bottom: 20px;
	color: #606060;
}

.info dl > div {
	position: relative;
	display: -webkit-box;
	display: flex;
	margin-bottom: 12px;
}

.info dt {
	box-sizing: border-box;
	width: 74px;
	min-width: 74px;
	padding-right: 10px;
	letter-spacing: 0.15em;
}

.info dl > div:first-of-type dd {
	margin-left: 2px;
}

.info dd span {
	padding-left: 3px;
	font-size: 10px;
	letter-spacing: 0.1em;
}

.info .attention {
	font-size: 12px !important;
	line-height: 1.75;
}

.sec-common .info dl + p.attention {
	margin: -10px 0 20px 6px;
	letter-spacing: 0.12em;
}

.art-keidai .table-border { margin-top: 30px; white-space: nowrap; }
.sec-common .info p.attention + .table-border { margin-top: 25px; }

.art-keidai .table-border th { width: 100%; white-space: nowrap; }
.art-keidai .table-border th:first-of-type { padding-left: 12px; }
.art-keidai .table-border th:nth-last-child(2),
.art-keidai .table-border td:nth-last-child(2) { padding-right: 15px; }
.art-keidai .table-border td { font-size: 14px; letter-spacing: 0.05em; }

.art-keidai .table-border th:nth-last-child(2) { padding-right: 20px; }
.art-keidai .table-border th:last-child { padding-right: 33px; }
.art-keidai .table-border td:last-child { padding-right: 30px; }

.art-keidai .table-border th:nth-last-child(2),
.art-keidai .table-border td:nth-last-child(2),
.art-keidai .table-border th:last-child,
.art-keidai .table-border td:last-child { min-width: 48px; }

.art-keidai .inner.sub .table-border th.pr:last-child { padding-right: 38px; }
.art-keidai .inner.sub:last-of-type .table-border td:last-of-type { padding-right: 40px; }

.art-keidai .table-border td.right { letter-spacing: 0.03em; }

/* .art-keidai .table-border.table-art3
------------------------------------*/
.art-keidai .table-border.table-art3 {
	text-align: center;
}

.art-keidai .inner.sub .table-border.table-art3 tr th:first-of-type {
	text-align: left;
}

.art-keidai .inner.sub .table-border.table-art3 tr:first-of-type th {
	vertical-align: middle;
}

.art-keidai .table-border.table-art3 th:nth-last-child(2),
.art-keidai .table-border.table-art3 td:nth-last-child(2) {
	padding-right: 6px;
}

.art-keidai .table-border.table-art3 th:last-child,
.art-keidai .table-border.table-art3 td:last-child {
	padding-right: 4px !important;
	padding-left: 8px !important;
}

.art-keidai .inner.sub .table-border.table-art3 th:last-child {
	font-size: 11px;
	line-height: 1.4;
	letter-spacing: 0.05em;
}

.art-keidai .inner.sub .table-border.table-art3 tr:first-of-type th:nth-of-type(2),
.art-keidai .inner.sub .table-border.table-art3 tr:first-of-type th:nth-of-type(3) {
	min-width: 42px;
}

.art-keidai .inner.sub .table-border.table-art3 td:last-child {
	font-size: 14px;
}

/* .inner.sub
------------------------------------*/
.art-keidai .inner-wrap {
	padding: 0 10%;
}

.art-keidai .inner-wrap .inner {
	margin-bottom: 65px;
}

.art-keidai .inner-wrap .inner:last-of-type { margin-bottom: 0; }

.art-keidai .inner-wrap .title {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}

.art-keidai .inner-wrap .title h4 { order: 2; }
.art-keidai .inner-wrap .title figure { order: 1; }
.art-keidai .inner-wrap figure { margin-bottom: 35px; }

/* .art-ticket
------------------------------------*/
.art-ticket {
	box-sizing: border-box;
	background-color: #E9F6FB;
	padding: 35px 7.5% 45px;
}

.art-ticket,
.art-ticket h2,
.art-ticket h3,
.art-ticket h4 {
	color: #2C5174;
}

.art-ticket h2 {
	margin-bottom: 15px;
	font-size: 17px;
	line-height: 1.70;
	letter-spacing: 0.12em;
	text-align: center;
}

.art-ticket h2 + p {
	margin-bottom: 30px !important;
	font-size: 12px;
	text-align: center;
}

.art-ticket .txt {
	margin: 30px 10px 0;
}

.art-ticket h3 {
	margin-bottom: 20px;
	font-size: 15px;
	line-height: 1.8;
	letter-spacing: 0.16em;
}

.art-ticket h3 strong {
	font-size: 15px;
}

.art-ticket h3 span {
	padding-left: 2px;
	font-size: 12px;
}

.art-ticket h3 em {
	display: inline-block;
	border-bottom: 1px solid rgba(73,80,105,0.4);
	margin-top: 2px;
	font-size: 13px;
	line-height: 1.2;
	letter-spacing: 0.13em;
}

.art-ticket h3 em strong { padding-right: 2px; font-size: 19px; }
.art-ticket h3 em span { font-size: 10px; }
.art-ticket h3 i { display: inline-block; transform: translateY(-3px); }
.art-ticket h3 i img { width: 13px; height: auto; }

.art-ticket h4 {
	margin-bottom: 10px;
	font-size: 12px;
	letter-spacing: 0.2em;
}

.art-ticket ul,
.art-ticket p {
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.art-ticket ul { margin-bottom: 26px; }
.art-ticket li { margin-bottom: 4px; text-align: justify; line-height: 1.7;}


/* page access
---------------------------------------------------------------------------*/
#accessContents h2.title-sub {
	margin-bottom: 22px;
	font-size: 16px !important;
	text-align: center !important;
}

.sec-access-common .img-txt p br,
.sec-access-sub .txt p br { display: none; }

/* .sec-access-map
------------------------------------*/
.sec-access-map {
	margin: 0 auto 60px;
}

.sec-access-map .map {
	position: relative;
	overflow: hidden;
	width: 90vw;
	height: 90vw;
	margin: 0 auto 30px;
}

.sec-access-map iframe {
	position: absolute;
	top: -150px;
	left: 0;
	width: 100%;
	height: calc(100% + 300px);
}

/* .address-info
------------------------------------*/
.address-info {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 40px);
	margin: 0 auto;
	text-align: center;
}

.address-info > * {
	display: block;
	width: 100%;
}

.address-info address {
	margin-bottom: 24px;
	font-size: 14px;
	letter-spacing: 0.1em;
	color: #282828;
}

.address-info address span {
	padding-right: 2px;
	font-size: 14px;
	letter-spacing: 0.05em;
}

/* .sec-access-common
------------------------------------*/
.sec-access-common {
	position: relative;
	box-sizing: border-box;
	width: 86%;
	margin: 0 auto 100px;
	text-align: center;
}

/* .sec-access-common .txt-txt
------------------------------------*/
.sec-access-common .txt-txt { margin-bottom: 60px; }
.sec-access-common .txt-txt .inner { margin-bottom: 45px; }

.sec-access-common .txt-txt .btn-link { margin: 0 -2px 12px; }
.sec-access-common .txt-txt .btn-link a { display: block; }

.sec-access-common .txt-txt dl {
	margin-bottom: 35px;
	padding: 0 5px;
}

.sec-access-common .txt-txt dl > div {
	position: relative;
	display: -webkit-box;
	display: flex;
	margin-bottom: 14px;
}

.sec-access-common .txt-txt dt,
.sec-access-common .txt-txt dd {
	position: relative;
	background-color: #FFFFFF;
	font-size: 13px;
	letter-spacing: 0.08em;
	text-align: left;
	z-index: 1;
}

.sec-access-common .txt-txt dt { padding-right: 6px; }
.sec-access-common .txt-txt dd { padding-left: 6px; letter-spacing: 0.09em; }
.sec-access-common .txt-txt dd span { font-size: 10px; }

/* .access-car .parking
------------------------------------*/
.access-car .parking {
	background-color: #F9F9F9;
	padding: 35px 30px;
	text-align: left;
}

.access-car .parking h3 {
	margin-bottom: 20px;
	font-size: 15px;
	letter-spacing: 0.12em;
	/* color: #606060; */
}

.access-car .parking p {
	/* color: #282828; */
	font-size: 14px;
	line-height: 1.65;
	letter-spacing: 0.08em;
}

.access-car .parking p a {
	border-bottom: none;
}

.access-car .parking p span {
	display: inline-block;
	letter-spacing: 0.02em;
	transform: translateY(-2px);
	white-space: nowrap;
}

.access-car .parking address {
	margin: 12px 0 15px;
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.06em;
}

.access-car .parking address span {
	display: block;
	margin-top: 8px;
	font-size: 14px;
}

.access-car .parking .attention-list li {
	line-height: 1.7;
	letter-spacing: 0.05em;
}

/* .access-car .img-txt
------------------------------------*/
.access-car .img-txt-wrap h3 {
	margin-bottom: 20px;
	font-size: 15px;
	letter-spacing: 0.1em;
	text-align: left;
}

.access-car .img-txt-wrap figure {
	margin-bottom: 20px !important;
}

.access-car .img-txt-wrap p {
	letter-spacing: 0.08em;
	line-height: 1.85;
	text-align: justify;
}

.access-car .img-txt-wrap .btn-set {
	margin-top: 25px;
}

/* .access-public
------------------------------------*/
.access-public .img-txt:not(:last-child) {
	margin-bottom: 60px;
}

.access-public .img-txt figure {
	margin-bottom: 28px;
}

.access-public .img-txt h3 {
	margin-bottom: 18px;
	font-size: 16px;
	letter-spacing: 0.12em;
	text-align: center;	
}

.access-public .img-txt h3 ruby > rt {
	transform: scale(0.9) translate(-1px,-5px);
}

.access-public h4 {
	margin-bottom: 22px;
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.access-public h4 span {
	display: inline-block;
}

.access-public h4 span:not(:last-child) {
	margin-bottom: 8px;
}

.access-public .img-txt p {
	text-align: justify;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.access-public .img-txt .attention-list {
	margin: 12px 0 24px;
}

.access-public .img-txt .attention-list li {
	margin-bottom: 0;
	text-align: left;
	letter-spacing: 0.08em;
}

.access-public .img-txt .btn-link {
	margin: 28px -3px 0;
}

/* .img-txt-s
------------------------------------*/
.access-public .img-txt-s {
	position: relative;
	display: -webkit-box;
	display: flex;
	padding-top: 32px;
}

.access-public .img-txt-s h3 {
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	border-bottom: 1px solid rgba(0,0,0,0.4);
	padding-bottom: 2px;
	font-size: 13px;
}

.access-public .img-txt-s figure {
	width: 110px;
	min-width: 110px;
	margin-top: 6px;
}

.access-public .img-txt-s .txt {
	padding: 0 0 0 22px;
}

.access-public .img-txt-s p {
	font-size: 12px;
}

.access-public .img-txt-s .btn-set {
	margin: 30px -4px 0 -136px;
}

/* .sec-access-sub
------------------------------------*/
.sec-access-sub {
	margin-top: -20px;
	padding: 0 5%;
}

.sec-access-sub dl { border-top: 1px solid rgba(0,0,0,0.1); }
.sec-access-sub dl > div { border-bottom: 1px solid rgba(0,0,0,0.1); }
.sec-access-sub dl > div:last-of-type { margin-bottom: 0; }

.sec-access-sub dt {
	padding: 22px 20px 20px 40px;
}

.sec-access-sub dt h3 {
	font-size: 14px;
	letter-spacing: 0.15em;
}

.sec-access-sub dd {
	border-top: 1px solid rgba(0,0,0,0.1);
	padding: 0 15px 35px 40px;
}

.sec-access-sub dd > div {
	margin-bottom: 28px;
}

.sec-access-sub dd > div:first-of-type { padding-top: 30px; }
.sec-access-sub dd > div:last-child { margin-bottom: 0; }

.sec-access-sub dd > div:not(:first-child):after {
	display: block;
	content: '';
	position: absolute;
	top: -1px;
	left: 195px;
	background: #FFFFFF;
	width: 20px;
	height: 1px;
}

.sec-access-sub dd h4 {
	margin-bottom: 6px;
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.08em;
}

.sec-access-sub dd h4 span {
	padding-left: 10px;
	font-size: 11px;
	letter-spacing: 0.1em;
}

.sec-access-sub .list-num {
	padding: 4px 0 0;
}

.sec-access-sub .list-num li {
	margin-bottom: 4px;
	font-size: 12px;
	letter-spacing: 0.08em;
}


/* .anchor-wrap
---------------------------------------------------------------------------*/
#faqContents .anchor-wrap {
	margin-top: -32px;
}

.btn-select.anchor {
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
}

#faqContents .btn-select.anchor {
	width: 88%;
	margin-bottom: 75px;
}

.btn-select.anchor select {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 2;
}

.btn-select.anchor .customSelect {
	display: block;
	box-sizing: border-box;
	width: 100%;
	color: #282828;
	font-size: 16px;
	text-align: center;
	letter-spacing: 0.2em;
}

.btn-select.anchor .customSelect .customSelectInner {
	display: block !important;
	box-sizing: border-box;
	background: url(img/share/ico-arrow-down-gold.svg) no-repeat left calc(50% - 110px) center;
	border: 1px solid #cccccc;
	border-radius: 30px;
	width: 122% !important;
	margin: 0 -11%;
	padding: 21px 0 21px 25px;
	transform-origin: center center;
	transform: scale(0.75);
}

.anchor-nav {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 60px;
	padding: 0 9%;
}

.anchor-nav li {
	width: 45%;
	margin-bottom: 8px;
}

.anchor-nav li a {
	display: inline-block;
	background: url(img/share/ico-arrow-down-gold.svg) no-repeat left center;
	padding: 5px 10px 5px 18px;
	font-size: 13px;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

.anchor-contents .faq-list {
	padding: 0 5%;
}

.faq-list h2 {
	margin: 60px 0 18px 10px;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.faq-list > div:first-of-type h2 {
	margin-top: 0;
}


/* page contact
---------------------------------------------------------------------------*/
#contactContents .btn-wrap {
	width: 88%;
	margin: 45px auto 45px;
}

#contactContents .btn-wrap div {
	margin-bottom: 10px;
}

#contactContents .btn-wrap a,
#contactContents .btn-wrap span {
	font-size: 13px;
	letter-spacing: 0.06em;
	white-space: nowrap;
}

#contactContents .attention-list {
	padding: 0 7%;
	text-align: justify;
}

#contactContents .attention-list li {
	margin-bottom: 15px;
}

#contactContents .address-info {
	width: 300px;
	margin-top: 45px;
	padding-bottom: 15px;
	white-space: nowrap;
}

#contactContents .address-info address {
	margin-bottom: 6px;
}

#contactContents .address-info .tel {
	margin-top: 8px;
	font-size: 21px;
	letter-spacing: 0.02em;
}

#contactContents .address-info .tel a {
	padding-left: 1px;
	font-size: 27px;
}

#contactContents .address-info .tel span {
	padding-left: 4px;
	font-size: 14px;
}

/* .contact-modal
------------------------------------*/
.contact-modal-wrap {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
	width: 100%;
	height: 100%;
	padding: 4%;
	z-index: 10000;
	display: none;
	opacity: 0;
}

.contact-modal {
	position: relative;
	background-color: #FFFFFF;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	padding: 0px;
	text-align: left;
	opacity: 0;
}

.contact-modal-inner {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 80px 20px 40px;
	overflow-x: auto;
	position: relative;
}

.contact-modal-inner::-webkit-scrollbar { width: 3px; }
.contact-modal-inner::-webkit-scrollbar-track { border-radius: 0; background: #FFFFFF; }
.contact-modal-inner::-webkit-scrollbar-thumb { border-radius: 0; background: rgba(0,0,0,0.2); }

.contact-modal-close {
	position: absolute;
	top: 21px;
	right: 21px;
	text-align: center;
	z-index: 2;
}

.contact-modal-close img { width: 30px; height: auto; }

.contact-modal-close span {
	display: block;
	margin: 8px 0 0 1px;
	font-size: 10px;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

.contact-modal-inner > h2 {
	display: none;
	margin-left: 7px;
	margin-bottom: 20px;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.contact-modal p {
	padding: 0 7px !important;
	font-size: 13px !important;
	line-height: 1.9;
	letter-spacing: 0.06em;
	text-align: justify !important;
}

.contact-modal p br { display: none; }

.contact-modal .dl-line {
	margin: 35px 0 0;
}

.contact-modal .dl-line > div { position: relative; padding: 20px 2px 30px 48px; }
.contact-modal .dl-line > div:last-child { border-bottom: none; }

.contact-modal .dl-line > div > dt {
	position: absolute;
	top: 24px;
	left: 8px;
	width: 13px;
	min-width: inherit;
	padding-right: 0;
	font-size: 13px;
	line-height: 1;
	letter-spacing: 0.13em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.contact-modal .dl-line > div > dt br { display: none; }

.contact-modal .list-dot li {
	margin-bottom: 6px;
	padding-left: 14px;
	font-size: 12px;
	letter-spacing: 0.08em;
}

.contact-modal .list-num li {
	margin-bottom: 14px;
	padding-left: 20px;
	text-align: justify;
}

.contact-modal .list-dot li:last-of-type,
.contact-modal .list-num li:last-of-type {
	margin-bottom: 0;
}

.contact-modal .btn-wrap {
	width: 100% !important;
	margin: 0 !important
}

.contact-modal .btn-submit {
	margin: 0 auto;
}

.contact-modal .btn-submit.contact-modal-close {
	display: block;
	position: inherit;
	top: inherit;
	right: inherit;
	margin-top: 12px;
}

.contact-modal .btn-submit.contact-modal-close a {
	background-color: #FFFFFF;
	border: 1px solid #DDDDDD;
	color: #282828;
	padding-top: 15px;
	padding-bottom: 15px;
	letter-spacing: 0.15em;
}


/* page agreement
---------------------------------------------------------------------------*/
.sec-agreement { padding: 0 8%; }
.sec-agreement > h2 { margin-bottom: 40px; }
.sec-agreement .dl-txt dd { padding-left: 0; }


/* page privacy
---------------------------------------------------------------------------*/
.sec-privacy { padding: 0 10%; }


/* page error
---------------------------------------------------------------------------*/
#errorContents .sec-lead {
	display: -webkit-box;
	-webkit-box-align: center;
	align-items: center;
	width: 100%;
	min-height: calc(100vh - 75px - 180px);
}
#errorContents .sec-lead .inner { width: 100%; }
#errorContents .sec-lead .title-page { margin-bottom: 35px; }
#errorContents .sec-lead .title-page h1 {	 font-size: 15px; letter-spacing: 0.16em; }
#errorContents .sec-lead p { padding: 0 10%; letter-spacing: 0.08em; text-align: justify; }
#errorContents .sec-lead p br { display: none; }