@charset "utf-8";
@import url("common.css");
@import url("layout.css");

/* CSS Document */

body{
}
#wrapper {
	position: relative;
	border-top: 3px solid #f66;
}

/*------ titleContainer
--------------------------------*/
#titleContainer {
  background-color: #FEE8E7;
  background-image: url(../img/common/contents_bg.jpg);
  background-repeat: repeat-x;         /* 横方向に繰り返し */
  background-position: center bottom;     /* 上中央に配置 */
  background-size: cover;          /* 高さ100%、横は自動調整 */
  margin: 0;
  height: 340px;
}
/*--topicpass--*/
#topicpass {
	line-height: 1;
	margin: 0 0 10px 0;
	padding-top: 10px;
}
#topicpass li {
	margin-right: 12px;
	display: inline-block;
}
#topicpass li:before {
	content: '/';
	margin-right: 9px;
}
#topicpass li:first-child:before {
	content: none;
}
#topicpass li a {
	text-decoration: underline;
}
/*--pagetitle--*/
#category-title {
  position: relative; /* オーバーレイを重ねるために必要 */
  height: 300px;
  display: flex;
  align-items: flex-end; /* タイトルを下寄せにする */
  box-sizing: border-box;
  padding-bottom: 0px;
}
#category-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.4) 100%
  );
  pointer-events: none; /* クリック操作を邪魔しない */
}
/* グラデーションオーバーレイ */
/* タイトルテキスト */
#category-title h2 {
  position: relative; /* グラデーションの上に表示するため */
  font-family: var(--font-min);
  font-size: 42px;
  color: #232323;
  padding: 20px 20px 60px 20px;
  margin: 0 0 0 0; /* 下に余白を追加 */
  z-index: 1; /* グラデーションより上に表示 */
  width: 650px;
  position: relative;
  
    text-shadow:
    0 0 2px #fff,
    0 0 4px #fff,
    0 0 6px #fff;
	background: linear-gradient(
		to right,
		rgba(255, 255, 255, 1) 0%,
		rgba(255, 255, 255, 1) 80%,
		rgba(255, 255, 255, 0) 100%
		);
}
#category-title h2::after {
	content: "";
	position: absolute;
	bottom: 40px;
	left: -20px;
	height: 4px;
	width: 600px;
	background: var(--main-bg-color);
}


/*------ mainContainer
--------------------------------*/
#mainContainer {
	padding-top: 30px;
}

[id*="sec"]:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

/*--title--*/
.page-title-wrap {

	.page-title {
		font-family: var(--font-min);
		font-size: 36px;
		padding-bottom: 5px;
		margin-bottom: 10px;
		border-bottom: 1px solid var(--main-bg-color);
	}
}

.titleB {
	color: #ff3d3d;
	font-size: 30px;
	margin-bottom: 20px;
	padding-left: 5px;
	background: url(../img/common/titleB_bg.gif) no-repeat 0 bottom;
}
.titleC {
	color: #ff2626;
	font-size: 18px;
	font-weight: bold;
	line-height: 52px;
	height: 52px;
	margin-bottom: 10px;
	padding-left: 5px;
	background: url(../img/common/titleC_bg.gif) no-repeat 0 bottom;
}
.titleE {
	color: #f66;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 20px;
	border-bottom: 1px solid #999;
}
.secTitle {
	color: var(--main-bg-color);
	font-size: 28
	px;
	font-weight: bold;
	margin-bottom: 10px;
	font-family: var(--font-min);
}

/*--catLink--*/
.catLink.btm {
	margin-bottom: 0px !important;
	margin-top: 15px !important;
	margin-right: 0px;
	margin-left: 0px;
}
.catLink {
	margin-bottom: 20px;
}
.catLink p {
	margin-bottom: 20px;
}
.catLink ul {
	margin-right: -20px;
	overflow: hidden;
}
.catLink li {
	text-align: center;
	line-height: 50px;
	width: 226px;
	height: 50px;
	margin: 0 20px 10px 0;
	float: left;
	background: url(../img/common/subMenu_bg_off.gif) no-repeat 0 0;
}
.catLink li.current {
	background: url(../img/common/subMenu_bg_current.gif) no-repeat 0 0;
}
.catLink li:hover {
	background: url(../img/common/subMenu_bg_on.gif) no-repeat 0 0;
}
.catLink li a {
	color: #ff2929;
	font-size: 15px;
	font-weight: bold;
	display: block;
	line-height: 50px;
}

/*--List--*/
ul.listA {
	border-top: 1px dotted #ccc;
}
ul.listA li {
	display: flex;
	flex-direction: row;
}
ul.listA li div.item {
	width: 10em;
}
ul.listA li div.text {
	width: calc(100% - 12em);
}


