@charset "UTF-8";

/* 半端ウィンドウ対応 */
@media screen and (min-width:1000px) and (max-width:1099px){
#page .contents-temp h2{
	font-size: 22px;
}
.contents-temp-mainimg {
    padding: 0 12.5vw 40px;
}
.ct-img-r {
    padding: 80px 12.5vw 80px;
}
}/* 半端ウィンドウ対応 ここまで */


@media screen and (max-width: 999px) { /*ウィンドウ幅が最大999pxまでの場合に適用*/
	
/* ===================================================================
　下層共通ヘッダー
==================================================================== */
header {
  position: static;
	height: auto;
}
header.header-kaso .logo,
header.is-fixed .logo {
	display: none!important;
}
header .logo img{
	width: auto;
	height: 31px;
}

/* ===================================================================
　#pagehead h1
==================================================================== */
#pagehead h1,
.kaso-head-design{
	font-size:24px;	
	padding:65px 0 65px 0;
}
#pagehead h1 .nagaih1{
	font-size:16px;	
}
#pagehead h1 span,
.kaso-head-design span{
	font-size:10px;
}
	
#pagehead::after{
	left: 43%;	
}
/* ===================================================================
　パンくず
==================================================================== */
.bread{
	padding: 15px 0 20px 0;
	font-size: 10px;
	line-height: 165%;
}
.breadcrumbs,
#page .bread .inner,
#page #single .bread .inner{
    width: 100% !important;
    min-width: 85% !important;
    max-width: 85% !important;
    margin: auto !important;
}
.bread .category{
	font-size: 10px;
}
		
/* ===================================================================
　page
==================================================================== */
#single{
	padding: 50px 0 0;
	}
	
#page{
	font-size: 13.5px;
	line-height: 180%;
	padding: 50px 0 0;
}
#page:before{
	top: -15px;
	height: 45px;
}	
#page section{
	margin: 0 0 60px;
}
#page h2{
	font-size: 18px;
	line-height: 140%;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
#page h3{
	font-size: 16px;
	line-height: 140%;
	padding: 18px 0 0;
	margin: 0 0 18px;
}	
#page .mb80 {
    margin-bottom: 40px !important;
}	
	
	
	
.simple-page .inner800{
  margin: 0 auto 40px;
}
#page .simple-page h3{
	margin: 0 0 18px;
}
/* ===================================================================
　
==================================================================== */
/*2カラムボタン*/
.btn-col2 li{
	display: block;
	width: 100%;	
}
.btn-col2 li a{
	padding: 0.8em 1em;	
}
.btn-col2 li a:after{
   right: 5%;
}	
.btn-col2 li:nth-of-type(odd){
	margin: 0 0 15px 0;	
}

	
/*table*/
#page table{
	margin: 0 auto 20%;
}	
#page th{
	width: 100%;
	display: block;
}
#page td{
	width: 100%;
	display: block;
}	
	
/*.fdomes-glamping table*/
#page .fdomes-glamping th, #page .fdomes-classic th{
	width: auto;
	display: inline-block;
}
#page .fdomes-glamping td, #page .fdomes-classic td{
	width: auto;
	display: inline-block;
	margin-left: 19px;
}	


/*flow*/
.flow ul li{
	margin-bottom: 20px;
}
.flow ul li:after{
   bottom: -12px;
   left: 48%;
   width: 12px;	
   height: 12px;
}
.flow ul.col2 li:nth-of-type(1):before,
.flow ul.col2 li:nth-of-type(2):before{
   top: -20px;
   left: 48%;
   width: 12px;	
   height: 12px;
}

span.after-mainte-h3{
	text-align: left;
    margin-right: 49px;
    float: right;
    margin-top: -9px;
	}
	
#archive {
	font-size: 13px;
 	line-height: 2.1;
}	
#page #index-sec-01 h3 {
    font-size: 14px;
    line-height: 140%;
}
#page #index-sec-01 .title {
    overflow: visible;
}
	
#page #archive #index-sec-01 .inner1000{
	width: 80%!important;
	min-width: auto!important;
	max-width: 999px!important;
  margin: 0 auto!important;
}	
	
#index-sec-01 .col3 li {
    float: none;
    width: 95%;
    margin: 0 auto 35px;
    clear: both;
    overflow: hidden;
	}
	#archive h3{
		margin:0;
		padding:10px 0 0 0;
	}
	
	#archive p{
		margin:0;
	}
	
#blog-archive li{
	margin-bottom: 0!important;
}
	#archive li{
		margin-bottom:20px;
	}
	

/*taxonomy-list*/
ul#taxonomy-list{
	width: 95%;
	margin: 0 auto 30px;
}
ul#taxonomy-list li{	
	font-size: 12px;
	line-height: 120%;
	padding: 0.7em 0.5em;
	border-right: 1px solid #3e3a39;	
}
	

/* topics-category */
#taxonomy-list-sp{
	width: 100%;
	margin: 0.5em auto 2em;
	border:1px #ccc solid;
	background-color: #fff;
	padding: 0;
	display: block;
}
#taxonomy-list-sp .taxonomy-list-sp-midashi{
	font-family: Georgia, Times New Roman, serif;
	font-weight: normal;	
	display: block;
	margin: 0 0 0.7em 0;
	padding: 0.7em 0 0;
	text-align: center;
	position: relative;
	cursor: pointer;	
	font-size: 1.1em;	
}
#taxonomy-list-sp .taxonomy-list-sp-midashi:after{
   content: "";
   position: absolute;
   border-right: 1px solid #000;
   border-bottom: 1px solid #000;
   width: 5px;
   top:55%;
   right: 15px;
   height: 5px;
   transform: rotate(45deg);
	cursor: pointer;
	z-index: 99;
}	
#taxonomy-list-sp ul{
	display: none;
}	
#taxonomy-list-sp li{
	margin: 0!important;
}
#taxonomy-list-sp li a{
	padding: 0.7em;
	display: block;
	vertical-align: top;
	border-top: 1px solid #ececec;
	line-height: 165%;
	font-size: 12px;
	text-align: center;
}


	
#page .btn{
	margin-top:15px;
}
#page .box{
	margin-bottom:30px;
}
.sec{
	padding: 20px 0;
}
#page .sec{
	width: 100%;
	padding: 0 0 10px 0;
}

	
/* ===================================================================
　コンテナ
==================================================================== */
#container-left{
	width:100%;
	float: none;
}
#sidebar-form{
	display: none;
}

