@charset "shift_jis";

.fix_link_list {display:none;}
h2.h2_logo{
	min-width: 1100px;
	max-width: 1360px;
	margin: 170px auto 80px;
	padding: 0 0;
	position:relative;
	text-align:left;

font-weight: bold;
font-size: 50px;
line-height: 1.3;
color: #222;
}

h2.h2_logo span{
	margin: 0 0 0;
	padding: 0 80px 0 0;
	position: absolute;
	top:0;
	right:0;

font-weight: normal;
font-size: 20px;
letter-spacing: 0.03em;
line-height: 37px;
text-align: left;
color: #2b2e31;
}

h2.h2_style{
	min-width: 1100px;
	max-width: 1280px;
	margin: 170px auto 30px;
	padding: 0 0;
	position:relative;
	text-align:left;

font-weight: bold;
font-size: 50px;
line-height: 1.3;
color: #222;
}

h2.h2_style span{
	margin: 0 0 0 30px;
	padding: 0 0 0;
	position: relative;

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


font-weight: normal;
font-size: 18px;
letter-spacing: 0.03em;
line-height: 1.5;
color: #222;
}

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

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

font-family: "Yu Gothic Pr6N";
font-weight: normal;
font-size: 42px;
letter-spacing: normal;
color: #999;
}


.kv{
	min-width: 1100px;
	margin: 0 auto 70px;
	padding: 0 0;
	position:relative;
	text-align:left;
	height:705px;
}

.kv h3{
	position: relative;
	margin: auto;
	padding: 50px 0 0 0;
	text-align:left;
	min-width: 1100px;
	max-width: 1280px;
}

.kv h3 img{

}

.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:705px;
}

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

.flex_kv ul.slides li.kv01_bk{
background: url(../../images/totonoi/kv01_bk.jpg?2) no-repeat center center;
background-size:cover;
}

.flex_kv ul.slides li.kv01{
background: url(../../images/totonoi/kv01.jpg?3) no-repeat center center;
background-size:cover;
}
.flex_kv ul.slides li.kv02{
background: url(../../images/totonoi/kv02.jpg?3) no-repeat center center;
background-size:cover;
}
.flex_kv ul.slides li.kv03{
background: url(../../images/totonoi/kv03.jpg?3) no-repeat center center;
background-size:cover;
}


.flex_kv .flex-control-nav {
	width: 50%;
	max-width: 1280px;
	position: absolute;
	right:0;
	bottom: 40px;
	text-align: center;
	z-index:10;
}
.flex_kv .flex-control-nav li {
	margin: 0 15px;
	display: inline-block;
	zoom: 1;
	*display: inline;
}
.flex_kv .flex-control-paging li a {
  width: 120px;
  height: 5px;
  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: 0px 0 0;
	position: relative;
	text-align:center;
	overflow: hidden;
	min-width: 1100px;
}

.intro_block{
	width: 100%;
	margin: 0 auto 80px;
	padding: 0px 0 0;
	position: relative;
	text-align:center;
	min-width: 1100px;
	max-width: 1200px;
}

.intro_about{
	margin: 0 auto 70px;
	padding: 0 0;
	position: relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:flex-start;
}
.intro_about h3{
	margin: 0 50px 0 0;
	padding: 0 70px 0 0;
	position: relative;
font-weight: normal;
font-size: 25px;
letter-spacing: 0.03em;
line-height: 50px;
text-align: left;
color: #2b2e31;
border-right:1px solid #2b2e31;
white-space:nowrap;
}
.intro_about h3 img{
	margin-right:20px;
}
.intro_about p{
	margin: 0 0;
	padding: 0 0;
	position: relative;

font-weight: normal;
font-size: 16px;
line-height: 32px;
text-align: left;
color: #2b2e31;
}

.intro_block h4{
	margin: 0 0 30px;
	padding: 0 0;
	position: relative;

font-weight: 600;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 16px;
text-align: left;
color: #2b2e31;
}

.intro_box{
	margin: 0 auto;
	padding: 0 0;
	position: relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:space-between;
}
.intro_box_txt{
	margin: 0 0;
	padding: 0 0;
	position: relative;
	text-align:center;
width:310px;
}