/*--------- sabmenu
--------------------------------*/
.chapNav.end {
	padding-top: 80px;
}
.chapNav ul {
	margin: 10px 0px 50px 0;
	overflow: hidden;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 20px 40px ;
	flex-wrap: wrap;
}
.cate-musashino .chapNav li {
	width: 144px;
}
.chapNav li.S {
	width: 137px;
}
.chapNav li.L {
	width: 158px;
}
.chapNav.btm ul {
	margin: 40px -0 30px 0;
}
	.chapNav.btm ul li {
	}

.sp-accordion {
  width: 100%;
  font-size: 16px;
}

.accordion-btn {
  display: none;
}


.accordion-content {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
  background: #fff;
}

.accordion-content li a {
  display: block;
  padding: 12px 14px;
  color: #333;
  text-decoration: none;
  border-bottom: 1px solid #CCC;
}
.accordion-content li a::before {
	content: "» ";
	color: var(--main-bg-color);
}
.accordion-content li a span {
  color: #888;
  margin-right: 5px;
}

.accordion-content li.current a {
  background: #ffe9e9;
  color: #c00;
}

.accordion-content li a:hover {
  background: #f9f9f9;
}

/*------ 0200 musashino
--------------------------------*/


#musashino [id*="sec"] dt,
#facility [id*="sec"] dt,
#sizzler [id*="sec"] dt,
#spot [id*="sec"] dt,
#access [id*="sec"] dt,
#rocation [id*="sec"] dt {
	color: #f66;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
}
#musashino [id*="sec"] dd p,
#facility [id*="sec"] dd p,
#sizzler [id*="sec"] dd p,
#spot [id*="sec"] dd p,
#access [id*="sec"] dd p,
#rocation [id*="sec"] dd p {
	margin-bottom: 10px;
}
#musashino #sec01 {
	text-align: left;
	background: url(../img/musashino/musashino_chap01_item01.jpg) no-repeat 0 0;
	background-position:  left calc(50% - 500px) center;

	.inner {
		box-sizing: border-box;
		padding-left: 500px;
		min-height: 400px;
		padding-right: 40px;
	}

}

#musashino #sec01 dl {
	width: 100%;
	padding: 50px 0 0 0px;
}

#musashino #sec02 {
	text-align: left;
	background: url(../img/musashino/musashino_chap01_item02.jpg) no-repeat 0 0;
	background-position:  right calc(50% - 400px) center;

	.inner {
		box-sizing: border-box;
		padding-right: 500px;
		min-height: 400px;
		padding-left: 40px;
	}
}
#musashino #sec02 dl {
	padding-top: 52px;
}

#musashino #sec03 {
	text-align: left;
	background: url(../img/musashino/musashino_chap01_item03.png) no-repeat 0 0;
	background-size: auto 90% ;
	background-position:  right calc(50% + 300px ) center;
	background-color: var(--back-color01);

	.inner {
		box-sizing: border-box;
		padding-left: 600px;
		min-height: 400px;
		padding-right: 40px;
	}

}
#musashino #sec03 dl {
	padding: 50px 0 0 0;
}

#musashino #sec04 {
	text-align: left;
	background: url(../img/musashino/musashino_chap01_item04.jpg) no-repeat 0 0;
	background-position:  right calc(50% - 400px) center;

	.inner {
		box-sizing: border-box;
		padding-right: 500px;
		min-height: 450px;
		padding-left: 140px;
	align-items: center;
	display: flex;
	}
}
#musashino #sec04 dl {
	padding-top: 50px;
}

#facility {

	#sec01 {
		text-align: left;
		background: url(../img/musashino/musashino_chap02_item01.jpg) no-repeat 0 0;
		background-position:  right calc(50% + 500px) center;
		background-size: auto 80%;

		.inner {
			box-sizing: border-box;
			padding-left: 500px;
			min-height: 400px;
			padding-right: 40px;
			display: flex;
			justify-content: center;
			align-items: center ;
		}
	}
	#sec01 dl {
	}

	#sec02 {
		text-align: left;

		.inner {
			box-sizing: border-box;
			padding-right: 550px;
			min-height: 400px;
			padding-left: 80px;
			display: flex;
			justify-content: space-between;
			align-items: center;
			flex-direction: row;
			gap: 40px;
		}
		ul {
			display: flex;
			flex-direction: row;
		}
	}
	#sec02 dl {
	}

	#sec03 {
		margin-top: 20px;
		text-align: left;
		background: url(../img/musashino/musashino_chap02_item03.jpg) no-repeat 0 0;
		background-size: auto 90% ;
		background-position:  right calc(50% + 300px ) center;

		.inner {
			box-sizing: border-box;
			padding-left: 700px;
			min-height: 400px;
			padding-right: 40px;
			justify-content: center;
			align-items: center;
			display: flex;
		}

	}
	#sec03 dl {
	}

	#sec04 {
		text-align: left;
		background: url(../img/musashino/musashino_chap02_item04.jpg) no-repeat 0 0;
		background-position:  right calc(50% - 400px) center;

		.inner {
			box-sizing: border-box;
			padding-right: 500px;
			min-height: 450px;
			padding-left: 140px;
		align-items: center;
		display: flex;
		}
	}
}

