@charset "utf-8";
@import url('css/font.css');

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  src: url(font/materialicons.woff2) format('woff2');
font-display: swap;
}
.reason-items .reason-item .icon .material-symbols-outlined,
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -moz-font-feature-settings: 'liga';
  -moz-osx-font-smoothing: grayscale;
}
html body{
font-family: 'Noto Sans JP', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
color:var(--col_text_main);
font-weight: 400;
}
.slide-text {
	font-family: var(--font_serif);
}

.serif,
.mincho{
font-family:var(--font_serif);
font-feature-settings: "palt" 1;
letter-spacing: 0.1em;
}

.telnum{
font-family: 'Arial', 'Helvetica', "sans-serif"
}

/*BRAND*/
:root{

--col_key01:#493628;/*ナビなどで使用*/
--col_key02:#ab886d;
--col_key03:#d6c0b3;
--col_key04:#faf8f6;/*薄い背景など*/
--col_key05:#836752;/*ボタン*/
--col_text_main: #454545;
--col_text_link: #3C3835;
--hdr-height	:100px;
--hdr-height-sm	:60px;
--font_serif: 'Noto Serif JP', serif;

}
.col_key01{
	color: var(--col_key01) !important;
}
.col_bg_key01{
	background: var(--col_key01) !important;
}
.col_key02{
	color: var(--col_key02) !important;
}
.col_bg_key02{
	background: var(--col_key02) !important;
}
.col_key03{
	color: var(--col_key03) !important;
}
.col_bg_key04{
	background: var(--col_key04) !important;
}
.col_key05{
	color: var(--col_key05) !important;
}
.col_bg_key05{
	background: var(--col_key05) !important;
}


.col_key_bg01{
background: var(--col_key04);
}



#main{
font-size: clamp(0.813rem, 0.744rem + 0.34vw, 1rem);
}
/*
h1,h2,h3,h4,h5,h6,.gothic{
font-family: 'Noto Sans JP', sans-serif;
color: #222;
}
*/
.over_btn .todetail a{
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
display: block;
padding: 0 !important;
overflow: hidden;
text-indent: -150%;
white-space: nowrap;
border: 0 !important;
}
a,
#headnav ul li a,
.home-menu a:link,
.home-menu a:visited{
color: #3C3835;
}
body.home #breadcrumb{
display: none;
}


/*ラッパー最大幅*/
.wrapper.container{
max-width: 1230px;
}

/*HEADER*/

#wrapper .btn-gnavi{
	right: 3%;
	top: 50px;
	transform: translateY( -50%);
}
#globalheader { 
  z-index: 300;
  position: fixed;
  right: 0;
  left: 0;
  top:calc( var(--hdr-height) * 0.5 );
  margin-left: 3%;
  margin-right: 3%;
  transform: translateY(-50%);
  transition: transform 0.3s ease; /* ← これを追加 */
}


#globalheader .sitetitle{
	max-width: 120px;
	width: 100%;
}
#globalheader .sitetitle .w100{
	display: block;
	position: relative;
	height: 100%;
}

#globalheader .sitetitle img{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}



#header:before {
content: "";
position: fixed;
display: block;
top: 0;
background: rgba(255,255,255,1);
/*
backdrop-filter:blur( 5px );
-webkit-backdrop-filter: blur(5px);
*/
width: 100%;
height: var(--hdr-height);
z-index: 299;
}
#header {
padding-top:var(--hdr-height);
}
#headnav{
	margin-right: 50px;
}


@media screen and (min-width:1480px) {
}
#headnav ul{
font-size: 0;
letter-spacing: 0;
margin: 0;
white-space: nowrap;
text-align: right;
}
#headnav ul li{
font-size: 14px;
}
#headnav ul li a{
white-space: nowrap;
padding: 19px 1vw;
display: block;
}
#headnav ul li a:hover{
}
#headnav .home-menu{
margin: 0;
padding: 0;
}


.home-menu li{
padding: 0;
}
.home-menu li li{
text-align: left;
}

#headnav .home-menu li:not(.links_offer) a{
	line-height: 1.5;
}
#headnav .home-menu li:not(.links_offer) a:after{
	content: "";
	display: block;
	height: 2px;
	background:var(--col_key03);
	width: 0;
	opacity: 0;
	transition: .3s;
	margin-left:  -0.3em;
}

#headnav .home-menu li:not(.links_offer) a:hover:after{
	width:calc( 100% + .6em);
	opacity: 1;
}



#headnav .home-menu .sub-menu li a:after{
	content: none;
}
#headnav .home-menu .sub-menu li a{
	padding: 0.5rem 2rem;
	position: relative;
}
#headnav .home-menu .sub-menu li a:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background:var(--col_key03) ;
	opacity: 0;
	transition: .3s;
}
#headnav .home-menu .sub-menu li a:hover:before {
	background:var(--col_key03) ;
	opacity: 0.3;
}


.home-menu .sub-menu{
margin-left: 1.5em;
}
.home-menu .sub-menu > .menu-item a{
padding: 0.3em 0.5em;
line-height: 16px;
}

#headnav ul li.links_offer a{
color: #fff;
padding-top: 23px;
padding-bottom: 23px;
}
#headnav ul li.links_offer a:hover{
	opacity: .8;
}
li.links_offer a:before{
font-family: 'Material Icons';
display: inline-flex;
justify-content: center;
font-size: 1.4em;
margin-right: 0.4em;
vertical-align: middle;
}

li.links_offer.to_event a{
	background: var(--col_key01);
}

li.links_offer.to_event a:before{
content: "\efff";	
}
li.links_offer.to_shiryou a{
	background: var(--col_key02);
}

li.links_offer.to_shiryou a:before{
content: "\e873";	
}

li.links_offer.to_inquiry a{
	background: var(--col_key03);
}
li.links_offer.to_inquiry a:before{
content: "\e158";	
}

#headnav .home-menu .menu > li {
vertical-align: top;
}

#headnav li.links_offer.to_sns a,
#headnav li.links_offer.to_call a{
	width: 2rem;
}.home-menu .snslink li{
	display: none;
}

#headnav .home-menu .snslink,
#headnav .home-menu .snslink > ul{
	display: contents;
}
#headnav .home-menu .snslink > ul li{
	width: auto;
	display: inline-block;
	margin: 0;
}
.home-menu .snslink > ul li svg{
	width: 1.7rem;
	height: auto;
}
.home-menu .snslink > ul li a,
.home-menu .snslink > ul li svg path{
	height: auto;
	line-height: 1;
	transition: .2s;
}
.home-menu .snslink > ul li a{
	padding: 1rem 0.5rem !important;
}
.home-menu .snslink > ul li svg path{
	fill:#333;
	opacity: 0.6;
}
.home-menu .snslink > ul li a:hover svg path{
	opacity: 1;
}
.home-menu .snslink ul li a:after{
	display: none !important;
}