/* ===================================================================
　left
==================================================================== */
#index #left{
	width: 95%;
	margin: 0 auto 60px auto;
	padding: 20px 0!important;	
	display: block;
}
#left02{
	margin: 0 0 30px 0;
	padding: 20px 0 0;
}
	
/* ===================================================================
　サイドバー
==================================================================== */
#page #sidebar{
	width: 100%;
	margin: 0 auto 50px;	
	padding: 0;
  max-width: 100%;
  min-width: 100%;
	display: block;
	border: 0;
}
#page #sidebar h2{
	font-size: 1rem;
	text-align: left;
	margin: 0 0 0;
	padding: 0.7rem;
	line-height: 165%;
	border-radius: 0;
	pointer-events: all;
	cursor: pointer;	
	position: relative;
}
#page #sidebar h2:after{
   content: "";
   position: absolute;
   border-right: 1px solid #fff;
   border-bottom: 1px solid #fff;
	background: none;
   width: 7px;
   top:40%;
   right: 5%;
	left: auto;
	bottom: auto;
   height: 7px;
   transform: rotate(45deg);
	cursor: pointer;
	z-index: 99;
}	
	
#sidebar .ul-wrap{
	display: none;
}

#sidebar ul {
	width: 90%;
	margin: 10px auto 30px;
}
#sidebar li{
	text-align: left;
	float: none;
	margin:0 0 0 0;
	padding: 10px 0;
	width:100%;
	background:#fff;
	border-bottom: 1px solid #f3f3f3;	
	line-height: 140%;
}	
#sidebar ul ul li:nth-of-type(1){
	border-top: 1px solid #CDCDC0;	
}
#sidebar ul ul li{
	padding-left: 10px;
}
#sidebar ul ul li:before{
  content: '';
  display: inline-block;
	vertical-align: middle;
  width: 12px;
  height: 2px;
	margin-right: 10px;
  background-color: #EBE4DC;
  border-radius: 2px;
}
#sidebar .img{
	max-width: 80px;
	display: inline-block;
	vertical-align: top;
}
#sidebar img{
	max-height:auto!important;
	margin: 0;
}
#sidebar .txt{
	max-width: 175px;
	display: inline-block;
	vertical-align: top;
	padding: 0 5px;
	height: auto;
}
#sidebar .date{
	padding: 10px 0;
	font-size: 0.9rem;
	line-height: 120%;
}
#sidebar span.time{
	display: block;
	line-height: 165%;
}
	
	
	
/* ===================================================================
　ページ送りボタン
==================================================================== */
.prevnext,
.news-archive .prevnext{
	width: 100%;
	min-width: 100%;
	max-width: 100%;
	font-size: 0.8rem;
}
#blog-archive ul li .cat{
	width: fit-content;
	width: -moz-fit-content;
	margin: 6px auto 6px 0;
	display: inline-block;
}
#blog-archive ul li .date{
	display: inline-block;
	margin-right: 5px;
}
	
#blog-archive ul li{
	padding: 20px 0;
}
	
#blog-archive ul li article .txt{
	display: block;
}
	
#blog-archive ul li .cat{
	margin: 6px auto;
}
	
.prevnext .prev{
	display:block;
	float:left;
}
	
#page-contents .prevnext{
	padding-top: 0px;
}

.prevnext .next{
	display:block;
	float:right;
}

.news-archive .prevnext .back,
.prevnext .back{
	position: static;
	transform: translate(0);
	padding-top: 5px;
	clear: both;
	width:100%;
	max-width: auto;
	display:block;
	float:none;
	margin: auto;
	text-align:center;
}
.prevnext .back{
	padding-top: 5px!important;
}
	
	
/* ===================================================================
　#left
==================================================================== */
#left-wrap{
	display: block;	
	width: 100%;
}	
#page #left{
	margin: 0 auto;
	padding: 0 0 0 0;
}
#page #archive #left{
  border-top: 0;
  border-bottom: 0;
}
#page #single h1,
#page #page-col1 h1{
	font-size: 16px;
	line-height: 165%;
	margin: 0 auto 0.5em;
	padding:10px 0 10px;
  border-bottom: 2px solid #152040;
}
.single-contents{
	margin: auto;
	padding: 0;	
}
#page #index-sec-01 #taxonomy-list li{
		margin: 0;
	}
	
#page #single .single-contents h2{
	margin-bottom: 10px;
  padding: 5px 10px;
	font-size: 15px;
}
#page #single .single-contents h3 {
	margin: 15px 0 15px 0;
  padding: 5px 10px;
	font-size: 14px;
}
#page #single .single-contents p{
	margin: 0 auto 1rem;
}

/* ===================================================================
　他
==================================================================== */
.vvqbox img {
    height: auto!important;
}
	
/* ===================================================================
　タクソノミーアーカイブ
==================================================================== */
#taxonomy-archive #pagehead h1{
	font-size: 1.2rem;
}	
#taxonomy-archive #pagehead h1 span.hosoku{
	font-size: 0.8rem;
	line-height: 120%;
}
	
/* ===================================================================
　固定ページ
==================================================================== */
#page #page-col1 .sec{
	padding: 0;
}
#page #page-col1 table {
    width: 100%!important;
}
	
