@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Allura&family=Anton&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
.slick_thumb .slick-track {
transform:unset!important;
}

.allura {
  font-family: "Allura", cursive;
  font-weight: 400;
  font-style: italic;
	font-size:0.9rem;
}

/*********** svg ************/

.logo-blue {
 fill: #103770;
}

.logo-white{
	fill:#fff;
}

.title-logo{
	display:flex;
	width:240px;
	align-items:center;
	margin-right:10px;
}

/***************************/

small.right{
	text-align:right;
	display:block;
	margin-top:2.5vh;
}

header.page{
  position: relative;
}

header.page nav *{
  color:#101010;
}
.Recruit .comm__Inner .Item picture a:hover{
	opacity:0.7;
}

.recruit__image{
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}

.p-page-visual__inner {
  margin: 0 auto;
  padding: 0 60px 0 ;
  display: flex;
  justify-content: space-between;
  height: 50vh;
  min-height: 600px;
}

.p-page-visual__inner div{
  width: 40%;
  padding: 2.6vw ;
  margin-bottom: 0;
  position: relative;
  margin-top: auto;
}

header.page .p-page-visual__inner picture{
  width: 60%;
}

h1.heading__title{
  font-family: "Inter", sans-serif;
  font-size: 6rem;
  color:#fff;
  margin: 0;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.1;
}
.c-heading-secondary__sub {
  margin-top: 0.6rem;
  display: block;
  font-size: clamp(0.9rem,1.2rem,1.4rem);
  color: #fff;
  background: var(--key-Color);
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.08em;
  display: flex;
  column-gap: .5em;
  justify-content: center;
  align-items: center;
}

.p-page-visual__mv {
  width: auto;
  height: clamp(300px,500px,600px);
  object-fit: cover;
  overflow: hidden;
}
.p-page-visual__mv img{
  width: 100%;
}

.mt__none{
	margin-top:0 !important;
}
.video-title{
	max-width:750px;
	margin-left:auto;
	margin-right:auto;
}

.video__wrap{
	padding-top:0;
}

section .comm__Inner{
  position: relative;
}

section.page h2 + .jan-small.left{
  margin-bottom: var(--row-space);
}

section.border--top{
  border-top: 1px solid #ddd;
}
section.border--bottom{
  border-bottom: 1px solid #ddd;
}

.ilust__right{
  width: 200px;
  position: absolute;
  right:calc(var(--row-space) * 1.5);
  top:-1em;
  z-index: 5;
}

.ilust__right.kikai{
  width: 120px;
}

.ilust__right.kaitai{
  width: 300px;
  top:1.5em;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {

  .page__fv{
    margin-top: 0;
  }
  .p-page-visual__inner {
    padding: 5rem var(--row-space) 1rem;
  }
  h1.heading__title {
    font-size: 3.5rem;
  }
  .p-page-visual__mv{
    height: 300px;
  }
  #about .flex{
    flex-direction: column;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  #about .flex .Hurf{
    width: 100%;
  }
}

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

  .page__fv{
    height: 25vh;
    margin-top: 0;
  }
  .ilust__right{
    width: 90px;
    top:0;
    right:-10px;
  }
  .ilust__right.kikai{
    width: 100px;
  }
  .ilust__right.kaitai{
  width: 130px;
  top:1em;
}
}

/******************* 会社概要 *******************/


.page{
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif
}

ul.disc{
  list-style: none;
  margin: 0 auto 1em;
  padding-left: 0;
}

ul.disc li::before{
  content: '●';
  color:var(--key-Color);
  display: inline-block;
  font-size: 0.9rem;
  margin-right: 10px;
}

ul.disc li{
  display: flex;
  align-items: center;
  margin-top: 1em;
  font-weight: 400;
font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.company__wrap{
  max-width: 1200px;
  margin: auto;
}

.company__wrap .flex__wrap{
  flex-direction: row-reverse;
  column-gap: 5%;
}

#philosophy{
  background: var(--darkgray);
}

#philosophy h2{
  color:#fff;
}

.philosophy__wrap{
	max-width:1200px;
	margin:0 auto;
}
.company__wrap .flex__wrap .right, .company__wrap .flex__wrap .left, .philosophy__wrap .flex__wrap .right, .philosophy__wrap .flex__wrap .left{
  padding: 0;
}