#sizzler {

	#sec01 {
		text-align: left;
		background: url(../img/musashino/musashino_chap03_item01.jpg) no-repeat 0 0;
		background-position:  right calc(50% + 400px) center;
		background-size: auto 80%;

		.inner {
			box-sizing: border-box;
			padding-left: 500px;
			min-height: 400px;
			padding-right: 40px;
			display: flex;
			justify-content: center;
			align-items: center ;
		}
	}
	#sec01 dl {
	}

	#sec02 {
		text-align: left;
		background: url(../img/musashino/musashino_chap03_item02.png) no-repeat 0 0;
		background-position:  right calc(50% - 400px) center;
		background-color: var(--back-color01);

		.inner {
			box-sizing: border-box;
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 20px;
			padding: 40px 0 ;

		}
		ul {
			display: flex;
			flex-direction: row;
			gap: 10px;
		}
		dl {
			width: 600px;
		}
	}
	#sec02 dl {
	}

	#sec03 {
		margin-top: 60px;
		text-align: left;
		background-size: auto 90% ;

		h3 {
			font-size: 32px;
			font-family: var(--font-min);
			margin-bottom: 20px;
			color: var(--main-bg-color);
			font-weight: 600;
		}

		.inner {
			box-sizing: border-box;
			padding-left: 40px;
			padding-right: 40px;
		}
		dl {
			display: flex;
			flex-direction: row;
			gap: 20px;
			flex-direction: row-reverse;
		}
		dt {
			width: 450px;
		}
		dd{
			width: calc(100% - 450px - 20px);
		}
		dt img {
			width: 100%;
			height: auto;
		}

	}
	#sec03 dl {
	}

}

#spot {

	#sec01 {
		text-align: left;
		background: url(../img/musashino/musashino_chap04_item01.jpg) no-repeat 0 0;
		background-position:  right calc(50% + 500px) center;
		background-size: auto 100%;

		.inner {
			box-sizing: border-box;
			padding-left: 400px;
			min-height: 400px;
			padding-right: 120px;
			display: flex;
			justify-content: center;
			align-items: center ;
		}
	}
	#sec01 dl {
	}

	#sec02 {
		text-align: left;
		background: url(../img/musashino/musashino_chap04_item02.jpg) no-repeat 0 0;
		background-position:  right calc(50% - 400px) center;

		.inner {
			box-sizing: border-box;
			min-height: 520px;
			padding-right: 580px;
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 20px;

		}
		ul {
			display: flex;
			flex-direction: row;
			gap: 10px;
		}
		dl {
		}
	}
	#sec02 dl {
	}

	#sec03 {
		margin-top: 20px;
		text-align: left;
		background-size: auto 90% ;

		.inner {
			box-sizing: border-box;
			padding-right: 40px;
			min-height: 400px;
			padding-left: 40px;
		}
		.row{
			width: 100%;
			display: flex;
			flex-direction: row;
			gap: 40px;
			box-sizing: border-box;
			margin-bottom: 40px;
		}
		.row dl {
			width: calc(50% - 20px);
		}
		.box dl.wide {
			display: flex;
			width: 100%;
			flex-direction: column;

			dd {
				display: flex;
				flex-direction: row;
			gap: 20px;
			}
		}

	}

}

#access {

	#sec01 {
		text-align: left;
		background: url(../img/musashino/musashino_chap05_item03.jpg) no-repeat 0 0;
		background-position:  right calc(50% + 400px) center;
		background-size: auto 100%;

		.inner {
			box-sizing: border-box;
			padding-left: 500px;
			min-height: 400px;
			padding-right: 40px;
			display: flex;
			justify-content: center;
			align-items: center ;
		}
	}
	#sec01 dl {
	}

	#sec02 {
		text-align: left;
		.inner {
			box-sizing: border-box;
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 20px;
			padding: 40px 20px ;

		}
		ul {
			display: flex;
			flex-direction: row;
			gap: 20px;
		}
		ul li {
			width: calc(36% - 33px);
		}
		ul li img {
			width: 100% ;
			height: auto;
		}
		dl {
		}
	}
	#sec02 dl {
	}

	#sec03 {
		margin-top: 60px;
		text-align: left;

		.inner {
			box-sizing: border-box;
			padding-left: 40px;
			padding-right: 40px;
		}
		dl {
			display: flex;
			flex-direction: column;
			gap: 20px;
		}
		dt {
		}
		dd{
			width: 100%;
			position: relative;
		}
		dd img {
			width: auto;
			height: auto;
			position: relative;
			max-width: 100%;
		}
		dd p {
			position: absolute;
			bottom: 0px;
			left: 20%
		}

	}
	#sec03 dl {
	}

}