@media screen and (max-width: 767.98px) {

#header:before {
height:  var(--hdr-height-sm);
}
#header {
	padding-top:  var(--hdr-height-sm);
}
#wrapper .btn-gnavi{
	top: 25px;
}
#globalheader {
  top:calc(  var(--hdr-height-sm) * 0.5 );
}
#globalheader .sitetitle .to_home{
	max-width: 100px;
	max-height:none;
}
#globalheader .sitetitle img {

}
.home-menu .snslink > ul li a {
  padding: 0.5rem !important;
}	
	
}


@media screen and (max-width: 575.98px) {
	#headnav{
		max-width: calc( 100% - 120px);
		overflow: hidden;
	}
}



#foot-offer{
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 399;
background: rgba(0,0,0,0.10);
}
#foot-offer .flexbox{
max-width: 800px;
margin:  0 auto;
}
#foot-offer .flexbox > li{
width:calc(100% / 3 );
margin: 0;
display: block;
list-style: none;
}
#foot-offer .flexbox > li a{
display: block;
padding: 0.8em 0.3em;
text-align: center;
font-size: 1rem;
}
@media screen and (max-width: 575.98px) {
#foot-offer .flexbox > li a:before{
	display: block;
	margin: 0;
}
	#foot-offer .flexbox > li a{
		font-size: clamp(0.813rem, 0.578rem + 1.17vw, 1rem);
	}
}

#global-navi #access li.links_offer{
display: none !important;
}

#foot-offer li a{
	text-decoration: none;
}

	
@media screen and (max-width: 1199.98px) {
#headnav .links_offer.to_shiryou,
#headnav .links_offer.to_inquiry{
	display: none;
}
}

@media screen and (max-width:767.98px) {
#headnav .home-menu .menu > li:not(.links_offer){
display: none !important;
}
}
/*HOME*/
#home-slider{
max-width: 2048px;
height: auto;
margin: 0 auto;
z-index: 50;
position: relative;
overflow: hidden;
}
#home-slider .nivo-caption{
display: none !important;
}

.nivo-controlNav{
display: none;
}


#slideshow:hover .nivo-directionNav a {
}
#slideshow .nivo-directionNav a {
display: block;
width: 30px;
height: 30px;
background: url("images/arrows.png");
text-indent: 110%;
white-space: nowrap;
overflow: hidden;
transition: all 200ms ease-in-out;
}
#slideshow  a.nivo-nextNav {
background-position: -30px 0;
right: -45px;
}

#slideshow  a.nivo-prevNav {
left: -45px;
}
#slideshow:hover  a.nivo-nextNav {
background-position: -30px 0;
right: 15px;
}

#slideshow:hover  a.nivo-prevNav {
left: 15px;
}
/*CAROUSEL*/
#home-carousel{
background: #fff;
letter-spacing: 1%;
z-index: 55;
position: relative;
overflow-x: hidden;
}

@media screen and (max-width:991.98px) {
#home-carousel{
margin-top: 0;
}

}

#calousel_ttl .ttl{
margin: 0 auto 0.7em;
display: block;
}

#inc-eventposts{
position: relative;
}
#inc-eventposts .owl-carousel .owl-nav{
display: block;
margin: 0;
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
pointer-events: none;
}

#inc-eventposts .owl-carousel .owl-nav button{
opacity: 0;
display: block;
margin: 0;
border-radius: 0;
background: rgba(0,0,0,0.80);
color: #fff;
top: 50%;
transform: translateY(-50%);
position: absolute;
transition: all .3s ease;
pointer-events: auto !important;
}
#inc-eventposts .owl-carousel:hover .owl-nav button{
opacity: 0.7;
transition: all .3s ease;
}

#inc-eventposts .owl-carousel .owl-nav.disabled {
display: block !important;
}
.owl-carousel .owl-nav button{
display: block;
width: 32px;
height: 55px;
overflow: hidden;
}
.owl-carousel .owl-nav button.owl-next{
right: -55px;
}
.owl-carousel .owl-nav button.owl-prev{
left: -55px;
}

.owl-carousel:hover .owl-nav button.owl-next{
right: 0;
}
.owl-carousel:hover .owl-nav button.owl-prev{
left: 0;
}

.owl-carousel .owl-nav button.owl-next:before,
.owl-carousel .owl-nav button.owl-prev:before{
font-size: 2.5rem;
display: inline-flex;
justify-content: center;
}

.owl-carousel .owl-nav button.owl-next:before{
font-family: 'Material Icons';
content: "\e5cc";	
}
.owl-carousel .owl-nav button.owl-prev:before{
font-family: 'Material Icons';
content: "\e5cb";}



.content_header{
	position: relative;
}

.content_header .to_index{
	position: absolute;
	bottom: 0em;
	right:0;
	text-align: right;
	font-size: 1rem;
	line-height: 1;
	text-decoration: none;
}
.content_header .to_index:before{
font-family: 'Material Icons';
content: "\e896";
display: inline-block;
vertical-align: middle;
opacity: 0.7;
font-size: 1.4em;
margin-right: 0.2em;
}
.content_header .to_index.grid:before{
content: "\e5c3";
}
.content_header .to_index.staff:before{
content: "\ea1d";
}

body.home .content_header > h2.ttl{
}
.content_header a.to_index:hover{
	color: #999;
}

#home-concept:before,
#home-concept #home-concept-header .ttl,
#concept_choice ul{
background: var(--col_key04);
}
#home-concept{
	position: relative;
}
#home-concept:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	z-index: -3;

}
#home-concept .inbox{
	position: relative;
}
#home-concept .inbox:before{
	content: "";
	display: block;
	position: absolute;
	border: 1px solid #595757;
	width: 100%;
	max-width: 1100px;
	margin-left: 50%;
	transform: translate(-50%);
	bottom: 0;
	top: 0;
	margin-top: 1em;
	z-index: -1

}

#home-concept #home-concept-header .ttl{
display: inline-block;
padding: 0 2em;
}


#home-concept #home-concept-header  + div p{
line-height: 2em;
}
#home-concept .inbox + .btn{
margin-top: -2em;
cursor: default;
}
#concept_item{
	margin-left:calc( -44vw  + 50%);
	margin-right:calc( -44vw  + 50%);
}
@media screen and (max-width: 767.98px) {
#concept_item{
	margin-left:2rem;
	margin-right:2rem;
}


}
#concept_item .nav-item .w100 {
  height: 0;
  padding-top: clamp(12rem, 65%, 6rem);
}