.philosophy__wrap .flex__wrap .left{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.comm__Inner--1200 .left{
  padding: 0;
}

dl.philosophy{
  margin: 0 auto;
  padding: 0;
  width: max-content;
}

dl.philosophy li{
  background: #f7f3ed;
  font-size: var(--h4);
  padding: .25em 0;
  position: relative;
  display: flex;
  column-gap: .5em;
  align-items: center;
  margin-bottom: .75em;
  font-weight: bold;
  color:#fff;
}

dl.philosophy li:last-of-type{
  margin-bottom: 0;
}

#philosophy dl.philosophy li{
  position: relative;
  background: transparent;
  font-weight: bold;
  font-size: 1.25rem;
  font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

dl.border{
  display: flex;
  margin: 0;
  border-bottom: 1px solid #eee;
  background: rgba(255,255,255,0.95);
}

dl.border dt{
  width: 25%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: clamp(1em,1.8vw,1.9vw);
  border-right: 1px solid #eee;
  margin: 0;
  font-weight: bold;
  text-align: center;
}
dl.border dd{
  width: 75%;
  padding: clamp(1em,1.8vw,1.9vw);
  margin: 0;
  line-height: 2.0;
}

dl.border dd .flex{
  display: flex;
  column-gap: .5em;
  align-items: center;
}

dl.border dd .flex a.btn{
  font-size: 0.75rem;
  padding: .25em .8em;
  border-radius: 4.46em;
  max-width: 110px;
  margin: 0;
}

dl.border dd .flex a.btn .arrow{
  width: 15px;
}
.arrow::before{
  width: 7px;
}

.president{
  max-width: 280px;
  margin: 2.5em 0 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  
  .anchor__wrap a.btn{
    font-size: 15px;
  }
}
@media only screen and (max-width: 767px) {
  #philosophy dl.philosophy li{
    font-size: 1.05rem;
  }
}

 /******************* 沿革 *******************/

.underline{
  text-decoration: underline;
}

.movie img{
  border:1.1vw solid #202020;
}

/******************* 施工実績 *******************/

.bg-box{
position: relative;
    padding: 1em;
	background:#f4eaff;
    margin-bottom: 2em;
    line-height: 1.855;
}

.achivements h4{
	padding-bottom:.75em;
	border-bottom:2px solid var(--key-Color);
	display:inline-block;
}

@media only screen and (max-width: 767px) {
  .bg-box{
    font-size: 0.75rem;
  }
}

.work__detail{
  background: #e9f2ff;
  padding:0 .5em .5em 0;
  font-weight: normal;
  margin-top: 1.5em;
  margin-top: 2em;
}

.work__detail .icon{
  background: #052a75;
  color:#fff;
  font-size: 1.25rem;
  display: flex;
  min-width: 40%;
  text-align: center;
  padding: 1em;
  margin-bottom: .5em;
  font-weight: bold;
}
.work__top__wrap{
	display:flex;
	flex-wrap:wrap;
	column-gap:5%;
	margin:0 auto;
	justify-content:center;
}

.work__top__wrap .Image{
	width:50%;
}

.work__top__wrap .Text{
	width:45%;
}


/******************* お問い合わせ *******************/


.comm__Inner{
  position: relative;
  z-index: 2;
}

.comm__Inner--1200{
  max-width: 1200px;
  margin: auto;
}

.comm__Inner--1200 h3.border:first-of-type{
  margin-top: 0;
}

h3.contact__mt{
	margin-top:5vh !important;
}

.comm__Inner.pt__none{
	padding-top:0 !important;
}

#contact dl.border dt, #contact dl.border dd{
  padding: 1em;
  line-height: 1.75;
}

#contact p.Center{
  text-align: center;
  margin-bottom: 2em;
}

#contact dl.border dd p, #contact dl.border dt p{
  margin-top: 0;
  margin-bottom: 0;
}

p.Center{
  text-align: center;
}

p.white{
  color:#fff !important;
}

.wpcf7-list-item{
  margin-left: 0 !important;
}

.cate_flex{
  display: flex;
  flex-wrap: wrap;
  gap: 1.546vw;
  margin-bottom: 2em;
}