#rocation {

	#sec01 {
		text-align: left;
		background: url(../img/musashino/musashino_chap06_item01_2025.webp) no-repeat 0 0;
		background-position:  left calc(50% + 450px) center;
		background-size: auto 100%;

		.inner {
			box-sizing: border-box;
			padding-right: 500px;
			min-height: 400px;
			padding-left: 40px;
			display: flex;
			align-items: center;
		}
	}
	#sec01 dl {
	}

	#sec02 {
		text-align: left;

		.inner {
			box-sizing: border-box;
			padding-right: 40px;
			min-height: 400px;
			padding-left: 40px;
			display: flex;
			flex-direction: row;
			gap: 40px;
			flex-wrap: wrap;
		}
		dl {
			width: calc(50% - 20px);
		}
	}
	#sec02 dl {
	}

	#sec03 {
		margin-top: 20px;
		text-align: left;
		background: url(../img/musashino/musashino_chap02_item03.jpg) no-repeat 0 0;
		background-size: auto 90% ;
		background-position:  right calc(50% + 300px ) center;

		.inner {
			box-sizing: border-box;
			padding-left: 700px;
			min-height: 400px;
			padding-right: 40px;
			justify-content: center;
			align-items: center;
			display: flex;
		}

	}
	#sec03 dl {
	}

	#sec04 {
		text-align: left;
		background: url(../img/musashino/musashino_chap02_item04.jpg) no-repeat 0 0;
		background-position:  right calc(50% - 400px) center;

		.inner {
			box-sizing: border-box;
			padding-right: 500px;
			min-height: 450px;
			padding-left: 140px;
		align-items: center;
		display: flex;
		}
	}
}



/*------ 0300 about
--------------------------------*/


#about .phBlock {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	position: relative;
	gap: 24px;
}
#about .phBlock dl {
	width: calc((100% - ( 24px * 3 )) / 4 )
}
#about .phBlock.column3 dl {
	width: calc((100% - ( 24px * 2 )) / 3 )
}
#about .phBlock dt {
	margin-bottom: 2px;
}
	#about .phBlock dt img {
		width: 100%;
		height: auto;
	}
#about .phBlock dd {
	padding-top: 5px;
}
	#about .phBlock h3 , #about .subT02 h3 {
		font-size: 18px;
		font-weight: 600;
		margin-bottom: 5px;
	}
#about .phBlock dd p strong {
	color: #f66;
}
#about .subT01  {
	margin-bottom: 5px;

	h3 {
		font-weight: 600;
	}
}


#about .sec_02 {
	background: var(--back-color01);
}

#about .div-row {
	.contents_alpha {
		width: 66.66%;
		display: flex;
		flex-direction: column;

		.phBlock  {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;

			 dl {
				width: calc(50% - 24px);
			 }
		}
	}
	.contents_beta {
		width: 33.33%
		display: flex;
		flex-direction: column;

		.phBlock  {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;

			 dl {
				width: calc(60% - 16px);
			 }
		}
	}
}



#outline #sec01 .div-row  {

	.div-alpha {
		width: calc( 40% );

		img {
			width: 100%;
			height: auto;
		}
	}
	.div-beta {
		width: calc(60% - 40px );
	}
	ul.listA {
		margin-top: 40px;

		li {
			padding: 1em 0 ;
			border-bottom: 1px dotted #ccc;
		}
	}
}
#outline #sec02 .div-row  {

	.div-alpha {
		width: calc(50% - 20px );
	}
	.div-beta {
		width: calc(50% - 20px );
	}
	ul.listA {
		margin-top: 10px;

		li {
			padding: 1em 0 ;
			border-bottom: 1px dotted #ccc;
		}
	}
}
#outline #sec02 {
	margin-top: 20px;
}
#outline #sec02 ul {
	margin-top: 10px;
}
#outline .history h4 {
	font-weight: 600;
	margin-bottom: 10px;
	font-size: 20px;
}
#outline .history ul li {
	display: flex;
	flex-flow: row;
	list-style-type: none;
	margin-bottom: 5px;
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px dotted #ccc;
}
#outline .history li div.text {
	width: calc(100% - 7em);
}
#outline .history li div.item {
	width: 6em;
}