#concept_choice li,
#concept_choice li div,
#concept_choice li img{
position: relative;
}
#concept_choice li a{
}
#concept_choice li:before{
position:absolute;
content: "";
background: #fff;
top: 0;
bottom: 0;
left: 15px;
right: 15px;
display: block;
}
#concept_choice li a{
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
display: block;
overflow: hidden;
white-space: nowrap;
text-indent: 150%;
}

#concept_choice li .txtcell{
padding: 0.2em 0.7em 1.5em;
}
#concept_choice li .subttl{
display: block;
margin-bottom: 1em;
}
#concept_choice li .ttl{
font-size: 17px;
line-height: 1.6em;
}



#concept_choice li figure{
position: relative;
}
#concept_choice li figure:after{
}
#concept_choice li:hover figure img{
opacity: 0.7;
}
@media screen and (max-width:991.98px) {
#concept_choice li .ttl{
font-size: 1.5vw;
}
}
@media screen and (max-width:767.98px) {
#concept_choice li .ttl{
font-size: 3vw;
}
}


#home-concept .to_detail a{
	font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
}




#before-after{
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
/*HOME-INFOAREA*/


#home-infoarea .content_header{
	
}
#home-infoarea .content_header  a{
color: #454545;
}

#home-news .content_header + .posts{
	position: relative;
	padding-top: 2rem;
}
#home-news .content_header + .posts:before{
content: "";
display: block;
height: 1rem;
border-top: 1px solid #595757;
position: absolute;
left: 0;
right: 0;
	top: 0;
	
}
#home-news{
background: var(--col_key04);
	box-shadow: 0 0 0 100vmax var(--col_key04);
	clip-path: inset( 0 -100vmax);
}

#home-news .posts,
#home-event .posts{
}
#home-news > .arrow.btn,
#home-event > .arrow.btn{
	margin-top: auto;
	display: block;
	padding-top: 1em;
}



#home-news .posts .post .thumbnail{
max-width: none;
}
#home-news .posts .post .thumbnail .attachment{
padding-top: 87%;
margin-bottom: 10%;
}
/*HOME-EVENTS*/




@media screen and (max-width:767.98px) {
#home-event .posts .post.style-event{
flex: 100%;
}
}



/*HOME-VOICE*/
#home-voice{
}
#home-voice .posts.post.style-voice{}
#home-voice .posts .post .thumbnail,
#home-voice .posts .post .metabox{
width: 100%;
max-width: none;
}

#home-voice .posts .post .attachment{
position: relative;
}
#home-voice .posts .post.style-voice:before{
}


#home-greeting{
}

#president .row figure img{
	object-fit: cover;
	aspect-ratio: 2 / 3;
	max-height: 300px;
}
@media screen and (max-width: 575.98px) {
#president .row figure img{
	aspect-ratio: 3 / 2;
}
}


#home-staff{
}

#home-staff .flexbox > *{
background: #fff;
width: calc( 100% / 5 - 6px );
padding: 0.5rem;
margin: 0 3px;
margin-bottom: 1.5em;
}

#home-staff .user_info{
position: relative;
background: #F6F7FB;
}

@media screen and (max-width:767.98px) {
#home-staff .flexbox > *{
width: calc( 94% / 3 );
}
.page-staff .user_info{
width: calc( 94% / 2 );

}
}
@media screen and (max-width:575.98px) {
#home-staff .user_info,
#home-staff .staff-list{
width: 100%;
margin-bottom:0.5rem;
}
#home-staff .photobox,
#home-staff .staff-meta{
display: inline-block;
vertical-align: top;
text-align: left;
}
#home-staff .photobox{
width: 20%;
margin-bottom: 0;
}
#home-staff .staff-meta{
width: 75%;
}
#home-staff .staff-list a{
text-align: center;
}
#home-staff .staff-list a img{
display: none;
}
#home-staff .staff-list a:after{
content: "> RECRUIT";
color: #595757;
} 
}
/*HOME-BOUT*/
#home-blog {
}
.post.style-inc_blog{}
.post.style-inc_blog:before{
	content: "";
	background: #fff;
	position: absolute;
	left: 0.5rem;
	right: 0.5rem;
	top: 0.5rem;
	bottom: 0.5rem;
	border-radius: 0.4rem;
}

.home-posts{
position: relative;
}

.aboveright.arrow.toindex{
text-align: center;
}
.aboveright.arrow.toindex a{
color: #3C3835;
text-decoration: none;
}

@media screen and (min-width:1200px) {

.aboveright.arrow.toindex{
position: absolute;
right: 0;
top: 1.5em;
}
}


/*ZEH ACHIEVEMENT*/

.zeh{
margin: 100px auto 150px;
}


.zeh1 .title{
color: #059A38;
}
.zeh1 p{
margin-bottom: 0.5em;
line-height: 1.5em;
}
.zeh2{
width: 100%;
display: table;
overflow: hidden;
border: 1px solid #595757;
color: #595757;
}

.zeh3{
display: table-cell;
border-right: 1px solid #595757;
width: 40%;
text-align: center;
vertical-align: middle;
font-size: 20px;
white-space: normal;
}

.zeh4{
padding:10px 30px 10px 40px;
}

#zeh_achievement{}

#zeh_achievement .zeh_achievement p{
margin: 0;
}
@media screen and (max-width:767.98px) {
.zeh2,
.zeh3,
.zeh4{
width: 100%;
display: block;
border: none;
padding: 0.5em;
}
.zeh3{
border-bottom: 1px solid #595757;
}	
}


.include-contact {
color: #fff;
background: var(--col_key02);
}
.include-contact .telnum {
  font-size: min(7vw,30px);
}
.include-contact .telnum,
.include-contact.telnum a{
color: #fff;
} 
.include-contact .btn a{
padding: 0.7em 0;
}
.include-contact .btn.to_shiryou  a{
background: var(--col_key05);
color: #222;
}
.include-contact .btn.to_inquiry  a{
background: var(--col_key04);
color: #fff;
}
.include-contact .telnum a{
color: #fff;
}




.posts .post{
	position: relative;
}
.noimg::before {
  background:
url("images/sitetitle.webp") no-repeat center #eee;
background-size: auto;
background-size: 50%;
filter: grayscale(10%) opacity(40%);
border: none;
outline-offset: inherit;
}
/*HOME-EXAMPLE*/

/*POST EXAMPLE　REFORM　VOICE*/