.cate_flex a{
  width:var(--flex_third_space);
  max-width: 100%;
  background: #fff;
  color:#fff;
  font-size: 0.9rem;
  font-weight: 300;
  font-family:游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.cate_flex a::before {
  background: #999;
  border: 1px solid #454545;
  z-index: -1;
}


section.contact{
  background:#353535;
}

section.contact::before{
  content: '';
  background: #000;
  position: absolute;
  left:0;
  top:0;
  width: 100%;
  height: 10%;
}
.contact__tel__wrap{
  max-width: 800px;
  margin: auto;
  border-radius: 0.46em;
  overflow: hidden;
  border:1px solid #ccc;
  padding-bottom: .5em;
  margin-bottom: 5vh;
}

.contact__tel__top{
  padding: .5em;
  background: var(--blue);
  text-align: center;
  color:#fff;
  border-top-left-radius: 0.46em;  
  border-top-right-radius: 0.46em;
  margin-bottom: .25em;
  font-size: 1.05rem;
}

.contact__tel__wrap p:last-of-type{
  margin-bottom: 0 !important;
  margin-top: -5px;
}

section.yellow-bg .comm__Inner, section.contact .comm__Inner{
  background: #fff;
  padding: 2.6vw;
  max-width: 1200px;
  margin: auto;
}

.date{
  font-style: italic;
  font-size: 1.0rem;
  display: flex;
  column-gap: 10px;
  align-items: center;
}

.date::before{
  content: '';
  background: var(--key-Color);
  border-radius: 3.46em;
  width: 30px;
  height: 5px;
}

.single h3{
  padding:.75em;
  font-weight: 500;
  background: #363636;
  color:#fff;
  padding-left: .5em;
  margin-bottom: 2em;
  font-size: 1.355rem;
}

section.yellow-bg .comm__Inner .sns{
  color:#000;
  margin-top: 2em;
  align-items: center;
}

section.yellow-bg .comm__Inner .sns a{
  color:#000;
  display: inline-block;
  padding: 10px;
  background: #ddd;
  line-height: 1.0;
  border-radius: 0.16em;
}

.wp-pagenavi{
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.gallery__wrap .wp-pagenavi{
  margin-top: 2.5vh;
}

.wp-pagenavi a, .wp-pagenavi span{
  padding: 5px 10px !important;
}


/******************* メールフォーム *******************/

input[type="radio"]{
  width:25px;
  height:25px;
  vertical-align:top;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="password"],
select,
textarea {
border-radius: 3px;
padding:1em .5em;
box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.1);
border:solid 1px #a7a7a7;
margin:auto;
width:100%;
display:block;
line-height:1.4;
font-size: 16px;
font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.wpcf7-not-valid-tip{
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 14px;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
border:solid 1px #d00249;
background-color: #f2f2f2;
}

input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="date"] {
    background-color: #fafafa;
    width: 100%;
}

input[type="date" i] {
  padding: .75em;
  margin-bottom: 1em;
}

input[type="text"], input[type="email"], input[type="tel"], input[type="search"], input[type="password"], select, textarea{
  width: 100%;
  color:#010101;
}

input[type="reset"],
input[type="button"],
input[type="submit"],
button {
   color: #FFFFFF;
    display:block;
   margin:1em auto 0 auto;
   padding:25px;
   -moz-appearance: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    cursor: pointer;
    background-color: #252525;
    border: 0px;
     -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    width:100%;
    box-sizing:broder-box;
    font-size:1.4rem;
    font-weight:400;
    letter-spacing:1px;
    max-width: 500px;
    font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

input[type="reset"]:hover, input[type="button"]:hover, input[type="submit"]:hover {
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.0);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.0);
    background:#ea1f0f;
}


select{
 font-size:1.0rem;
 }

 dl.form dt p, dl.form dd p{
  margin-bottom: 0;
 }

 span.text_red{
  background:#fe0000;
  text-align:center;
  color:#fff;
  margin-left:5px;
  display:inline-block;
  line-height:1.0;
  font-size:0.85rem;
  padding:3px;
  font-weight:normal;
  } 
   span.any{
  background:#888;
  text-align:center;
  color:#fff;
  margin-left:5px;
  display:inline-block;
  line-height:1.0;
  font-size:0.85rem;
  padding:3px;
  font-weight:normal;
  } 
