@charset "utf-8";

h2.h2_style{
	margin: 0 20px 30px;
	padding: 90px 0 0;
	position: relative;
	text-align:left;
font-weight: bold;
font-size: 32px;
line-height: 1.3;
color: #222;
	display:none;
}

h2.h2_style span{
	margin: 5px 0 0;
	padding: 0 0 0;
	position: relative;
	display:block;
	vertical-align:middle;
font-weight: normal;
font-size: 15px;
letter-spacing: 0.03em;
line-height: 1.5;
color: #222;
}

h2.h2_style small{
	margin: 0 10px 10px;
	padding: 0 0 0;
	position: relative;

	display:inline-block;
	vertical-align:middle;

font-weight: normal;
font-size: 26px;
letter-spacing: normal;
line-height: 1.5;
color: #999;
}



.kv{
	margin: 40px auto 0;
	padding: 0 0;
	position:relative;
	text-align:left;
}

.flex_kv{
	margin: 0 0 0 0 !important;
	padding: 0 0;
	background:transparent !important;
}

.flex_kv ul.slides{
	margin: 0 0 0 0;
	padding: 0 0;
	height:auto;
}

.flex_kv ul.slides li{
	margin: 0 0 0 0;
	padding: 0 0;
	text-align:center;
	height:auto;
}

.flex_kv ul.slides:after, .flex_kv ul.slides:before {
	content: "";
	clear: both;
	display: block;
}

.flex_kv ul.slides li img{
width:100%;
height:auto;
}

.flex_kv ul.slides li h3{
	position: absolute;
	top:20px;
	left:0;
	right:0;
	margin: auto;
	padding: 0 0 0 0;
	text-align:center;
}

.flex_kv ul.slides li h3 img{
	width:45%;
	height:auto;
	filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.8));
}

.flex_kv .flex-control-nav {
	width: 100%;
	position: absolute;
	bottom: 25px;
	text-align: center;
	z-index:10;
}
.flex_kv .flex-control-nav li {
	margin: 0 10px;
	display: inline-block;
	zoom: 1;
	*display: inline;
}
.flex_kv .flex-control-paging li a {
  width: 60px;
  height: 3px;
  display: block;
  background: #666;
  background: rgba(255, 255, 255, 0.7);
  cursor: pointer;
  text-indent: -9999px;
  -webkit-box-shadow: inset 0 0 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: inset 0 0 0px rgba(0, 0, 0, 0.3);
  -o-box-shadow: inset 0 0 0px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 0px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
}
.flex_kv .flex-control-paging li a:hover {
  background: #333;
  background: rgba(255, 255, 255, 1.0);
}
.flex_kv .flex-control-paging li a.flex-active {
  background: #000;
  background: rgba(255, 255, 255, 1.0);
  cursor: default;
}


#document{
	width: 100%;
	margin: 0 auto;
	padding: 0 0 0;
	position: relative;
	text-align:center;
	overflow: hidden;
}


.main_block{
	margin: 30px 20px 50px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}

.main_block h3{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 18px;
line-height: 27px;
text-align: left;
color: #2b2e31;
}

.main_block p{
	margin: 0 auto 40px;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 13px;
line-height: 24px;
text-align: left;
color: #454d55;
}

.main_img{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
}
.main_img img{
width:100%;
height:auto;
}



.plan_block{
	margin: 0 auto 50px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}

h4.h4_style{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;
font-weight: normal;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 30px;
text-align: center;
color: #2b2e31;
}
h4.h4_style strong{

font-weight: bold;
font-size: 21px;
letter-spacing: 0.05em;
line-height: 30px;
text-align: center;
color: #2b2e31;
display:block;
}

h4.h4_style span{
display:block;
}

h4.h4_txt{
	margin: 0 auto 10px;
	padding: 0 0 0;
	position: relative;
font-weight: bold;
font-size: 18px;
line-height: 28px;
text-align: center;
color: #2b2e31;
}

.plan_block p{
	margin: 0 30px 20px;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 13px;
line-height: 24px;
text-align: left;
color: #454d55;
}
.plan_block p small{
font-weight: normal;
font-size: 11px;
line-height: 16px;
text-align: left;
color: #2b2e31;
}

ul.price_list{
	margin: 0px auto 0px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	letter-spacing:-.4em;

	display:block !important;
}