/* ===================================================================
　アーカイブ
==================================================================== */
#archive #left h3{
	text-align:left;
	font-size:13px;
	line-height: 140%;
	padding: 0;
	margin: 0 0 5px;
	border: none;
}
#archive #left ul{
	width: 100%;
	margin: auto;
	text-align: center;
}
#archive #left li{
	width: 100%;
	display: inline-block;
	margin: 0 0 10px 0;
	padding: 15px 10px 10px; 
	text-align: left;
}
#archive #left li:nth-of-type(odd){
	margin: 0 0 10px 0;
}
#archive #left li:nth-of-type(even){
	margin: 0 0 10px 0;
}
#archive #left li:last-of-type{
	margin-bottom:10px;
}
#archive #left .thumb img{
	object-fit: cover;
    width: 100px;
    height: 100px;
	}
#archive #left .thumb{
	display: block;
	float: left;
	margin: 7px 5px 0 0;
	width: 100px;
	height:100px;
}
#archive #left li .txt-wrap{
	float: right;
	width: 60%;
}
#archive #left .date,
#archive #left .title{
	width: 100%;
}

	
#archive #left li .date,
#archive #left li .category{
	line-height: 140%;
	max-width: 100%;
}
#archive #left li .title{
	margin-bottom: 5px;
	max-width: 100%;
}
#archive #left li .category{
	position: static;
}
#page .date,
#page .category,
#single .date,
#single .category{
    font-size: 10px;
}
#single .category{
    margin-bottom: 5px;
}
	
#archive #left .category a{
	margin-bottom: 5px;
}
	
/* ===================================================================
　検索結果アーカイブ
==================================================================== */	
.search-archive #left{
	width: 95%;
	margin: 0 auto 60px auto;
	padding: 20px 0!important;	
	display: block;
}
.search-archive #archive #left li{
	width: 99%;
	display: inline-block;
	margin: 0 0 10px 0;
	padding: 10px; 
	text-align: left;
}
	

	
/* ===================================================================
　#container-left
==================================================================== */
#container-left h1{
	font-size: 1.2rem;
	margin: 0 auto 10px;
	padding:10px 2.5% 10px;
	line-height: 140%;	
	border-bottom: 1px solid #CDCDC0;
}

#container-left #left h2{
	text-align: left;
	font-size: 1.2rem;
	line-height: 140%;
	margin: 30px 0 10px 0;
	padding: 10px 15px;
}

#container-left #left h3 {
	width: 100%;
	margin-bottom: 20px;
	padding: 10px 10px 10px 10px;/*文字周りの余白*/
	display: block;
	border-radius: 3px;/*左側の角を丸く*/
	border-bottom: 0;
	font-size: 1.2rem;
	line-height: 140%;
	position: relative;
}

#container-left #left h3:before {
  display: none;
}
#container-left #left .inner p{
	width: 90%;
	margin: auto;
}



/*tel-area*/
#page .tel-area{
	margin: 0 auto 50px;
}
	

/* ===================================================================
　メールフォーム
==================================================================== */
#page .contact-link{
	width: 100%!important;
	padding: 15px;
	margin: 5px auto 20px!important;
}
p.tel-mini {
    line-height: 1.6;
}

.mailform input[type="text"],
.mailform input[type="email"],
.mailform textarea,
.mailform select{
    font-size: 14px;
}
textarea{
	max-height: 100px;
}
	
	
.how-know .title{
		overflow: visible!important;
}
.how-know textarea{
    width: 100%!important;
    height: 1.5em;
    margin-bottom: 1px;
    margin-top: 7px;
    font-size: 1rem;
    background: #fff;
    border: 1px solid #575757;
    display: inline;
    vertical-align: middle;
    padding: 0 11px;
}


	
.mailform .cf{ margin-bottom: 10px; }	
	
.mailform .title {
  font-size: 13px;
  margin-bottom: 5px;
}
.mailform .yubin{
	width: 60%;
	margin-bottom: 2px;
}
.wpcf7 input[type="submit"] {
	padding:0.7em 1em;
	font-size: 16px;
	line-height: 140%;
	margin: auto;
}	
.mailform .menu-394 .wpcf7-select,
.mailform .menu-395 .wpcf7-select{
	width: 60%;
}	
	
.your-year,
.your-month,
.your-day{
	width: 25%;
}
.your-region:before{
	content:"";
	width:8%;
	height:86%;
	max-height: 30px;
	border-radius: 0 4px 4px 0;/* 左上 | 右上 | 右下 | 左下 */
	right:1px;
	top:3px;
}
.your-year:before,
.your-month:before,
.your-day:before{
	content:"";
	width:25%;
	height:86%;
	max-height: 30px;
	border-radius: 0 4px 4px 0;/* 左上 | 右上 | 右下 | 左下 */
	right:1px;
	top:3px;
}
.your-region:after{
	content:"";
	border:6px solid transparent;
	border-top:9px solid white;
	right:2.5%;
	top: 16px;
}
.your-year:after,
.your-month:after,
.your-day:after{
	content:"";
	border:6px solid transparent;
	border-top:9px solid white;
	right:8%;
	top: 16px;
}	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
.slide-field-area{
	position: relative;
  display: block;
	margin-bottom: 40px;
	clear: both;
}
/* slick */
.image-slider-wrap{
  width: 100%;
	float: none;
	margin-bottom: 10px;
}

.image-slider{
    margin: 0 0 10px;
}
.image-slider img{
    display: block;
    width: 100%;
    height: auto;
	max-height: 213px;
}