.intro_box h5{
	margin: 0 auto 10px;
	padding: 0 0;
	position: relative;
font-weight: normal;
font-size: 27px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}
.intro_box p{
	margin: 0 0 0;
	padding: 0 0;
	position: relative;
font-weight: normal;
font-size: 14px;
line-height: 28px;
text-align: justify;
color: #2b2e31;
}

.intro_p{
	margin: 0 0 0 30px;
	padding: 0 0;
	position: relative;
	display: flex;
	align-items:center;
	justify-content:center;
}
.intro_p img{
	margin: 0 0 0 10px;
	padding: 0 0;
	position: relative;
	width:100%;
	max-width: 409px;
}



.modelhouse_block{
	margin: 0 auto;
	padding: 80px 0;
	position:relative;
	text-align:center;
	min-width: 1100px;
	background-color:#e8e8e8;
}

.modelhouse_inner{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	max-width: 1200px;
}
.modelhouse_inner.v2{
	margin: 0 auto;
	padding: 0 10px 0 0;
	position:relative;
	text-align:center;
	max-width: 1500px;
}
.modelhouse_inner.v2 img{
	width: 100%;
	max-width: 1500px;
	height:auto;
}

.modelhouse_inner h2{
	margin: 0px auto 20px;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 46px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}

.modelhouse_inner h2 span{
	margin: 0 0 0 30px;
	padding: 0 0 0;
	position: relative;

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

font-weight: normal;
font-size: 27px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}

.modelhouse_inner h2 small{
	margin: 30px 0 0;
	padding: 0 0 0;
	position: relative;
	display:block;

font-weight: normal;
font-size: 20px;
letter-spacing: 0.03em;
line-height: 37px;
text-align: left;
color: #2b2e31;
}

.modelhouse_kv{
	margin: 0 auto 70px;
	padding: 0 0;
	position:relative;
	text-align:center;
	height:430px;
background: url(../../images/totonoi/modelhouse_kv.jpg?2) no-repeat center center;
background-size:cover;
}

.modelhouse_wrap{
	width: 100%;
	margin: 0 auto;
	padding: 0px 0 0;
	position: relative;
	text-align:center;
	background: url(../../images/totonoi/modelhouse_img_bg.png) no-repeat center top 40px;
	background-size: 98%;
    min-width: 1100px;
    max-width: 1500px;
}
.modelhouse_wrap.v2{
	width: 100%;
	margin: 0 auto;
	padding: 0px 0 0;
	position: relative;
	text-align:center;
	background: url(../../images/totonoi/modelhouse_img_bg2.png?2) no-repeat center top 0;
	background-size: 98%;
    min-width: 1100px;
    max-width: 1500px;
}


.modelhouse_box{
	margin: 0 auto 70px;
	padding: 0px 0 0;
	position: relative;
	text-align:left;
	width: 580px;
}
.modelhouse_box h3{
	margin: 0 auto 20px;
	padding: 0px 0 0;
	position: relative;

font-weight: normal;
font-size: 25px;
letter-spacing: 0.03em;
line-height: 42px;
text-align: left;
color: #2b2e31;
}
.modelhouse_box p{
	margin: 0 auto;
	padding: 0px 0 0;
	position: relative;

font-weight: normal;
font-size: 16px;
line-height: 32px;
text-align: left;
color: #2b2e31;
}

ul.modelhouse_btn{
	position: absolute;
	top:-630px;
	right:0;
}

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

ul.modelhouse_btn li a{
	margin: 0 auto;
	padding: 15px 0;
	position:relative;
	text-align:center;

font-weight: normal;
font-size: 15px;
letter-spacing: 0.04em;
line-height: 15px;
text-align: center;
color: #2b2e31;

width: 276px;
background: #fff;
border: 0px solid #222;

display:inline-block;
transition-duration: .2s;
}

ul.modelhouse_btn li a:hover{
background: #222;
border: 0px solid #222;
color:#fff;
text-decoration:none;
}

.modelhouse_section{
	max-width: 1200px;
	margin: 0 auto 70px;
	padding: 0 0;
	position: relative;
	text-align:center;
display: flex;
align-items:stretch;
justify-content:flex-start;
}