ul.price_list li{
	margin: 0px 10px 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
	display:inline-block;
	vertical-align:top;
	letter-spacing:normal;
	width:136px;
	box-sizing: border-box;
	
	font-size: 19px;
	font-weight:bold;
	line-height: 1.5;
	letter-spacing:1px;
	color:#000;
	font-family: 'Noto Sans JP', sans-serif;
}

.price_box{
	margin: 10px auto 5px;
	padding: 0 0 10px;
	position:relative;
	text-align:center;
	background-color:#f4f4f4;
}

.price_box:after {
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: #fff;
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:68px;
    border-right-width:68px;
    margin-left: -68px;
    border-bottom-color:#f4f4f4;
    bottom:100%;
    left:50%;

}

.tsubo_txt{
	margin: 0px 0 3px 0;
	padding: 5px 0 0;
	position:relative;
	text-align:center;

	display:block;
	letter-spacing:normal;
	box-sizing: border-box;
	
font-family: 'Inter', sans-serif;
font-weight: bold;
font-size: 27px;
line-height: 27px;
color: #585858;

}

.tsubo_txt small{
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 13px;
letter-spacing: 0.05em;
line-height: 22px;
color: #585858;
}

.price_txt{
	margin: 0px 0 ;
	padding: 0px 0 0;
	position:relative;

	
	text-align:center;
	display:block;
	vertical-align:middle;
	letter-spacing:normal;

	box-sizing: border-box;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 10px;
letter-spacing: 0.05em;
line-height: 13px;

color: #585858;

}

.price_txt strong{
font-family: 'Inter', sans-serif;
font-weight: bold;
font-size: 23px;
line-height: 23px;
color: #585858;

	display:inline-block;
	vertical-align:center;
}

.price_txt small{
margin-left:0px;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 9px;
letter-spacing: 0.05em;
line-height: 10px;
color: #585858;

	display:inline-block;

}

.price_txt small b{
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 13px;
letter-spacing: 0.05em;
line-height: 16px;
color: #585858;
}

ul.price_list li.sp_only{
	margin: -20px -20px 20px 10px;
	padding: 0 0;
	position:relative;
	text-align:center;
	display:inline-block;
	vertical-align:top;
	letter-spacing:normal;
	width:156px;
	box-sizing: border-box;
	
font-weight: normal;
font-size: 11px;
line-height: 16px;
text-align: left;
color: #2b2e31;
}




.spec_block{
	margin: 0 auto 50px;
	padding: 0 20px;
	position:relative;
	text-align:center;
}

