@charset "utf-8";

/* ***************************************************************************************************
	BASE, COMMON, TEMPLATE
*************************************************************************************************** */



/* ***************************************************************************************************
	＜完売処理＞一括非表示
*************************************************************************************************** */
/*
 *	ページ下部の注釈は適宜表示/非表示の調整を。
 */
/*.tk_hNav .mapNav,
.tk_hNav .reqNav,
.tk_hNav .resNav,
.pageThemeWrap .tkConceptWrap,
.pageThemeWrap .pt-information ~ .pageTheme,
.bottomContentsWrap {
	display: none !important;
}*/



/* ***************************************************************************************************
	PAGE
*************************************************************************************************** */

/* firstContentsWrap
------------------------------------------------------------------------ */
	.firstContentsWrap {
	}
	
/* mainVisualWrap
---------------------------------------------------- */
	.mainVisualWrap {
		 background: #f9f9f9;
	}
	.mainVisualBox {
		width: 100%;
		max-width: 1350px;
		margin: 0 auto;
	}

/* meritWrap
---------------------------------------------------- */
	.meritWrap {
		background:#0d1125;
	}
	.meritWrap ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
		max-width: 1350px;
		margin: 0 auto;
	}
	.meritWrap li {
		background: -webkit-linear-gradient(left, #0d1125 0%, #1a224a 50%, #0d1125 100% );
		background: linear-gradient(to right, #0d1125 0%, #1a224a 50%, #0d1125 100% );
		/*background: #161616;*/
	}
	
/* for SPTB */
@media screen and (max-width: 1049px) { /*{belowTB}*/
	.meritWrap {
		padding: 3px;
	}
	.meritWrap ul {
		align-items: stretch;
		border: 1px solid #746f57;
	}
	.meritWrap li {
		width: 100%;
		text-align: center;
		padding: 15px 0;
	}
	.meritWrap li img {
		width: 96%;
	}
}
@media screen and (max-width: 599px) { /*{belowSP}*/
	.meritWrap ul {
		padding: 0 0;
	}
	.meritWrap ul li {
		padding: 10px 4%;
	}
	.meritWrap li:nth-of-type(n+2) {
		border-top: 1px solid rgba(210,200,151,0.3);
	}
	.meritWrap li:nth-of-type(4) {
		padding: 12px 4%;
	}
	.meritWrap li img {
		max-width: 300px;
	}
}
@media screen and (min-width: 600px) and (max-width: 1049px) { /*{TB}*/
	/* 2カラムの場合 | 不要な時は目隠しにする */
	/*
	.meritWrap li {
		width: 48%;
		margin: 0 1%;
	}
	.meritWrap li:nth-of-type(n+3) {
		border-top: 1px solid rgba(210,200,151,0.3);
	}
	.meritWrap li img {
		max-width: 300px;
	}
	*/
	
	/* 2カラムで1つ目が幅MAXの場合 | 不要な時は目隠しにする */
	.meritWrap li {
		position: relative;
		width: 49%;
		margin: 0 0;
 	}
	.meritWrap li:nth-of-type(1) {
		/*width: 100%;
		border-bottom: 1px solid rgba(210,200,151,0.3);*/
	}
	.meritWrap li:nth-of-type(1n)::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: -2.25%;
		width: 0;
		height: calc(100% - (15px * 2));
		margin: auto;
		border-right: 1px solid rgba(210,200,151,0.3);
		z-index: 10;
	}
	.meritWrap li:nth-of-type(n+2) {
		border-top: 1px solid rgba(210,200,151,0.3);
	}
	.meritWrap li img {
		max-width: 400px;
	}
	/*.meritWrap li:nth-of-type(1) img {
		width: 48%;
	}*/
}
/* for PC */
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.meritWrap ul {
		align-items: center;
		padding: 0px 0;
	}
	.meritWrap li {
		margin: 0 0;
		padding: 20px 1% 25px;
		border-right: 1px solid rgba(210,200,151,0.3);
		width: calc(25% * 1);
	}
	/*.meritWrap li:nth-of-type(1) { width: calc(25.6% * 1.1); }
	.meritWrap li:nth-of-type(2) { width: calc(25.6% * 1.1); }
	.meritWrap li:nth-of-type(3) { width: calc(25.6%  * 1.1); }*/
	/*.meritWrap li:nth-of-type(4) { width: 18.75%; }*/
}




/* ========================================================================
	pageThemeWrap
======================================================================== */
/* pageTheme
---------------------------------------------------- */
	.pageTheme {
		position: relative;
		z-index: 0;
		overflow: hidden;
		padding: 40px 0;
	}
	.pageTheme::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: auto;
		left: 0;
		right: 0;
		z-index: -1;
		line-height: 1.15;
		font-family: 'Great Vibes', cursive, serif;
		font-size: 22vw;
		text-align: center;
		letter-spacing: 0;
		margin: auto;
	}
	/* -- Individual -- */
	.pageTheme:nth-child(2n+1) {
		background: #eae9e7;
	}
	.pageTheme:nth-child(2n) {
		background: #fcf7ee;
	}
	.pageTheme:nth-child(2n+1)::before {
		color: rgba(194,192,188,0.09);
	}
	.pageTheme:nth-child(2n)::before {
		color: rgba(237,220,187,0.14);
	}
@media print, screen and (min-width: 340px) { /*{overSPl}*/
	.pageTheme {
		padding: 60px 0;
	}
	.pageTheme::before {
		font-size: 160px;
	}
}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.pageTheme {
		padding: 100px 0;
	}
	.pageTheme::before {
		font-size: 230px;
	}
}

/* ptTitle
---------------------------------------------------- */
	.ptTitle {
		display: block;
		line-height: 1.4;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		font-size: 1.625em;
		text-align: center;
		letter-spacing: 0.15em;
	}
	.ptTitle .ttl {
		display: inline-block;
		padding: 0 0.05em 0.25em;
		border-bottom: 2px solid #000;
	}

/* ptCaptionWrap
---------------------------------------------------- */
	.ptCaptionWrap {
		margin-top: 15px;
	}
	.ptCaptionWrap .container {
		background: transparent;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.ptCaptionWrap {
		margin-top: 20px;
	}
}



/* -------------------------------------------------------------------
	pt-information
------------------------------------------------------------------- */
	.pt-information {
		background: #fff !important;
		padding: 40px 0 0 !important;
	}
	.pt-information::before {
		content: "";
		display: none;
	}
	.pt-information .ptHeading {
		line-height: 1.1;
		color: #473a22;
		font-family: 'Crimson Text', serif;
		text-align: center;
		margin: 20px auto 10px;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.pt-information .ptHeading {
		margin-top: 40px;
		margin-bottom: 15px;
	}
}

/* informationWrap
---------------------------------------------------- */
	.informationWrap {
		padding: 0;
	}
	
/* noticeWrap関連 | default.cssの基本設定に対する書き換え・追記
--------------------------------- */
	.noticeWrap .noticetxt {
		position: relative;
		padding: 30px 2%;
	}
	.noticeWrap .noticetxt:not(:first-child)::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: auto;
		left: 0;
		right: 0;
		width: 96%;
		max-width: 800px;	/* feeling. */
		height: 0;
		margin: auto;
		border-top: 1px dotted #aaa;
	}
	.noticeWrap .noticetxt.noLine::before {
		display: none;
	}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.noticeWrap .noticetxt {
		padding: 40px 20px;
	}
}
/* shortSeparateHr
----------------------- */
	.shortSeparateHr {
		display: block;
		width: 60px;
		height: 1px;
		color: #666;
		background: #666;
		margin: 1.15em auto;
		padding: 0;
		border: none;
	}