.modelhouse_section h4{
	margin: 120px 80px 0 0;
	padding: 0 0;
	position: relative;

font-weight: 600;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}

.modelhouse_section_l h4{
	margin: 0px 0px 20px 0;
	padding: 0 0;
	position: relative;

font-weight: 600;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}
.modelhouse_section_l h5{
	margin: 0px 0px 20px 0;
	padding: 0 0;
	position: relative;

font-weight: normal;
font-size: 18px;
line-height: 28px;
text-align: left;
color: #2b2e31;
white-space:nowrap;
}
.modelhouse_section_l p{
	margin: 0px 0px 20px 0;
	padding: 0 0;
	position: relative;

font-weight: normal;
font-size: 14px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}
.modelhouse_p{
	margin: 70px 0px 0 70px;
	padding: 0 0;
	position: relative;
}
.modelhouse_p img{
	width:100%;
}




.sauna_block{
	margin: 0 auto 0;
	padding: 0 0 80px;
	position:relative;
	text-align:center;
	min-width: 1100px;
}

.sauna_inner{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	max-width: 1200px;
}

.sauna_kv{
/*
	margin: 0 auto 70px;
	padding: 0 0;
	position:relative;
	text-align:center;
	height:550px;
	background: url(../../images/totonoi/sauna_kv.jpg) no-repeat center center;
	background-size:cover;
*/
  margin: 0 auto 70px;
  padding: 0;
  position: relative;
  text-align: center;
  height: 550px;
  overflow: hidden;
}
.sauna_kv_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.sauna_kv h2{
	margin: 0 auto;
	padding: 80px 0 0;
	position:relative;
	text-align:left;
	max-width: 1200px;
	z-index: 1;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,1.0)) drop-shadow(0px 0px 3px rgba(0,0,0,1.0));
}

ul.sauna_list{
	margin: 0 auto 70px;
	padding: 0 0 40px;
	position:relative;
	text-align:center;
	border-bottom:1px solid #2b2e31;
}

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

ul.sauna_list li:nth-child(1){
display: flex;
align-items:flex-end;
justify-content:space-between;
}

ul.sauna_list li:nth-child(1) .sauna_p{
order:1;
margin-right:-155px;
}
ul.sauna_list li:nth-child(2) .sauna_p{
margin-left:-155px;
}
ul.sauna_list li:nth-child(3) .sauna_p{
order:1;
margin-right:-155px;
}

.sauna_p{
	margin: 0 0;
	padding: 0 0;
	position:relative;
}

.sauna_txt{
	margin: 0 0 0;
	padding: 20px 0 20px 10px;
	position:relative;
	text-align:left;
}
.sauna_txt h3{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;

font-weight: normal;
font-size: 23px;
line-height: 38px;
text-align: left;
color: #2b2e31;
}
.sauna_txt h3 em{
	margin: 0 0 20px;
	padding: 0 0 20px;
	position:relative;
font-style: normal!important;
font-weight: normal;
font-size: 36px;
letter-spacing: 0.03em;
line-height: 50px;
text-align: left;
color: #403a3a;
display:block;
}
.sauna_txt h3 em:before {
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 60px;
	height: 1px;
	content: '';
	border-radius: 0px;
	background: #403a3a;
}
.sauna_txt h4{
	margin: 0 auto 20px;
	padding: 0 0;
	position:relative;

font-weight: normal;
font-size: 18px;
line-height: 30px;
text-align: left;
color: #2b2e31;
}
.sauna_txt p{
	margin: 0 auto;
	padding: 0 0;
	position:relative;

font-weight: normal;
font-size: 14px;
line-height: 28px;
text-align: left;
color: #2b2e31;
white-space:nowrap;
}
.sauna_txt p small{
	margin: 15px 0 0 ;
	padding: 0 0 0;
	position:relative;

font-family: "Noto Sans JP";
font-weight: normal;
font-size: 10px;
line-height: 16px;
text-align: left;
color: #2b2e31;
display:block;
}


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

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