.spec_main_p{
	margin: 0 auto 70px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
.spec_main_p img{
width:100%;
height:auto;
}

.spec_block h4.h4_txt{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position: relative;
font-size: 18px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}

h4.h4_txt span{
margin: 0 0 20px;
padding: 0 0 0 0;
position: relative;
font-family:'Inter', sans-serif;
font-weight: 600;
font-size: 14px;
letter-spacing: 0.08em;
line-height: 34px;
text-align: left;
color: #7a7e83;
display: flex;
align-items:center;
justify-content:flex-start;

}
h4.h4_txt span em{
margin: 0 0;
padding: 0 20px 0 10px;
position: relative;
font-weight: 600;
font-size: 27px;
letter-spacing: 0.08em;
line-height: 34px;
text-align: left;
color: #7a7e83;
font-style: normal!important;
border-right:1px solid #7a7e83;
}

.spec_block section{
	margin: 0 auto 70px;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.spec_block p{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 13px;
line-height: 24px;
text-align: left;
color: #2b2e31;
}
.spec_block p small{
display:block;
font-weight: normal;
font-size: 12px;
line-height: 20px;
text-align: center;
color: #454d55;
}
.spec_block p small.right{
	text-align: right;
}

ul.point_spec_list{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;
	text-align:center;

}

ul.point_spec_list li{
	margin: 0 auto 10px;
	padding: 10px 0;
	position:relative;
	text-align:center;
	
font-weight: normal;
font-size: 18px;
letter-spacing: 0.01em;
line-height: 28px;
color: #fff;

background-color:#7A7E83;
width:280px;
display: flex;
justify-content: center;
align-items: center;
}

ul.point_spec_list li strong{
font-weight: bold;
font-size: 34px;
letter-spacing: 0.01em;
line-height: 40px;
text-align: center;
color: #fff;
}
ul.point_spec_list li small{
font-weight: normal;
font-size: 14px;
letter-spacing: 0.01em;
line-height: 24px;
text-align: center;
color: #fff;
}

ul.spec_list{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:space-between;
flex-wrap:wrap;
}

ul.spec_list li{
	margin: 0 0 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 12px;
line-height: 17px;
text-align: center;
color: #2b2e31;
width:48%;
}

ul.spec_list li img{
margin-bottom:10px;
width:100%;
height:auto;
}



ul.equipment_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;

display: flex;
align-items:stretch;
justify-content:space-between;
flex-wrap:wrap;
}

ul.equipment_list li{
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
	text-align:center;
	width:33%;
}
ul.equipment_list li img{
transform: scale(0.8);
}

.note_block {
	margin: 0 auto 0;
	padding: 0 10px;
	position:relative;

}

.note_block p.note_txt{
	margin: 0 0;
	padding: 0 0 ;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 11px;
line-height: 20px;
text-align: left;
color: #2b2e31;
}



.table_block{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;

}

table.table_style{
	margin: 0px auto ;
	padding: 0 0 0;
	position:relative;
	text-align:center;
width:100%;
}

table.table_style td{
	margin: 0px auto ;
	padding: 10px 10px;
	position:relative;
	text-align:center;

	font-size: 11px;
	font-weight:normal;
	line-height: 1.4;
	letter-spacing:0px;
	color:#585858;
	font-family: 'Noto Sans JP', sans-serif;
	background-color:#fff;
	border:1px solid #aaa;
	width:23%;
}

table.table_style th{
	margin: 0px auto ;
	padding: 5px 5px;
	position:relative;
	text-align:center;

	font-size: 11px;
	font-weight:bold;
	line-height: 1.2;
	letter-spacing:0px;
	color:#585858;
	font-family: 'Noto Sans JP', sans-serif;
	background-color:#dbdfe2;
	border:1px solid #aaa;
	color:#b40019;
	width:25%;
}

table.table_style tr:nth-child(1) td{ background-color:#fff;}
table.table_style tr:nth-child(1) th{ background-color:#dbdfe2;}
table.table_style tr td:nth-child(1){ background-color:#fff;white-space:nowrap;width:29%;}







.step_block{
	margin: 0 auto 60px;
	padding: 40px 20px 110px;
	position:relative;
	text-align:center;
	background-color:#f2f4f6;
}

.step_inner{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:left;
}

.step_inner h4.h4_txt{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position: relative;
font-weight: normal;
font-size: 18px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}

h5.h5_txt{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position: relative;
font-weight: normal;
font-size: 18px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}

h5.h5_txt span{
margin: 0 0 20px;
padding: 0 0 0 0;
position: relative;
font-family: 'Inter', sans-serif;
font-weight: 600;
font-size: 14px;
letter-spacing: 0.08em;
line-height: 34px;
text-align: left;
color: #7a7e83;
display: flex;
align-items:center;
justify-content:flex-start;

}
h5.h5_txt span em{
margin: 0 0;
padding: 0 20px 0 10px;
position: relative;
font-weight: 600;
font-size: 27px;
letter-spacing: 0.08em;
line-height: 34px;
text-align: left;
color: #7a7e83;
font-style: normal!important;
border-right:1px solid #7a7e83;
}

ul.step_list{
	margin: 0 auto 0px;
	padding: 0 0;
	position:relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:space-between;
flex-wrap:wrap;
}

ul.step_list li{
	margin: 0 0 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
font-family: "Noto Sans JP";
font-weight: 500;
font-size: 16px;
line-height: 20px;
text-align: center;
color: #2b2e31;
width:48%;
}
ul.step_list li small{
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
display:block;
font-weight: 500;
font-size: 12px;
line-height: 20px;
text-align: center;
color: #7d8286;
}

ul.step_list li img{
margin-bottom:10px;
width:100%;
height:auto;
}

.arr{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:center;
}
.arr img{
width:50px;
height:auto;
}

.step_block h6{
	margin: 0 0 10px;
	padding: 10px 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: 600;
font-size: 14px;
letter-spacing: 0.03em;
line-height: 14px;
text-align: center;
color: #fff;
width:126px;
background-color:#7A7E83;
display:inline-block;
}

.step_block p{
	margin: 0 0 0;
	padding: 0 0;
	position:relative;
font-family: "Noto Sans JP";
font-weight: normal;
font-size: 12px;
line-height: 16px;
text-align: left;
color: #2b2e31;
display:inline-block;
}

.floor_map{
	margin: 20px 0 0;
	padding: 0 0;
	position:relative;
	text-align:center;
}

.floor_map img{
	width:100%;
	height:auto;
}









.gallery_area{
	margin: 0 auto 50px;
	padding: 0 0 0px;
	position:relative;
	width:100%;
}

.gallery_area h3{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position:relative;
font-weight: 500;
font-size: 20px;
letter-spacing: 0.05em;
line-height: 30px;
text-align: center;
color: #2b2e31;
}

ul.gallery_list{
	margin: 0 auto 0px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}

ul.gallery_list li{
	margin: 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	display:block;
	vertical-align:top;
}

ul.gallery_list li img{
	width:auto;
	height:245px;
	vertical-align:top;
}


/*
ul.gallery_thum{
	margin: 0 auto;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}

ul.gallery_thum li{
	margin: 0 0;
	padding: 0 0 0;
	position:relative;
	text-align:center;

	vertical-align:top;
	width:150px !important;
}

ul.gallery_thum li img{
	width:150px;
	height:auto;
	vertical-align:top;
}
*/


ul.gallery_thum {
  display: flex;
  flex-wrap: nowrap;         /* 折り返さず横並びに */
  overflow-x: auto;          /* 横スクロールを有効に */
  -webkit-overflow-scrolling: touch; /* iOSでスムーズスクロール */
  margin: 0 auto;
  padding: 10px 0;
  gap: 10px;                 /* サムネイル間の余白 */
  scrollbar-width: none;     /* Firefoxでスクロールバー非表示 */
}
ul.gallery_thum::-webkit-scrollbar {
  display: none;             /* Chrome/Safariでスクロールバー非表示 */
}

ul.gallery_thum li {
  flex: 0 0 auto;            /* 横幅固定で折り返さない */
  width: 20%;
  list-style: none;
}

ul.gallery_thum li img {
  width: 100%;
  height: auto;
  display: block;
}











.gallery_main_img{
	margin: 0 auto 20px;
	padding: 0 0 0;
	position:relative;
	text-align:center;

}


.gallery_main_img .bx-wrapper {
	margin-bottom: 0px !important;

	width:360px;
	margin: 0 auto;
}

.gallery_thum_img{
	margin: 0 auto;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}

.gallery_thum_img .bx-wrapper {
	margin: 0 auto;
	padding: 0 0 0;
	position:relative;
	text-align:center;
}



p#PrevIcon a{
	display:block;
	width: 36px;
	height: 36px;
	position:absolute;
	background: url(../../images/original_design/sp_arrow_left.svg) left center no-repeat;
	background-size:36px 36px;
	color:#fff;
	top:42%;
	left:20px;
	text-indent:-9999px;
	z-index:100;
}
p#NextIcon a{
	display:block;
	width: 36px;
	height: 36px;
	position:absolute;
	background: url(../../images/original_design/sp_arrow_right.svg) right center no-repeat;
	background-size:36px 36px;
	top:42%;
	right:20px;
	text-indent:-9999px;
	z-index:100;
}

.bx-controls.bx-has-pager{
	margin: 0 auto;
	padding:  30px 0px 0;
	position: relative;
	text-align:center;
}

.bx-controls.bx-has-pager .bx-pager.bx-default-pager{
	margin: 0 auto;
	padding:  0 0px 0;
	position: relative;
	text-align:center;
}

.bx-controls.bx-has-pager .bx-pager.bx-default-pager .bx-pager-item{
	margin: 0 2px;
	padding: 0 0 0;
	position:relative;
	text-align:center;
	display:inline-block;
	vertical-align:top;
}


.bx-controls.bx-has-pager .bx-pager.bx-default-pager .bx-pager-item a {
	background: #CACFD1;
	width:40px;
	height:6px;
	display:inline-block;
	text-indent:-9999px;
}

.bx-controls.bx-has-pager .bx-pager.bx-default-pager .bx-pager-item a.active{
	background: #59A6BC;
}


.center{
	text-align:center;
}

.pc_only{
	display:none;
}

.img_pc {
	display:none;
}