/* infoCovidSimple
---------------------------------------------------- */
	.noticeWrap .infoCovidSimple a {
		display: block;
		width: 100%;
		max-width: 800px;
		line-height: 1.75;
		color: #333;
		font-size: 1.5rem;
		letter-spacing: 0.06em;
		background: #fff;
		margin: 1em auto;
		padding: 2em;
		border: 1px solid #666;
		transition: background 0.3s ease, border 0.3s ease;
	}
	.noticeWrap .infoCovidSimple__ttl {
		line-height: 1.4;
		color: #aa141d;
		font-size: 2rem;
		margin-bottom: 1.75rem;
	}
	.noticeWrap .infoCovidSimple__desc {
		display: block;
		font-family: 'Noto Sans JP', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', sans-serif;
		text-align: left;
	}
	.noticeWrap .infoCovidSimple a em {
		color: #aa141d;
	}
	.noticeWrap .infoCovidSimple a small {
		display: block;
		color: inherit;
		font-size: 0.9em;
		text-align: center;
		margin-top: 1.5rem;
		transition: color 0.3s ease 0.1s;
	}
	/* hover */
	.noticeWrap .infoCovidSimple a:hover {
		background: #fcfcfc;
		border: 1px solid #ccc;
	}
	.noticeWrap .infoCovidSimple a:hover small {
		color: #aa141d;
	}


/*noticeBtn*/
	.noticeWrap p.noticeBtn:not(:first-of-type) {
		margin-top:1em;
	
	}


/* infoCovid
---------------------------------------------------- */
	/*.noticeWrap .infoCovid {
		width: 100%;
		max-width: 690px;
		color: #262626;
		font-family: 'Noto Sans JP', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', sans-serif;
		font-size: 1.45rem;
		margin: 1em auto;
	}
	.noticeWrap .infoCovid__ttl {
		font-size: 1.5em;
		margin-bottom: 1.5em;
	}
	.noticeWrap .infoCovid__ttl ~ * {
		margin-top: 1.5em;
	}
	.noticeWrap .infoCovid__desc {
		text-align: left;
		letter-spacing: 0.06em;
	}
	.noticeWrap .infoCovid__desc > p {
		line-height: 2;
	}
	.noticeWrap .infoCovid__desc > ul {
		list-style: disc;
		line-height: 1.7;
		margin-top: 1.25em;
		margin-left: 1.5em;
	}
	.noticeWrap .infoCovid__desc > ul > li {
		padding: 0.85em 0;
	}
	.noticeWrap .infoCovid__desc > ul > li > ul {
		padding: 0.65em 0 0.65em 1em;
	}
	.noticeWrap .infoCovid__desc > ul > li > ul > li {
		padding: 0.3em 0;
	}
	.noticeWrap .infoCovid__desc .txtL {
		display: block;
		line-height: 1.5;
		font-size: 1.35em;
		text-align: center;
		letter-spacing: 0.04em;
		padding: 0.35em 0;
	}
	.noticeWrap .infoCovid__desc strong {
		color: #000;
		font-weight: bold;
	}
	.noticeWrap .infoCovid__desc a:hover {
		text-decoration: underline;
	}
	.noticeWrap .infoCovid__desc .underline {
		text-decoration: underline;
	}
	.noticeWrap .infoCovid__update {
		text-align: right;
	}
@media screen and (max-width: 850px) {
	.noticeWrap .infoCovid {
		margin: 1.5em auto;
	}
	.noticeWrap .infoCovid br:not(.SP) {
		display: none;
	}
}
@media screen and (max-width: 599px) {
	.noticeWrap .infoCovid {
		font-size: 1.35rem;
	}
	.noticeWrap .infoCovid__ttl {
		font-size: 1.3em;
	}
	.noticeWrap .infoCovid__desc {
		letter-spacing: 0.04em;
	}
	.noticeWrap .infoCovid__desc .txtL {
		font-size: 1.225em;
	}
}*/


/*preventionWrap*/
	.preventionWrap {
		max-width:1200px;
		background: #fff;
		border-radius:5px;
}






/* noticeBtn.musashi
---------------------------------------------------- */
	.noticeWrap .noticeBtn.musashi a {
		line-height: 1.425;
		background: #000;
	}
@media screen and (max-width: 599px) { /*{belowSP}*/
	.noticeWrap .noticeBtn.musashi {
		font-size: calc(2rem + ((1vw - 5.99px) * 1.7921)); /* 15-20px */
	}
}
/* =================================
	@KEYFRAMES
================================= */
/* 光（ループ） */
	.noticeWrap .noticeBtn.musashi a {
		position: relative;
		overflow: hidden;
	}
	.noticeWrap .noticeBtn.musashi a::after {
		content: ""; display: block; position: absolute; top: 0; left: 0; z-index: 0; width: 200%; height: 110%;
		background: linear-gradient(-75deg, rgba(255,255,255,0) 10%, rgba(95,118,234,0.45) 50%, rgba(255,255,255,0) 90%);
		transform: translateX(-100%) skewX(-45deg);
		animation: 4.5s ease 0s infinite both anime_musashiBtn;
		color: rgba(95,118,234,1.00)
	}
	.noticeWrap .noticeBtn.musashi a > span.txt {
		position: relative;
		z-index: 1;
	}
	.noticeWrap .noticeBtn.musashi a > span.icoArr {
		z-index: 2;
	}
@keyframes anime_musashiBtn {
	0% {		transform: translateX(-100%) skewX(-45deg);}
	75%,100% {	transform: translateX(100%) skewX(-45deg);}
}




/*.housePjWrap
---------------------------------------------------- */

	.housePjWrap {
		max-width:760px;
		margin:0 auto 60px;
		border:1px solid #9a7d44;
	}
	.housePjWrap dl dt {
		padding-bottom:1em;
	}
	.housePjWrap dl dd {
		text-align: center;
	}
	.housePjWrap .housePjTxtUnit {
		display: inline-block;
	}
	.housePjWrap .housePjTxtUnit p{
		padding-bottom:15px;
	}
	
	.housePjWrap dl dd:nth-of-type(2) p {
		padding-top:20px;
		border-top:1px solid #666;
	}
	.housePjWrap .housePjTxtUnit em{
		font-weight: 600;
		color:#aa141d;
	}
	
@media screen and (max-width: 599px) { /*{belowSP}*/
	.housePjWrap {
		margin:0 auto 40px;
	}
}

	


/* -------------------------------------------------------------------
	pt-tkConcept
------------------------------------------------------------------- */
/* tkConceptWrap
---------------------------------------------------- */
	.tkConceptWrap {
		background: #f9f9f9;
		margin-top: 30px;
	}
	.tkConceptWrap .container {
		background: transparent;
	}
	.tkConceptWrap .container .container {
		background: #FFF;
	}
	.tkConceptBox {
		padding: 40px 0;
	}
	.tkConceptBn {
		display: block;
		width: 95%;
		max-width: 1000px;
		background: transparent;
		margin: 0 auto;
		padding: 0;
		border: 0;
	}
	.tkConceptBn.active {
		opacity: 0.6;
	}
	.tkConceptBn_caption {
		display: block;
		width: 95%;
		max-width: 1000px;
		color: #444;
		font-size: 1.2rem;
		text-align: right;
		margin: 0.75em auto 0;
	}
	.tkConceptUnit {
																		/*display: none;*/
		padding: 40px 0 0;
	}
	.tkConceptUnit.active {
		display: block;
		animation: tk_fadeIn__0_1 .4s ease; /* tkConceptUnitスライドトグル_アニメーション設定 */
	}