#map .access dl {
	width: calc(50% - 20px);
}
#map .access dl dt {
	font-weight:600;
	border-bottom: 1px solid #ccc;
	padding-bottom: 5px;
	margin-bottom: 5px;
	font-size: 20px;
}
#map .access_2 .div-alpha {
		width: calc(50% - 20px);

		li {
			line-height: 1.5;
		}
}
#map #sec02 dl#train li {
	margin-bottom: 5px;
	padding-bottom: 15px;
	background: url(../img/common/arwPnk_B.gif) no-repeat 5px bottom;
}
#map #sec02 dl#car p.route {
	color:var(--main-bg-color);
	font-weight: bold;
	margin-bottom: 5px;
}
#map #sec02 dl#car ul {
	margin-bottom: 15px;
}
#map #sec02 dl#car li {
	display: inline;
	padding-right: 18px;
	margin-right: 3px;
	background: url(../img/common/arwPnk_R.gif) no-repeat right 4px;
}
#map #sec02 dl#train li:last-child,
#map #sec02 dl#car li:last-child {
	background: none;
}
#map #sec03 dt {
	font-weight: bold;
	line-height: 25px;
	height: 25px;
	margin: 30px 0 7px;
	padding-left: 7px;
	background: #e1e1e1;
}
#map #sec03 dt:first-child {
	margin-top: 10px;
}
#map #sec03 dd {
	margin-bottom: 10px;
	padding-bottom: 10px;
	overflow: hidden;
	border-bottom: 1px dotted #999;
	display: flex;
	flex-direction: row;
}
#map #sec03 dd > div:nth-of-type(2) {
	width: calc(100% - 10em);
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;

	span.ic {
		width: 5em;
	}
	span:not([class*="ic"]) {
		width: calc(100% - 6em);
		box-sizing: border-box;
		padding-left: 0em;
		font-weight: 300;
	}
}
#map #sec03 dd div.univ {
	width: 10em;
}
#map #sec03 dd div span {
}

#map #sec03 dd div span.ic {
	color: #fff;
	text-align: center;
	margin-right: 10px;
}
#map #sec03 dd div span.bcl {
	background: #f69;
}
#map #sec03 dd div span.tra {
	background: #69f;
}
#map #sec03 dd div span.bus {
	background: #cc0;
}
#map #sec03 b {
	font-weight: normal;
	white-space: nowrap;
}

#data [id*="sec"] p {
	margin-bottom: 20px;
}
#data [id*="sec"] dt {
	color: var(--main-bg-color);
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
	border-bottom: 1px solid #ccc;
}
#data [id*="sec"] dd {
}
#data [id*="sec"] dd ul {
	margin: 0 -25px 40px 0;
	overflow: hidden;
	position: relative;
}
#data [id*="sec"] dd > ul > li {
	width: calc(25% - 30px );
	margin-right: 20px;
	display: inline-block;
	vertical-align: top;
}
#data [id*="sec"] dd ul li ul {
	margin: 0;
}
#data [id*="sec"] dd ul li ul li {
}
#data #sec01 {
	margin-bottom: 50px;
}
#data #sec02 dd ul li .area {
	color: #ff2828;
	font-weight: bold;
	line-height: 21px;
	height: 21px;
	margin-bottom: 5px;
	padding-left: 5px;
	background: #e4e4e4;
}
#data #sec02 dd ul li.wide {
	width: 472px;
}
#data #sec02 dd ul li.wide ul {
	width: 230px;
	display: inline-block;
	vertical-align: top;
}
#data #sec02 dd ul li.wide ul li {
	width: auto;
	margin-right: 0;
	display: block;
}
/*
#data #sec02 dd ul li.wide {
	width: 472px;
}
#data #sec02 dd ul li.wide ul {
	width: 234px;
	display: inline-block;
	vertical-align: top;
}
*/

/*------ 0400 room
--------------------------------*/
.roomNav ul {
	margin: 0 0 25px 7px;
	overflow: hidden;
}
.roomNav ul li {
	margin-right: 20px;
	float: left;
}
.roomNav ul li.Atype{
	width: 135px;
	margin-right: 6px;
}
.roomNav ul li.Btype{
	width: 164px;
}
.roomNav ul li.Ctype{
	width: 134px;
}
.roomNav ul li.DEtype{
	width: 157px;
}
.roomNav ul li a:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

#room #pagetitle {
	background: url(../img/room/room_title_bg.png) no-repeat right 0;
}
#room .titleB {
	background: url(../img/common/titleB_bg.png) no-repeat 0 bottom;
}
#room .titleB img {
	margin-right: 45px;
}
#room .titleB span {
	color: #000;
	font-size: 13px;
	font-weight: bold;
}
#room .room-name {
	font-family: var(--font-eng);
	margin-bottom: 0px;
	padding-top: 0px;
	color: var(--main-bg-color);

	span.main {
		font-size: 200px;
	}
	span.sab {
		font-size: 100px;
	}
}
#room #sec01 {
	padding-bottom: 40px;

	.madori {
		width: 50%;
		display: flex;
		justify-content: center;
		position: relative;
	}
}
	#room #sec01 img.draw {
		position: absolute;
		margin: auto;
		bottom: 0px;
	}
	#room #sec01.typeB img.draw {
		position: absolute;
		left: -10px;
		bottom: 78px;
	}
	#room #sec01.typeC img.draw {
		position: absolute;
		left: 40px;
		bottom: 0;
	}
	#room #sec01.typeDE img.draw {
		position: absolute;
		left: 0;
		bottom: 30px;
	}

