@charset "utf-8";
/* CSS Document */

/*===============================================
●共通
===============================================*/
#mainImage .imgWrap {
	position: relative;
}
#relaxationiWrap #mainImage .imgWrap {
	background: url("../../images/relaxation/laxis_body.jpg") no-repeat center center / cover;
}
#mainImage .imgWrap div {
	position: absolute;
	right: 3%;
	bottom: 7%;
}
#mainImage .imgWrap div p {
	color: #fff;
	font-size: 0.95em;
	letter-spacing: 0;
}
#firstWrap .textTitle {
	line-height: 2;
	text-align: center;
}
#firstWrap .textTitle > span {
	display: inline-block;
}

/* menuInfo
-----------------------------------------------*/
#menuInfo h2 {
	border-top: 1px #b9c3c9 solid;
	border-bottom: 1px #b9c3c9 solid;
	text-align: center;
}
.menuInner {
	padding: 0 5%;
}
.menuTableWrapper:not(:first-of-type) {
	margin-top: 5em;
}
.menuTableWrapper h3 {
	margin-bottom: calc(15 / 12 * 1em);
}
.menuTableWrapper table:not(:first-of-type) {
	margin-top: 1.5em;
}
.menuTableWrapper table th,
.menuTableWrapper table td {
	padding: 1em 0;
	line-height: 1.5;
}
.menuTableWrapper table th {
	width: 10em;
}
.menuTableWrapper table td {
	width: calc(100% - 10em);
}
.menuTableWrapper table td ul li:not(:first-of-type) {
	padding-top: 1em;
}
.menuTableWrapper table td a.pcNoCall {
	color: #778288;
}
.menuTableWrapper li {
	line-height: 1.75;
}
.menuTableWrapper dl {
	margin-top: 1.5em;
}
.menuTableWrapper dl dt {
	margin-bottom: 1em;
}
.menuTableWrapper dl dd p {
	letter-spacing: 0;
}
.menuTableWrapper dl dd p + p {
	margin-top: 1em;
}
.tableEnd {
	margin-top: 5.8em;
}
#relaxationiWrap #box03 .slideBox,
#relaxationiWrap #box03 .slideBox li {
	width: 100% !important;
}

/*===============================================
●画面の横幅が729px以下(スマホのみ)
===============================================*/
@media screen and (max-width: 769px) {

	#firstWrap .textTitle {
		font-size: 1.3em;
	}

	/* pageContents
	-----------------------------------------------*/
	#pageContents {
		padding: 0;
	}
	#pageContents section h2 {
		font-size: 1.4em;
		margin-bottom: 1em;
	}
	#pageContents section .img {
		text-align: center;
	}
	#pageContents section {
		padding-top: 8em;
	}
	#pageContents section:last-child {
		margin-bottom: 5.8em;
	}
	#pageContents section .textBox,
	#pageContents section .textBox02 {
		text-align: center;
	}
	#pageContents section h3 {
		font-size: 1.15em;
		margin-bottom: 3em;
	}
	#pageContents section .conIntro {
		font-size: 1.15em;
		padding: 2.5em 2em 0;
		line-height: 2em;
		text-align: center;
	}

	/* menuInfo
	-----------------------------------------------*/
	#menuInfo {
		margin-bottom: 5.8em;
	}
	#menuInfo h2 {
		font-size: 1.3em;
		padding: 1em 0;
		margin-bottom: 3em;
	}
	#menuInfo section:first-child,
	#menuInfo table {
		margin-bottom: 5em;
	}

	#menuInfo ul {
		margin: 0 auto;
	}
	#menuInfo table th {
		width: 20%;
		min-width: 70px;
	}
	#menuInfo table td {
		padding-left: 1em;
	}
	#relaxationiWrap #menuInfo ul {
		margin-bottom: 2em;
	}
	#relaxationiWrap #menuInfo table {
		margin-bottom: 1.2em;
	}
	#relaxationiWrap #menuInfo table,
	#relaxationiWrap #menuInfo dl {
		font-size: 1.15em;
		line-height: 1.75;
	}
	.mimcLogo > img {
		width: 40%;
	}
	.menuTableWrapper h3 {
		font-size: 1.2em;
	}
	.tableEnd {
		font-size: 1.1em;
		margin-top: 5em;
		line-height: 1.75;
	}
}

/*===============================================
●画面の横幅が770px以上(PCのみ)
===============================================*/
@media screen and (min-width: 770px) {
	.flexBox {
		display: flex;
		justify-content: space-between;
	}
	#relaxationiWrap #pageContents section:not(:last-of-type),
	#kikukawaWrap #pageContents section:not(:last-child),
	#ishigakiWrap #pageContents section:not(:last-child) {
		margin-bottom: 15em;
	}

	#pageContents .slideBox {
		width: 100%;
	}
	#mainImage .imgWrap div p {
		font-size: 4rem;
	}
	#firstWrap .textTitle {
		font-size: 1.8em;
	}
	#firstWrap {
		margin-bottom: 7em;
	}
	/* pageContents
	-----------------------------------------------*/
	#pageContents {
		margin-bottom: 15em;
	}
	#pageContents .flexBox .textBox {
		width: 22%;
		text-align: center;
	}
	#pageContents .flexBox .img,
	#pageContents .conIntro {
		padding-top: 2.5em;
	}
	#pageContents .textBox h2 {
		font-size: 1.3em;
		margin: 3em 0 4em;
	}
	#pageContents .textBox h3 {
		line-height: 2.5em;
		-ms-writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		display: inline-block;
		text-align: justify;
		font-size: 1.2em;
		letter-spacing: 0.2em;
	}
	#pageContents #box01 .conIntro,
	#pageContents #box03 #cuisinesBox .conIntro {
		padding-right: 10%;
	}
	#pageContents section .conIntro {
		font-size: 1.2em;
		line-height: 2.5em;
	}

	/* box01 */
	#box01 .flexBox .img {
		text-align: right;
	}

	/* box02 */
	#box02 .flexBox {
		flex-direction: row-reverse;
	}
	#box02 .flexBox .img .conIntro {
		text-align: right;
	}

	/* box03 */
	#box03 .conIntro {
		margin-bottom: 2em;
	}

	/* menuInfo
	-----------------------------------------------*/
	#menuInfo {
		margin-bottom: 10em;
	}
	#menuInfo h2 {
		font-size: 1.5em;
		padding: 1em 0;
		margin-bottom: 8em;
	}
	.flexBox .img {
		width: 75%;
	}
	.mimcLogo > img {
		width: 105px;
	}
	#menuInfo table,
	#menuInfo dl {
		font-size: 1.2em;
	}

	/* pageContents */
	#pageContents .textBox h2 {
		letter-spacing: 0.2em;
	}
	.menuInner {
		width: 100%;
		max-width: 500px;
		padding: 0 10px;
		margin: 0 auto;
	}
	.menuTableWrapper:not(:first-of-type) {
		margin-top: 5em;
	}
	.menuTableWrapper h3 {
		font-size: 1.4em;
		margin-bottom: 1em;
	}
	.tableEnd {
		font-size: 1.15em;
		margin-top: 8em;
	}
}