/*	.tkConceptUnit .heading {
		font-size: 1.3em;
		margin-bottom: 1em;
		padding: 0.25em 0;
		border-bottom: 1px solid #000;
	}*/
.tkConceptUnit h4 {
	font-size: 1.2em;
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
	background: url("../img/index/bg_unitttl.png") top left no-repeat;
	padding: 2rem 3rem;
}
.tkConceptUnit h4 strong {
	display: inline-block;
	font-style: italic;
	color: #8f7408;
	font-size: 2.0em;
	padding-right: 0.5em;
}
.tkConceptUnit h4 em {
	color: #8f7408;
	font-size: 1.2em;
}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	/*.tkConceptUnit .heading {
		font-size: 1.5em;
	}*/
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.tkConceptBox {
		padding: 60px 0;
	}
}

/* nreTkIntroductionWrap
--------------------------------- */
	.nreTkIntroductionWrap {
		width: 100%;
		max-width: 600px; /* feeling. */
		margin: 0 auto;
		text-align: center;
	}
	.nreTkIntroductionWrap img {
		width: 100%;
		/*max-width: 560px;*/ /* feeling. */
		margin: 0 auto;
	}
	.nreTkIntroductionWrap [class*="unit"] {
		background: #fff;
		margin-top: 6vw;
		padding: 3vw;
		border: 1px solid rgba(0,0,0,0.05);
		box-shadow: 3px 3px 0 0 rgba(0,0,0,0.05);
	}
	/* -- Individual -- */
	/*.nreTkIntroductionWrap .unit01 {
		background: #000;
	}*/
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.nreTkIntroductionWrap [class*="unit"] {
		margin-top: 3.5vw;
		padding: 2vw;
		box-shadow: 5px 5px 0 0 rgba(0,0,0,0.05);
	}
}
@media print, screen and (min-width: 800px) { /*{overTBl}*/
	.nreTkIntroductionWrap,
	.nreTkIntroductionWrap img {
		max-width: none;
	}
	/* -- Individual -- */
	/*.nreTkIntroductionWrap .unit01 {
		background: #fff;
	}*/
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.nreTkIntroductionWrap [class*="unit"] {
		margin-top: 20px;
		padding: 19px;
	}
}
	
/* tkConceptUnit_portalBn
------------------------------------------------------------------------ */
	.tkConceptUnit_portalBn .container {
		background: transparent !important;
	}
	.tkConceptUnit_portalBn .bnBox {
		padding: 0 !important;
	}
	.tkConceptUnit_portalBn .bn {
		display: block;
		width: 90%;
		max-width: 1000px;
		background: transparent;
		margin: 0 auto;
		padding: 0;
		border: 0;
	}
	.tkConceptUnit_portalBn .bn img {
		width: 100%;
		max-width: none;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.tkConceptUnit_portalBn .container {
		margin-top: 20px;
	}
}


/* pointBox
------------------------------------------------------------------------ */
	.tkConceptWrap .fp-tableCell {
		background: #fbfcfc url("../img/index/c04_bg_01@pc.jpg") center center / cover no-repeat;
		padding: 20px;
	}
	.tkConceptWrap .pointBox {
		width: 100%;
		background: rgba(255,255,255,0.5) !important;
		margin: 0 auto;
		padding: 5vh 7.5vw 3vh;
		box-shadow: 0 0 0 5px #aaa07f inset, 0 0 0 6px #fff inset, 0 0 0 7px #aaa07f inset;
	}
	
	.tkConceptWrap .pointTtl {
		line-height: 1.3;
		color: #8e700c;
		font-size: calc((98 / 1900) * 100 * 1vw);
		text-align: center;
		letter-spacing: 0.07em;
	}
	.tkConceptWrap .pointTtl::after {
		content: "";
		display: block;
		width: 1.7em;
		height: 2px;
		margin: 0.85em auto 0.65em;
		background: #aaa07f;
	}
	
	.tkConceptWrap .pointList {
		line-height: 1.45;
		color: #333;
		font-size: calc((74 / 1900) * 100 * 1vw);
		text-align: justify;
		text-justify: inter-ideograph; /* for IE */
	}
	.tkConceptWrap .pointList li {
		position: relative;
		padding: 0.5em 0;
	}
	.tkConceptWrap .pointList a {
		display: block;
		padding: 0.4em 0;
	}
	.tkConceptWrap .pointList .head {
		font-family: 'Crimson Text', serif;
	}
	.tkConceptWrap .pointList .head .num {
		line-height: 0.8;
		font-size: 1.5769em;
		margin-left: -0.03em;
	}
	.tkConceptWrap .pointList .label {
		letter-spacing: 0.07em;
	}
	.tkConceptWrap .pointList .label em {
		color: #a78206;
	}
	.tkConceptWrap .pointList .label br {
		display: inline;
	}
	
	/* hover */
	.DEVICEPC .tkConceptWrap .pointList a {
		transition: background 0.3s ease;
	}
	.DEVICEPC .tkConceptWrap .pointList a:hover,
	.DEVICEPC .tkConceptWrap .pointList a:focus {
		background: rgba(192,174,117,0.2);
	}

/* ////////// SP表示 ////////// */
@media screen and (max-width: 899px) { /*{MinorBreakpoint}*/
	.tkConceptWrap .pointList li {
		border-top: 1px dotted rgba(170,160,127,0.9);
	}
	.tkConceptWrap .pointList .head {
		display: block;
		text-align: center;
		margin-bottom: 0.3em;
	}
	.tkConceptWrap .pointList .label {
		display: block;
		text-align: center;
	}
}
@media screen and (min-width: 600px) and (max-width: 899px) { /*{MinorBreakpoint}*/
	.tkConceptWrap .pointBox {
		width: 100%;
		padding: 8vh 5vw 5vh;
	}
	.tkConceptWrap .pointTtl {
		font-size: calc((62 / 1900) * 100 * 1vw);
	}
	.tkConceptWrap .pointList {
		font-size: calc((45 / 1900) * 100 * 1vw);
		text-align: center;
		text-justify: none; /* for IE */
	}
	.tkConceptWrap .pointList li {
		text-align: center;
	}
	.tkConceptWrap .pointList a {
		padding: 1em 0;
	}
}