#room #sec01 {
	margin-bottom: 10px;
	position: relative;
	background: url(../img/room/roomA_item02_new.jpg) no-repeat ;
	background-position: right calc(50% + 300px) top;
}
#room #sec01.typeB {
	background: url(../img/room/roomB_item02_new.jpg) no-repeat ;
	background-position: right calc(50% + 300px) top;
}
#room #sec01.typeC {
	background: url(../img/room/roomC_item02_new.jpg) no-repeat ;
	background-position: right calc(50% + 300px) top;
}
#room #sec01.typeDE {
	background: url(../img/room/roomDE_item02.jpg) no-repeat ;
	background-position: right calc(50% + 300px) top;
}
#room #sec01 .secInn {
	padding-left: 55%;
}
#room #sec01 .room-main dl {
	margin-bottom: 40px;
}
#room #sec01 dt {
	color: #f66;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
}
#room #sec01 dt img {
	margin-bottom: 5px;
}
#room #sec01 dd {
	font-size: 15px;
	line-height: 1.8;
	display: block;
}
#room #sec01 ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 20px;
}
#room #sec01 li {
	width: calc(33.33% - 20px);
	height: auto;
	position: relative;
}
#room #sec01 li img {
	width: 100%;
	height: auto;
}
#room #sec01 li img.zoom {
	position: absolute;
	right: 5px;
	bottom: 10px;
	z-index: 10;
	width: 20px;
	height: auto;
}

#room #sec02 {
	background-color: var(--back-color01);
	padding: 40px 0 ;
}
#room #sec02  {
	margin-bottom: 20px;
}
#room #sec02 dl {
	width: calc(50% - 20px);
}
#room #sec02 dt {
	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid #ccc;
}
#room #sec02 dd {
	margin-bottom: 30px;
}
#room #sec02 dd ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	overflow: hidden;
	row-gap: 5px;
}
#room #sec02 dd li {
	width: calc(50% - 30px);
	display: flex;
	flex-direction: row;
}
#room #sec02 dd li.mid {
}
#room #sec02 dd li.wide {
	width: 100%;
}
#room #sec02 dd li span {
}
#room #sec02 dd li span.item {
    font-weight: 400;
    text-align: center;
    width: 4em !important;
    margin-right: 10px !important;
    padding-left: 5px;
    color: #fff;
    background: var(--main-bg-color);
}
#room #sec02 dd li.wide span {
	margin-right: 0;
}

/*------ 0500 faq
--------------------------------*/
#faq #pagetitle {
}
#faq #faqWrap dl {
	line-height: 1.7;
	margin-bottom: 10px;
	padding-bottom: 15px;
	overflow: hidden;
	border-bottom: 1px dotted #ffdcdc;
	display: flex;
	flex-direction: row;
	gap: 40px;
}
#faq #faqWrap dt {
	color: var(--main-bg-color);
	width: calc(35% - 20px);
	min-height: 28px;
	padding: 10px 0 10px 0;
	font-weight: 600;
}
#faq #faqWrap dd {
	width: calc(65% - 20px);
	padding: 10px 0 10px 0;
}
#faq #faqWrap ul li {
	list-style: disc;
	margin-left: 1.5em;
}
#faq #faqWrap ol li {
	list-style: decimal;
	margin-left: 1.5em;
}

/*------ 0600 flow
--------------------------------*/
#flow #pagetitle,
#essential #pagetitle,
#contract #pagetitle {
	background: url(../img/flow/flow_title_bg.png) no-repeat right 0;
}
#flow .titleB,
#essential .titleB,
#contract .titleB {
	padding-bottom: 10px;
}
#flow #sec01 {
}
#flow .flowWrap dl {
	line-height: 1.7;
	margin-bottom: 10px;
	padding-bottom: 15px;
	overflow: hidden;
	border-bottom: 1px dotted #ffdcdc;
	display: flex;
	flex-direction: row;
	gap: 40px;
}
#flow .flowWrap dt {
	color: var(--main-bg-color);
	width: calc(25% - 20px);
	min-height: 28px;
	padding: 10px 5px 10px 0;
	font-weight: 600;
	display: flex;
	flex-direction: row;
	gap:5px;
	align-items: flex-start;
}
#flow .flowWrap dt span {
	background: var(--main-bg-color);
	color: #fff;
	border-radius: 20px;
	padding: 5px 20px;
	position: relative;
	margin-top: -5px;
}
#flow .flowWrap dd {
	width: calc(75% - 20px);
	padding: 10px 0 10px 0;
}
#flow #sec01 dd p {
	margin-bottom: 10px;
}