/*
body.archive.tax-reform_cat .wrapper,
body.archive.post-type-archive-reform .wrapper,*/
body.archive.tax-ex_cat .wrapper,
body.archive.post-type-archive-example .wrapper,
body.archive.tax-voice_cat .wrapper,
body.archive.post-type-archive-voice .wrapper
{
	max-width: 1380px;
}
body.archive.tax-ex_cat .entry-header h1,
body.archive.post-type-archive-example  .entry-header h1,
body.archive.tax-voice_cat  .entry-header h1,
body.archive.post-type-archive-voice  .entry-header h1{
	border-top: 0;
}



.posts .linkarea.post.style-example:hover .todetail a{
	background: transparent;
}
.posts .post.style-example .thumbnail .attachment {
	padding-top: 56.25%
}
.posts .post.style-example .attachment img{
transition: all 0.4s ease;
}
.posts .post.style-example:hover .attachment img{
	transform: scale(110%) translate(-45%, -45%);
	
}



.posts .post.style-voice .catch,
.posts .post.style-example .catch,
.posts .post.style-voice .title,
.posts .post.style-example .title{
	align-content: stretch;
	padding: 0;
	display: block;
}

.posts .post.style-voice .title a,
.posts .post.style-example .title a{
	display: block;
	text-align: center;
}
.posts .post.style-example .title .todetail a{
	background: #D18E35;
	color: #fff;
	border: none;
	opacity: 1;
}
.posts .post.style-example .title .todetail a:hover{
	opacity: 0.8;
}
.posts .post.style-example .title .todetail a:after{
	color: #fff;
}

.posts .post.style-voice .metabox{}
.posts .post.style-voice .metabox .todetail{}

.posts .post.style-voice .thumbnail .attachment{
	padding-top: 62%;
}

.example-item-inner {
position: absolute;
text-align: center;
color: #fff;
left: 0;
right: 0;
top: 0;
bottom: 0;
display: block;
background: rgba(0,0,0,0.70);
opacity: 0;
font-size: 0.8rem;
transition: 0.3s;
text-decoration: none;
}
.linkarea a.example-item-inner:hover{
opacity: 1 !important;
color: #fff;
text-decoration: none;
background: rgba(0,0,0,0.7);
}
#home-example .linkarea:hover {
opacity: 1 !important;
}
.example-item-inner .inbox {
position: absolute;
top: 50%;
transform: translateY( -50%);
width: 100%;
padding: 0 0.5rem;
}

.posts .post.style-home-example .ttl{
	font-size: 1.1rem;
}

@media screen and (max-width: 575.98px) {
.posts .post.style-home-example .ttl{
	font-size: clamp(0.813rem, 0.738rem + 0.37vw, 0.875rem);
}
}

.posts .post.style-home-example .thumbnail {
position: relative;
height: 0;
/*padding-top: 66%;*/
padding-top: 56.25%;
background: #efefef;
}
.posts .post.style-home-example .thumbnail img {
position: absolute;
width: 100%;
height: auto;
top: 50%;
left: 50%;
transform: translate( -50% ,-50%);
}


body.home #home-example .posts .post.style-home-example .thumbnail{
	padding-top: 140%;
	overflow: hidden;
}

body.home #home-example .posts .post.style-home-example .thumbnail > img{
	height: 100%;
	max-width: none;
	width: auto;
}



.posts .post.post.style-event.closed .event-status{
display: none;
}
.posts .post.style-event .metabox .todetail{
padding-top: 1em;
}
.posts .post.style-event .metabox .todetail span{
background: #fff;
border-radius: 1.5em;
padding: 0.5em 1.5em;
border: 1px solid #ccc;
}
.post.style-event .to_detail{
display: inline-block;
vertical-align:middle;
margin-top: 1rem;
}
.post.style-event .to_detail:before{
font-family: 'Material Icons';
display: inline-block;
vertical-align: middle;
content: "\e890";
color: #9c9a99;
font-size: 1.5em;
margin-right: 0.3em;
}

@media screen and (max-width: 575.98px) {
.posts .post.style-event .metabox .todetail span{
	display: block;
	text-align: center;
	}
}


/*HOME-EVENTS*/

.event-meta{
	font-size:clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
}
.posts .post.style-event a.event-closed{
background: rgba(255,255,255,0.70);
}

@media screen and (max-width:767.98px) {
#home-event .posts .post.style-event{
flex: 100%;
}
}

.event_type_icon{
	font-size: 12px !important;
}

.outerwrap::before{
background:var(--col_key04);
}


/*HOME-REASON*/
/*#home-reason.outerwrap:before{
	background: url("images/reason-bg.webp") center no-repeat;
	background-size: cover;
}
*/

#home-reason {
}

#home-reason .nav-item .nav-item-inner{
bottom: 0;
right: 0;
left: 0;
padding: 0.5rem;
background: rgba(255,255,255,0.60);

backdrop-filter:blur( 3px );
-webkit-backdrop-filter: blur(3px);


top:inherit;
transform: none;
color: #000;
text-shadow: none;
}
#home-reason .nav-item .w100{
padding-top: min(12rem, 75%);
}
#home-reason .nav-item .w100 img{
filter: none;
}
#home-reason .nav-item .nav-item-inner{
font-size: clamp(0.75rem, 0.659rem + 0.45vw, 1rem);
}


/*アイコン表示*/
.reason-items .reason-item{
position: relative;
}

.reason-items .reason-item .item_bg{
	content: "";
	background: #fff;
	position: absolute;
	left: 0.5rem;
	right: 0.5rem;
	top: 0;
	bottom: 0.5rem;
	z-index: -1;
	border:0.2rem solid #ccc;
	box-sizing: border-box;
}


.reason-items .reason-item .icon .material-symbols-outlined,
.reason-items .reason-item .icon .material-icons{
	font-size: 4.5rem;
}
.reason-items .reason-item a{
	font-size: 0.85em;
	padding: 0.3em;
	position: absolute;
	bottom: 1.5rem;
	left: 2rem;
	right: 2rem;
	transition: .3s;
}
.reason-items .reason-item a:hover{
	opacity: 0.8;
}

@media screen and (max-width: 575.98px) {
.reason-items .reason-item .item_bg{
	top: 0;
}
.reason-items .reason-item .icon{
	width: 6rem;
}
#home-reason .reason-items .reason-item .rsn_ttl{
	width:  calc( 100% - 6rem);
}
.reason-items .reason-item a{
	left: 1.5rem;
	right: 1.5rem;
	bottom: 1rem;
}

}

/*個別設定*/