/* ////////// PC表示 ////////// */
@media print, screen and (min-width: 900px) { /*{MinorBreakpoint}*/
	.tkConceptWrap .pointBox {
		width: 94%;
		padding: 10vh 5vw;
		box-shadow: 0 0 0 10px #aaa07f inset, 0 0 0 12px #fff inset, 0 0 0 14px #aaa07f inset;
	}
	.tkConceptWrap .pointTtl {
		font-size: calc((50 / 1900) * 100 * 1vw);
	}
	.tkConceptWrap .pointTtl::after {
		content: "";
		display: block;
		width: 1.7em;
		height: 2px;
		margin: 0.85em auto 0.65em;
		background: #aaa07f;
	}
	.tkConceptWrap .pointList {
		font-size: calc((33 / 1900) * 100 * 1vw);
	}
	.tkConceptWrap .pointList li {
		position: relative;
		padding: 0.2em 0;
	}
	.tkConceptWrap .pointList li::before,
	.tkConceptWrap .pointList li::after {
		content: "";
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: repeating-linear-gradient(90deg, #333 0, #333 1px, transparent 1px, transparent 4px);
	}
	.tkConceptWrap .pointList li::before { bottom: 1px; left: -1px; }
	
	.tkConceptWrap .pointList a {
		position: relative;
		padding: 0.4em 1.6em 0.4em 0.4em;
	}
	.tkConceptWrap .pointList a::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0.4em;
		width: 0.9em;
		height: 0.7em;
		background: url("../img/index/ico_arr_01_b.png") right center / contain no-repeat;
		margin: auto;
	}
	.tkConceptWrap .pointList .label::before {
		display: inline-block;
		content: "‐";
		margin: 0 0.75em;
	}
	.tkConceptWrap .pointList .label br {
		display: none;
	}
	
	/* hover */
	.DEVICEPC .tkConceptWrap .pointList a::after {
		transition: bottom 0.3s ease;
	}
	.DEVICEPC .tkConceptWrap .pointList a:hover::after,
	.DEVICEPC .tkConceptWrap .pointList a:focus::after {
		bottom: -0.4em;
	}
}
@media screen and (min-width: 1320px) { /*{overPCl}*/
	.tkConceptWrap .pointBox {
		width: 75%;
		padding: 13vh 6.5vw;
	}
	.tkConceptWrap .pointTtl {
		font-size: 30px;
	}
	.tkConceptWrap .pointList {
		font-size: 16px;
	}
}




/* -------------------------------------------------------------------
	pt-pers
------------------------------------------------------------------- */

/* -------------------------------------------------------------------
	pt-plan
------------------------------------------------------------------- */
	.pt-plan::before {
		content: "Plan";
	}
	
/* floorPlanSection
---------------------------------------------------- */
/* floorPlanUnit
--------------------------------- */
	/* specWrap
	----------------------- */
	.floorPlanUnit .specWrap {
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		padding: 1px 0;
		border: 0 solid #161616;
		border-width: 1px 0;
	}
	.floorPlanUnit .specWrap .spec-type,
	.floorPlanUnit .specWrap .spec-ldk .ldkUnit,
	.floorPlanUnit .specWrap .spec-area .value {
		font-family: 'Crimson Text', serif;
	}
	.floorPlanUnit .specWrap .spec-ldk .element.ja b {
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
	}
	/* spec1 */
	.floorPlanUnit .specWrap .spec1 {
		line-height: 1.3;
		color: #d2c897;
		font-size: 2.1875em;
		text-align: center;
		background: #161616;
		padding: 0.35em 0.2em;
	}
	.floorPlanUnit .specWrap .spec-type {
		font-size: 1em;
	}
	.floorPlanUnit .specWrap .spec-type .num {
		line-height: 0.7;
		font-size: 1.714em;
	}
	/* spec2 */
	.floorPlanUnit .specWrap .spec2 {
		color: #161616;
	}
	.floorPlanUnit .specWrap .spec-ldk {
		line-height: 1.15;
		text-align: center;
		padding: 1em 0;
	}
	.floorPlanUnit .specWrap .spec-ldk .ldkUnit {
		font-size: 2.1em;
	}
	.floorPlanUnit .specWrap .spec-ldk .roomElement {
		display: inline-block;
	}
	.floorPlanUnit .specWrap .spec-ldk .roomElement .num {
		line-height: 0.7;
		font-size: 1.6em;
	}
	.floorPlanUnit .specWrap .spec-ldk .element {
		display: inline-block;
	}
	.floorPlanUnit .specWrap .spec-ldk .element b {
		padding: 0 0.05em;
	}
	.floorPlanUnit .specWrap .spec-ldk .element.ja b {
		font-size: 0.775em;
	}
	.floorPlanUnit .specWrap .spec-ldk .element .num {
		line-height: 0.9;
		font-size: 1.12em;
	}
	.floorPlanUnit .specWrap .spec-area {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		line-height: 1.15;
		font-size: 0.925em;
		padding: 1em 0;
		border-top: 1px solid #161616;
	}
	.floorPlanUnit .specWrap .spec-area [class*="Unit"] {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: baseline;
		width: 20em; /* feeling. */
		margin: 0 0.35em;
		padding: 0.5em 0;
	}
	.floorPlanUnit .specWrap .spec-area [class*="Unit"] .term {
		flex: 0 5em;
	}
	.floorPlanUnit .specWrap .spec-area [class*="Unit"] .desc {
		flex: 1;
	}
	.floorPlanUnit .specWrap .spec-area [class*="Unit"] .capDesc {
		flex: 0 100%;
		/*padding: 0.3em 0;*/
		padding: 0.3em 0 0;
	}
	.floorPlanUnit .specWrap .spec-area [class*="Unit"] .capDesc small {
		color: #555;
		font-size: 1rem;
	}
	.floorPlanUnit .specWrap .spec-area .value {
		line-height: 0.8;
		font-size: 2.375em;
	}
	.floorPlanUnit .specWrap .spec-area .heibei {
		font-size: 1.375em;
	}
	.floorPlanUnit .specWrap .spec-area .tsubo {
		display: inline-block;
		margin: 0 -0.4em;
	}
	.floorPlanUnit .specWrap .spec-etc {
		line-height: 1.35;
		font-size: 0.925em;
		text-align: center;
		padding: 0 0 1em;
	}
	.floorPlanUnit .specWrap .spec-etc .floorDetailUnit {
		display: inline-block;
		text-align: left;
	}
	.floorPlanUnit .specWrap .spec-etc .unitItem {
		display: inline-block;
		margin: 0.2em 0;
	}
	.floorPlanUnit .specWrap .spec-etc .unitItem::before {
		content: "□";
		display: inline-block;
		margin-right: 0.15em;
	}
	.floorPlanUnit .specWrap .spec-etc .unitItem:nth-of-type(1) {
		display: block;
	}
	.floorPlanUnit .specWrap .spec-etc .unitItem:nth-of-type(2) {
		margin-right: 0.5em;
	}
	/* -- Individual -- */
	.floorPlanUnit .specWrap .spec-ldk .serviceRoom {
		font-weight: 500;
		letter-spacing: -0.025em;
	}
	
	/* planPicWrap
	----------------------- */
	.floorPlanUnit .planPicWrap {
		text-align: center;
		margin: 30px auto 0;
	}

	/* planCapWrap
	----------------------- */
	.floorPlanUnit .planCapWrap {
		max-width: 750px; /* feeling. */
		margin: 0 auto;
		margin-top: 20px;
		padding: 0 1em;
		border: 1px solid #ddd;
	}
	