.slider-nav{
	width: 100%;
	margin: auto;
}
.slider-nav li{
    display: inline-block;
    margin: 0 0.5% 10px 0.5%;
    cursor: pointer;
}
.slider-nav img{
    display: table;
    width: 50px!important;
    height: 50px!important;
	  object-fit: cover;
    color: #fff;
    text-align: center;
    margin: 0;
}
.slider-nav li:hover{
    opacity: 0.6;
}
.slick-prev:before,
.slick-next:before{
	color: #000!important;
}
	
	
	
	
	
	
/* ===================================================================
　#single
==================================================================== */	
#single h1{
	font-size: 18px;
	line-height: 140%;
	margin-bottom: 18px;
	padding-bottom: 18px;
}
#single h1:after{
	width: 30px;
}
#single h2{
	font-size: 16px;
	line-height: 140%;
	padding: 0;
	margin: 0 0 18px;
}
#single .slide-field-area {
    margin-bottom: 0;
}
.event-close02 {
    max-width: 100%;
    font-size: 1em;
}
#page-contents .event-close02 p{
	margin-bottom: 0;
}
	
.slick-dots {
    bottom: 10px!important;
}
.slick-dots li{
	margin: 0 0!important;
}
.slick-dots li button::before {
    font-size: 8px!important;
}
#single .image-slider img{
	max-height: 100%;
}
	
#single table.col2-table td{
	width: auto;
}
	

#single ul.facility:after,
#single ul.facility:before{
	width: 33.333%;
}
#single ul.facility li{
	width: 33.333%;	
	height: auto;
}
#single ul.facility li:nth-of-type(4){
	border-top: 0;		
}
	
section.property-sec01{
	display: block;
	justify-content: flex-start;
	flex-wrap: nowrap;
	padding-top: 0;
	padding-bottom: 20px;
}
section.property-sec01:after,
section.property-sec01:before{
	width: 100%;
}
section.property-sec01 p{
	width: 100%;
}
section.property-sec01 .btn,
section.property-sec01 .btn a{
	width: 100%;
	max-width: 100%;
	min-width: 100%;
}
section.property-sec01 .btn a{	
	padding: 0.5rem 0.5rem;
}	
section.property-sec01 p.price{
	line-height: 20px;
	margin:20px 0 0!important;	
	font-size: 20px;	
}
section.property-sec01 .price-box{
	padding: 3px 10px;
  margin: 0 10px 12px 0;
	font-size: 12px;
}
section.property-sec01 .price-txt{
	display: inline-block;
	font-size: 20px;
}

#page .price table{
	white-space: nowrap;
}
#page .price div.table-wrap{
	overflow-x: scroll;
}
#column-archive li {
	border-top: 1px solid #f3f3f3;
}
#column-archive li:nth-child(2n){
	margin-right: 0;
}
#column-archive li:last-of-type{
	border-bottom: 1px solid #f3f3f3;
}
#column-archive li .thumb{
	width: 45%;
	display: inline-block;
	vertical-align: middle;
	height: auto;	
}
#column-archive li .txt-wrap{
	width: 45%;
	display: inline-block;
	vertical-align: middle;
}
#column-archive li .cat{
	padding: 3px;
}
#column-archive li{
	width: 100%;	
	float: none;
	height: auto!important;
	margin-right: 25px;
}
	
	
#single ul.works-loop{
	display: block;
	justify-content: flex-start;
	flex-wrap: nowrap;
}
#single ul.works-loop:after,
#single ul.works-loop:before{
	width: 100%;
}
#single ul.works-loop li{
	width: 100%;
	margin-bottom: 40px;
}
#single ul.works-loop li:nth-of-type(odd){
	padding-right: 0;
}
#single ul.works-loop li:nth-of-type(even){
	padding-left: 0;
}


.single-works .prevnext .prev {
    margin-bottom: 10px;
}
	
	
	
	
	
#single table{
	font-size: 12px;
	margin-bottom:50px;
}
#single th{
	padding:10px;
	width:25%;
}
#single td{
	padding:10px;
}

	
	
	
	
	
	
	
#page .profile .left{
	width:50%!important;
	float: none!important;
	margin-bottom: 30px!important;
}

#page .profile .right{
	width:100%;
	float: none;
}
	
#page .profile .name-left{
	width:40%;
	float: left;
}
	
#page .profile .sns-right{
	margin-top:0;
}

#page .img-left{
	float: left;
	width:45%;
	margin-bottom:20px;
}
	
#page .name-right{
	float: right;
	width:48%;
	margin-top:20px;
	line-height: 30px!important;
}
	
#page iframe{
	height: 200px!important;
}
	
#page .profile .name{
	font-size:150%;
}
	
	
	

.works-archive li{
	width:95%;
	float: none;
	margin:0 auto;
	height: auto!important;
}

.works-archive h3 a{
	word-break: keep-all;
	text-align: center;

}
	
.works-archive li img {
    width: 100%;
    height: auto;
	max-height: 250px;
    object-fit: cover;
}
#page .tabs .content-box{
	padding: 10px 1%!important;
	}
#page .works-archive li h3 {
	text-align: center;
	font-size: 4vw!important;
    margin: 10px 0 0 0!important;
	font-weight: bold;
	padding: 0!important;
}
.works-archive li p {
	font-size: 2.6vw!important;
	text-align: center;
    position: relative;
	margin: 15px 0 0!important;
}
.works-archive li p:after{
    content: '';
    width: 50px;
    height: 1px;
    background: #000;
display: block;
	margin: auto;
    left: 0;
    bottom: 0;
}
		
/*Fドーム　タブシステム部分	*/
	#f-dome .tabs label{
		float: none!important;
	}	
	
#f-dome .tab-label-1,
#f-dome .tab-label-2,
#f-dome .tab-label-3,
#f-dome .tab-label-4,
#f-dome .tab-label-5{
	width: 100%;
}
	
/*Works archive　タブシステム部分*/
.tabs .works-archive{
	overflow: visible!important;	
	}

.content div p {
    text-align: center;
    margin: 0;
    color: #777;
    padding-left: 0;
    border-left: 0;
}
	