.reason-items .reason-item,
.reason-items .reason-item .item_bg{
	transition: .3s;
}
.reason-items .reason-item:hover{
	opacity: 0.8;
}

.reason-items .reason-item{
	position: relative;
}

.reason-items .reason-item a{
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
}
.reason-items .reason-item a .arrow{
	position: absolute;
	left: 1.5rem;
	right: 1.5rem;
	bottom: 1.5rem;
	background: #fff;
	
}
.reason-items .reason-item a .arrow:before{
content: "\e5cc";
font-family: 'Material Icons';
display: inline-block;
opacity: 1;
vertical-align: middle;
}

@media screen and (max-width: 575.98px) {
	
.reason-items .reason-item:before{
content: "\e5cc";
font-family: 'Material Icons';
display: inline-block;
opacity: 1;
vertical-align: middle;
color: #fff;
position: absolute;
right: 1.5rem;
top: 50%;
font-size: 1.3em;
width: 1.3em;
height: 1.3em;
line-height: 1.3;
text-align: center;
border-radius: 50%;
border: 1px solid #fff;
transform: translateY( -50%);
}
.reason-items .reason-item a .arrow{
display: none;
}

}






.nav-item > *:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	pointer-events: none;
}
.nav-item > * {
	position: relative;
	margin-bottom: 0;
	overflow: hidden;
}
.nav-item .nav-item-inner{
	position: absolute;
	top: 1.5rem;
	left: 1rem;
	right: 1rem;
	color: #fff;
	text-shadow: 0 0 1.5rem #000,00 0 1rem #000,0 0 0.5rem #000;
}

.nav-item .nav-item-inner{
	font-size:1.1rem;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
}

.nav-item .w100{
	height: 0;
	padding-top:clamp(6rem, 75%, 12rem);
/*	padding-top: clamp(7rem, 70%, 14rem) ;*/
}
.nav-item .w100 img{

	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: auto;
	transform:translate( -50%,-50%);
	  filter: brightness(75%)  saturate(115%);
	transition: .3s;
}
.nav-item .w100:hover img{
  filter: brightness(100%)  saturate(100%);
}

@media screen and (max-width: 575.98px) {
.nav-item .nav-item-inner{
}
}


/*HOME-VOICE*/
#home-voice{
}
#home-voice .posts.post.style-voice{}
#home-voice .posts .post .thumbnail,
#home-voice .posts .post .metabox{
width: 100%;
max-width: none;
}

#home-voice .posts .post .attachment{
	position: relative;
}
#home-voice .posts .post.style-voice:before{
}


#home-greeting{
}



#home-staff{
}

#home-staff .flexbox{
	margin-left: -3px;
	margin-right: -3px;
}
#home-staff .flexbox > *{
	background: #fff;
	width: calc( 100% / 5 - 6px );
	margin: 0 3px;
}

#home-staff .user_info{
	position: relative;
	background:var(--col_key04);
}

@media screen and (max-width:767.98px) {
#home-staff .flexbox > *{
	width: calc( 94% / 3 );
	}
.page-staff .user_info{
	width: calc( 94% / 2 );
	
}
}
@media screen and (max-width:575.98px) {
	#home-staff .user_info,
	#home-staff .staff-list{
		width: 100%;
		margin-bottom: 1px;
	}
#home-staff .photobox,
#home-staff .staff-meta{
		display: inline-block;
		vertical-align: top;
		text-align: left;
	}
	#home-staff .photobox{
		width: 20%;
		margin-bottom: 0;
	}
	#home-staff .staff-meta{
		width: 75%;
	}
	#home-staff .staff-list a{
		text-align: center;
	}
	#home-staff .staff-list a img{
		display: none;
	}
	#home-staff .staff-list a:after{
		content: "> RECRUIT";
		color: #595757;
	} 
}



/*ABOUT*/

#main.page-template-htmlpage_about h2{}


#about-filter li .title{
background: #9F8369;
border-left:0;
color: #fff;
}
/*STAFF POPUP*/
.staff_list{
}

.staff_list .edit_theme.staff{
position: initial;
display: block;
width: 100%;
clear: both;
text-align: right;
}


.user_info .staff-post,
.user_info .staff-division{
line-height: 1.8em;
color: #B56B31;
}

.user_info .staff-post,
.user_info .staff-division{
line-height: 1.4em;
font-size: 0.9em;
}

.user_info .staff-name{
font-size: 1.1em;
}
.user_info .staff-kana{
font-size: 0.8em;
}
.user_info .staff-meta{
text-align: center;
}
.user_info .staff-meta > div{
width: auto;

}


#staff-inbox {}
#staff-inbox .user_info {
position:inherit;
padding: 0;
}
#staff-inbox .user_info > .inbox{
position: relative;
}

#staff-inbox .user_info .user_name > span {
margin-right: 1em;
}
.user_info .userphoto, .user_info .photo {
object-fit: cover;
  aspect-ratio: 2 / 3;
  max-height: 300px;
}
#staff-inbox .user_info .thumbnail {
float: left;
}
#staff-inbox .user_info .photobox{
position: relative;
}
#staff-inbox .user_info .photobox img.photo{
max-width: 152px;
margin: 0 auto;
display: block;
}

#staff-inbox .user_info .user-meta {
float: right;
width: calc(100% - 220px);
}

.user_info{

}
.user_info .staffpopup{
width:100%;
height: 100%;
background:rgba(0,0,0,0.7);
box-sizing:border-box;
position:fixed;
top:0;
left:0;
right: 0;
bottom: 0;
padding-bottom: 200%;
visibility: hidden;
opacity: 0;
}

.user_info .staffpopup .inbox{
z-index: 99;    
background:#fff;
padding:1em 2%;
box-sizing:border-box;
position:fixed;
top:50%;
left:50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 90%;
max-width: 800px;
	border-radius: 0.5rem;
}
.user_info .staffpopup .inbox .w100{
position: relative;
margin-bottom: 1em;
}
.user_info .staffpopup .inbox .w100 .romaji{
margin-left: 15px;
margin-right: 15px;

}


.user_info img{
width:100%;
}
.user_info label{
display:block;
position:absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
}
body.page-about .user_info label,
body.page-staff .user_info label{
cursor:pointer;
}

.user_info label span{
}
.user_info label span:hover{
cursor:pointer;
}
.user_info input[type="checkbox"]{
display: none;
}

.user_info input[type="checkbox"]:checked + .staffpopup{
z-index: 400;
}
.user_info input[type="checkbox"]:checked + .staffpopup{
visibility: visible;
opacity: 1;
transition:.3s;
}