hr{position: relative;background: #ddd;opacity: 1;margin: var(--col-space) auto;}

h2.bk{
  color:#000 !important;
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 1.5em;
  padding-bottom: 1em;
  border-bottom: 1px solid #000;
}

h2.gallery__title{
  border-bottom: 4px solid var(--blue);
  padding-bottom: .75em;
  font-size: var(--h3);
  color:#202020 !important;
}

h2.fx__center{
  justify-content: center;
}

h2.border{
  border-bottom: 4px solid var(--key-Color);
  padding-bottom: .75em;
  font-size: var(--h3);
  margin-bottom: 1em;
  margin-top: 5vh;
}

h3.small{
  margin: 0 0 .5em;
  font-size: var(--h4);
  font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

dl.privacy {
  font-family:'Noto Sans JP',游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;

}

dl.privacy dt{
  font-weight: bold;
  font-size: 1.1rem;
}

dl.privacy dd{
  margin-bottom: 2em;
}

/**********************記事ページ**********************/

.single figure img{
  max-width: 600px;
  max-height: 600px;
  object-fit: scale-down;
  display: block;
  margin: 0 auto 0;
  background: #fff;
}

.single .textarea{
  padding: 2.6vw;
  background: #464646;
  position: relative;
  color:#fff;
}

.single .textarea p{
  color:#fff;
  font-family:游ゴシック体, 'Yu Gothic', YuGothic,'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-weight: 300;
}

.page_navi{
  background: rgba(242,242,242,0.455);
  margin-bottom: 1em;
}

.page_navi a{
  color:#000;
}

.products-page picture img{
	    max-width: 300px;
    max-height: 300px;
    object-fit: scale-down;
    display: block;
    margin: 0 auto 0;
    background: #fff;
}

@media screen and (max-width: 767px) {
  .single figure img{
    max-width: 300px;
    max-height: 300px;
    object-fit: scale-down;
    display: block;
    margin: 0 auto 0;
    background: #fff;
  }

}

.wp-pagenavi span.current{
	background:var(--key-Color);
	color:#fff;
	border-color:var(--key-Color) !important;
}

/************************** サービス ***************************/

.page__fv__contents{
  position: relative;
  width: 100vw;
    height: 50vh;
    max-height: 500px;
  display: flex;
}

.page__fv__contents .Left{
  padding: clamp(1em,2vw,2.2vw) var(--row-space) clamp(1em,2vw,2.2vw) var(--row-space);
  padding-left: calc(var(--horizontal-space) + (var(--border-width) ));
  position: absolute;
  z-index: 3;
   min-width: 40%;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

/*.page__fv__contents::before{
  content: '';
  position: absolute;
   transform:skewX(-15deg);
   background: #e8e4df;
   left:-70px;
   min-width: 50%;
   height: 100%;
   top:0;
   z-index: 2;
}*/

.page__fv__contents picture{
  position: relative;
  z-index: 0;
  width: 70%;
  margin-right: -5%;
}

.page__fv__contents picture img{
  width: 105%;
  object-fit: cover;
  height: 105%;
}

.page__fv__contents .caption{
  color:#fff;
  font-weight: 800;
  margin: 0;
  padding:0;
  text-align: left;
  font-size: clamp(1.45rem,3.155rem,3.2rem);
  width: 90%;
 font-family: "EB Garamond", serif;
      text-transform:uppercase;
      text-align: center;
}

header.page #nav-wrap{
  position: absolute;
  padding:0 ;
  flex-direction: row;
  min-height: 94px;
  background: linear-gradient(45deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 1%, rgba(255, 255, 255, 0.85) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.85) 75%, rgba(255, 255, 255, 0) 100%);
}

header.page .page__fv__contents .caption{
  width: 100%;
}

header.page .logo-wrap{
  margin: .75em auto .75em calc(var(--row-space) / 2);
  padding: 0;
  position:absolute;
  left:0;
}

header.page .logo-wrap img{
	max-width:240px;
}

#nav-wrap nav{
  width: calc(100% - 300px);
  background: transparent;
}

.page #gnav > ul{
  justify-content: center;
}

.page__fv__contents h1{
  display: flex;
  flex-direction: column;
  justify-content: center;
  column-gap: .5em;
  font-size: clamp(0.85rem,0.85rem,0.9rem) !important;
  margin-bottom: 1.5em;
  color:#fff;
  position: relative;
  font-weight: bold;
  text-transform:capitalize;
  margin-bottom: 0;
  text-align: center;
}

.page__fv__contents::before{
  content: '';
  background: rgba(0,0,0,0.15);
  position: absolute;
  width: 100%;
  height: 100%;
  top:0;
  left:0;
  z-index: 1;
}

section#rc, section#shop{
  background: #103770;
  position: relative;
}

section#rc::after, section#shop::after{
  content: '';
  background: url(../images/service/image__bg.webp)no-repeat;
  background-size: cover;
  width: 100vw;
  height: 50%;
  position: absolute;
  bottom:0;
  left:0;
}

section.service .comm__Inner{
  background: #fff;
  padding: clamp(1em,2.6vw,2.7vw);
  max-width: 1590px;
  margin: auto;
}

section.service .Image picture{
  display: block;
}

section.service .Image picture:first-of-type{
  position: relative;
}

section.service .Image picture:last-of-type{
  position: relative;
  z-index: 2;
  width: 40%;
  margin-top: -20vh;
  margin-left: auto;
}

section.service .Image picture.full{
  width: 100% !important;
  margin-top: 0 !important;
  text-align: center;
}

section.service .comm__Inner h2{
  font-size: calc(var(--h3) * 1.25);
}

.Hurf.space{
  padding: clamp(1em,2.6vw,2.8vw);
}
.Hurf.space.pt__none{
 padding-top:0 !important;
}
section#szou, section#office{
 background: #f9f9f9;
}
.Hurf.space.pt__none p:first-of-type{
	margin-top:0;
}
.bg__gray__box{
  background: #f7f7f7;
  padding: 1em;
  font-size: 0.9rem;
  line-height: 1.85;
  margin: 2em auto 0;
}

.bg__gray__box b{
  display: block;
}

section#mokuzou{
  background: #f4efe9;
  position: relative;
}