#page .service .scroll img{
	height: 200px;
	width: auto;
	max-width: unset!important;
	}
	
	
	
#page .service .scroll::before{
	content: "※表が長い場合は横にスクロールできます。";
    font-weight: 400;
    color: #6699A0;
	}

#page .service .scroll{
	width: auto;
	overflow: scroll;
	}
	
	
/*レンタルドームの表スクロール*/
#page .rental-dome-wrap .scroll th, #page .rental-dome .scroll tr, #page .rental-dome .scroll td{
	display: inline-block!important;
	}
#page .rental-dome-wrap .scroll{
	height: auto;
	width: 1710px;
	max-width: unset!important;
	}
	
#page .rental-dome-wrap .scroll table{
	width: 1600px;
	margin-bottom: 10px;
	}
	
	
#page .rental-dome-wrap .scroll::before{
	content: "※表が長い場合は横にスクロールできます。";
    font-weight: 400;
    color: #6699A0;
	}

#page .rental-dome-wrap .scroll{
	width: 1000px;
	overflow-x: scroll;
	overflow-y: hidden;
	}
	
#page .rental-table tr{
	display: table-row;
	}
#page .rental-table th{
	width: calc(1000px*0.23);
	padding: 0 5px;
	display: inline-block!important;
}
#page .rental-table td{
    width: calc(1000px*0.23);
	padding: 0 5px;
	display: inline-block!important;
}
#page .rental-table .th1{
	width: calc(1000px*0.08);
	display: inline-block!important;
}
#page .rental-table .td1{
    width: calc(1000px*0.08);
	display: inline-block!important;
}
#page .rental-table .th3{
	width: calc(1000px*0.1);
	display: inline-block!important;
}
#page .rental-table .td3{
	width: calc(1000px*0.1);
	display: inline-block!important;
}

#page .rental-table .th2{
	width: calc(1000px*0.28);
	display: inline-block!important;
}
#page .rental-table .td2{
	width: calc(1000px*0.28);
	display: inline-block!important;
}

	
#page .service .btn a{
	padding: 0.8em 2em;
	}
	
#page .service .btn{
		max-width: 100%;
	}
		
#page .service .col2 li{
		width: 100%;
	}
.tabs label {
    background: linear-gradient(top, #5ba4a4 0%,#4e8c8a 100%);
    font-size: 14px;
    line-height: 40px;
    height: 44px;
    position: relative;
    padding: 0 10px;
     float: left; 
	margin-left: 0;
    width: calc(100%/3);
    color: #385c5b;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
	border: 1px solid rgb(0 0 0 / 10%);
}
	
.tabs .content {
     box-shadow: none; 
	border-bottom: none;
	}
	
.tabs input:hover + label {
    background: #155358;
	opacity: 1;
}
	
	
#page .products-archive li h4 {
    padding: 0 5%;
	line-height: 21px;
	font-weight: bold;
	word-break: keep-all;
	letter-spacing: 0.8px;
}
#page .products-archive .narrow-padding h4 {
    padding: 0 14%!important;
}
#page .products-archive .thumb{
	float: left;
	width: 120%;
	margin-left: -12%;
	margin-bottom: 2px;
	position: relative;
	overflow: hidden;
	z-index: -1;
}
#page .products-archive li {
    width: 33%!important;
    float: left!important;
	height: 170px!important;
	margin-bottom: 0!important;
}
	

/* ===================================================================
　single-products
==================================================================== */
#page .single-products .col2 li{
	width:100%;
	float: none;
	margin-bottom:15px;
}
#page .single-products .col2 li:nth-child(2n){
	float: none;
}
#page .single-products .col2 li:last-of-type{
	margin-bottom:30px;
}	
	
	
#page .single-products .col4 ul:after,
#page .single-products .col4 ul:before{
	width: 50%;
}
#page .single-products .col4 ul li{
	width: calc(50% - 6px);
	margin: 0 6px 12px 0;
  padding-top: 30%;	
}
#page .single-products .col4 ul li:nth-of-type(2n){
	margin: 0 0 12px 0;	
}
	
#page .gardenigloo .col4-icon li:nth-of-type(2n){
	margin: 0 0 6px 0;
	}
#page .gardenigloo .col4-icon li{
	width: 48%;
	margin: 0 4% 6px 0;
}
	

#page .single-products-jirei ul:after,
#page .single-products-jirei ul:before{
	content:"";
	display:block;
	width: 50%;
	height:0;
}
#page .single-products-jirei ul:before{
	order:1;
}
#page .single-products-jirei ul li{
	width: calc(50% - 6px);
	margin: 0 6px 12px 0;
}
	
#page .single-products-jirei ul li:nth-of-type(3n) {
    margin: 0 6px 12px 0;
}
#page .single-products-jirei ul li:nth-of-type(2n){
	margin: 0 0 12px 0;	
}
#page-contents .single-products-jirei p.title{
	font-size: 0.9em;
}
	
	
/*single-product オアシスドーム*/
.oasis-original a{
    width:100%
}
	
/*施工事例タブ内*/
	
.single-content h3{
	margin: 1vw 0 5vw 0!important;
	padding: 0!important;
	}

element.style {
}

#tab li:hover {	
	opacity: 1;
}
.single-content{
	width: 100%;
	height: auto!important;
	margin: 0;
	}
	
	.works-archive div.thumb{
		margin-bottom: 4vw;
	}
	
#page .feature li:nth-child(2n) {
    width: 100%!important;
	margin-top: 54px;
	float: none;
}
#page .feature li{
    width: 100%;
}

	.feature {
    position: relative;
    margin-bottom: -50px!important;
}
	
.circle1{
	top: 23%;
    left: 16%;
}
.circle2{
	top: 16%;
    left: 50%;
}
.circle3{
	top: 21%;
    left: 57%;
}
.circle4{
	top: 19%;
    left: 43%;
}
.circle5{
	top: 24%;
    left: 38%;
}
.circle6{
	top: 29%;
    left: 75%;
}
.circle7{
	top: 37%;
    left: 62%;
}
	