.userinfo_detail{
/*    font-size: 0.85em;*/
line-height: 1.6;
font-size: 1em;;
}
.userinfo_detail .user_post_division{}

.userinfo_detail .user_post_division > span{
display: inline-block;
margin-right: 1em;
}
.userinfo_detail em{
font-style: normal;
}
.userinfo_detail .credential,
.userinfo_detail .from{
font-size: 0.9em;
margin-bottom: 0.5em;;
}
body.home .user_info input[type="checkbox"]:checked + .staffpopup{
display: none;
}


/*PAGE*/

#main .entry-content h2{
	font-size: clamp(1.25rem, 1rem + 1.25vw, 2rem);
	margin-bottom: 1em;
	margin-top: 1em;
}
#main .entry-content h3{
	font-size:clamp(1.25rem, 1.125rem + 0.63vw, 1.625rem);
	margin-bottom: 1em;
	margin-top: 1em;
}
#main .entry-content h4{
	font-size: clamp(1.063rem, 1rem + 0.31vw, 1.25rem);
	margin-bottom: 0.5em;
	margin-top: 0.5em;
}
#main .entry-content h2,
#main .entry-content h3,
#main .entry-content h4,
#main .entry-content h5,
#main .entry-content h6{
font-feature-settings: "palt" 1;
}


.entry-content .anchor{
margin-bottom: 7em;
}
@media screen and (min-width:768px) {
.entry-content .anchor{
margin-bottom: 4em;
}
}

#topinfo.page_header{
background: url("images/pg_hdr-bg@2x.jpg") center no-repeat;
background-size: cover;
padding: 8%;
color: #fff;
text-align: center;
font-weight: normal;
}

#topinfo.page_header .subttl{
font-size:0.85rem;
display: block;
}
#topinfo.page_header .ttl_img{
margin-left: auto;
margin-right: auto;
}

body.page-template-htmlpage_onecolumn_notitle #content .entry-content:first-child{
padding-top: 0;
padding-bottom: 0;
}
/*ENTRY*/

h1.index-title,
h1.entry-title,
h1.page-title,
header.entry-header span.entry-title{
font-weight: 500;
color: #000;
letter-spacing: .04em;
margin: calc(20em/40) 0 calc(28em/40);
margin-bottom: 1.5rem
}
@media screen and (min-width:576px) {
h1.index-title,
h1.entry-title,
h1.page-title,
header.entry-header span.entry-title{
font-size: 1.3em;
margin-bottom: 3rem
}
}

h2[style="text-align: center;"],
h3[style="text-align: center;"],
h4[style="text-align: center;"],
h5[style="text-align: center;"]{
background: none;
padding-left: 0;
padding-right: 0;
}


.ttl.merit{
color: var(--col_key02);
background: none;
vertical-align: middle;
padding-left: 0;
}

.ttl.merit > span{
background:var(--col_key02);
color: #fff;
display: inline-block;
padding: 0.2em 1em;
border-radius: 3px;
vertical-align: middle;
font-size: 1rem;
margin-right: 0.8rem;
}

.ttl.point{
color:var(--col_key01);
background: none;
vertical-align: middle;
border-bottom: 0;
padding-left: 5em;
text-indent: -5em;
}

.ttl.point > span{
background:var(--col_key01);
color: #fff;
padding: 0.2em 1em;
border-radius: 3px;
vertical-align: middle;
margin-right: 1em;
font-size: 1rem;
letter-spacing: 0;
}


.ttl_ribbon,
.entry-content .ttl_ribbon{
background: #E49A0F none;
color: #fff;
text-align: center;
padding-right: 0;
max-width: 1200px;
margin: 0 auto 1em;
border: 0;
padding: 0.5em ;
}

.ttl_ribbon.btn{}

.wide.btn {
width: 80%;
margin-left: auto;
margin-right: auto;
background: transparent;
}
.wide.btn a{
display: block;
width: 100%;
padding: 0.6em;
background: #EEB118 none;
}

/*工務店コンテンツ　、REASONコンテンツ*/
/*builder_content*/

body.page-about{}
body.page-about .row figure{
	height: 100%;
}
body.page-about .row figure img{
	object-fit: cover;
	aspect-ratio: 2 / 3;
}
@media screen and (max-width: 575.98px) {
body.page-about .row figure img{
	aspect-ratio: 3 / 2;
}
}
#main > .builder_content .entry-content img{
	border-radius: clamp(0.188rem, 0.142rem + 0.23vw, 0.313rem);
}

#main > .builder_content .entry-content .rounded-0 img{
	border-radius: 0;
}
#main > .builder_content .entry-content .col-sm-6 img,
#main > .builder_content .entry-content .col-md-6 img{
	max-width: 350px;
	margin-left: auto;
	margin-right: auto;
}
#main > .builder_content header.builder_content_ttl{
	padding: 0;
	position: relative;
	margin-bottom:0;
}

#main > .builder_content .builder_content_ttl .entry-title{
/*h1　非表示*/
display: block;
text-indent: 110%;
overflow: hidden;
white-space: nowrap;
height: 3rem;
}

@media screen and (min-width: 768px) {
#main > .builder_content header.builder_content_ttl{
	padding: 1.5rem 0 0.5rem calc(clamp(11.25rem, 0.139rem + 23.15vw, 17.5rem) * 15 / 100 + 0.5rem - 1px);
}

}


#main > .builder_content .entry-title{
	font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem);
	margin: 0 !important;
}
#main > .builder_content .builder_content_ttl .entry-title{
	padding: 1rem 0 0;
	opacity: 0.65;
}
.builder_content .left_nav_wrapper .entry-content .anchor.mt-0:before,
.builder_content .left_nav .anchor.mt-0:before{
	content: none;
}