.harvia_txt{
	margin: 0 0 0;
	padding: 0 0 0 10px;
	position:relative;
	text-align:left;
}
.harvia_txt h3{
	margin: 0 0 0;
	padding: 0 0  ;
	position:relative;

font-weight: normal;
font-size: 23px;
line-height: 38px;
text-align: left;
color: #2b2e31;
}
.harvia_txt h3 img{
	margin: 0 0 0 30px;
	vertical-align:middle;
}

.harvia_txt p{
	margin: 0 0 0;
	padding: 0 0  ;
	position:relative;

font-weight: normal;
font-size: 14px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}

.harvia_intro .harvia_main_p{
order:1;
}
.harvia_intro .harvia_main_p img{
width:100%;
}

.harvia_section h4{
	margin: 0 0 20px;
	padding: 0 0 0 10px;
	position:relative;
	font-weight: bold;
font-size: 18px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}
.harvia_section h4:before {
	content:  "";
	width:  15px;
	height:  15px;
	display:  inline-block;
	background-color: #2b2e31;
	position:  relative;
	top: 0px;
	margin-right: 5px;
}
ul.harvia_list{
	margin: 0 auto 30px;
	padding: 0 0 0 10px;
	position:relative;
	text-align: center;
display: flex;
align-items:stretch;
justify-content:space-between;
}

ul.harvia_list li{
	margin: 0 0;
	padding: 0 0  ;
	position:relative;
	text-align: center;
	width:23%;
}

ul.harvia_list li:nth-child(3){
	margin: 0 0;
	padding: 0 0  ;
	position:relative;
	text-align: center;
	width:48%;
}

ul.harvia_list li h5{
	margin: 0 0 20px;
	padding: 0 0 10px ;
	position:relative;
font-weight: bold;
font-size: 18px;
line-height: 38px;
text-align: left;
color: #2b2e31;
}

ul.harvia_list li h5:before {
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 60px;
	height: 1px;
	content: '';
	border-radius: 0px;
	background: #2b2e31;
}

ul.harvia_list li p{
	margin: 0 0 0;
	padding: 0 0 0 ;
	position:relative;
font-weight: normal;
font-size: 14px;
line-height: 22px;
text-align: justify;
color: #2b2e31;
min-height:100px;
}

ul.harvia_list li .exhibits{
	margin: 0 0;
	padding: 0 0 0 ;
	position:relative;
	text-align: center;
}
ul.harvia_list li .exhibits .harvia_p{
	margin: 0 auto 20px;
	padding: 0 0 0 ;
	position:relative;
	text-align: center;
}
ul.harvia_list li .exhibits h6{
	margin: 0 auto 10px;
	padding: 0 0 10px ;
	position:relative;
font-weight: bold;
font-size: 17px;
line-height: 17px;
color: #2b2e31;
	border-bottom:1px #2b2e31 solid;
}
ul.harvia_list li .exhibits p{
	margin: 0 auto;
	padding: 0 0 0 ;
	position:relative;

font-weight: normal;
font-size: 12px;
line-height: 20px;
text-align: left;
color: #2b2e31;
}

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

ul.harvia_list li .exhibits_wrap .exhibits{
	width:32%;
}

.pse_box{
	margin: 0 auto 70px;
	padding: 20px 20px ;
	position:relative;
	text-align: center;
	width:1020px;
	border:1px solid #2b2e31;
display: flex;
align-items:stretch;
justify-content:space-between;
}

.pse_box h4{
	margin: 0 0;
	padding: 0 0 0 ;
	position:relative;
font-weight: 500;
font-size: 15px;
line-height: 32px;
text-align: left;
color: #2b2e31;
}
.pse_box h4:before {
	content:  "";
	width:  0;
	height:  0;
	display:  inline-block;
	background-color: #2b2e31;
	position:  relative;
	top: 0px;
	margin-right: 0;
}
.pse_box p{
	margin: 0 0;
	padding: 0 0 0 ;
	position:relative;
font-weight: normal;
font-size: 12px;
line-height: 20px;
text-align: left;
color: #2b2e31;
}