.circle8{
	top: 21%;
    left: 43%;
}
.circle9{
	top: 21%;
    left: 62%;
}
.circle10{
	top: 25%;
    left: 63%;
}
.circle11{
	top: 30%;
    left: 63%;
}
.circle12{
	top: 30%;
    left: 53%;
}
.circle13{
	top: 30%;
    left: 38%;
}
.circle14{
	top: 26%;
    left: 28%;
}

	
/*ニュース*/
.news-single .btn{
		width: 100%;
		max-width: 100%;
	}
.news-single .prevnext .prev ,.news-single .prevnext .next{
    margin: 10px 0;
	}
	
/*グロースとは*/
#page .about-growth .col4 li{
	width: 49%;
	}
#page .about-growth .col4 li:nth-of-type(2n){
	margin-right: 0;
	}
#page .about-growth .btn{
	width: 100%;
	max-width: 100%;
	}
	
	
	
	.wpdm-download-link.btn.btn-info.btn-lg{
		min-width: 100%;
	}	
	
	
	
/*	会社概要 */
#page .col3-banner li {
    width: 100%;
    float: left;
    margin: 0 0 20px 0;
}

#page .col3-banner li:nth-child(3n) {
    margin-right: 0;
}
#page .about-ad{
	display: block;
}
	

#page .jigyousyo-table .jigyousyo-table-txt{
	display: inline-block;
	align-items: normal;
	height: 100%;
}


/* ===================================================================
　service
==================================================================== */
#page .service .col2 li{
	position: relative;
	padding-bottom: 0;	
	margin-bottom: 40px;
}
#page .service .col2 .btn{
	position: static;
	bottom: auto;
}
#page .service .col2 .btn a{
  min-width: auto;
}

.consul-approach p{
	text-align: left!important;
	width: 100%;
	margin-bottom: 0!important;
}
.consul-approach{
	border: 1px solid #000;
	padding: 2% 3%;
    width: 95%;
    margin: 0 auto 30px auto;
}




/* ===================================================================
　LP
==================================================================== */
#lp .inner {
    width: 80.5%!important;
	min-width: auto!important;
}
#lp .btn04 a{
	position: relative;
}
#lp .btn04 a:after{
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	left: 50%;
	bottom: 1em;
	transform: translate(-50%,0);		
	border-style: solid;
	border-width: 5px 5px 0 5px;
	border-color: #bfd6dd transparent transparent transparent;
}

	
/* h1 */
#lp h1{
 margin:0 0 80px;
 font-size:38px;
}
#lp h1 span.lp-h1-subread{
 font-size:14px;
 padding-bottom:14px;
}
#lp h1 span.lp-h1-read{
 font-size:18px;
 padding-bottom:8px;
}


/* h2 */
#lp h2 {
 margin:0 0 20px;
 font-size:21px;
}
#lp h2 span.lp-h2-read{
 font-size:14px;
 padding-bottom:8px;
}
#lp h2:after {
 width:40px;
 margin:20px auto 0;
}


/* h3 */
#lp h3{
font-size: 16px;
 line-height:140%;
 margin-top:0;
 margin-bottom:1em;
text-align: center;
}

/* h4 */
#lp h4{
font-size: 14px;
 line-height:140%;
 margin-top:0;
 margin-bottom:1em;
text-align: center; 
}


/* 汎用クラス */
.lp-left{
	float: none;
	width: 100%;
}
.lp-right{
	float: none;
	width: 100%;
}


/* lp-col2*/
.lp-col2{
	display: block;
	justify-content: flex-start;
	flex-wrap: nowrap;
	margin: 0 0 20px;
}
.lp-col2:after,
.lp-col2:before{
	width: 100%;
}
.lp-col2 .lp-col2-box{
	width: 100%;
	margin: 0 0 20px 0;
	position: static;
	padding: 20px 20px 0;
}
.lp-col2 .lp-col2-box:nth-of-type(2n){
	margin: 0 0 0 0;	
}
.lp-col2 .lp-col2-box figure{
	position: static;
	bottom: auto;
	left: auto;
}


/* lp-col3*/
.lp-col3{
	display: block;
	justify-content: flex-start;
	flex-wrap: nowrap;
	margin: 0 0 30px;
}
.lp-col3:after,
.lp-col3:before{
	width: 100%;
}
.lp-col3 .lp-col3-box{
	width: 100%;
	margin: 0 0 20px 0;
	padding: 20px;
}
.lp-col3 .lp-col3-box:nth-of-type(3n){
	margin: 0 0 0 0;	
}
#lp .lp-col3 .lp-col3-box figure{
	position: relative;
  overflow: hidden;
  margin: 0 0 20px 0;
	padding-top: 60%;	/* 比率 */
}
.lp-col3 .lp-col3-box figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}



/* section 1 */
section#lp-sec_01 .inner{
	height: 460px;	
}
.lp-sec_01-l{
	left: 50%;
	top: 60%;
	transform: translate(-50%,-60%);	
	width: 100%;
}


/* section 2 */
section#lp-sec_02{
	padding: 30px 0 0;
}
section#lp-sec_02 .lp-al-r{
	margin: 0;
}

/* ã­ãã·é¡ */
.bubble-base {
    margin: 20px 40px 0 0;	
    max-width: 100%;
    padding: 20px;
	line-height: 140%;
}



/* section 3 */
section#lp-sec_03:before{
	border-width: 30px 60px 0 60px;
}
section#lp-sec_03{
	padding: 40px 0 30px;	
}
section#lp-sec_03 .lp-left{
	width: 100%;
	margin: 0 auto 20px;
	text-align: center;
}
section#lp-sec_03 .lp-right{
	width: 100%;
	margin: 0 auto 20px;
}
section#lp-sec_03 p{
	margin: 0 0 20px 0;
}