.hentry.builder_content .entry-content dl.flow dt{
margin-top: 1.5rem;
margin-bottom: 2rem;
border-bottom: 1px solid #ccc;
padding-bottom: 1rem;

}
.hentry.builder_content .entry-content section:not(#home-reason) h2,
#main.page-template-htmlpage_about .entry-content h2{
margin-top: 1.5rem;
margin-bottom: 2rem;
border-bottom: 1px solid #ccc;
padding-bottom: 1rem;
padding-left:clamp(1rem, 0.273rem + 3.64vw, 3rem);
margin-left:clamp(-3rem, -1 * (0.273rem + 3.64vw), -1rem);
}
.hentry.builder_content  .entry-content section:not(#home-reason) h2,
#main.page-template-htmlpage_about .entry-content h2{
margin-left:clamp(-3rem, -1 * (0.273rem + 3.64vw), -1rem);
}
.hentry.builder_content  .entry-content dl.flow dd::before{
	border-bottom: 0;
}
.hentry.builder_content  .entry-content dl.flow dd{
	padding-bottom: 2rem;
}
.hentry.builder_content  .entry-content section:not(#home-reason) h2.ttl.point,
.hentry.builder_content  .entry-content section:not(#home-reason) h3.ttl.point{
	margin-left:0;
	padding-left: 7rem;
	text-indent: 0;
}

.hentry.builder_content  .entry-content section:not(#home-reason) h2.ttl.point > span,
.hentry.builder_content  .entry-content section:not(#home-reason) h3.ttl.point > span{
	margin-left:-7rem;
}


/*page BUILDER*/
.pagetab.pagetab-main.fixed{
}
#main > .builder_content .left_nav .sub-menu{
}
#main > .builder_content .left_nav ul ,
#main > .builder_content .left_nav ul li{
	padding: 0;
}
#main > .builder_content .left_nav.fixed{
	position: fixed;
		top:var(--hdr-height);
		opacity: 1;
		visibility: visible;
	transition: .3s;
	}
#main > .builder_content .left_nav {
	margin-top: 0;
	background: rgba(255,255,255,0.80);
	z-index:1;
}
.left_nav.pagetab > div{
width:70%;
margin-left: 15%;
margin-right:auto;
}

.left_nav.pagetab li.current > a::after,
.left_nav.pagetab li.current_page_item > a::after,
.left_nav.pagetab li a:hover::after{
	width:calc( 100% - 1rem);
	left: -0;
	background: var(--col_key03);
}


.left_nav.pagetab li.not-current > a::after,
.left_nav.pagetab li.current-menu-ancestor.has-current > a::after{
	background: transparent ;
}


@media screen and (min-width: 768px) {
.left_nav.pagetab li.current-menu-ancestor.not-current > a::after{
width:calc( 100% - 1rem);
left: -0;
background: var(--col_key03);
}
#main > .builder_content .entry-content{
min-height: 55vh;
}
#main.page-template-htmlpage_about > .builder_content .entry-content{
padding-bottom: 10rem;
}

	
#main > .builder_content .left_nav {
	width:clamp(15rem, 8.333rem + 13.89vw, 18.75rem);
	left: 0;
	right: inherit;
	position: absolute;
}
	#main > .builder_content .left_nav.fixed_bottom{
		top: 0;
		opacity: 0;
		visibility: hidden;
	}

#main > .builder_content .left_nav ul li{
	display: block;
	text-align: left;
}
#main > .builder_content .left_nav ul {
	display: block;
}
	
#main > .builder_content  .entry-content{
	padding-left: calc(clamp(12.5rem, 1.389rem + 23.15vw, 18.75rem) + clamp(1rem, 0.273rem + 3.64vw, 3rem));
	position: relative;
}
	
}
@media screen and (min-width: 1200px) {
#main > .builder_content .left_nav {
	left: calc( 50vw - 600px );
	}
	
#main > .builder_content header.builder_content_ttl:before{
	left: calc( -50vw + 50% );
	right: calc( -50vw + 50% );
	}
}

@media screen and (max-width: 767.98px) {

.left_nav.pagetab ul.menu > li > a:after{

font-family: 'Material Icons';
display: inline-flex;
justify-content: center;
align-items: center;
content: "\e313";
background: transparent;
width: auto;
line-height: inherit;
position: relative;
vertical-align:middle;
padding-left: 0.5em;
font-size: 2.0em;
	font-weight: 200;
	color: #fff;
opacity: 1;
}
#main > .builder_content .left_nav{
	padding-right: 0.6rem;
	padding-top: 0.6rem;
background: transparent;
}
.left_nav.pagetab > div{
width: 100%;
text-align: right;
}
.left_nav.pagetab > div > ul{
display: inline-block;
}

.left_nav.pagetab ul.menu > li > a{
	background: var(--col_key01);
	opacity: 0.7;
	color: #fff;
	border-radius: 3px;
	padding: 0.4rem 1rem;
	display: inline-block;
	backdrop-filter:blur( 5px );
 -webkit-backdrop-filter: blur(5px);

}
	.left_nav.pagetab ul.menu > li > a:hover{
		opacity: 0.9;
	}
	
	
#main > .builder_content .left_nav{
margin-bottom: 0;
top: -2rem;
}
#main > .builder_content .left_nav.fixed{
top: var(--hdr-height-sm);
right: 0;
left: 0;
}
#main > .builder_content .left_nav .sub-menu{
display: none;
}
.modal {
display: none;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
justify-content: center;
align-items: center;
z-index: 1000;
}

.modal-content {
background: #fff;
padding: 20px;
border-radius: 8px;
width: 90%;
max-width: 500px;
overflow-y: auto;
}

.modal.active {
    display: flex;
}

}

.modal-content .modal-close {
	position: absolute;
	right: 0.5rem;
	top: 0.5rem;
}
.modal-content .modal-close > span{
	display: block;
	width: 2rem;
	line-height: 2rem;
	background: #666;
	color: #fff;
	border-radius: 50%;
}


/*PAGE CONCEPT*/

#main.page-concept #page_concept00:before{
background: url("images/pg-concept00-gb.jpg") no-repeat center #E6E3DB;
background-size: cover;
padding: 2% 0 2%;
}

/*CONCEPT INFOALIVR*/

.spec_price {
text-align: center;
}
.spec_price > *{
width: 100%;
vertical-align: bottom;
padding: 1em;
box-sizing: border-box;
}
.spec_price table{
width: 100%;
}
.spec_price table td,
.spec_price table th{
border: 1px solid #ccc;
font-weight: normal;
padding: 0.4em ;
}


.spec_price > div{}

.spec_price .price{
font-size: 1.2em;
margin-bottom: 0;
}

.spec_price .price-box{
padding:2em 0 0;
border-bottom: 1px solid #595757;
}
.spec_price .price-box .ttl{
text-align: left;
}
.spec_price .price-box .price{
text-align: right;
}
.spec_price .price .number{
font-size: 2em;
color: #C60505;
margin-left: 1em;
}
.pagetab.concept-nav li{
position: relative;
}
.pagetab.concept-nav li.concept1 a{
background:#E3597E;
}
.pagetab.concept-nav li.concept2 a{
background:#D39E46;
}
.pagetab.concept-nav li.concept3 a{
background:#5388BE;
}
.pagetab.concept-nav li.concept4 a{
background:#72A757;
}