#essential ol li {
	list-style: decimal;
	margin: 0 0 10px 1.5em;
}
#essential #sec01,
#essential #sec02,
#contract #sec01 {
	margin: 0 -20px 50px 0;
}




#essential {

}
#essential .essentialWrap {
	.div-row {

		.column {
			width: calc(50% - 20px);
		}
	}
	.title-box , .column dt {
		background-color: var(--sab-bg-color2);
		padding: 10px;
	}
	.title-box , .column dd {
		padding-top: 5px;
		padding-bottom: 3em;
		line-height: 1.7 ;
	}

}


#contract #sec01 p {
	margin-bottom: 20px;
}

/*------ 0700 lifeinfo
--------------------------------*/
#lifeinfo #pagetitle {
	background: url(../img/lifeinfo/lifeinfo_title_bg.png) no-repeat right 0;
}
#lifeinfo .titleB {
	margin: 20px 0 10px;
	padding-bottom: 10px;
}
#lifeinfo .titleC {
	margin-bottom: 20px;
}
#lifeinfo .linkList {
	margin: 0 0;
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
	gap: 20px;
}
#lifeinfo .linkList li {
	width: calc(33.3333% - 15px);
	margin: 0 0 0 0;
	vertical-align: top;
}
#lifeinfo .linkList li a {
	font-weight: bold;
	text-decoration: underline;
	font-size: 18px;
}
#lifeinfo .linkList li a:hover {
	text-decoration: none;
}
#lifeinfo .linkList li span {
	margin-top: 5px;
	display: block;
}


/*------ 0800 privacy policy
--------------------------------*/
#privacy #pagetitle {
}
#privacy #sec01 p {
	margin-bottom: 30px;
}
#privacy #sec01 dl {
}
#privacy #sec01 dt {
	color: var(--main-bg-color);
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 5px;
}
#privacy #sec01 dd {
	margin-bottom: 30px;
}
#privacy #sec01 dd ol {
	margin: 5px 0 0 1.5em;
}
#privacy #sec01 dd li {
	margin-bottom: 5px;
	list-style: decimal;
}
#privacy #sec01 .right {
	margin-bottom: 10px;
}

/*------ 0900 contact
--------------------------------*/
#contact #pagetitle {
	background: url(../img/contact/contact_title_bg.png) no-repeat right 0;
}
#contact #sec01 {
	margin: 20px 0 60px;
}
#contact #mainContainer p {
	margin-bottom: 15px;
}
#contact .titleB {
	padding-bottom: 10px;
}
#contact #sec01 dl {
	width: 848px;
	margin-top: 20px;
	padding: 15px 10px 10px;
	position: relative;
	border: 1px dashed #f66;
}
#contact #sec01 dt {
	color: #ff2828;
	font-weight: bold;
	position: absolute;
	top: -10px;
	left: 10px;
	background: #fff;
}
#contact #sec02 {
	margin-bottom: 40px;
}
#contact #sec02 p img {
	margin-right: 30px;
}
#contact form dl {
	padding-left: 14px;
}
#contact form dt {
	width: 130px;
	min-height: 30px;
	margin-bottom: 10px;
	display: inline-block;
	vertical-align: top;
}

#contact form dd {
	width: 720px;
	min-height: 30px;
	margin-bottom: 15px;
	display: inline-block;
	vertical-align: top;
}
#contact form dt.icon{
	color: #fff;
	font-size: 12px;
	text-align: center;
	line-height: 28px;
	width: 50px;
	height: 28px;
	margin-right: 30px;
	padding: 0;
	display: inline-block;
	background: #39c;
}
#contact form dt.icon.must {
	background: #f66;
}
#contact form dd li {
	margin-bottom: 5px;
}
#contact form dd ul.line li {
	display: inline-block;
	margin-right: 20px;
}
#contact form dd label.ib {
	display: inline-block;
}
#contact strong {
	color: #c00;
}
#contact .titleApply {
	color: #ff2727;
	font-size: 16px;
	font-weight: bold;
	line-height: 30px;
	height: 30px;
	margin-bottom: 20px;
	padding-left: 12px;
	border-radius: 5px;
	background: #ffb2b2;
}
#contact.apply #pagetitle {
	background: url(../img/apply/apply_title_bg.png) no-repeat right 0;
}
#contact.apply dl {
	margin-bottom: 40px;
}
#contact.apply #ketteiForm,
#contact.apply #miteiForm {
	margin: 10px 0 30px;
}
#contact.apply #ketteiForm ol,
#contact.apply #miteiForm ol {
	margin-bottom: 20px;
}
#contact.apply #ketteiForm li,
#contact.apply #miteiForm li {
	margin-bottom: 10px;
}
#contact.apply #ketteiForm li span,
#contact.apply #miteiForm li span {
	width: 100px;
	float: left;
}
#contact.apply .radioList {
	overflow: hidden;
}
#contact.apply .radioList li {
	width: 92px;
	float: left;
}
#contact.apply .radioList li.title {
	font-weight: bold;
}