ul.harvia_btn{
	margin: 0 auto;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
display: flex;
align-items:center;
justify-content:center;

}
ul.harvia_btn li{
	margin: 0 5px;
	padding: 0 0 0 0;
	position:relative;
	text-align:center;
}
ul.harvia_btn li a{
	margin: 0 auto;
	padding: 10px 0;
	position:relative;
font-weight: normal;
font-size: 15px;
letter-spacing: 0.04em;
line-height: 36px;
text-align: center;
color: #fff;

	width: 355px;
	background: #5f6164;
	border: 1px solid #5f6164;
	display:inline-block;
	transition-duration: .2s;
}
ul.harvia_btn li a:hover{
background: #fff;
border: 1px solid #5f6164;
color:#222;
text-decoration:none;
cursor: pointer;
}



.totonoi_blog_block{
	margin: 0 auto;
	padding: 80px 0;
	position:relative;
	text-align:center;
	min-width: 1100px;
	background-color:#f3f3f3;
}

.totonoi_blog_inner{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:center;
	max-width: 1200px;
}

.totonoi_blog_inner h4{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:left;

font-weight: 600;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}
.totonoi_blog_inner h4 strong{
padding-right:20px;

font-weight: normal;
font-size: 18px;
line-height: 28px;
text-align: left;
color: #2b2e31;
}
.totonoi_blog_inner .btn_style{
	position:absolute;
	top:0;
	right:0;
}

ul.totonoi_blog_list{
	margin: 0 auto;
	padding: 0 0;
	position:relative;
	text-align:left;
display: flex;
align-items:stretch;
justify-content:space-between;
}
ul.totonoi_blog_list li{
	margin: 0 0;
	padding: 0 0;
	position:relative;
	text-align:left;
	width:23%;
}

ul.totonoi_blog_list li a{
	margin: 0 0;
	padding: 0 0;
	position:relative;
display:block;
font-weight: normal;
font-size: 14px;
line-height: 1.5;
text-align: left;
color: #2b2e31;
}
ul.totonoi_blog_list li a small{
	margin: 6px 0 0;
	padding: 0 0;
	position:relative;
font-weight: normal;
font-size: 14px;
line-height: 1.0;
text-align: right;
color: #2b2e31;
display:block;
}

ul.totonoi_blog_list li a .blog_img{
	margin: 0 0 6px;
	padding: 0 0;
	position:relative;
	width:100%;
	aspect-ratio: 276 / 200;
}

ul.totonoi_blog_list li a .blog_img img{
	width:100%;
	height:100%;
	object-fit: cover;
}
ul.totonoi_blog_list li a img.updated{
	position:absolute;
	top:0;
	left:0;
}



ul.totonoi_blog_list li a:hover{
	text-decoration:none;
transition : 0.3s;
opacity:0.7;
}



.reserv_area{
	margin: 0 0 0;
	padding: 70px 0 0px;
	position:relative;
	text-align:center;
	overflow: hidden;
	min-width: 1100px;
	background-color:#e5e6e6;
}

h4.h4_style{
	margin: 0 auto 30px;
	padding: 0 0;
	position:relative;
	text-align:left;
	max-width: 1200px;
font-weight: 600;
font-size: 22px;
letter-spacing: 0.03em;
line-height: 52px;
text-align: left;
color: #2b2e31;
}
h4.h4_style strong{
padding-right:20px;

font-weight: normal;
font-size: 27px;
line-height: 46px;
text-align: left;
color: #2b2e31;
}

ul.reserv_list{
	margin: 0 auto 30px;

}


.anchor_link{
	margin: 0 auto 70px;
	padding: 0px 0 ;
	position:relative;
	text-align:center;
	width:900px;
}
.anchor_link a{
	margin: 0 auto ;
	padding: 10px 0 ;
	position:relative;

font-weight: normal;
font-size: 15px;
letter-spacing: 0.04em;
line-height: 36px;
text-align: center;
color: #fff;
display:block;
background-color:#5a5c5f;
}

.anchor_link a:hover{
text-decoration:none;
}
.anchor_link a img{
	margin-left:10px;
	display:inline-block;
	vertical-align:middle;
	transition-duration: .2s;
}
.anchor_link a:hover img{
transform: translate(10px, 0);
}







.center{
	text-align:center;
}

.sp_only{
	display:none!important;
}

.img_sp {
	display:none;
}