.pagetab.concept-nav li a:hover,
.pagetab.concept-nav li.current-menu-item a{
border: 0;
opacity: 0.8;
color: #fff;
}
.pagetab.concept-nav li a::before{
background: #361B02;
color: #fff;
opacity: 1;
}
@media screen and (min-width:992px) {
.pagetab.concept-nav li{
width: 25%;
}
}

#page_concept-intro{}
#page_concept-intro p{
line-height: 2em;
}



.page_concept_content:nth-child(even) .imgcell figure{
margin-left: -28%;
}
.page_concept_content:nth-child(odd) .imgcell figure{
margin-right: -28%;
}


.page_concept_content h3.ttl.noicon{
padding-left: 0 !important;
padding-top: 0;
margin-top: 0;
}

.page_concept_content .textcell p{
line-height: 2em;
}


@media screen and (max-width:767.98px) {
#page_concept-intro p.txt-llll{
font-size: 5.5vw;
}
#page_concept-intro p.txt-l{
font-size: 3.6vw;
}
#main.page-concept .page_concept_content .textcell h2{
font-size: 5.5vw;
border: 0;
padding-left: 0;
padding-right: 0;
text-align: center;

}

#main.page-concept .imgcell figure{
margin-left: -10%;
margin-right: -10%;
}

}

/*PAGE OHIKIWATASHI FLOW*/
main.page-ohikiwatashi-flow{}

main.page-ohikiwatashi-flow dl.flow dt{
color:var(--col_key01);
}

main.page-ohikiwatashi-flow dl.flow dt:before{
background:var(--col_key01);
}


/*PAGE　KURASHI*/
main.page-kurashi .page_concept_content .row > div{
z-index: 3;
position: relative;
}
main.page-kurashi .page_concept_content:after{
height: calc( 100% - 7.8em );
top: 7.8em;
z-index: 1;
left: -15px;
width: 100vw;
}
@media screen and (min-width:1200px) {
main.page-kurashi .page_concept_content:after{
z-index: 1;
left: calc( 600px - 50vw);
}
}

/*BUILDER*/
.builder_page_h1{}

.builder_page_h1 h1{ 
font-size: 1.4em;
padding: 0.5em;
color: #fff;
background: #5F401D;
text-align: center;
}


/*FOOTER*/

#global-navi-logo > a{
}
#hiddendiv{
z-index: inherit;
}

.gtn-contgact {
text-align: center;
}

.gtn-contgact > *{
display: inline-block;
vertical-align: middle;
}
.gtn-contgact .inc_contact-btn .btn_set{
margin: 0;
}
.gtn-contgact .inc_contact-btn a{
width: auto;
padding: 0.3em 1.5em;
}
.gtn-contgact .inc_contact-btn .btn {
margin: 0;
padding: 0.2em
}

@media screen and (max-width:575.98px) {
.gtn-contgact .inc_contact-btn .btn {
width: 100%;
}
}

@media screen and (max-width:767.98px) {
#wrapper #global-navi{
padding-top: 0;
}	
#global-navi-logo > a{
max-width: 200px;
}
}

.wpcf7-validates-as-date{
min-width: 8em;
min-height: 1.7em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}

#footer{}
#footer_img{
display: none;
}

#footer_inbox{
background: #3C3835;
}

#footer ,
#footer a{
color: #fff;
}
#footer .footer-contact{
border-bottom: 1px solid #fff;
}



/*cookie-notice*/
#cookie-notice{
background: rgba(50,50,58,0.4) !important;
top:0;
}
#cookie-notice.cookie-notice-hidden {
display: none;
}

#cookie-notice .cookie-notice-container{
background: #fff;
width: 90%;
border-radius: 4px;
max-width: 640px;
margin: 50vh auto 0;
position: relative;
}
#cookie-notice #cn-notice-text{
color: #333;

}
#cookie-notice #cn-close-notice{
position: absolute;
display: block;
right: 3px;
top: calc( 100% - 15px);
}

.cookie-notice-container #cn-notice-buttons a{
margin-bottom: 5px !important;
}
#wrapper #global-navi{
background: rgba(65,56,53,0.8);
-webkit-backdrop-filter: blur(30px);
backdrop-filter: blur(30px);
}
#wrapper #global-navi ul li a{
color: #fff;
}



.entry-content{}


#main.single-example{}

#example-content .example-entry{
	line-height: 2;
}
#example-content .example-entry p{
	margin-bottom: 1.5rem;
}
#galleryslider{
	background: transparent;
	position: relative;
}
#main.single-reform .entry-header::before,
#main.single-example .entry-header::before{
}



@media screen and (min-width: 576px) {
  .story_set .img-cell figure {
    display: block;
    margin-left: calc(-25vw + 50%);
    margin-right: calc(-25vw + 50%);
    overflow: hidden;
    position: relative;
    max-height: 85vh;
  }
.story_set .text-cell {
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
    background: rgba(255,255,255,0.8);
	backdrop-filter:blur( 2px );
 -webkit-backdrop-filter: blur(2px);
    z-index: 3;
    line-height: 2.0;
  }
}


/* ギャラリー全体 */
/* 共通（ベース） */
.gallery {
  display: grid;
  gap: 16px;
  margin: 30px 0;
}

/* カラム数 2〜9 */
.gallery.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}
.gallery.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}
.gallery.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}
.gallery.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}
.gallery.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}
.gallery.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

/* 画像 */
.gallery-item {
	position: relative;
}
.gallery-item img {
  width: 100%;
  height: auto;
  display: block;
}
/* ホバーエフェクト（軽いズーム） */
.gallery-item:hover img {
  opacity: 0.8;
}
/* ---------------------------------------
   ギャラリー（slick-slider 以外）にのみ適用
---------------------------------------- */

/* aタグにクリックを通すため position を指定 */
.gallery:not(.slick-slider) .gallery-item a {
  position: relative;
  z-index: 2; /* 最前面に置く */
  display: block;
}

/* 暗転用オーバーレイ（背面へ） */
.gallery:not(.slick-slider) .gallery-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background .3s ease;
  z-index: 1; /* aタグより下にする！ */
}

/* キャプション（画像の上に表示） */
.gallery:not(.slick-slider) .gallery-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  text-shadow: 1px 1px 3px #000;

  padding: 10px 14px;
  font-size: 0.9rem;
  color: #fff;

  opacity: 0;
  transform: translateY(10px);

  transition: opacity .3s ease, transform .3s ease;
  z-index: 3; /* オーバーレイより上 */
}

/* ホバー時 */
.gallery:not(.slick-slider) .gallery-item:hover::before {
  background: rgba(0,0,0,0.99);
}

.gallery:not(.slick-slider) .gallery-item:hover .gallery-caption {
  opacity: 1;
  transform: translateY(0);
}