#contact.thanks #sec01 {
	margin: 100px 0 100px 100px;
}
#contact.thanks #sec01 p {
	line-height: 3;
}


/*------ 1000 sitemap
--------------------------------*/
#sitemap #pagetitle {
}
#sitemap #sec01 .sitemap-contents {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
#sitemap #sec01 ul {
	width: calc(50% - 20px);
}
#sitemap #sec01 ul.rt {
}

#sitemap #sec01 li {
	font-size: 16px;
	font-weight: bold;
	padding: 0 0 20px 64px;
	background: url(../img/sitemap/lm_01.gif) no-repeat 0 0;
}
#sitemap #sec01 li.btm {
	background: url(../img/sitemap/lm_btm.gif) no-repeat 0 -20px;
}
#sitemap #sec01 li ul.child {
	width: auto;
	margin: 0 0 10px -18px;
	float: none;
}
#sitemap #sec01 li ul.child li {
	line-height: 30px;
	height: 24px;
	padding: 18px 0 0 68px;
	background: url(../img/sitemap/lm_child01.gif) no-repeat 0 0;
}
#sitemap #sec01 li ul.child li.btm {
	background: url(../img/sitemap/lm_childBtm.gif) no-repeat 0 0;
}
#sitemap #sec01 li a {
	text-decoration: underline;
}
#sitemap #sec01 li a:hover {
	text-decoration: none;
}


/*------ 1100 short
--------------------------------*/
#short #sec01 {
	min-height: 365px;
	margin-right: -10px;
	padding: 60px 10px 0 0;
	background: url(../img/short/short_item01.jpg) no-repeat 524px 20px;
}
#short #sec01 dl {
	font-size: 13px;
	line-height: 1.5;
	width: 545px;
	margin-left: 10px;
}
#short #sec01 dt {
	color: #f66;
	font-size: 30px;
	margin-bottom: 40px;
}
#short #sec02,
#short #sec03 dl {
	margin: 0 -20px 50px 0;
	overflow: hidden;
}
#short #sec02 dl {
	width: 472px;
	margin-left: 20px;
	float: left;
}
#short #sec02 dt,
#short #sec03 dt {
	color: #f66;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 10px;
	border-bottom: 1px solid #ccc;
}
#short #sec02 dd,
#short #sec03 dd {
	font-size: 13px;
}
#short #sec02 dd li {
	margin-bottom: 10px;
	padding-bottom: 7px;
	overflow: hidden;
	border-bottom: 1px dotted #ccc;
}
#short #sec02 dd ul li span {
	width: 360px;
	display: inline-block;
}
#short #sec02 dd ul li span.item {
	color: #ff2929;
	font-weight: bold;
	width: 75px;
	padding-left: 25px;
	background: url(../img/common/lm01.gif) no-repeat 0 0;
}
#short #sec02 dd ul.use li span {
	width: 440px;
	padding-left: 25px;
	display: block;
}
#short #sec02 dd ul.use li span.item {
	width: auto;
}
#short #sec03 dd {
	width: 472px;
	margin-right: 20px;
	float: left;
}
#short #sec03 dd p {
	margin-bottom: 20px;
}


/*------ event
--------------------------------*/
#event {
}
	#event #sec01 {
		margin-bottom: 20px;
	}
	#event #sec02 {
		margin-bottom: 20px;
	}
	#event #sec01 h2 {
		font-size: 30px;
		font-weight: normal;
		margin:  0 0 30px 0 ;
		color: #FF6666;
	}
	#event #sec01 p {
		margin: 0 0 1em 0 ;
	}
	#event #sec01 .images {
		margin: 20px 0 ;
	}
		#event #sec01 .images img:first-of-type {
			margin-right: 10px;
		}

.contents_sec {
	padding: 40px 0 40px 0 ;
}

#lifeinfo section{
	padding: 40px 0;
}
#lifeinfo #sec02{
	background: var(--back-color01);
}

form#mailformpro dl dt{
	width: 250px;
}
form#mailformpro dl dd {
	padding:10px 5px 20px 270px;
}

#form #sec01{
	padding-bottom: 40px;

	.inner {
		box-sizing: border-box;
	}
}

#form #sec02{

	.inner {
		box-sizing: border-box;
	}
}

.mfp_rows{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 1em;
	padding-bottom: .5em !important;
}
.titleApply {
	font-weight: 600;
	font-size: 20px;
	padding-bottom: 1em;
	padding-top :2em;
}

.input-S{
	width: 200px;
	max-width: 100%;
}
.input-M{
	width: 300px;
	max-width: 100%;
}
.input-L{
	width: 500px;
	max-width: 100%;
}