@media screen and (max-width: 599px) { /*{belowSP}*/
	.floorPlanUnit .specWrap .spec-ldk .roomElement {
		display: block;
	}
}
@media print, screen and (min-width: 340px) { /*{overSPl}*/
	.floorPlanUnit .specWrap .spec-area {
		font-size: 1em;
	}
}
@media screen and (min-width: 600px) and (max-width: 1049px) { /*{TB}*/
	.floorPlanUnit .specWrap {
		font-size: 0.9em;
	}
	.floorPlanUnit .planPicWrap {
		margin-top: 40px;
	}
	.floorPlanUnit .planCapWrap {
		margin-top: 30px;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.floorPlanUnit .specWrap {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.floorPlanUnit .specWrap .spec1 {
		flex: 0 250px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.floorPlanUnit .specWrap .spec2 {
		flex: 1;
		padding: 0.75em 0 0.65em 1.75em;
	}
	.floorPlanUnit .specWrap .spec-ldk,
	.floorPlanUnit .specWrap .spec-area {
		text-align: left;
		padding: 0.1em 0;
	}
	.floorPlanUnit .specWrap .spec-ldk .ldkUnit {
		font-size: 2.4375em;
	}
	.floorPlanUnit .specWrap .spec-ldk .num {
		font-size: 1.4615em;
	}
	.floorPlanUnit .specWrap .spec-area {
		justify-content: flex-start;
		border-top: none;
	}
	.floorPlanUnit .specWrap .spec-area [class*="Unit"] {
		margin: 0;
		padding: 0.25em 0;
	}
	.floorPlanUnit .specWrap .spec-area .lotUnit {
		width: 19em; /* 微調整 */
		margin-right: 0.75em;
	}
	.floorPlanUnit .specWrap .spec-etc {
		text-align: left;
		padding: 0.7em 0 0;
	}
	.floorPlanUnit .specWrap .spec-etc .floorDetailUnit {
		margin-right: 0.5em;
		display: inline;
	}
	.floorPlanUnit .specWrap .spec-etc .unitItem,
	.floorPlanUnit .specWrap .spec-etc .unitItem:nth-of-type(1) {
		margin-right: 0.7em;
		display: inline;
	}
	.floorPlanUnit .planPicWrap {
		margin-top: 60px;
	}
	.floorPlanUnit .planCapWrap {
		margin-top: 40px;
	}
}

/* divisionWrap
--------------------------------- */
	.divisionWrap .divisionPic {
		max-width: 720px;
		margin: 0 auto;
	}

/* floorPlanPointUnit
--------------------------------- */
	.floorPlanPointUnit {
		padding-top: 1em;
	}
	.floorPlanPointUnit .ttl {
		line-height: 1.35;
		color: #9a7d44;
		font-family: 'Great Vibes', cursive, serif;
		font-size: 1.75em;
		margin: 0 0 -0.5em 1em;
	}
	.floorPlanPointUnit .pointList {
		padding: 1.15em;
		border: 1px solid #9a7d44;
		border-radius: 10px;
	}
	.floorPlanPointUnit .pointList li {
		line-height: 1.6;
		color: #222;
		font-size: 0.9em;
		text-indent: -1.275em;
		margin: 1em 0;
		padding-left: 1.275em;
	}
	.floorPlanPointUnit .pointList li::before {
		content: "■";
		color: #9a7d44;
		margin-right: 0.25em;
	}
@media screen and (max-width: 599px) { /*{belowSP}*/
	.floorPlanPointUnit .ttl {
		display: none;
	}
}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.floorPlanPointUnit .pointList {
		padding: 30px;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.floorPlanPointUnit .pointList {
		padding: 30px 40px;
	}
}
	
/* planConceptSection
---------------------------------------------------- */
	.planConcept {
		padding-left: 3.5vw;
		padding-right: 3.5vw;
	}
@media print, screen and (min-width: 340px) { /*{overSPl}*/
	.planConcept {
		padding-left: 2.5vw;
		padding-right: 2.5vw;
	}
}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.planConcept {
		padding-left: 20px;
		padding-right: 20px;
	}
	.planConcept .unit04 {
		width: 100%;
		max-width: 600px;
		margin: 0 auto;
	}
}
@media print, screen and (min-width: 800px) { /*{(overTBl)}*/
	.planConcept {
		padding: 20px;
	}
	.planConcept .unit04 {
		max-width: none;
	}
}



/* -------------------------------------------------------------------
	pt-photo
------------------------------------------------------------------- */
	.pt-photo::before {
		content: "Photo";
	}

/* model01Wrap
---------------------------------------------------- */
/* sliderWrap_model01
------------------------------------
-	slick.js 関連との連動有。「slick-theme.css」「slick_setting.css」も要参照。
-	js_touchMoveAssist_model01 との連動有。後述。
--------------------------------- */
/* slick Reset
----------------------- */
	.sliderWrap_model01 .js_slickBox_model01 {
		margin-bottom: 5px;
	}
	.sliderWrap_model01 .slick-list {
		line-height: 0;
	}

/* Box
----------------------- */
	.js_slickBox_model01 small {
		display: block;
		line-height: 1.1;
	}
@media screen and (max-width: 599px) { /*{belowSP}*/
/* SPは画像拡大表示 | スクロール操作を除外するもの(幅が狭い画像)は個別に調整。 */
	.js_slickBox_model01 .sliderItemInner {
		display: flex;
		flex-direction: column-reverse;
		width: 100%;
		min-height: 1;
	}
	.js_slickBox_model01 .pic {
		overflow-x: scroll;
		-webkit-overflow-scrolling:touch;
	}
	.js_slickBox_model01 .pic img {
		width: 150%;
		max-width: none;
	}
	.js_slickBox_model01 small {
		color: #fff;
		font-family: 'Crimson Text', serif;
		font-size: 1.6em;
		text-align: center;
		background: #000;
		margin-bottom: 1px;
		padding: 0.4em 0.2em;
	}
	
	/* -- Individual -- */
	/* 幅が狭い画像（※後述の「js_touchMoveAssist_model01」にも設定有。） */
	.js_slickBox_model01 .slick-slide:nth-of-type(2) .pic,
	.js_slickBox_model01 .slick-slide:nth-of-type(3) .pic,
	.js_slickBox_model01 .slick-slide:nth-of-type(4) .pic,
	.js_slickBox_model01 .slick-slide:nth-of-type(5) .pic,
	.js_slickBox_model01 .slick-slide:nth-of-type(7) .pic {
		overflow-x: hidden;
	}
	.js_slickBox_model01 .slick-slide:nth-of-type(2) .pic img,
	.js_slickBox_model01 .slick-slide:nth-of-type(3) .pic img,
	.js_slickBox_model01 .slick-slide:nth-of-type(4) .pic img,
	.js_slickBox_model01 .slick-slide:nth-of-type(5) .pic img,
	.js_slickBox_model01 .slick-slide:nth-of-type(7) .pic img {
		margin-left: -25%;
		margin-right:-25%;
	}
}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.js_slickBox_model01 .sliderItemInner {
		position: relative;
	}
	.js_slickBox_model01 small {
		position: absolute;
		bottom: 0.1em;
		left: 0.5em;
		font-size: 4.875vw;
		color: #fff;
		font-family: 'Italianno', cursive, serif;
		text-align: left;
		letter-spacing: 0;
		text-shadow: 0 0 2px rgba(0,0,0,0.1), 0 0 5px rgba(0,0,0,0.15);
	}
	
	/* -- Individual -- */
	/* 黒文字 */
	/*.js_slickBox_model01 .slick-slide:nth-of-type(6) small {
		color: #000;
		text-shadow: 0 0 2px rgba(255,255,255,0.7), 0 0 3px rgba(255,255,255,0.25), 0 0 5px rgba(255,255,255,0.15);
	}*/
	/* 右寄せ */
	/*.js_slickBox_model01 .slick-slide:nth-of-type(2) small {
		left: auto;
		right: 0.5em;
		text-align: right;
	}*/
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.js_slickBox_model01 small {
		font-size: 5rem;
	}
}

/* Dots
----------------------- */
	.js_slickDots_model01 .slick-dots li {
		width: calc(25% - 0.5%);
		margin: 0.25%;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.js_slickDots_model01 .slick-dots li {
		width: calc(20% - 0.5%);
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.js_slickDots_model01 .slick-dots li {
		width: calc(12.5% - 0.5%);
	}
}

/* js_touchMoveAssist_model01
--------------------------------- */
@media screen and (max-width: 599px) { /*{belowSP}*/
	/* -- Individual -- */
	/* スクロールしない要素は除外 */
	.js_touchMoveAssist_model01 .slick-slide:nth-of-type(2) [class*="js_tMA_item_"],
	.js_touchMoveAssist_model01 .slick-slide:nth-of-type(3) [class*="js_tMA_item_"],
	.js_touchMoveAssist_model01 .slick-slide:nth-of-type(4) [class*="js_tMA_item_"],
	.js_touchMoveAssist_model01 .slick-slide:nth-of-type(5) [class*="js_tMA_item_"],
	.js_touchMoveAssist_model01 .slick-slide:nth-of-type(7) [class*="js_tMA_item_"] {
		display: none;
	}
	.js_touchMoveAssist_model01 .js_tMA_item_bg {
		width: 150%;
		height: 100%;
		background: rgba(0,0,0,0.5);
	}
}



/* -------------------------------------------------------------------
	pt-equipment
------------------------------------------------------------------- */
	.pt-equipment::before {
		content: "Equipment";
	}
	
/* equPhWrap
---------------------------------------------------- */
.big3Item {
	border: 3px double #a75955;
	margin-bottom: 15px;
}
	.equPhWrap {
	}
	.equPhBox {
	}
	.equPhBox dl {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		margin: -22px 0; /* 相殺 */
		overflow: hidden;
	}
	.equPhBox .phUnit {
		flex: 0 100%;
		display: flex;
		flex-wrap: wrap;
		margin: 22px 0;
	}
	.equPhBox .phUnit > * {
		flex: 1 100%;
	}
	.equPhBox .phUnit .name {
		line-height: 1.35;
		color: #9a7d44;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		font-size: 1.125em;
		text-align: left;
		padding: 0.75em 0;
	}
	.equPhBox .phUnit .pic {
		order: -1;
		position: relative;
	}
	.equPhBox .phUnit .txt {
		font-size: 0.875em;
	}
@media print, screen and (min-width: 450px) { /*{MinorBreakpoint}*/
	.equPhBox dl {
		margin: -20px -2.5%;
	}
	.equPhBox .phUnit {
		flex: 0 45%;
		margin: 20px 2.5%;
	}
}
@media print, screen and (min-width: 800px) { /*{(overTBl)}*/
	.equPhBox dl {
		margin-left:	-1.666%;
		margin-right:	-1.666%;
	}
	.equPhBox .phUnit {
		flex: 0 30%;
		margin-left:	1.666%;
		margin-right:	1.666%;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.equPhBox dl {
		margin-left:	-1.25%;
		margin-right:	-1.25%;
	}
	.equPhBox .phUnit {
		flex: 0 22.5%;
		margin-left:	1.25%;
		margin-right:	1.25%;
	}
}

/* firstSupport10Wrap
---------------------------------------------------- */
	.fs10Box {
		color: #222;
		background: url("../img/index/firstsupport_bg_01.png") left top / contain no-repeat,
					url("../img/index/firstsupport_bg_02.png") right bottom / contain no-repeat,
					linear-gradient(to right, #f8fafa 0%, rgba(255,255,255,0.82) 50%, #f8fafa 100%);
	}
	.fs10Box .fs10BoxHeader {
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		text-align: center;
	}
	.fs10Box .fs10BoxHeader .heading {
		line-height: 1.4;
		color: #003070;
		font-size: 1.19em;
	}
	.fs10Box .fs10BoxHeader .heading b {
		display: block;
		font-size: 1.375em;
		letter-spacing: -0.02em;
		margin: 0 -0.8em;
	}
	.fs10Box .fs10BoxHeader .leadTxt {
		letter-spacing: 0.03em;
		margin: 1em 0;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.fs10Box .fs10BoxHeader .heading {
		font-size: 1.3em;
	}
	.fs10Box .fs10BoxHeader .heading b {
		font-size: 1.45em;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.fs10Box .fs10BoxHeader .heading b {
		display: inline-block;
		line-height: 1;
		font-size: 1.6em;
		margin: 0 -0.35em;
	}
	.fs10Box .fs10BoxHeader .leadTxt {
		font-size: 1.11em;
	}
}
@media screen and (min-width: 1320px) { /*{overPCl}*/
	.fs10Box {
		padding: 50px 40px;
	}
	.fs10Box .fs10BoxHeader .heading {
		font-size: 1.875em;
	}
	.fs10Box .fs10BoxHeader .leadTxt {
		font-size: 1.125em;
	}
}

/* fs10List
--------------------------------- */
	.fs10Box .fs10List {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.fs10Box .fs10ListUnit {
		width: 100%;
		background: #fff;
		margin-top: 1.5em;
		border: 1px solid #003070;
	}
	.fs10Box .fs10ListUnit::after { /* clearfix */
		content: "";
		display: block;
		clear: both;
	}
	.fs10Box .fs10ListUnit .pic {
		width: 100%;
		overflow: hidden; /* for IE */
	}
	.fs10Box .fs10ListUnit .ttl {
		line-height: 1.3;
		color: #fff;
		font-size: 1.125em;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		text-align: center;
		background: #003070;
		padding: 0.5em;
	}
	.fs10Box .fs10ListUnit .txt {
		line-height: 1.5;
		font-size: 0.9375em;
		text-align: justify;
		text-justify: inter-ideograph; /* for IE */
		letter-spacing: 0.01em;
		padding: 1em;
	}
@media print, screen and (min-width: 450px) { /*{MinorBreakpoint}*/
	.fs10Box .fs10ListUnit {
		width: 48.333%;
	}
}
@media screen and (max-width: 1049px) { /*{belowTB}*/
	.fs10Box .fs10ListUnit {
		display: flex;
		flex-direction: column;
	}
	.fs10Box .fs10ListUnit > * {
		width: 100%;
	}
	.fs10Box .fs10ListUnit .pic {
		order: -1;
	}
}
@media print, screen and (min-width: 1050px) and (max-width: 1319px) { /*{PCs}*/
	.fs10Box .fs10ListUnit {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.fs10Box .fs10ListUnit .ttl {
		width: 100%;
	}
	.fs10Box .fs10ListUnit .pic {
		order: 1;
		width: 50%;
	}
	.fs10Box .fs10ListUnit .txt {
		width: 50%;
		font-size: 0.875em;
		padding: 0.8em;
	}
}
@media screen and (min-width: 1320px) { /*{overPCl}*/
	.fs10Box .fs10ListUnit .ttl {
		width: 50%;
		float: left;
		padding: 0.2em 0.5em 0.35em;
	}
	.fs10Box .fs10ListUnit .pic {
		width: 50%;
		max-width: 289px;
		float: right;
	}
	.fs10Box .fs10ListUnit .txt {
		width: 50%;
		float: left;
		font-size: 0.875em;
		padding: 0.8em;
	}
}

/* fs10Btn
--------------------------------- */
	.fs10Box .fs10Btn {
		margin-top: 2.5em;
	}
	.fs10Box .fs10Btn a {
		max-width: 580px;
		color: #333;
		font-size: 1.125em;
		background: linear-gradient(to right, #b6b6b8 10%, #f9f9f9 50%, #b6b6b8 90%);
		border: 1px solid #a4a4a6;
		box-shadow: 0 3px 5px 0 rgba(105,105,105,0.05);
	}
	.fs10Box .fs10Btn a .icoArr.tri::after {
		border-left-color: #333;
	}



/* -------------------------------------------------------------------
	pt-map
------------------------------------------------------------------- */
	.pt-map::before {
		content: "Map";
	}
	
/* gMapWrap
---------------------------------------------------- */
	.gMapWrap iframe {
		width: 100%;
		height: 600px;
		max-height: 85vh;
	}
	.gMapBtn {
		margin-top: 1.15em;
	}
@media screen and (max-width: 599px) and (orientation: portrait) { /*{MinorBreakpoint}*/
	.gMapWrap iframe {
		max-height: 60vh;
	}
}
	
/* lifeinfoWrap
---------------------------------------------------- */
.pt-lifeinfo::before {
		content: "Life";
	}
/* lifeinfoPhBox
--------------------------------- */
	.lifeinfoPhBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		/*margin-top: -1em; *//* 相殺 */
	}
	.lifeinfoPhBox .phUnit {
		flex: 0 48%;
		margin-top: 1em;
	}
	.lifeinfoPhBox .picBox {
		display: block;
	}
	.lifeinfoPhBox .txtBox {
		display: block;
		color: #444;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		font-size: 0.872em;
		text-align: center;
		padding: 0.5em 0;
	}
	.lifeinfoPhBox .txtBox .name {
		display: block;
		line-height: 1.3;
	}
	.lifeinfoPhBox .txtBox .dist {
		display: block;
		line-height: 1.4;
		font-size: 0.875em;
		margin: 0.2em -0.5em 0;
	}
	.lifeinfoPhBox .txtBox .kana {
		letter-spacing: -0.05em;
		margin-right: 0.04em;
	}
@media print, screen and (min-width: 800px) { /*{MinorBreakpoint} 適宜調整可 */
	.lifeinfoPhBox .phUnit {
		flex: 0 23.5%;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.lifeinfoPhBox .txtBox {
		font-size: 0.95em;
		padding: 0.65em 0;
	}
	.lifeinfoPhBox .phUnit {
		flex: 0 22.5%;
	}
}
	
/* lifeinfoListBox
--------------------------------- */
						/*.lifeinfoListBox dl { background: linen;}
						.lifeinfoListBox dt { background: gray;}
						.lifeinfoListBox dd { background: tan;}
						.lifeinfoListBox dd .name { background: skyblue;}
						.lifeinfoListBox dd .spec { background: pink;}
						.lifeinfoListBox dd .spec .dist { background: yellow;}
						.lifeinfoListBox dd .spec .time { background: orange;}
						*/
	
	.lifeinfoListBox {
		display: block;
		padding-top: 1em;
		margin-top: -3.25em; /* 相殺＋α */
	}
	.lifeinfoListBox-row {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		word-break: break-all;
	}
	.lifeinfoListBox dl {
		width: 100%;
		margin: 2.25em 0 0;
	}
	.lifeinfoListBox dt {
		line-height: 1;
		color: #9a7d44;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		font-size: 1.125em;
		text-align: left;
		margin-bottom: 0.15em;
		padding: 0.75em 0;
		border-bottom: 2px solid #9a7d44;
	}
	.lifeinfoListBox dd {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		/*align-items: flex-start;*/
		align-items: center;
		width: 100%;
		position: relative;
		line-height: 1.3;
		/*color: #fff;*/
		font-size: 0.9em;
		letter-spacing: normal;
		padding: 0.5em 0.1em 0.5em 12px;
		border-bottom: 1px solid #b2b2b2;
	}
	.lifeinfoListBox dd::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: auto;
		width: 0;
		height: calc(100% - (0.5em * 2) - 0.1em);
		margin: auto;
		border-left: 4px solid #9a7d44;
	}
	.lifeinfoListBox .name {
		flex: 1 auto;
		padding-right: 0.5em;
	}
	.lifeinfoListBox .spec {
		flex: 1 auto;
		display: flex;
		/*justify-content: space-between;*/
		justify-content: flex-end;
		align-items: flex-start;
		text-align: right;
		letter-spacing: 0.03em;
		padding-left: 0.5em;
	}
	.lifeinfoListBox .spec .time,
	.lifeinfoListBox .spec .dist {
		display: flex;
		/*justify-content: space-between;*/
	}
	.lifeinfoListBox .spec .separate {
		text-align: center;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.lifeinfoListBox dd {
		padding-top: 0.8em;
		padding-bottom: 0.8em;
	}
	.lifeinfoListBox dd::before {
		height: calc(100% - (0.8em * 2) - 0.1em);
	}
}
/* 2カラム */
@media print, screen and (min-width: 800px) { /*{(overTBl)}*/
	.lifeinfoListBox {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		margin-top: -3.5em; /* 相殺＋α */
	}
	.lifeinfoListBox-row {
		flex: 0 48.333%;
	}
	.lifeinfoListBox dl {
		margin: 2.5em 0 0;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.lifeinfoListBox dd {
		font-size: 1em;
	}
}
/* オプション：距離分数を二段組にする */
@media screen and (max-width: 419px) , screen and (min-width: 800px) and (max-width: 1049px) { /*{MinorBreakpoint} 複数指定 */
	.lifeinfoListBox dd {
		position: relative;
	}
	.lifeinfoListBox dd::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 6.5em;
		width: 0;
		height: calc(100% - 1em);
		margin: auto;
		border-right: 1px dashed #aaa;
	}
	.lifeinfoListBox .name {
		width: calc(100% - 6.5em);
		padding-right: 0.75em;
	}
	.lifeinfoListBox .spec {
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 6.5em;
		text-align: left;
		padding-left: 0.75em;
	}
	.lifeinfoListBox .spec .dist,
	.lifeinfoListBox .spec .time {
		width: 5.5em;
		margin: 0.03em 0;
	}
	.lifeinfoListBox .spec .time {
		color: #8e7139;
	}
	.lifeinfoListBox .spec .separate {
		display: none;
	}
}



/* -------------------------------------------------------------------
	pt-access
------------------------------------------------------------------- */
	.pt-access::before {
		content: "Access";
	}
	
/* trainRouteWrap
---------------------------------------------------- */
/* trainMapBox
--------------------------------- */
	.trainMapBox .routeMap {
		text-align: center;
	}
	
/* trainRouteBox
--------------------------------- */
	.trainRouteBox {
		padding-top: 0;
	}
	.trainRouteBox .ttlTxt{
		text-align: center;
		font-size: 1.4em;
		padding: 0.3em 0;
		background: #F7E5C3;
	}
@media screen and (max-width: 799px) { /*{(belowTBs)}*/
	.trainRouteBox .ttlTxt{
		font-size: 1.2em;
		line-height: 1.3;
	}
}
/* trainRouteList
----------------------- */
	.trainRouteList {
		display: flex;
		flex-wrap: wrap;
	}
	.trainRouteList li {
		flex: 0 100%;
	}
	.trainRouteList .routePic {
		display: block;
		line-height: 1;
		text-align: center;
	}
	.trainRouteList .routeMain {
		display: block;
	}
	.trainRouteList .routeMain::after {
		content: "";
		display: block;
		width: 100%;
		height: 1px;
		background: #000;
		margin: 0.5em auto;
	}
	.trainRouteList .routeDetails {
		display: block;
		width: 100%;
	}
	/* -- 文字設定 -- */
	.trainRouteList .routeMain {
		line-height: 1.38;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		text-align: center;
		letter-spacing: 0.02em;
		transition: letter-spacing 0.4s;
	}
	.trainRouteList .routeMain .nameKakko {
		font-size: 1.5263em;
		margin: 0 -0.45em;
	}
	.trainRouteList .routeMain .num {
		display: inline-block;
		line-height: 0.9;
		font-size: 1.7894em;
		margin: 0 0.06em;
	}	
	.trainRouteList .routeMain .direct {
		color:#9e2d5d;
	}
	.trainRouteList .routeMain .onCom {
		font-size: 0.7em;
		margin: 0 -0.5em 0 -0.4em;
	}
	.trainRouteList .routeMain .onComNum {
		line-height: 0.9;
		font-size: 1.1em;
	}
	.trainRouteList .routeDetails {
		line-height: 1.3;
		color: #222;
		font-size: 1.15rem;
		letter-spacing: 0.04em;
	}
	.trainRouteList .routeDetails .onComDetail {
		display: inline-block;
		/*text-align: center;*/
		margin: 0 -0.5em;
	}
	/* long */
	.trainRouteList .routeDetails.long {
		text-align: justify;
	}
	.trainRouteList .routeDetails.long .onComDetail,
	.trainRouteList .routeDetails.long .inbl {
		display: inline;
	}
@media screen and (max-width: 599px) { /*{belowSP}*/
	.trainRouteBox .ttlTxt{
		margin-bottom: 1em;

	}
	.trainRouteList li {
		padding: 1em 0.5em;
	}
	.trainRouteList li:nth-of-type(2n+1) {
		background: #f5f5f5;
	}
	.trainRouteList .routeMain {
		font-size: 1.05em;
	}
}
@media screen and (min-width: 340px) and (max-width: 599px) { /*{SPl}*/
	.trainRouteList .routeMain {
		font-size: 1.185em;
	}
}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.trainRouteList .routeMain::after {
		height: 2px;
	}
}
@media screen and (min-width: 600px) and (max-width: 1049px) { /*{TB}*/
	.trainRouteList li {
		flex: 0 47%;
		padding: 4.5% 0;
	}
	.trainRouteList li:not(:nth-of-type(2n+1)) {
		margin-left: 6%;
	}
	.trainRouteList .routeMain {
		font-size: 0.85em;
		font-size: 2.25vw;
	}
}
@media screen and (min-width: 800px) and (max-width: 1049px) { /*{(TBl)}*/
	.trainRouteList li {
		padding: 25px 0;
	}
	.trainRouteList .routeMain {
		font-size: 1.1em;
	}
	.trainRouteList .routeDetails {
		font-size: 1.2rem;
	}
}
@media print, screen and (min-width: 1050px) { /*{overPC}*/
	.trainRouteList li {
		flex: 0 31.5%;
		padding: 32px 0;
	}
	.trainRouteList li:not(:nth-of-type(3n+1)) {
		margin-left: 2.75%;
	}
	.trainRouteList .routeMain {
		font-size: 1.725rem;
	}
	.trainRouteList .routeDetails {
		font-size: 1.3rem;
	}
}
@media screen and (min-width: 1320px) { /*{overPCl}*/
	.trainRouteList li {
		flex: 0 30.83333%;
	}
	.trainRouteList li:not(:nth-of-type(3n+1)) {
		margin-left: 3.750005%;
	}
	.trainRouteList .routeMain {
		font-size: 1.9rem;
	}
	.trainRouteList .routeMain {
		letter-spacing: 0.08em;
	}
}





/* comingSoonWrap | (.containerWrap.comingSoonWrap)
------------------------------------------------------------------------ */
	.comingSoonUnit {
		text-align: center;
		padding: 2.2em 1.5em;
		border-radius: 10px;
		background: center center / 200% no-repeat;
	}
	.pageTheme:nth-child(2n+1) .comingSoonUnit {
		/*background: rgba(194,192,188,0.09);*/
		background-image: url("../img/index/comingsoon_bg_01.jpg");
	}
	.pageTheme:nth-child(2n) .comingSoonUnit {
		/*background: rgba(237,220,187,0.14);*/
		background-image: url("../img/index/comingsoon_bg_02.jpg");
	}
	.comingSoonTxt {
		display: inline-block;
		position: relative;
		line-height: 1.55;
		color: #444;
		font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif;
		font-size: 1.15em;
	}
	.comingSoonTxt .ico {
		display: inline-block;
		color: rgba(154,125,68,0.7);
		font-family: 'Crimson Text', serif;
		font-size: 0.85em;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.comingSoonUnit {
		background-size: cover;
	}
	.comingSoonTxt {
		font-size: 1.3em;
	}
	.comingSoonTxt .ico {
		font-size: 0.75em;
	}
}





/* bottomContentsWrap
------------------------------------------------------------------------ */
	.bottomContentsWrap {
		/*margin-top:60px;*/
		background: #eee;
	}
	
/* -------------------------------------------------------------------
	pt-tkPortalBnWrap
------------------------------------------------------------------- */
	.tkPortalBnWrap {
		padding: 20px 0;
	}
	.tkPortalBnWrap .container {
		background: transparent;
	}
	.tkPortalBnBox {
		padding: 40px 0;
	}
	.tkPortalBn {
		display: block;
		width: 95%;
		max-width: 1000px;
		background: transparent;
		margin: 0 auto;
		padding: 0;
		border: 0;
	}
	
	/* 追加設定 */
	.tkPortalBnBox header {
		width: 95%;
		max-width: 1000px;
		font-size: 1.1em;
		text-align: center;
		margin: 0 auto 2em;
	}
	.tkPortalBnBox header .heading {
		font-size: 1.2em;
	}
@media print, screen and (min-width: 370px) { /*{MinorBreakpoint}*/
	.tkPortalBnBox header .heading {
		font-size: 1.3em;
	}
}





/* bukkenCaptionWrap
------------------------------------------------------------------------ */
	.bukkenCaptionWrap {
		background: #fff;
		padding: 30px 0;
	}
@media print, screen and (min-width: 600px) { /*{overTB}*/
	.bukkenCaptionWrap {
		padding: 40px 0;
	}
}







/*------------------------------------------------------------------------
correctionWrap
------------------------------------------------------------------------ */
	.correctionWrap {
		width: 100%;
		max-width: 800px;
		margin: 0 auto 30px;
		padding: 0!important;
	}
	.correctionBox {
		line-height: 1.5;
		text-align: left;
		font-size: .85em;
		margin: 0 auto;
		padding: 30px;
		background-color: rgba(255,255,255,.5);
		border: 1px solid #eecdc0;
	}
	.correctionBox .ttl {
		display: inline-block;
		margin: auto -.5em;
	}
	.correctionBox .itemName {
		display: block;
		margin-top: .6em;
		margin-bottom: .05em;
	}
@media screen and (max-width: 1050px) { /*{belowTBs}*/
	.correctionBox {
		padding: 3%;
	}
}
@media screen and (max-width: 736px) { /*{SP}*/
	.correctionWrap {
		padding-top:	1em!important;
		padding-bottom:	1em!important;
	}
	.correctionBox {
		font-size: .9em;
		padding: 4%;
	}
}