/* section 4 */
section#lp-sec_04{
	padding: 30px 0 30px;	
}
section#lp-sec_04 .lp-left{
	width: 100%;
	margin: 0 auto 20px;
}
section#lp-sec_04 .lp-right{
	width: 100%;
	margin: 0 auto 20px;
	text-align: left;
}

section#lp-sec_04 .lp-bgwhite-box{
	margin: 0 0 20px;
	padding: 25px 20px 20px 30px;
}
section#lp-sec_04 .lp-bgwhite-box .lp-left{
	width: 100%;
}
section#lp-sec_04 .lp-bgwhite-box .lp-right{
	width: 100%;
}
#lp section#lp-sec_04 .lp-bgwhite-box h3{
	text-align: left;
}
#lp section#lp-sec_04 .lp-bgwhite-box h3 span.num{
	display: inline-block;	
	width: 20%;
	font-size: 60px;
	margin: 0 10px 0 0;
}
#lp section#lp-sec_04 .lp-bgwhite-box h3 span.word{
	display: inline-block;
	width: 65%;
	text-align: left;
}
	
	
	

/* section 5 */
section#lp-sec_05{
	padding: 20px 0 30px;	
}
#lp section#lp-sec_05 h4{
	font-size: 16px;
	min-height: auto;
	text-align: left;
	margin: -8px 0 1em 1em;
}



/* section 6 */
section#lp-sec_06{
	clear: both;	
	padding:20px 0 0;	
	background: #bfd6dd;
	overflow: hidden;
}

	
	
/* section 7 */
section#lp-sec_07{
  display: none;
}


/* section 8 */
section#lp-sec_08{
	padding: 30px 0 30px;	
}
#lp section#lp-sec_08 h4{
	font-size: 14px;
}
section#lp-sec_08 .lp-col2-box ul,
section#lp-sec_08 .lp-col2-box figure{
	padding: 0 0 10px;
	margin: 0 0 10px 0;
}
section#lp-sec_08 .lp-col2-box ul li:before {
    top: 0.8em; /*ç¹ã®ä½ç½®*/
}
section#lp-sec_08 .lp-col2-box ul li.kaigyo:before {
	top: 0.8em;
}



/* section 9 */
section#lp-sec_09{
	clear: both;	
	margin: 0;
	padding: 40px 0;	
}
.lp-form-wrap div.wpforms-container-full .wpforms-form button[type="submit"]{
    font-size: 16px;
    padding: 17px 30px;
}




/* timeline */
.timeline {
	display: block;
	position: static;
	width: 100%;
	padding: 0;
	table-layout: auto;
}	
.timeline-item {
	display: block;
	position: relative;
  padding: 0 0 4rem 30px;
	vertical-align: top;
	border-top: 0;
	border-bottom: 0;
	border-left: 2px solid #6699a0;
}
.timeline-item:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 10px;
    height: 10px;
    content: '';
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    border-radius: 100%;
    background-color: #6699a0;
}	
.timeline .timeline-item:nth-of-type(2):before {
    left: 0;
}
.timeline-item:last-of-type {
	padding-bottom: 4rem;
	text-align: left;
}	
.timeline-item:last-of-type:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 10px;
    height: 10px;
    content: '';
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    border-radius: 100%;
    background-color: #6699a0;
}	

.timeline-label,
.timeline-content{
	display: block;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.timeline-label {
	position: absolute;
	top: -10px;
	left: 1em;
	-webkit-transform: translateX(0) translateY(0);
	transform: translateX(0) translateY(0);
	text-align: left;
	font-size: 24px;
	line-height: 1;
}
.timeline .timeline-item:nth-of-type(2) .timeline-label {
    left: 1em;
}
.timeline .timeline-item:nth-of-type(2) .timeline-content{
	display: static;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.timeline-content {
	margin-top: 0;
}
.timeline-item:last-of-type .timeline-label,
.timeline-item:last-of-type .timeline-content{
	display: inline-block;
	-webkit-transform: translateX(0);
	transform: translateX(0);
	text-align: left;
}
.timeline-item:last-of-type .timeline-label {
	right: auto;
	left: 1em;
	-webkit-transform: translateX(0) translateY(0);
	transform: translateX(0) translateY(0);
}
#lp-sec_05 .timeline:last-of-type .timeline-item:last-of-type:after {
    position: absolute;
	display: block;
    content: '';	
	top: auto;
	right: auto;
	bottom: -1px;
	left: -1px;
    width: 0;
    height: 0;
    -webkit-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
    border-width: 10px 5px 0 5px;
    border-style: solid;
    border-color: #6699a0 transparent transparent transparent;
    border-radius: 0;
    background-color: transparent;
}		
#lp-sec_05 .timeline:last-of-type .timeline-item:last-of-type {
	padding-bottom: 1rem;
	}
	
	
	

/* floating-lp */
.floating-lp{
	width:100%;
	top:auto; 
	bottom:0;
}
.floating-lp li{
	width:50%;
	float: left;
}
.floating-lp a{
	position: static;
	padding:10px;
	text-align: center;
	font-size:12px;
	margin: auto;
	height: 30px;
	line-height: 120%;
}
.floating-lp li:nth-child(1) a{ 
	background: #000;
	height: 60px;
}
.floating-lp li:nth-child(2) a{ 
	background: #145358;
	height: 60px;
}
.floating-lp li a p{
	position: static;
	letter-spacing: 1px;
	transform: none;
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: horizontal-tb;
	writing-mode: horizontal-tb;
}
.floating-lp li a span.span01{
	font-size: 9px;
}
.floating-lp li a span.span02{
	font-size: 12px;
}
.floating-lp li:nth-child(1) a span.span02{
	margin-top: 3px;
	font-size: 18px;
}


	
.modal__content {
    background: #fff;
    left: 66%;
    padding: 40px 20px;
    position: absolute;
    top: 50%;
    transform: translate(-79%,-50%);
    width: 80%;
}
	
	
	