section#mokuzou::after{
  content: '';
  background: #efe9e4;
  background-size: cover;
  width: 100vw;
  height: 50%;
  position: absolute;
  bottom:0;
  left:0;
}

section.page__top{
  padding: calc(var(--col-space) / 2) var(--row-space);
  margin-top: 0;
}

section.page__top h2{
  margin-bottom: 0;
  color:#242425;
}

section#building{
  background: #efeeed;
  position: relative;
}

section#building::after{
  content: '';
  background: #e0e0e0;
  background-size: cover;
  width: 100vw;
  height: 50%;
  position: absolute;
  bottom:0;
  left:0;
}

section#shintiku{
  background: #3b4043;
  position: relative;
}

section#shintiku h2{
  color:#fff;
}
section#shintiku h2.blue{
 color:var(--blue); 
}
section#shintiku::after{
  content: '';
  background: #4a4c4d;
  background-size: cover;
  width: 100vw;
  height: 50%;
  position: absolute;
  bottom:0;
  left:0;
}
@media only screen and (max-width: 767px){
header.page .logo-wrap{
	position:relative;
}
}
@media only screen and (min-width: 768px) and (max-width: 1500px) {

  header.page #nav-wrap{
    min-height: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1240px) {
	header.page .logo-wrap img {
		max-width: 200px;
	}
	section#shintiku h2.blue{
		line-height:2.0;
		margin-bottom:.75em;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  section#rc, section#shop, section.works, section.beige, section#shintiku{
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
	  section#shintiku h2{
	font-size: 2.1rem;
	}
	section#shintiku h2.blue{
	 color:var(--blue); 
	  font-size: 1.25rem;
	}

  section#shintiku .gallery__wrap.page li:last-of-type{
    display: none;
  }
	
	.title-logo{
		max-width:180px;
	}
	.page__fv__contents{
		max-height:320px;
	}
  .page__fv__contents .Left{
    padding: 0;
  }
  .page__fv__contents::before{
    width: 100%;
  }
  .gallery__wrap ul{
    column-gap: 3%;
  }

  section.service .flex__wrap .Hurf:first-of-type{
    width: 70%;
  }
  section#szou .flex__wrap{
    flex-direction: column-reverse;
  }
  section#szou.service .flex__wrap .Hurf:first-of-type{
    width: 100%;
  }
  .en__title{
    font-size: 45px !important;
  }
	header.page.recruit picture img{
		object-position:center;
	}
  .page__fv__contents .caption{
    font-size: 2.5rem;
  }
  #nav-wrap nav{
    display: none;
  }
  header.page #nav-wrap{
	padding-top: 0em !important;
    padding-bottom: 0em !important;
  }
}

.breadcrumbs br{
  display: none !important;
}

/*****************パンくず*****************/


.breadcrumbs{
  color:#a8a8a8;
  font-size: 0.7rem;
  padding: 1em var(--row-space);
  background-color:#e6e7e7;
}


.breadcrumbs a{
  color:#af9d7e;
  text-decoration: none;
}

.gallery-container{
  max-width: 1200px;
  margin: auto;
}

.comm__Inner.single{
  background: #fff;
  padding: clamp(1em,var(--row-space),2.7vw);
  max-width: 1240px;
  margin: auto;
}

.single h3{
  background: var(--key-Color);
  line-height: 1.55;
}

.gallery-thumbnail-img {
  opacity: 0.3;
  transition: opacity .3s linear;
}
.gallery-thumbnail .slick-current {
  opacity: 1;
}

.gallery-container .slick-slide img{
  margin: auto;
	max-height:600px;
	object-fit:contain;
}

.gallery-thumbnail{
  margin-top: 2em;
}
.gallery-thumbnail img{ 
  max-height:183px !important;
  object-fit:cover !important;
	width:100% !important;
  object-position:center;
}
.page_navi a{
  border:1px solid var(--blue);
  padding: .55em;
  position: relative;
  border-radius: 4px;
}

.page_navi a i{
  display: inline-block;
}

.page_navi a:hover{
  background: var(--blue);
  color:#fff;
}

.page_navi a.prev:hover i{
left: -5px;
}

.page_navi a.next:hover i{
  right: -5px;
}

section.blue h2.bk{
  font-size: var(--h2);
  padding-bottom: .5em;
}

section.blue .comm__Inner dl.border:first-of-type{
  border-top: 1px solid #f9f4ed;
}

section.blue .comm__Inner dl.border a{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8rem;
  color:#052a75;
}

.gallery-container .slick-next, .gallery-container .slick-prev{
top: 50%;
  transform: translateY(-50%);
  bottom:inherit;
}

/*********************レンタルスペース**********************/

.r-top__title{
  padding: 1em;
  text-align: center;
  color:#fff;
  font-size: var(--h3);
  font-weight: 600;
  margin-left: calc(var(--row-space) - var(--border-width));
  margin-right: calc(var(--row-space) - var(--border-width));
  position: relative;
  z-index: 1;
  background: var(--blue);
  margin-bottom: 1em;
	line-height:1.85;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
}
.r-top__title .title-logo{
	margin-bottom:-5px;
}

.r-top__title .wd100{
	width:100%;
 font-size: var(--h3);
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
   .r-top__title .title-logo {
        max-width: 220px;
    }
	.r-top__title .title-logo{
		margin-bottom:0px;
	}
	.r-top__title .wd100{
		line-height:1.5;
	}
}
@media screen and (max-width: 767px) {
		.r-top__title .title-logo{
		margin-bottom:-2px;
			margin-right:4px;
	}
}
.r-top__title .Inner{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
	font-size: var(--h3);
	line-height:1.5;
}

.r-top__wrap{
  position: relative;
  margin-top: calc(var(--row-space) / 2);
}

.r-top__contents::after{
  content: '';
  position: absolute;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 135%;
  top:-35%;
  left:0;
  z-index: -1;
  background: #f9f9f9;
}

.r-top__contents{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  column-gap: 2%;
  max-width: 1200px;
  margin: auto;
  padding-bottom: 2em;
  position: relative;
}

.r-top__contents .Item{
  max-width: var(--flex_hurf);
}

.r-top__contents .Item:first-of-type{
  flex-grow: 1.5;
}

.r-top__contents .Item img{
  display: block;
  width: 100%;
}

.r-top__contents .Item p{
  font-size: clamp(1.2rem,1.4rem,1.5rem);
  font-weight: bold;
  margin-top: 0;
}

.r-top__contents .Item .parking{
  background: var(--blue);
  color:#fff;
  font-weight: 400;
  padding: .5em;
  text-align: center;
  padding: .5em;
  width: max-content;
}

.r-top__Inner{
  margin: auto;
}

section.r-top{
  padding: 0 calc(var(--row-space) - var(--border-width)) var(--row-space);
}

.r-top__image__wrap{
  display: flex;
  column-gap: 2%;
  justify-content: center;
  margin-top: var(--row-space);
}

.r-top__image__wrap .three{
  width: var(--flex_third);
}

section.light__blue{
  background: #f9f9f9;
    padding-left: calc(var(--row-space) - var(--border-width));
  padding-right: calc(var(--row-space) - var(--border-width));
}

h2.bottom__border{
  position: relative;
  border-bottom: 7px solid #dadfe5;
  padding-bottom: .75em;
  color:var(--blue);
  font-weight: bold;
  font-size: var(--h2);
  padding-left: .25em;
  margin-top: 0;
}

h2.bottom__border::before{
  content: '';
  width: 70px;
  height: 7px;
  background: var(--blue);
  position: absolute;
  left:30px;
  bottom:-7px;
  z-index: 2;
}

.r-middle__wrap{
  display: flex;
  column-gap: 2%;
}

.r-middle__wrap .Item{
  width: var(--flex_fourth);
}

.r-middle__wrap .Item p{
  margin-bottom: 1em;
}

section#points .left, section#points .right{
  padding: 0;
}

section#points .left{
  position: relative;
}

section#points .left span.icon{
  position: absolute;
  width: clamp(100px,120px,165px);
  height:clamp(100px,120px,165px);
  left:-30px;
  top: -30px;
  z-index: 2;
}

section#points .flex__wrap:first-of-type{
  margin-top: 80px;
}

section#points .flex__wrap h3{
  margin-top: 0;
  color:var(--blue);
}

.map_wrap{
  display: flex;
  flex-wrap: wrap;
  column-gap: 2%;
  margin-top: 2em;
}

.map_wrap .Item{
  width: var(--flex_hurf);
}

.r-top__contents.second{
  margin-top: 2em;
  margin-bottom: 2em;
}

.r-top__contents.second::after{
  display: none;
}

.r-top__contents.second .Item:last-of-type{
  flex-grow: 1.5;
}

.r-top__contents.second p.small{
  font-weight: normal;
  font-size: 1.0rem;
}

.information_area{
  max-width: 1200px;
  margin-top: var(--col-space);
	margin-left:auto;
	margin-right:auto;
}

.information_area .Center{
  max-width: 700px;
  margin: 1em auto 0;
}

.termtitle{
  text-transform: uppercase;
}