/* ===================================================================
　contents-temp
==================================================================== */
.contents-temp{
	width: 100%!important;
	min-width: 100%!important;
	max-width: 999px!important;
	margin: 0 auto;	
}
.contents-temp-mainimg{
  position: relative;
  width: 90%;
  padding: 0;		
	margin: 0 auto 30px;	
}
.contents-temp-mainimg img{
	width: 100%;
	height: auto;
	max-height: auto;
}
#page .contents-temp h2::after {
	width: 30px;
}

/*.ct-txt*/
.ct-txt{
  position: static;
	width: 85%;
	margin: 0 auto!important;
	padding: 0 0 40px;	
}
.ct-txt p{
  text-align: left;
  margin-bottom: 0!important;
}


/*.ct-img-r*/
.ct-img-r{
	position: static;
	display: block;
	padding: 0;
}
.ct-img-r-img{
	width: 90%;
 	min-height: auto;
	margin: 0 auto 20px;
	right:auto;
}
.ct-img-r-img img{
  height: auto;
}
.ct-img-r-img:before {
    top: 10%;
    left: 10%;
}
.ct-img-r-img:before {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: '';
    background: #074322;
}
.ct-img-r-txt h2{
  font-size: 18px!important;
}
.ct-img-r-txt{
    width: 85%;
	margin: auto;
	padding: 30px 0 0;
    height: auto;
    position: static;
    top: auto;
    left: auto;
	right: auto;
	  transform: translate(0,0);
}

/*.ct-img-l*/
.ct-img-l{
	position: static;
	display: block;
	padding: 0;
}
.ct-img-l-img{
	width: 90%;
 	min-height: auto;
	margin: 0 auto 20px;
	left:auto;
}
.ct-img-l-img img{
  height: auto;
}
.ct-img-l-img:before {
    top: 10%;
    right: 10%;
}
.ct-img-l-img:before {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: '';
    background: #074322;
}
.ct-img-l-txt h2{
  font-size: 18px!important;
}
.ct-img-l-txt{
    width: 85%;
	margin: auto;
	padding: 30px 0 0;
    height: auto;
    position: static;
    top: auto;
    left: auto;
	  transform: translate(0,0);
}

	
	
	
	
/*.contents-temp-yudobtn*/
.contents-temp-yudobtn{
    width: 90%;
    margin: 0 auto 50px!important;
}
.contents-temp-yudobtn img{
	max-height: auto;
	min-height: 450px;
}
.contents-temp-yudobtn-fil {
    position: absolute;
	top: auto;
    bottom: 0;
    left: auto;
    width: 100%;
    height: auto;
}
.contents-temp-yudobtn-fil02 {
  padding: 20px;	
}
#page .contents-temp-yudobtn-fil h2{
	font-size: 18px!important;
	padding: 0 0 10px;
}
#page .contents-temp-yudobtn-fil p{
	margin-bottom: 10px;
}



/*.contents-temp table*/
#page .contents-temp table{
	width: 90%;
	margin: 0 auto 50px!important;	
}
#page .contents-temp table tr{
	padding:30px 0;
}



/*#footer-top-contactbtn*/
#footer-top-contactbtn{
    height: 260px;
}
.footer-top-contactbtn-in02{
	width: 80%;
}
#footer-top-contactbtn h2{
	font-size: 18px;
}
#footer-top-contactbtn  .tel{
	font-size: 16px;
}
#footer-top-contactbtn .fc-form a {
	font-size: 14px;
}

	
.inner1080 h2{
  font-size: 18px!important;
}	
	

#page .sigyou p{
    margin: auto;
	margin-bottom: 30px;
	}
#page .sigyou h2{
    font-size: 18px!important;
    margin: auto;
	margin-bottom: 30px;
	}
	
	
	
/* ===================================================================
　philosophy
==================================================================== */
.philosophy-ryakureki{
	margin: 20px 0 0;
}
.philosophy-ryakureki-l{
	float: none;
	width: 100%;
}
.philosophy-ryakureki-r{
	float: none;
	width: 100%;
}
#page .philosophy table {
    margin: 0 auto 0;
}

} /*ã¦ã£ã³ãã¦å¹ãæå¤§999pxã¾ã§ã®å ´åã«é©ç¨*/
	
@media screen and (max-width: 599px) { /*ã¦ã£ã³ãã¦å¹ãæå¤§599pxã¾ã§ã®å ´åã«é©ç¨*/
		
/* download link */
.w3eden .card-body {
    padding: 1rem!important;
}	
.w3eden .mr-3, .w3eden .mx-3{
	float: left;
}
.w3eden .media {
 display:block!important;
}
.w3eden .media-body {
 -ms-flex:1;
 flex:1
}	
a.wpdm-download-link{
	width: 100%!important;
}	
#page .w3eden .ml-3, .w3eden .mx-3 {
    margin-left: 0!important;
}		
#page .media-body h3{
	text-indent: 0;
	margin-bottom: 0;
	border: 0;
	font-size: 1.1rem;
}

	
	
	
	
	

} /*ã¦ã£ã³ãã¦å¹ãæå¤§599pxã¾ã§ã®å ´åã«é©ç¨*/


@media screen and (max-width: 464px) { /*ã¦ã£ã³ãã¦å¹ãæå¤§464pxã¾ã§ã®å ´åã«é©ç¨*/
	.mailform .list label span{
	width: 140px;
	}
}
@media screen and (max-width: 369px) { /*ã¦ã£ã³ãã¦å¹ãæå¤§369pxã¾ã§ã®å ´åã«é©ç¨*/
	.mailform .list label span{
	width: 120px;
	}
}