p.serif{
  font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

@media screen and (min-width: 1921px) {
  section.r-top, .r-top__title{
    max-width: 1800px;
    margin: auto;
  }
  .r-top__image__wrap{
    margin-top: 5vh;
  }
  .r-top__title{
    margin-bottom: 1em;
  }
  .information_area{
    margin-left: auto;
    margin-right: auto;
  }
  .Center img{
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

/******************MUSASHIの強み*****************/

section#strength h2{
  margin-bottom: 0;
  font-style: italic;
}

section#strength p{
  font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

section#strength h2 span{
  font-size: 40px;
}

section#strength .flex__wrap{
  flex-direction: row;
}

section#strength .flex__wrap:nth-of-type(even){
  flex-direction: row-reverse;
}
#strength {
  background: url(../images/about__wh.webp)no-repeat center / cover;
  padding-top: 0;
	/*background: linear-gradient(135deg,  rgba(255,255,255,1) 0%,rgba(241,241,241,1) 50%,rgba(246,246,246,1) 100%);*/
}
#strength .comm__Inner{
		max-width:1500px;
		padding:var(--row-space);
        background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.85) 25%, rgba(255, 255, 255, 0.85) 50%, rgba(255, 255, 255, 0.85) 72%, rgba(255, 255, 255, 0) 100%);
}

section#strength .flex__wrap.row{
	flex-direction:row;
}
@media screen and (min-width: 768px)  and (max-width: 1024px) {
	section#strength h2 span{
		font-size:24px;
		margin-bottom:0;
	}
}

/******************サイトマップ*****************/

ul.sitemap{
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap:2vh 2%;
}

ul.sitemap li:before{
  content: '─';
  color:#b2b2b2;
}

ul.sitemap li{
  display: flex;
  column-gap: .5em;
  align-items: center;
  margin: 0;
  max-width: calc(99% / 2);
}

ul.sitemap li a{
  text-decoration: none;
  color:#202020;
  font-size: 1.1rem;
}
ul.sitemap li a:hover{
  color:var(--blue);
}

section#sitemap h2{
  font-size: clamp(1.4rem,1.7rem,1.8rem);
}

section#sitemap .flex__wrap{
  flex-direction: row;
  flex-wrap: wrap;
  column-gap: 1%;
  row-gap: calc(var(--row-space) / 2);
}

section#sitemap .flex__wrap .Hurf{
  width: var(--flex_hurf);
}

/******************Recruit*****************/

h2.Center .Inner{
	display:flex;
	align-items:center;
    justify-content:center;
	margin-top:0;
	font-size: clamp(24px, 3.08125vw, 4.0vw);
}

h2.Center .Inner .title-logo{
	width:360px;
}

@media screen and (min-width: 1070px) and (max-width: 1240px) {
	h2.Center .Inner .title-logo{
	width:280px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1069px) {
	h2.Center .Inner .title-logo{
	max-width:240px;
	}
}
@media screen and (max-width: 767px){
	h2.Center .Inner .title-logo{
	max-width:185px;
	}
}
.cstm-box-offset {
   margin: 2em auto;
   padding: clamp(1em,2em,2.2em);
   background: none;
   border:1px solid #c9cfdd;
   position: relative;
   max-width: 1200px;
}

.cstm-box-offset:after {
background: linear-gradient(135deg,  rgba(254,255,255,1) 0%,rgba(191,191,191,0.16) 52%,rgba(192,192,192,0.15) 53%,rgba(237,237,237,0.015) 100%);
   border: none;
   content: '';
   position: absolute;
   top: 7px;
   left: 7px;
   width: 100%;
   height: 100%;
   z-index: -1;
}

.cstm-box-offset h3 { margin:0 0 1em; text-align:center;background: rgba(255,255,255,0.55);padding:1em; 
font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.cstm-box-offset p{
  margin-top: 0;
}

#recruit-sec h3.number{
  padding: .75em;
  background: url(../images/recruit/01.svg)no-repeat left center / 70px,70px;
}

#recruit-sec .flex__wrap:nth-of-type(2) h3.number{
    padding: .75em;
  background: url(../images/recruit/02.svg)no-repeat left center / 70px,70px;
}

#recruit-sec .flex__wrap:nth-of-type(3) h3.number{
    padding: .75em;
  background: url(../images/recruit/03.svg)no-repeat left center / 70px,70px;
}

#recruit-sec .Left{
  width: 40%;
}

#recruit-sec .Right{
  width: 55%;
}
#recruit-sec .Left p{
text-align: justify;
text-justify: inter-ideograph;
}
ul.person {
  margin: 0;
  padding: 0;
}

ul.person li{
  background: #f7f3ed;
  font-size: var(--h4);
  padding: .75em;
  font-weight: bold;
  display: flex;
  column-gap: .3em;
  align-items: center;
  margin: 0;
  position: relative;
  margin-top: .5em;
}

ul.person li::before{
  content: '';
  background: #af9d7e;
  width: 30px;
  height: 4px;
}

.review{
  background: #194e8e !important;
}

.tabs {
  margin: 0 auto;
  max-width: 1200px;
}

.tab_item {
  width: calc(100%/3);
  border-bottom: 3px solid #000000;
  background-color: #ffffff;
  font-size: clamp(1rem,22px,24px);
  text-align: center;
  color: var(--blue);
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
  padding: 1em .5em;
  cursor: pointer;
  border-right: 1px solid #194e8e;
}
.tab_item:hover {
  opacity: 0.75;
}

.tab_item:last-of-type{
  border-right: none;
}

input[name="tab_item"] {
  display: none;
}

.tab_content {
  display: none;
  clear: both;
  background: #fff;
  padding: clamp(1em,2.6vw,2.8vw);
  overflow: hidden;
}


#job01:checked ~ #job01_content,
#job02:checked ~ #job02_content,
#job03:checked ~ #job03_content{
  display: block;
}

.tabs input:checked + .tab_item {
  background-color: #103770;
  color: #fff;
}

.tabs .flex__wrap picture{
  width: 20%;
  text-align: center;
}

.tabs .flex__wrap .Text{
  width: 78%;
}

.tabs .flex__wrap .Text .nusha{
  font-weight: bold;
  color:var(--blue);
  font-size: 1.0rem;
}


.tabs .flex__wrap .Text .name{
  font-size: var(--h3);
  display: flex;
  font-weight: bold;
  column-gap: .5em;
  align-items: center;
}

.tabs .flex__wrap .Text .name .kana{
  color:#bfc7d1;
  font-size: 1.2;
  font-size: 1.0rem;
    font-family: "Inter", sans-serif;
    letter-spacing: 0.16em;
    font-weight: 400;
}

.tabs .flex__wrap .Text .position{
  font-weight: bold;
  background: var(--blue);
  padding: .5em;
  font-size: 1.1rem;
  margin: 1em 0;
  display: inline-block;
  color:#fff;
}

.tabs dl.hobby{
  display: flex;
  border-top: 1px solid #d6dde5;
  border-bottom: 1px solid #d6dde5;
  padding: .5em;
}

.tabs dl.hobby dt{
  width: 20%;
  margin: 0;
  color:var(--blue);
  font-weight: bold;
  text-align: center;
}

.tabs dl.hobby dd{
  width: 80%;
  margin: 0;
}

.interview__wrap{
  margin-top: 5vh;
}

.interview__wrap h4{
  font-size: var(--h4);
  font-weight: bold;
  color:var(--blue);
  padding-bottom: .5em;
  margin-bottom: 1em;
  border-bottom: 2px solid #d6dde5;
  border-left: none;
}

/**************募集要項***************/

.tabs-detail {
  margin: 0 auto;
  max-width: 1200px;
}

.tab_item-detail {
  width: calc(100%/3);
  border-bottom: 3px solid #000000;
  background-color: #ffffff;
  font-size: clamp(1rem,22px,24px);
  text-align: center;
  color: var(--blue);
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
  padding: 1em .5em;
  cursor: pointer;
  border-right: 1px solid #194e8e;
}
.tab_item-detail:hover {
  opacity: 0.75;
}

.tab_item-detail:last-of-type{
  border-right: none;
}

input[name="tab_item-detail"] {
  display: none;
}

.tab_content-detail {
  display: none;
  clear: both;
  background: #fff;
  padding: clamp(1em,2.6vw,2.8vw);
  padding-top: 0;
  overflow: hidden;
}

#detail01:checked ~ #detail01_content,
#detail02:checked ~ #detail02_content,
#detail03:checked ~ #detail03_content
{
  display: block;
}

.tabs-detail input:checked + .tab_item-detail {
  background-color: #103770;
  color: #fff;
}

.en__title{
  font-size: clamp(28px,90px,100px);
  color:#c2c9d9;
  text-align: center;
  margin: 0 auto -.75em;
  font-style: italic;
  font-family: "Allura", cursive;
  line-height: 1.255;
}
@media screen and (max-width: 767px) {
.en__title{
  font-size: 40px
}
}

#border-bottom{
    border-bottom: .5px solid #c6c6c6;
}

section.beige h2{
  color:#fff;
}

.Partner{
	list-style:none;
	margin:0;
	display:flex;
	flex-wrap:wrap;
  justify-content: center;
	gap:1em 1em;
	padding:0;
}

.Partner li{
	margin:0;
	padding:.5em;
	border:3px double var(--blue);
	width:calc(96% / 3);
	text-align:center;
  font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", HiraMinProN-W6, HG明朝E, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
@media screen and (min-width: 768px)  and (max-width: 1024px) {
	.Partner li{
		width:calc(96% / 2);
	}
	.president{
		max-width:200px;
	}
}
