@charset "utf-8";
/* CSS Document */

.bg-gray {
  background-color:#F2F2F2;
}
.bg-white {
  background-color:#FFF;
}

.section {
  position: relative;
  margin: 0 auto;
  width: 100%;
}

.section-inner {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
  padding: 80px 0 0;
}

@media (max-width: 767px) {
  .section-inner {
    padding: 5% 0;
  }
}
@media (max-width: 640px) {
  .section-inner {
    padding: 10% 0;
  }
}


/*MAIN VISUAL
 -------------------------------*/
.main-visual {
  aspect-ratio: 96 / 35;
  max-height: 700px;
  position: relative;
  background-color: #EFEFEF;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
}
@media (max-width: 767px) {
  .main-visual {
    aspect-ratio: 15 / 14;
  }
}

.main-visual .main-visual-inner {
  position: relative;
  width: 100%;
  height: 100%;
  margin: auto;
}

.main-visual .main-visual-inner .page-title-box{
  position:absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.main-visual .main-visual-inner .page-title-box .page-title{
  font-size:45pt;
}
.main-visual .main-visual-inner .page-title-box .page-title__sub{
  font-size:25px;
}

.main-visual .main-visual-content {
  position: absolute;
  left: 50%;
  margin: auto;
  text-align: center;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
}

.catchTxt img {
    filter: drop-shadow(5px 5px 5px #000);
}

.main-visual .main-visual-inner .catchTxt{
    position: absolute;
    top: 35%;
    left: 0;
    right: 0;
    text-align: center;
    margin: auto;
    max-width: 740px;
    width: 34%;
}

/*----- ページタイトル -----*/
.page-title {
  color: #FFF;
  font-size: 60px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}
.page-title>* {
  display: block;
}
.page-title-sub {
  font-size: 30px;
}

@media (max-width: 1024px) {
  .page-title {
    font-size: 40px;
  }
  .page-title-sub {
    font-size: 24px;
  }
  .main-visual .main-visual-inner .page-title-box .page-title{
    font-size:36px;
  }
  .main-visual .main-visual-inner .page-title-box .page-title__sub{
    font-size: 16pt;
  }
}
@media (max-width: 480px) {
  .page-title {
    font-size: 30px;
  }
  .page-title-sub {
    font-size: 15px;
  }
}

.page-title.dots {
  position: relative;
}
.page-title.dots::after {
  content:'';
  background-image:
    radial-gradient(#F5B018 50%, transparent 50%),
    radial-gradient(#159AC0 50%, transparent 50%),
    radial-gradient(#30A83A 50%, transparent 50%),
    radial-gradient(#D93B52 50%, transparent 50%);
  background-size: 10px 10px;
  background-position: 0 0, 15px 0, 30px 0, 45px 0;
  background-repeat: repeat-y;
  display: inline-block;
  height: 10px;
  left:0;
  margin:0.3em auto 0;
  position: absolute;
  right:0;
  top:100%;
  width:55px;
}

/*----- タイトル -----*/
.section-ttl {
  margin-bottom: 2.3em;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
.section-ttl>* {
  display: block;
  line-height: 1.2;
}
.section-ttl-jp {
  font-size:17px;
  margin-top:0.5em;
}
.section-ttl-en {
  font-size: 30px;
  font-weight: 400;
  letter-spacing: 0.1em;
}

.titleTate{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 420px;
  background: linear-gradient(
    to bottom,
    #ffffff 0,
    #ffffff 140px,
    #f4f4f2 140px,
    #f4f4f2 100%
  );
  text-align: center;
}
.titleTate h3{
  writing-mode: vertical-rl;
  text-orientation: upright;
  margin: 0;
  font-size: 30pt;
  line-height: 1.4;
  letter-spacing: 0.1em;
  display: inline-block;
  color: #231815;
  position: relative;
  z-index: 1;
}


@media (max-width: 640px) {
  .section-ttl {
    font-size: 24px;
  }
  .section-ttl-jp {
    font-size: 19px;
  }
}

@media (min-width: 768px) {
  .pc-space {
    display: inline-block;
  }
}

@media (min-width: 768px) {
  .section-ttl.txt-l-pc {
    text-align: left;
  }
}

.section-ttl.dots {
  position: relative;
}
.section-ttl.dots::after {
/*  content:'';
  background-image:
    radial-gradient(#F5B018 50%, transparent 50%),
    radial-gradient(#159AC0 50%, transparent 50%),
    radial-gradient(#30A83A 50%, transparent 50%),
    radial-gradient(#D93B52 50%, transparent 50%);
  background-size: 10px 10px;
  background-position: 0 0, 15px 0, 30px 0, 45px 0;
  background-repeat: repeat-y;
  display: inline-block;
  height: 10px;
  left:0;
  margin:0.5em auto 0;
  position: absolute;
  right:0;
  top:100%;
  width:55px;
*/
}

.title-area.toCustomer{
      width: 90%;
    max-width: 1200px;
    margin: 5em 2em;
    padding: 2.3em 0;
    /* border: solid 1px #dcdcdc; */
    font-size: 14px;
    background-color: #F3F2F2;
}
.title-area.toCustomer.widthFull{
  width:100%;
}
.title-area.toCustomer .section-ttl{
  margin-bottom:1.5em;
  font-size:24px;
}

.title-area.toCustomer p{
  text-align:center;
  line-height:1.8em;
}

@media (min-width: 768px) {
  .section-ttl.txt-l-pc.dots::after {
    margin-left: 0;
  }
}

/*----- リード -----*/
.section-lead {
  font-size:30px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.8em;
  transition: 0.2s;
}

.section-lead-modelhouse {
  font-size:40px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.8em;
	transition: 0.2s;
	writing-mode: vertical-rl;
	margin: 0 auto 80px;
	text-align: left;
}

@media (max-width: 1024px) {
  .section-lead {
    font-size:24px;
  }
}
@media (max-width: 375px) {
  .section-lead {
    font-size:20px;
  }
}

.text {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 3em;
}
@media (max-width: 767px) {
  .text {
    line-height: 1.8;
  }
  .main-visual .main-visual-inner .catchTxt {
   width:75%;
  }
  .title-area.toCustomer{
    width:90%;
  }
  .title-area.toCustomer p{
    text-align:left;
    padding:0 15px 0;
  }
}

@media (min-width: 768px) {
  .text.pc-center {
    text-align: center;
  }
}

.mgb0 {
  margin-bottom: 0!important;
}

.ls0 {
  letter-spacing: 0!important;
}
@media (min-width: 768px) {
  .ls0-pc {
    letter-spacing: 0!important;
  }
}

.text-list>* {
  font-size:14px;
  margin-bottom: 0.5em;
  line-height: 2;
  padding-left: 1.2em;
  text-indent: -1.2em;
}

.text-list.text-list-num {
  list-style-type: decimal;
}
.text-list.text-list-circle {
  list-style-type: disc;
}

table.tbl {
  width: 100%;
  margin: auto;
  border-collapse: collapse;
}
table.tbl th,
table.tbl td {
  border-bottom:solid 1px #9fa0a0;
  font-size:14px;
  line-height: 1.6;
  padding: 1.0em 0;
  text-align: left;
  vertical-align: middle;
}
table.tbl tr:first-child th {
  border-top:solid 1px #9fa0a0;
}
table.tbl th {
  width: 10em;
}
@media (min-width: 768px) {
  table.tbl tr:first-child td {
    border-top:solid 1px #9fa0a0;
  }
}
@media (max-width: 767px) {
  table.tbl th,
  table.tbl td {
    display: block;
    padding:1em 0;
    width:100%;
  }
  table.tbl td {
    padding-top:0;
  }
  table.tbl th {
    border-bottom: none;
    font-weight: bold;
    padding-bottom: 0.5em;
  }
}

.def-list {}
.def-list dt {
  font-size:14px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0.5em;
}
.def-list dd {
  font-size:14px;
  line-height: 1.6;
  padding-bottom: 1em;
}
@media (max-width: 414px) {
  .def-list dt {
    font-size:15px;
  }
}

/*----- PAGER -----*/
.pager-area {
  margin:50px 0 0;
}
@media (max-width: 767px) {
  .pager-area {
    padding:10% 0 0;
  }
}
.pager {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.pager .page-numbers {
  background-color:#F7F7F7;
  color: #333;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size: 16px;
  font-weight: bold;
  padding: 1em 1.2em;
  line-height: 1;
}
.pager .page-numbers:not(:last-child) {
  margin-right: 1em;
}
.pager .page-numbers.current {
      color: #000;
    /* background-color: #FFB500; */
    text-decoration: none;
    border: 1px solid;
}
.pager .page-numbers.prev,
.pager .page-numbers.next {
  background-color:transparent;
  padding:0 0 0.3em;
}
.pager .page-numbers.prev {
  margin-right: 1.5em;
}
.pager .page-numbers.next {
  margin-left: 1.5em;
}
@media (max-width: 767px) {
  .pager .page-numbers {
    font-size:12px;
  }
}

/*----- PAGING -----*/
.paging{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
}
.paging >*{
  min-width: 2em;
}
.paging a,
.paging .page-link{
  display:block;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-weight: bold;
  position: relative;
  line-height:1;
  text-align: center;
  transition:all 0.2s ease;
}
.paging .paging-btn {
  max-width: 240px;
  width:60%;
}
.paging .btn{
  padding:1em 2em;
  width: auto;
}

@media (min-width: 768px) {
  .paging{
    justify-content: center;
  }
  .paging >*:not(:last-child){
    margin-right: 2em;
  }
}
@media (max-width: 767px) {
  .paging .page-link{
    font-size:15px;
  }
}


@media (max-width: 767px) {
  .sp-center {
    text-align: center;
  }
}

.breadcrumb {}
.breadcrumb .breadcrumb-inner {
  padding:15px 0;
  margin:0 auto;
  max-width: 1200px;
  width:90%;
}
.breadcrumb ul{
  font-size:0;
  line-height: 0;
}
.breadcrumb ul li{
  display: inline;
  font-size:14px;
  font-weight: bold;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .breadcrumb ul li{
    font-size:12px;
  }
}
@media (max-width: 375px) {
  .breadcrumb ul li{
    font-size:10px;
  }
}
.breadcrumb ul li a{
  color:#333;
}
.breadcrumb ul li:not(:last-child){
  padding-right:0.5em;
}
.breadcrumb ul li:not(:first-child)::before{
  content:'\03e';
  display: inline-block;
  padding-right:0.3em;
  font-size:1.2em;
  color:#000;
  font-weight: normal;
}


.bl-contents-inner {
  padding:80px 0;
  margin:0 auto;
  max-width:1000px;
  width:90%;
}

@media (max-width: 767px) {
  .bl-contents-inner {
    padding:15% 0;
  }
}

.bl-contents-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 1em;
}


/*----- PAGE BANNERS -----*/
#page_bnrs .bnrs{}
#page_bnrs .bnrs .bnr {
  aspect-ratio:2/1;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color:#231815;
}

#page_bnrs .bnr .bnr-inner {
  position: relative;
}

#page_bnrs .bnr .bnr-inner::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 76px;   /* 線の長さ */
  height: 1px;   /* 線の太さ */
  background: #fff;
}

#page_bnrs .bnr .bnr-ttl {
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  #page_bnrs .bnrs{
    display: flex;
		flex-wrap:wrap;
		margin-bottom:5em;
  }
  #page_bnrs .bnrs .bnr {
    margin-right: 35px;
    width:calc(33.33% - 70px / 3);
  }

  #page_bnrs .bnrs .bnr.bnr__concept .bnr-ttl {
    left:-30px;
  }

  #page_bnrs .bnrs .bnr:nth-child(3n){
    margin-right:0;
  }
}
@media (min-width: 768px) and (max-width:1024px) {
  #page_bnrs .bnrs .bnr {
    margin-right: 25px;
    width:calc(33.33% - 50px / 3);
  }
}

#page_bnrs .bnr .bnr-inner{
  display: flex;
  align-items: center;
  justify-content: center;
  height:100%;
  padding:25% 0;
  position:relative;
  width:100%;
}
#page_bnrs .bnr .bnr-ttl{
  color:#FFF;
  font-weight: bold;
  text-align: left;
  line-height:1.2;
}
#page_bnrs .bnr .bnr-ttl .bnr-ttl__en{
  display: block;
  margin-bottom: 0.6em;
}
#page_bnrs .bnr .bnr-ttl .bnr-ttl__jp{
  display: block;
  font-size:16pt;
}

@media (min-width: 1501px) {
  #page_bnrs .bnr .bnr-ttl .bnr-ttl__en{
    font-size:37px;
  }
}

@media (max-width: 1024px) {
  #page_bnrs .bnr .bnr-ttl .bnr-ttl__jp{
    font-size:12px;
  }
}
@media (max-width: 767px) {
  #page_bnrs .bnrs .bnr {
    width:100%;
    margin: 0 auto 5%;
    aspect-ratio:unset;
  }
  #page_bnrs .bnr .bnr-inner {
    aspect-ratio:unset;
    padding: 10% 0;
  }
  #page_bnrs .bnr .bnr-inner::after {
    width: 48px;
    top:54%;
  }
  #page_bnrs .bnr .bnr-ttl .bnr-ttl__en {
    margin-bottom:0;
    font-size:30px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
  #page_bnrs .bnr .bnr-ttl .bnr-ttl__en {
    font-size:20px !important;
  }
  #page_bnrs .bnr .bnr-inner::after {
    width:30px !important;
  }
  .bnr.bnr__concept .bnr-ttl {
    left:0 !important;
  }
}

/*----- PAGE HISTORY -----*/
#page_history {
  background:url(../img/common/bg_his.png) center no-repeat;
  background-size: cover;
}
#page_history #bl-contents--history {
  background-color:rgba(51,51,51,0.9);
  color:#FFF;
  width:100%;
}
#page_history #bl-contents--history .bl-contents-inner {
  max-width: none;
  width:90%;
}
#page_history #bl-contents--history .bl-contents-text {
}
#page_history #bl-contents--history .text {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  #page_history #bl-contents--history {
    margin:0 0 0 auto;
    width:50%;
  }
}
@media (max-width: 767px) {
  #page_history {
    background-image: url(../img/common/bg_his_sp.png);
    background-position: 50% 0;
    padding-top:67vw;
  }
}

@media (min-width: 1261px) {
  #page_history #bl-contents--history .bl-contents-inner {
    align-items: center;
    display: flex;
  }
  #page_history #bl-contents--history .bl-contents-img {
    width:150px;
  }
  #page_history #bl-contents--history .bl-contents-text {
    padding-left:5%;
    width:calc(100% - 150px);
  }
}
@media (max-width: 1260px) {
  #page_history #bl-contents--history .logo_60th {
    margin:0 auto 10%;
    max-width: 200px;
    width:30%;
  }
}

/*SIDEMENU*/
.sidemenu li {
  font-size:14px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1em;
}
@media (max-width: 1260px) {
  .sidemenu li {
    font-size:12px;
  }
}
.sidemenu li > a{
  color:#999999;
  display: block;
  position: relative;
}
.sidemenu li.current > a {
  padding-left: 1.3em;
}
.sidemenu li.current > a::before {
  content:'';
  display: inline-block;
  height: 0.6em;
  position: absolute;
  left:0;
  top:0.5em;
      /* border-top: solid 3px #FFB500;*/
      /* border-right: solid 3px #FFB500;*/
     /* transform: rotate(45deg);*/
  width:0.6em;
border-top: solid 1px #000;
    /* border-right: solid 3px #FFB500; */
    /* transform: rotate(45deg); */
}


/*----------------------------------------------------
  TOP PAGE
----------------------------------------------------*/
/*MAIN BLOCK -------------------------*/
#main-visual__top {
  aspect-ratio: auto;
  background-color:#333;
  position: relative;
  max-height: none;
  width: 100%;
}

#main-visual__top .logo {
  position: absolute;
  left:10px;
  top:10px;
  max-width: 400px;
  width:40%;
  z-index: 2;
}
@media (max-width: 1024px) {
  #main-visual__top .logo {
    display: none;
  }
}

/* SLIDER */
#main-visual__top .slick-slider .slick-track {
  overflow: hidden;
}

#main-visual__top .slick-slider .slick-slide img {
  object-fit: cover;
  object-position: center;
  width: 100%;
}

#main-visual__top,
#main-visual__top .slick-slider .slick-slide,
#main-visual__top .slick-slider .slick-slide img {
  max-height: 100vh;
}

@media (min-width: 768px) {
  #main-visual__top .slider-sp {
    display: none;
  }
  #main-visual__top,
  #main-visual__top .slick-slider .slick-slide,
  #main-visual__top .slick-slider .slick-slide img {
    min-height: 600px;
  }
}
@media (max-width: 767px) {
  #main-visual__top .slider {
    display: none;
  }
  #main-visual__top {
    height: auto;
  }
}

#main-visual__top .img-medal {
  bottom:2%;
  position: absolute;
  left:0;right:0;
  text-align: center;
  margin:auto;
  max-width: 740px;
  width:96%;
}

#main-visual__top h1 {
  color: #000;
  font-size: 1em;
  font-weight: normal;
  position: absolute;
  top: 4em; right: 4em;
  z-index: 2;
}
@media (max-width: 767px) {
  #main-visual__top h1 {
    display: none;
  }
}

@media (min-width: 667px) and (max-width:883px) {
  .main-visual .main-visual-inner .catchTxt{
   top:20%;
   width:37%;
  }
  #main-visual__top .img-medal {
   width:61%;
  }
}

/*----- HOME CONCEPT SECTION -----*/
#home_concept .text {
  font-size:1.1em;
  padding:1em 0;
}
@media (min-width: 768px) {
  #home_concept .text {
    line-height: 2.4;
  }
}

/*----- HOME MODELHOUSE SECTION -----*/
#home_modelhouse {
  position: relative;
}
#home_modelhouse::before {
  content: '';
  height: 100%;
  background-color: #F2F2F2;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 70vw;
}
#home_modelhouse .section-thumb {
  background: url(../img/top/img_modelhouse.png) left center no-repeat;
  background-size: cover;
  display: block;
  max-width: 1070px;
  width: 100%;
}
@media (min-width: 811px) {
  #bl-contents-modelhouse {
    display: flex;
    justify-content: space-between;
  }
  #bl-contents-modelhouse .bl-contents-item {
    width:41%;
  }
  #bl-contents-modelhouse .bl-contents-text {
    padding:5% 0 0 0;
  }
  #bl-contents-modelhouse .section-ttl {
    text-align: left;
  }
  #bl-contents-modelhouse .section-thumb {
    display: none;
  }
  #home_modelhouse > .section-thumb {
    position: absolute;
    right: 0;
    top: 80px;
    height: calc(95% - 195px);
    width: 55%;
  }
  #bl-contents-modelhouse .bl-contents-text .btn {
    margin-left: 0;
  }
  #bl-contents-modelhouse .text {
    line-height: 2.4;
  }
}
@media (max-width: 810px) {
  #home_modelhouse::before {
    width:95vw;
  }
  #home_modelhouse > .section-thumb {
    display: none;
  }
  #bl-contents-modelhouse .section-thumb {
    aspect-ratio: 71 / 36;
    margin-bottom: 8%;
    width:110%;
  }
  #bl-contents-modelhouse .bl-contents-item {
    width:100%;
  }
  #bl-contents-modelhouse .text {
    padding: 0 1em;
  }
}

/*----- HOME EVENT SECTION -----*/
#home_event .bnr {
  margin:30px auto 100px;
  max-width: 1200px;
  width:100%;
}
@media (max-width: 1260px) {
  #home_event .bnr {
    margin:0 auto 80px;
  }
}
@media (max-width: 767px) {
  #home_event .bnr {
    margin:10% auto 20%;
  }
}

.event-list {
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .event-list {
    display: flex;
    flex-wrap: wrap;
  }
  .event-item {
    margin:0 40px 30px 0;
    width:calc(33.33% - 80px / 3);
  }
  .event-item:nth-child(3n) {
    margin-right: 0;
  }
  #main-visual__reserve_thanks.main-visual,
  #main-visual__event{
    background: url("../img/event/mv_enent_pc.webp") no-repeat center center / cover;
    height: 500px;
  }

}
@media (min-width: 768px) and (max-width: 1260px) {
  .event-item {
    margin:0 20px 30px 0;
    width:calc(33.33% - 40px / 3);
  }
}
@media (max-width: 767px) {
  .event-list .event-item {
    padding:0 25px;
  }
  #main-visual__reserve_thanks.main-visual,
  #main-visual__event.main-visual {
    background: url(../img/event/mv_enent_sp.webp) no-repeat center center / 100% 100%;
    background-size: cover;
    height: 225px;
    aspect-ratio: 15 / 14;
    max-height: 700px;
    position: relative;
    width: 100%;
  }
}

@media (max-width: 767px) {
  #home_event .js-slider-sp .slick-arrow {
    transition: all  0.5s;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
  }
  #home_event .js-slider-sp .slick-arrow:hover{
    cursor: pointer;
    opacity: 0.7;
  }
  #home_event .js-slider-sp .prev-arrow {
    left: 0;
  }
  #home_event .js-slider-sp .next-arrow {
    right: 0;
  }
  #home_event .js-slider-sp .prev-arrow:before,
  #home_event .js-slider-sp .next-arrow:before{
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-weight: 900;
    font-size:25px;
    color:#333;
  }
  #home_event .js-slider-sp .prev-arrow:before{
    content: "\f053";
  }
  #home_event .js-slider-sp .next-arrow:before{
    content: "\f054";
  }
}

.event-item-inner {
  display: block;
  width:100%;
}
.event-item-main {
  /*border-bottom: solid 1px #B3B3B3;*/
  margin-right: 0;
  margin-bottom: 30px;
  padding-bottom: 30px;
  width:100%;
}
.event-item-main .event-item-inner {
  background-color:#f5f4f2;
  padding:40px;
}
@media (min-width: 811px) {
  .event-item-main .event-item-inner {
    display: flex;
    justify-content: space-between;
  }
  .event-item-main .event-item-inner >*{
    width:50%;
  }
  .event-item-main .event-item-thumb {
    margin:0;
  }
  .event-item-main .event-item-info {
    padding-left:5%;
  }
}
@media (max-width: 810px) {
  .event-item-main .event-item-inner {
    padding:5%;
  }
}

.event-item-ttl {
  color:#333;
  font-size:18px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.5em;
}
@media (max-width: 1260px) {
  .event-item-ttl {
    font-size:14px;
  }
}
@media (max-width: 767px) {
  .event-item-ttl {
    font-size:16px;
  }
}
@media (max-width: 480px) {
  .event-item-ttl {
    font-size:14px;
  }
}
.event-item-date {
	color:#a9a9a9;
  font-size:14px;
  font-weight: bold;
  line-height: 1.3;
}
@media (max-width: 1260px) {
  .event-item-date {
    font-size:12px;
  }
}
@media (max-width: 480px) {
  .event-item-date {
    font-size:10px;
  }
}
.event-item-thumb {
  background-color:#3e3a39;
  margin-bottom: 10px;
  overflow: hidden;
  position: relative;
  width:100%;
}
.event-item-thumb::before {
  content:'';
  display: block;
  padding-top:56%;
}
.event-item-thumb img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.event-item.complete .event-item-thumb::after {
  background-color:rgba(51,51,51,0.4);
  content:'';
  display: block;
  height: 100%;
  left:0;
  position: absolute;
  top:0;
  width:100%;
  z-index: 2;
}
.event-item .stamp-comp {
  border:solid 2px #FFF;
  color:#FFF;
  display: inline-block;
  font-size:18px;
  font-weight: bold;
  padding:0.5em 1.5em;
  position: absolute;
  left:50%;
  top:50%;
  -webkit-transform: translate(-50%, -50%) rotate(-15deg);
  -ms-transform: translate(-50%, -50%) rotate(-15deg);
  transform: translate(-50%, -50%) rotate(-15deg);
  z-index: 3;
}
@media (max-width: 1260px) {
  .event-item .stamp-comp {
    font-size:16px;
    padding:0.5em 1em;
  }
}
@media (max-width: 1024px) {
  .event-item .stamp-comp {
    font-size:14px;
  }
}
@media (max-width: 767px) {
  .event-item .stamp-comp {
    font-size:16px;
  }
}
.event-item-txt {
  font-size:14px;
  line-height: 2.4;
  padding-top:1em;
}
@media (max-width: 480px) {
  .event-item-txt {
    line-height: 1.8;
  }
}


@media (min-width: 768px) {
  .event-list .event-item {
    display: flex;
  }
  .event-list .event-item .event-item-inner {
    display: flex;
    flex-direction: column;
  }
  .event-list .event-item .event-item-info {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }
  .event-list .event-item .event-item-ttl {
    flex-grow: 1;
  }
  .event-list .event-item .event-item-date {
    xflex-grow: 1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; /* 表示したい行数を指定する */
    overflow: hidden;
  }
}

/*----- HOME FEATURE SECTION -----*/
#home_feature .feature-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #home_feature .feature-list {
    margin-bottom: 10px;
  }
}
#home_feature .feature-list .feature-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 50px;
  width:calc(25% - 150px / 4);
}
@media (max-width: 1260px) {
  #home_feature .feature-list .feature-item {
    margin-right: 20px;
    width:calc(25% - 60px / 4);
  }
}
#home_feature .feature-list .feature-item:nth-child(4n) {
  margin-right: 0;
}
@media (max-width: 767px) {
  #home_feature .feature-list .feature-item {
    margin:0 5% 10% 0;
    width:calc(50% - 5% / 2);
  }
  #home_feature .feature-list .feature-item:nth-child(even) {
    margin-right: 0;
  }
}

#home_feature .feature-item-inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
}

#home_feature .feature-item-icon {
  margin:0 auto 20px;
  max-width:150px;
  text-align: center;
  width:60%;
}
#home_feature .feature-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 0.5em;
  text-align: center;
}
@media (max-width: 1260px) {
  #home_feature .feature-item-ttl {
    font-size:14px;
  }
}
@media (max-width: 480px) {
  #home_feature .feature-item-ttl {
    font-size:15px;
    letter-spacing: 0.05em;
  }
}
#home_feature .feature-item-text {
  flex-grow: 1;
  line-height: 2;
  text-align: left;
}
@media (max-width: 767px) {
  #home_feature .feature-item-text {
    line-height: 1.8;
  }
}

@media (min-width: 768px) {
  #home_feature .feature-item .feature-item-ttl {
    min-height: 60px;
    display: flex;
    align-items: center;
  }
}
@media (max-width: 767px) {
  #home_feature .feature-item:nth-child(-n+2) .feature-item-ttl {
    min-height: 3em;
    display: flex;
    align-items: center;
  }
}

#home_feature .feature-item .btn__more {
  margin-top:auto;
}


/*----- HOME SPACE COORDINATION SECTION -----*/
#home_coordination .coordination-list {
  margin-bottom: 50px;
}
@media (min-width: 751px) {
  #home_coordination .coordination-list {
    display: flex;
  }
  #home_coordination .coordination-item {
    margin-right:40px;
    width:calc(50% - 40px / 2);
  }
  #home_coordination .coordination-item:nth-child(even) {
    margin-right: 0;
  }
}
@media (max-width: 750px) {
  #home_coordination .coordination-list {
    margin-bottom: 10%;
  }
  #home_coordination .coordination-item:not(:last-child) {
    margin-bottom: 10%;
  }
}

#home_coordination .coordination-item-thumb {
  position: relative;
  margin-bottom: 15px;
}
#home_coordination .coordination-item-thumb img {
  width: 100%;
}
#home_coordination .coordination-item-ttl {
  position: absolute;
  color:#FFF;
  font-weight: bold;
  left:50%;
  line-height: 1.8;
  text-align: center;
  top:50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  white-space: nowrap;
  z-index: 2;
}
#home_coordination .coordination-item-ttl >* {
  display: block;
}
#home_coordination .coordination-item-ttl .en {
  font-size:30px;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
}
@media (max-width: 1260px) {
  #home_coordination .coordination-item-ttl .en {
    font-size:20px;
  }
}
@media (max-width: 750px) {
  #home_coordination .coordination-item-ttl {
    font-size:34px;
  }
  #home_coordination .coordination-item-ttl .en {
    font-size:52px;
  }
}
@media (max-width: 640px) {
  #home_coordination .coordination-item-ttl {
    font-size:17px;
  }
  #home_coordination .coordination-item-ttl .en {
    font-size:26px;
  }
}

/*----- HOME CASES SECTION -----*/
#home_cases {
  background-color:#F2F2F2;
}
#home_cases .section-inner {
  max-width: none;
  width:100%;
}
#home_cases.section .section-ttl {
  max-width: 1200px;
  margin:0 auto 2.3em;
}

#home_cases.section .cases-list {
  margin-bottom: 100px;
}
#home_cases.section .cases-item {
  padding:0 15px;
}
#home_cases.section .cases-item-thumb {
  aspect-ratio:3/2;
  margin-bottom: 15px;
  width:100%;
}
#home_cases.section .cases-item-thumb img {
  width:100%;
}
#home_cases.section .cases-item-cat {
  background-color:#FFB500;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 10px;
  padding:0.2em 0.5em;
  text-align: center;
}
#home_cases.section .cases-item-ttl {
  font-size: 18px;
  line-height: 1.4;
  text-align: left;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (max-width: 1260px) {
  #home_cases.section .cases-item-ttl {
    font-size: 16px;
  }
}

#home_cases .cases-list.js-slider.pos-fixed .slick-track{
  transform: translate3d(0,0,0) !important;
}
#home_cases .slick-dots {
  bottom:-40px;
}
#home_cases .slick-dots li {
  margin: 0 8px 0 5px;
  height: 12px;
  width: 12px;
}
#home_cases .slick-dots li button:before {
  color: #999999;
  font-size: 12px;
  opacity: 1;
}
#home_cases .slick-dots li.slick-active button::before {
  color: #FFB500;
  opacity: 1;
}

#home_cases .link-list {
  display: flex;
  font-size: 18px;
  font-weight: bold;
  flex-wrap: wrap;
  width:100%;
}
#home_cases .link-item a {
  display: block;
  padding:1em 0;
}
#home_cases .link-item:first-child {
  position: relative;
}
#home_cases .link-item:first-child::after {
  background-color:#FFB500;
  content:'';
  display: block;
  position: absolute;
  left:0;
  top:100%;
  height: 1px;
  width:100%;
}
@media (min-width: 768px) {
  #home_cases .section-head {
    position: relative;
  }
  #home_cases .link-list-wrap {
    position: absolute;
    right:0;
    bottom:-20px;
    width:65%;
  }
  #home_cases .link-list {
    border-bottom: solid 1px #999999;
  }
  #home_cases .link-list .link-item:not(:last-child) {
    margin-right: 5em;
  }
}
@media (max-width: 1500px) {
  #home_cases .link-item {
    font-size:16px;
  }
}
@media (max-width: 767px) {
  #home_cases .link-list-wrap {
    border-top: solid 1px #999999;
    margin:0 auto 30px;
    width:90%;
  }
  #home_cases .link-item {
    border-bottom: solid 1px #999999;
    text-align: center;
    width:50%;
    margin:0;
  }
  #home_cases .link-item:first-child::after {
    height: 4px;
    top:calc(100% - 2px);
  }
}
@media (max-width: 480px) {
  #home_cases .link-item {
    font-size:15px;
  }
  #home_cases .link-item:first-child::after {
    height: 2px;
    top:calc(100% - 1px);
  }
}

/*----- HOME AREA SECTION -----*/
#home_area{}
.area-wrap{
  padding:40px;
  line-height:2;
}
.areaDetail{
  display:flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.areaDetail .textBox dl{
  margin-top:25px;
}

.areaDetail .textBox dl dt{
  font-size:18px;
  font-weight:bold;
  background:#fff;
  margin-bottom:10px;
  padding:5px 5px 5px 25px;
}

@media (min-width: 751px) {
  .area-wrap{
     padding:80px 0 50px;
  }
  .areaDetail .textBox,
  .areaDetail figure{
    width: calc(50% - 40px / 2);
  }
  .areaDetail .textBox{
    margin-right:20px;
    font-size:16px;
  }
}

@media (max-width: 750px) {
  .areaDetail{
    flex-direction: column;
  }
  .areaDetail .textBox{
    order:2;
  }
  .areaDetail figure{
    margin-bottom:25px;
    order:1;
  }
}

/*----- HOME FAQ SECTION -----*/
.faq-list {
  margin-bottom: 50px;
}
.acd-menu {
  background-color:#F2F2F2;
  text-align: left;
  margin-bottom: 20px;
  padding:20px;
  position: relative;
}
.acd-menuNone {
  background-color:#F2F2F2;
  text-align: left;
  margin-bottom: 20px;
  padding:20px;
  position: relative;
}
@media (max-width: 767px) {
  .acd-menu {
    padding:5%;
  }
  .acd-menu.areaACD{
    padding:5% 0;
    margin-bottom:10%;
  }

}
.acd-menu .acd-menu-head {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 1.5;
  cursor: pointer;
}
.acd-menu .acd-menu-head::before,
.acd-menu .acd-menu-head::after {
  content: '';
  display: block;
  width:20px;
  height: 2px;
  background:#333;
  position: absolute;
  right:0;
  top: calc(1.2em - 7px);
}
.acd-menu.areaACD .acd-menu-head::before{
  content: '';
}
.acd-menu.areaACD .acd-menu-head::after {
  content: '▼';
  transform: rotate(0);
}
.acd-menu.areaACD .acd-menu-head.active::after {
  content: '▲';
}

.acd-menu.areaACD .acd-menu-head::before,
.acd-menu.areaACD .acd-menu-head::after {
  background:unset;
  top: calc(1.2em - 15px);
  right:40%;
}
.acd-menu .acd-menu-head::after {
  transform: rotate(90deg);
  transition: 0.5s;
}
.acd-menu .acd-menu-head.active::after{
  transform: rotate(0);
  transition: 0.5s;
}
.acd-menu .acd-menu-body{
  display: none;
  font-size:14px;
  line-height: 2;
}
.acd-menu .acd-menu-head .acd-menu-item {
  font-size:16px;
  font-weight: bold;
  padding-left:1.6em;
  padding-right: 2.2em;
  position: relative;
  width:100%;
}
.acd-menuNone .acd-menu-head .acd-menu-item {
  font-size:16px;
  font-weight: bold;
  padding-left:1.6em;
  padding-right: 2.2em;
  position: relative;
  width:100%;
}
.acd-menu.areaACD .acd-menu-head .acd-menu-item {
  text-align:center;
}
.acd-menuNone.areaACD .acd-menu-head .acd-menu-item {
  text-align:center;
}

.acd-menu .acd-menu-body .acd-menu-item{
  font-size:14px;
  padding-left:1.8em;
  padding-right: 2em;
}
.acd-menu.areaACD .acd-menu-body .acd-menu-item{
  padding-left:unset;
  padding-right:unset;
}
.acd-menu .acd-menu-item::before {
  content:'';
  font-weight: bold;
  margin-right: 1em;
  position: absolute;
  left:0;
}
.acd-menu .acd-menu-head .acd-menu-item::before{
  content:'Q';
  color:#000;
}
.acd-menu .acd-menu-body .acd-menu-item {
  padding-top:10px;
}

.acd-menu.areaACD .acd-menu-head .acd-menu-item::before{
  display:none;
}

@media print,screen and (min-width: 981px) {
  .acd-menu.areaACD .acd-menu-head::before,
  .acd-menu.areaACD .acd-menu-head::after {
      top: calc(1.2em - 16px);
      right:37%;
  }
}
@media print,screen and (max-width: 980px) {
  .acd-menu.areaACD .acd-menu-head::before,
  .acd-menu.areaACD .acd-menu-head::after {
      top: calc(1.2em - 20px);
      right:24%;
  }
}

@media (max-width: 480px) {
  .acd-menu .acd-menu-head .acd-menu-item {
    font-size:14px;
  }
}

/*----- HOME INATAGRAM SECTION -----*/
#bl-contents-instagram {
  background-color:#F2F2F2;
  padding:80px;
}
@media (min-width: 811px) {
  #bl-contents-instagram {
    display: flex;
  }
  #bl-contents-instagram .bl-contents-text {
    padding-right: 5%;
    width:40%;
  }
  #bl-contents-instagram .bl-contents-media {
    width:60%;
  }
  #bl-contents-instagram .bl-contents-text .btn {
    margin-left: 0;
  }
  #bl-contents-instagram .btn-sp {
    display: none;
  }
}
@media (max-width: 1260px) {
  #bl-contents-instagram {
    padding:60px;
  }
}
@media (max-width: 810px) {
  #bl-contents-instagram {
    padding:15% 5%;
  }
  #bl-contents-instagram .btn-pc {
    display: none;
  }
}

#bl-contents-instagram .instagram-box {
  height: 100%;
  width:100%;
}
@media (max-width: 767px) {
  #bl-contents-instagram .instagram-box {
    margin-bottom: 8%;
  }
}

/*----- HOME STAFF SECTION -----*/

@media (min-width: 768px) {
  #home_staff .section-inner {
    padding: 50px 0;
  }
  #bl-contents-staff {
    display: flex;
    align-items: center;
  }
  #bl-contents-staff .bl-contents-text {
    width: 35%;
  }
  #home_staff .staff-list-wrap {
    position: absolute;
    right: 0;
    top: 50px;
    width: 55%;
  }
  #bl-contents-staff .bl-contents-text .btn {
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  #home_staff {
    padding-bottom: 10%;
  }
  #home_staff .staff-list-wrap {
    width: 95%;
    margin-right: 0;
    margin-left: auto;
  }
}

@media (max-width: 767px) {
  #home_staff .section-inner {
    padding-bottom: 0;
  }
}

/*STAFF ITEM SLIDER*/
#home_staff .slick-track {
  display: flex;
}
#home_staff .slick-slide {
  height: auto !important;
}
#home_staff .slick-list {
  padding: 0 15% 0 0 !important;
}
#home_staff .staff-item {
  padding:0 15px;
}
@media (max-width: 767px) {
  #home_staff .staff-list {
    margin-bottom: 30px;
  }
  #home_staff .staff-item {
    padding:0 20px;
  }
}
#home_staff .staff-item .item-link {
  display: block;
  height: 100%;
}

#home_staff .staff-item .item-thumb {
  aspect-ratio: 21 / 26;
  padding-top:123.8095%;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  margin: 0 0 10px;
}
#home_staff .staff-item .item-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 5px;
  line-height: 1.2;
}
#home_staff .staff-item .item-content {
  position: absolute;
  left:20px;
  bottom:20px;
}
#home_staff .staff-item .staff-name-en {
  color:#FFF;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:20px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0.5em;
  text-shadow:
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5);
}
#home_staff .staff-item .staff-name-en >* {
  display: block;
}
#home_staff .staff-item .staff-name-en >*:first-child {
  font-size:30px;
}
#home_staff .staff-item .company-name {
  color:#FFF;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:12px;
  font-weight: bold;
  text-shadow:
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5);
}
@media (max-width: 1260px) {
  #home_staff .staff-item .item-title {
    font-size: 14px;
  }
  #home_staff .staff-item .staff-name-en {
    font-size:16px;
  }
  #home_staff .staff-item .staff-name-en >*:first-child {
    font-size:24px;
  }
}
#home_staff .staff-item .staff-position {
  color:#FFB500;
  font-size:12px;
}

#home_staff .slick-arrow {
  transition: all 0.5s;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
#home_staff .slick-arrow:hover {
  cursor: pointer;
  opacity: 0.7;
}
#home_staff .prev-arrow {
  left: 10px;
}
#home_staff .next-arrow {
  right: 70px;
}
#home_staff .slick-arrow:before {
  content: '';
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  height: 40px;
  width: 40px;
}
#home_staff .prev-arrow:before {
  background-image: url(../img/common/arrow_prev.png);
}
#home_staff .next-arrow:before {
  background-image: url(../img/common/arrow_next.png);
}
@media (max-width: 1260px) {
  #home_staff .slick-arrow:before {
    height: 30px;
    width: 30px;
  }
}
@media (max-width: 480px) {
  #home_staff .slick-arrow:before {
    height: 20px;
    width: 20px;
  }
}

@media (min-width: 768px) {
  #home_staff .btn-sp {
    display: none;
  }
}
@media (max-width: 767px) {
  #home_staff .btn-pc {
    display: none;
  }
}

/*----- HOME TIDBITS SECTION -----*/
#tidbits-cards {
	margin-bottom: 50px;

}
@media (max-width: 767px) {
  #tidbits-cards {
    margin-bottom: 25%;
  }
}

#tidbits-cards .card {
	padding:0 25px;
}
@media (max-width: 767px) {
  #tidbits-cards .card {
    padding:0 5px;
  }
}

#tidbits-cards .card a {
  width:100%;
}
@media (min-width: 768px) {
  #tidbits-cards .card a {
		display: flex;
  }
}

@media (min-width: 768px) {
  #tidbits-cards .card .card-item-media {
    width:45%;
  }
  #tidbits-cards .card-item-body {
    width:55%;
  }
}

@media (min-width: 768px) {
  #home_tidbits #tidbits-cards .slick-track {
    display: flex;
  }
  #home_tidbits #tidbits-cards .slick-slide {
    height: auto !important;
  }
  #home_tidbits #tidbits-cards .card a {
    height: 100%;
  }
}

#tidbits-cards .card .card-item-thumb {
  background-color:#F2F2F2;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 100%;
  margin:0;
  overflow: hidden;
  position: relative;
  width:100%;
}
@media (max-width: 767px) {
  #tidbits-cards .card .card-item-thumb {
    aspect-ratio:3/2;
  }
}
#tidbits-cards .card .card-item-thumb img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#tidbits-cards .card .card-item-body {
  background-color:#FFF;
  padding:30px;
}
@media (max-width: 767px) {
  #tidbits-cards .card .card-item-body {
    padding:5%;
  }
}

#tidbits-cards .card .card-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 1em;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
@media (max-width: 1260px) {
  #tidbits-cards .card .card-item-ttl {
    font-size:16px;
  }
}
@media (max-width: 375px) {
  #tidbits-cards .card .card-item-ttl {
    font-size:14px;
  }
}

#tidbits-cards .card .card-item-date {
  color:#d3d3d3;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:14px;
  font-weight: bold;
}
@media (max-width: 375px) {
  #tidbits-cards .card .card-item-date {
    font-size:10px;
  }
}

#tidbits-cards .card .card-item-txt {
  font-size:14px;
  line-height: 2.4;
  margin-top:2em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* 表示したい行数を指定する */
  overflow: hidden;
}
@media (max-width: 767px) {
  #tidbits-cards .card .card-item-txt {
    line-height: 1.8;
  }
}

#tidbits-cards.js-slider-sp .slick-arrow {
  transition: all  0.5s;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
#tidbits-cards.js-slider-sp .slick-arrow:hover{
  cursor: pointer;
  opacity: 0.7;
}
#tidbits-cards.js-slider-sp .prev-arrow {
  left: 0;
}
#tidbits-cards.js-slider-sp .next-arrow {
  right: 0;
}
#tidbits-cards.js-slider-sp .prev-arrow:before,
#tidbits-cards.js-slider-sp .next-arrow:before{
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-weight: 900;
  font-size:25px;
  color:#333;
}
#tidbits-cards.js-slider-sp .prev-arrow:before{
  content: "\f053";
}
#tidbits-cards.js-slider-sp .next-arrow:before{
  content: "\f054";
}

@media (max-width: 767px) {
  #tidbits-cards.js-slider-sp .slick-arrow {
    top: auto;
    bottom: -12%;
    transform: none;
  }
  #tidbits-cards.js-slider-sp .prev-arrow {
    left: 40%;
  }
  #tidbits-cards.js-slider-sp .next-arrow {
    right: 40%;
  }
}

/*----- HOME ABOUT SECTION -----*/
.about-contents-list .about-contents {
  margin:0 0 40px;
}
.about-contents-list .about-contents.w-full {
  margin:0 0 40px;
  width:100%;
}

@media (min-width: 811px) and (max-width:1500px) {
  .about-contents-list .about-contents.w-half {
    margin-right:30px;
    width:calc(50% - 30px / 2);
  }
  .about-contents-list.col {
    gap: 30px;
    margin-bottom: 30px;
  }
}
@media (min-width: 811px) {
  .about-contents-list {
    display: flex;
    flex-wrap: wrap;
  }
  .about-contents-list .about-contents {
    margin:0 40px 40px 0;
    width:calc(50% - 40px / 2);
  }
  .about-contents-list .about-contents:nth-child(even) {
    margin-right: 0;
  }
  .about-contents-list .about-contents:nth-child(even) {
    margin-right: 0;
  }

  .about-contents-list.col {
    gap: 40px;
    margin-bottom: 40px;
  }
  .about-contents-list.col .about-contents {
    flex: 1;
    margin: 0;
  }

  .about-contents.w-full.col-2 .about-contents-inner {
    display: flex;
  }
  .about-contents.w-full.col-2 .about-contents-inner >* {
    width:50%;
  }
}

.about-contents-list .about-contents-thumb {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
.about-contents-list .about-contents-thumb img {
  width:100%;
}
.about-contents-list .about-contents-ttl {
  position: absolute;
  color:#FFF;
  font-weight: bold;
  left:50%;
  line-height: 1.8;
  text-align: center;
  top:50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  white-space: nowrap;
  z-index: 2;
}
.about-contents-list .about-contents-ttl >* {
  display: block;
}
.about-contents-list .about-contents-ttl .en {
  font-size:30px;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
}
@media (max-width: 1260px) {
  .about-contents-list .about-contents-ttl .en {
    font-size:20px;
  }
}
@media (max-width: 750px) {
  .about-contents-list .about-contents-ttl {
    font-size:34px;
  }
  .about-contents-list .about-contents-ttl .en {
    font-size:52px;
  }
}
@media (max-width: 640px) {
  .about-contents-list .about-contents-ttl {
    font-size:17px;
  }
  .about-contents-list .about-contents-ttl .en {
    font-size:26px;
  }
}

.about-contents-info {
  background-color:#333;
  color:#FFF;
  padding:40px;
}
@media (max-width: 767px) {
  .about-contents-info {
    padding:10% 5%;
  }
}
.about-contents-info .section-ttl {
  margin-bottom: 1.5em;
}
.about-contents-info .text {
  margin-bottom: 1.3em;
  line-height: 2.1;
}
@media (max-width: 810px) {
  .about-contents-info .text {
    line-height: 1.9;
    margin-bottom: 2em;
  }
}

@media (min-width: 811px) {
  .about-contents-info .btn {
    margin-left: 0;
  }
}
@media (max-width: 810px) {
  .about-contents.w-full .about-contents-thumb {
    padding-top:50%;
  }
}


/*----------------------------------------------------
  FEATURE PAGE
----------------------------------------------------*/
#feature .section-ttl-area {
  padding-bottom: 30px;
}
@media (max-width: 767px) {
  #feature .section-ttl-area {
    padding-bottom: 5%;
  }
}

#feature .feature-top.section-inner {
  padding-bottom: 0;
  padding-top:0;
}

#feature .img-box {
  max-width: 1000px;
}

/*FEATURE LIST*/
#feature .feature-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #feature .feature-list {
    margin-bottom: 10px;
  }
}
#feature .feature-list .feature-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 50px;
  width:calc(25% - 150px / 4);
}
@media (max-width: 1260px) {
  #feature .feature-list .feature-item {
    margin-right: 20px;
    width:calc(25% - 60px / 4);
  }
}
#feature .feature-list .feature-item:nth-child(4n) {
  margin-right: 0;
}
@media (max-width: 767px) {
  #feature .feature-list .feature-item {
    margin:0 5% 10% 0;
    width:calc(50% - 5% / 2);
  }
  #feature .feature-list .feature-item:nth-child(even) {
    margin-right: 0;
  }
}

#feature .feature-item-inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  width:100%;
}

#feature .feature-item-icon {
  margin:0 auto 20px;
  max-width:130px;
  text-align: center;
  width:100%;
}
#feature .current .feature-item-icon {
  max-width: 200px;
}
@media (max-width: 767px) {
  #feature .feature-item-icon {
    width:60%;
  }
  #feature .current .feature-item-icon {
    width:90%;
  }
}
#feature .feature-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 0.5em;
  text-align: center;
}
#feature .current .feature-item-ttl {
  color:#FFB500;
}
@media (max-width: 1260px) {
  #feature .feature-item-ttl {
    font-size:14px;
  }
}
@media (max-width: 480px) {
  #feature .feature-item-ttl {
    font-size:15px;
    letter-spacing: 0.05em;
  }
}
@media (min-width: 768px) {
  #feature .feature-item .feature-item-ttl {
    min-height: 60px;
    display: flex;
    align-items: center;
  }
}
@media (max-width: 767px) {
  #feature .feature-item:nth-child(-n+2) .feature-item-ttl {
    min-height: 3em;
    display: flex;
    align-items: center;
  }
}


#feature .section-head {
  align-items: center;
  aspect-ratio:4/1;
  background-color:rgba(51,51,51,0.4);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  justify-content: center;
  margin:0 auto;
  max-width: 1200px;
  width:100%;
}
@media (max-width: 767px) {
  #feature .section-head {
    aspect-ratio:5/2;
  }
}

#feature .section-head .catch_copy {
  font-size:30px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  transition: 0.2s;
}
@media (max-width: 1024px) {
  #feature .section-head .catch_copy {
    font-size:24px;
  }
}
@media (max-width: 375px) {
  #feature .section-head .catch_copy {
    font-size:20px;
  }
}

#feature .bl-contents:not(:last-child) {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  #feature .bl-contents:not(:last-child) {
    margin-bottom: 10%;
  }
}


#feature .bl-contents-ttl.line {
  border-bottom: solid 1px #333;
  padding-bottom: 0.5em;
  margin-bottom: 2em;
}

#feature .bl-contents-ttl.bl-contents-ttl-sub {
  margin-bottom: 1em;
}


.movie-box {
  aspect-ratio:16 / 9;
  height: auto;
  width:100%;
}
.movie-box iframe {
  height: 100%;
  width:100%;
}

#feature .flex-container:not(:last-child) {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  #feature .flex-container:not(:last-child) {
    margin-bottom: 15%;
  }
}

#feature .item-thumbnail {
  text-align: center;
}

@media (min-width: 768px) {
  #feature .flex-container {
    align-items: center;
    display: flex;
  }
  #feature .flex-container.ai-start {
    align-items: flex-start;
  }
  #feature .flex-container.row-reverse {
    flex-direction: row-reverse;
  }
  #feature .flex-container >.container-item {
    width:50%;
  }
  #feature .flex-container .media-area {
    width:50%;
  }
  #feature .flex-container .text-area {
    padding-left:8%;
    width:50%;
  }
  #feature .flex-container .text-area.pos-left {
    padding-right:8%;
    padding-left: 0;
  }
  #feature .flex-container .media-area-s.media-area {
    width:35%;
  }
  #feature .flex-container .media-area-s.media-area + .text-area {
    width:65%;
  }
}
@media (max-width: 767px) {
  #feature .flex-container .text-area {
    margin-top:8%;
  }
  #feature .flex-container .text-area.pos-left,
  #feature .flex-container.row-reverse .text-area {
    margin-top:0;
    margin-bottom: 8%;
  }
  #feature .flex-container .text-area.pos-left + .media-area {
    margin-bottom: 0;
  }
}

#feature .sidemenu {
  display: none;
  left:5%;
  position: fixed;
  top:150px;
  transition: 0.2s;
}
@media (max-width: 1260px) {
  #feature .sidemenu {
    left:2%;
  }
}
@media (max-width: 1000px) {
  #feature .sidemenu {
    display: none;
  }
}


#feature .text {
  line-height: 2;
}

#feature .row {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #feature .row {
    margin-bottom: 5%;
  }
}
#feature .row .col {
  margin:0 0 30px;
  width:100%;
}
@media (min-width: 768px) {
  #feature .row {
    display: flex;
    flex-wrap: wrap;
  }
  #feature .row .col {
    margin:0 30px 0 0;
    width:calc(50% - 30px / 2);
  }
  #feature .row .col:nth-of-type(2n) {
    margin-right: 0;
  }
}

#feature .row .row-ttl {
  margin-bottom: 2em;
  text-align: center;
  width:100%;
}


#feature .frm-box {
  border:solid 1px #333;
  padding:70px 80px;
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  #feature .frm-box {
    padding:8% 5%;
    margin-bottom: 10%;
  }
}

#feature .frm-box .bl-contents-ttl:not(.bl-contents-ttl-sub) {
  margin-bottom: 2em;
}

/*
 * FEATURE 01 PAGE [ATELIER]
 *--------------------------------------------*/
#section-head-atelier.section-head {
  background-image: url('../img/feature/feature01/bg_head_atelier.png');
}

#flow #bl-contents-step .step-item .info-area {
  background-color:#FFF;
}


/*
 * FEATURE 02 PAGE [COMFORT]
 *--------------------------------------------*/
#section-head-comfort.section-head {
  background-image: url('../img/feature/feature02/bg_head_comfort.png');
}

.spec-list {}
.spec-list .spec-item {
  background-color:#FFF;
  xpadding:20px 20px 60px;
  padding:20px 20px 40px;
  position: relative;
  margin-bottom: 5px;
}
.spec-list .spec-item .link-area {
  xposition: absolute;
  xleft:0;
  xright:0;
  xbottom:35px;
  margin-top:20px;
}
.spec-list .spec-item .link {
  display: block;
  position: relative;
  margin:auto;
}
.spec-list .spec-item .link-txt {
  display: block;
  font-size:14px;
  padding-bottom: 10px;
  line-height: 1.5;
  text-align: center;
}
.spec-list .spec-item .link::after {
  content: '\f107';
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-weight: 900;
  font-size: 2.5rem;
  color: #FFB500;
  display: inline-block;
  position: absolute;
  text-align: center;
  left:0;right:0;
  margin:auto;
}
@media (max-width: 767px) {
  .spec-list .spec-item {
    padding:8% 5% 15%;
  }
  .spec-list .spec-item .link-area {
    bottom:8%;
  }
}

@media (min-width: 768px) {
  .spec-list {
    display: flex;
    flex-wrap: wrap;
  }
  .spec-list .spec-item {
    margin:0 5px 5px 0;
    width:calc(33.33% - 10px / 3);
    display: flex;
    flex-direction: column;
  }
  .spec-list .spec-item:nth-child(3n) {
    margin-right: 0;
  }
  .spec-list .spec-item .spec-item-body {
    margin-top:auto;
    display: flex;
    flex-direction: column;
    flex:1;
  }
}

.spec-list .spec-item .spec-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.5em;
  text-align: center;
}
.spec-list .spec-item .spec-item-icon {
  min-height: 90px;
  max-width: 183px;
  margin:0 auto 1em;
  text-align: center;
}
.spec-list .spec-item .spec-item-text {
  font-size:14px;
  line-height: 2;
  text-align: left;
display: flex;
}

@media (min-width: 768px) {
  /* 3列リストの一番左下にある要素 */
  .feature-comfort .spec-list .spec-item:nth-child(3n+1):nth-last-child(-n+3) .spec-item-ttl,
  /* 3列リストの一番左下にある要素以降にあるliすべて */
  .feature-comfort .spec-list .spec-item:nth-child(3n+1):nth-last-child(-n+3) ~ .spec-item .spec-item-ttl {
    min-height: 3em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

#feature .feature-comfort .bl-contents-ttl-sub {
  font-size:20px;
  border-left:solid 5px #333;
  padding-left:0.5em;
}


/*高断熱について*/
.feature-comfort .def-list dt.line {
  font-size:20px;
  border-left:solid 5px #333;
  font-size:20px;
  margin-bottom: 1em;
  padding-left:0.5em;
}

.feature-comfort #item-01 .text-wrap {
  padding:30px;
  background-color:#F2F2F2;
}
.feature-comfort #item-01 .text-wrap .text {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .feature-comfort #item-01 .text-wrap {
    padding:5%;
  }
}


/*
.tbl-ua {
  border:solid 1px #000;
  border-collapse: collapse;
  margin:0 auto 30px;
  max-width:870px;
  width:100%;
}
.tbl-ua th,
.tbl-ua td {
  border:solid 1px #000;
  font-size:20px;
  font-weight: bold;
  padding:0.5em;
  line-height: 1.4;
  text-align: center;
  vertical-align: middle;
  width:30%;
}
.tbl-ua th:first-child {
  width:10%;
}
.tbl-ua thead th {
  background-color:#333;
  color:#FFF;
  text-align: center;
  vertical-align: middle;
}
.tbl-ua tbody th,
.tbl-ua tbody td {
  background-color:#FFF;
}
@media (max-width: 1024px) {
  .tbl-ua th,
  .tbl-ua td {
    font-size:16px;
  }
}
@media (max-width: 800px) {
  .tbl-ua th,
  .tbl-ua td {
    font-size:14px;
  }
}
@media (max-width: 767px) {
  .tbl-ua th,
  .tbl-ua td {
    font-size:12px;
    padding:0.5em 0.2em;
  }
}
@media (max-width: 480px) {
  .tbl-ua th {
    font-size:7px;
  }
}
*/

#feature .text-box {
  padding:30px;
}
@media (max-width: 480px) {
  #feature .text-box {
    padding:5%;
  }
}


#feature #item-05 .def-list dt {
  background-color:#333;
  color:#FFF;
  display: block;
  font-size:20px;
  padding:0.5em;
  text-align: center;
}
@media (max-width: 767px) {
  #feature #item-05 .def-list dt {
    font-size:16px;
  }
}

#feature #item-05 .point-item {
  margin:0 auto 20px;
  padding:30px;
  background-color:#F2F2F2;
}
@media (max-width: 767px) {
  #feature #item-05 .point-item {
    padding:8% 5%;
  }
}
#feature #item-05 .point-item:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  #feature #item-05 .point-list {
    display: flex;
    flex-wrap: wrap;
  }
  #feature #item-05 .point-list .point-item {
    margin:0 20px 20px 0;
    width:calc(50% - 20px / 2);
  }
  #feature #item-05 .point-list .point-item:nth-of-type(2n) {
    margin-right: 0;
  }
}

#feature #item-05 .point-item .point-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1em;
  margin-bottom: 1em;
  text-align: center;
}


/*
 * FEATURE 03 PAGE [安心して暮らせる家]
 *--------------------------------------------*/
#feature.feature-03 .section-head {
  background-image: url('../img/feature/feature03/bg_head_03.png');
}

.feature-03 .spec-list .spec-item .spec-item-icon {
  min-height: 63px;
}

#feature .check-list .check-item {
  width:100%;
}
#feature .check-item-ttl {
  background-color:#333;
  color:#FFF;
  font-size:20px;
  font-weight: bold;
  line-height: 1.2;
  padding:10px;
  text-align: center;
}
#feature .check-item-thumb {
  border:solid 1px #333;
  margin-bottom: 10px;
  width:100%;
}
#feature .check-item-text {
  font-size:14px;
  line-height: 1.8;
}

@media (min-width: 768px) {
  #feature .check-list {
    display: flex;
    flex-wrap: wrap;
  }
  #feature .check-list .check-item {
    margin:0 10px 30px 0;
    width:calc(33.33% - 20px / 3);
  }
  #feature .check-list .check-item:nth-child(3n) {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  #feature .check-list .check-item:not(:last-child) {
    margin-bottom: 10%;
  }
}

#feature .ttl-sub {
  font-size:14px;
  line-height: 1.2;
  margin-bottom: 0.2em;
}

#feature.feature-03 .text-box {
  margin-bottom: 50px;
}

@media (max-width: 767px) {
  #feature .gallery-items .gallery-item:not(:last-child) {
    margin-bottom: 10%;
  }
}

#feature.feature-03 .frm-box {
  margin-bottom: 0;
}

#feature.feature-03 #item-03 .frm-box {
  border:none;
}


/*
 * FEATURE 04 PAGE [AFTER MAINTENANCE]
 *--------------------------------------------*/
#feature.feature-maintenance .section-head {
  background-image: url('../img/feature/feature04/bg_head_maintenance.png');
}

#bl-contents-kashi .item-thumbnail {
  border:solid 1px #333;
}

#feature .dl-support {
  margin:0 auto 50px;
}
#feature .dl-support dt {
  background-color:#333;
  font-size:20px;
  font-weight: bold;
  color:#FFF;
  line-height: 1.2;
  padding:0.5em;
  margin-bottom: 2em;
  text-align: center;
}
#feature .dl-support dd {
  padding-bottom: 1em;
}

#feature .support-list .support-item {
  margin:0 auto 40px;
  width:100%;
}
#feature .support-list .support-item:last-child {
  margin-bottom: 0;
}

#feature .support-item .support-item-thumb {
  max-width: 177px;
  margin:0 auto 20px;
  width:50%;
}
#feature .support-item .support-item-ttl {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.5em;
  text-align: center;
}
#feature .support-item .support-item-text {
  font-size:14px;
  line-height: 2;
}

#feature .support-list {
  margin:0 auto 30px;
}
@media (min-width: 768px) {
  #feature .support-list {
    display: flex;
    justify-content: center;
  }
  #feature .support-list .support-item {
    margin:0 40px 0 0;
    width:calc(25% - 120px / 4);
  }
  #feature .support-list:not(.support-list-col1) .support-item .support-item-ttl {
    min-height: 3em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #feature .support-list .support-item:last-child {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  #feature .support-item .support-item-ttl {
    font-size:14px;
  }
}

#feature #plan-maintenance {

}



/*----------------------------------------------------
  CONCEPT PAGE
----------------------------------------------------*/
#concept .section-lead {
  font-size:50px;
  font-weight: 400;
  padding:1em 0;
}
@media (max-width: 1024px) {
}
@media (max-width: 640px) {
  #concept .section-lead {
    font-size:30px;
  }
}
#concept .text {
  font-size:18px;
}
@media (max-width: 1024px) {
  #concept .text {
    font-size:16px;
  }
}
@media (max-width: 640px) {
  #concept .text {
    font-size:15px;
  }
}

#concept figure {
  margin:0 auto 50px;
  text-align: center;
}
@media (max-width: 640px) {
  #concept figure {
    margin-bottom: 8%;
  }
}

#concept .concept-catch-box {
  padding:2em 0;
  text-align: center;
}
#concept .concept-catch {
  font-size:30px;
  line-height: 1.2;
}

@media (max-width: 640px) {
  #concept .concept-catch {
    font-size:15px;
    line-height: 1.4;
  }
}

#concept .concept-catch:first-child {
  position: relative;
  margin-bottom: 2em;
}
@media (max-width: 640px) {
  #concept .concept-catch:first-child {
    margin-bottom: 3em;
  }
}
#concept .concept-catch:first-child::after {
  content: '×';
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  margin: auto;
  margin-top:0.1em;
  font-size: 1.5em;
  line-height: 1;
  font-weight: normal;
}
@media (max-width: 640px) {
  #concept .concept-catch:first-child::after {
    font-size:2em;
  }
}

#concept .concept-catch .emphatic {
  display: inline-block;
  color:#FFB500;
  font-size:50px;
  padding:0 0.2em;
  vertical-align:middle;
}
@media (max-width: 640px) {
  #concept .concept-catch .emphatic {
    font-size:30px;
  }
}

/*----------------------------------------------------
  MODEL HOUSE PAGE
----------------------------------------------------*/

#modelhouse .section-inner.title-area {
  padding-bottom: 20px;
}

#modelhouse .bl-contents:not(:last-child) {
  margin-bottom: 80px;
}

#modelhouse #bl-contents-floor .bl-contents-inner,
#modelhouse #bl-contents-garden .bl-contents-inner,
#modelhouse #bl-contents-passive_design .bl-contents-inner,
#modelhouse #bl-contents-access .bl-contents-inner,
#modelhouse #bl-contents-request .bl-contents-inner {
  max-width: 800px;
}

#modelhouse .bl-contents-ttl {
  text-align: center;
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 2em;
}
@media (max-width: 767px) {
  #modelhouse .bl-contents-ttl {
    margin-bottom: 1.5em;
  }
}

/*----- SLIDER -----*/
#modelhouse .slider-container {
  width:100%;
}
#modelhouse .slider-container img {
  margin:0 auto;
  max-width:100%;
}
#modelhouse .slider-container .slider {
  margin-bottom:20px;
}
#modelhouse .slider-container .slick-img {
  margin:0 15px;
}
#modelhouse .slider-container .thumbnail {
  margin:0 auto;
  max-width:1530px;
  width:93%;
}
#modelhouse .slider-container .thumbnail-img {
  margin:0 5px;
}
#modelhouse .slider-container .thumbnail.pos-fixed .slick-track{
  transform: translate3d(0,0,0) !important;
}
@media (max-width: 767px) {
  #modelhouse .slider-container .slider {
    margin-bottom: 10px;
  }
  #modelhouse .slider-container >* {
    min-width:0;
    min-height: 0;
  }
  #modelhouse .slider-container .thumbnail {
    display: flex;
    flex-wrap: wrap;
  }
  #modelhouse .slider-container .thumbnail-img {
    width:20%;
  }
  #modelhouse .slider-container .thumbnail-img {
    margin:0 2px;
  }
  #modelhouse .slider-container .thumbnail .thumbnail-img {
    height: auto !important;
  }
}

#modelhouse .slick-arrow {
  transition: all 0.5s;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
#modelhouse .slick-arrow:hover {
  cursor: pointer;
  opacity: 0.7;
}
#modelhouse .prev-arrow {
  left: 12%;
}
#modelhouse .next-arrow {
  right: 12%;
}
#modelhouse .slick-arrow:before {
  content: '';
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  height: 40px;
  width: 40px;
}
#modelhouse .prev-arrow:before {
  background-image: url(../img/common/arrow_prev.png);
}
#modelhouse .next-arrow:before {
  background-image: url(../img/common/arrow_next.png);
}
@media (max-width: 767px) {
  #modelhouse .slick-arrow:before {
    height: 20px;
    width:20px;
  }
  #modelhouse .prev-arrow {
    left: 7%;
  }
  #modelhouse .next-arrow {
    right: 7%;
  }
  #modelhouse .thumbnail .prev-arrow {
    left: 3%;
  }
  #modelhouse .thumbnail .next-arrow {
    right: 3%;
  }
}

/*----- CONCEPT BLOCK -----*/
#bl-contents-concept .text {
  line-height: 2.8;
}

.architect-info-box {
  margin:0 auto;
  max-width: 650px;
  padding:30px 0;
  width:100%;
}
.architect-info-box .box-ttl {
  border-bottom: solid 1px #333;
  font-size:18px;
  font-weight: bold;
  line-height: 1.4;
  padding-bottom: 0.2em;
  margin-bottom: 0.5em;
}
.architect-info-box .architect-name {
  font-size:22px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.3em;
}
.architect-info-box .architect-name >* {
  display: inline-block;
}
.architect-info-box .architect-name .en {
  font-size:0.7em;
  padding-left: 1em;
}
.architect-info-box .architect-txt {
  font-size:12px;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .architect-info-box-inner {
    align-items: flex-start;
    display: flex;
  }
  .architect-info-box-inner .img-area {
    width:40%;
  }
  .architect-info-box-inner .text-area {
    padding-left: 5%;
    width:60%;
  }
}
@media (max-width: 767px) {
  .architect-info-box-inner .img-area {
    margin-bottom: 5%;
  }
}

.architect-info-box .img-area {
  position: relative;
}
.architect-info-box .img-area .txt {
  position: absolute;
  left:1em;
  bottom:1em;
  color:#FFF;
  font-size:14px;
}

.architect-info-box-inner .text-area >*:not(:last-child) {
  border-bottom: solid 1px #333;
  margin-bottom: 10px;
  padding-bottom: 20px;
}

.tbl-career {
  margin-bottom: 20px;
}
.tbl-career th,
.tbl-career td {
  font-size:12px;
  line-height: 1.4;
  padding:0.2em 0;
}
.tbl-career th {
  padding-right: 1em;
  white-space: nowrap;
}

/*----- FLOOR BLOCK -----*/
#first-floor {
  margin-bottom: 50px;
}
.floor-img-box {
  background-color:#FFF;
  padding:75px;
  margin-bottom: 50px;
  text-align: center;
}
.floor-img-box img {
  max-width: none;
}
@media (max-width: 1000px) {
  .floor-img-box {
    padding:50px;
  }
}
@media (max-width: 767px) {
  .floor-img-box {
    padding:5%;
    width:117%;
  }
}

.floor-list {
  margin-bottom: 30px;
}
.floor-list .floor-item {
  margin:0 auto 5%;
  width:100%;
}
@media (min-width: 768px) {
  .floor-list {
    display: flex;
    flex-wrap: wrap;
  }
  .floor-list .floor-item {
    margin:0 20px 50px 0;
    width:calc(33.33% - 40px / 3);
  }
  .floor-list .floor-item:nth-child(3n) {
    margin-right: 0;
  }
}

.floor-list .floor-item .floor-item-thumb {
  margin-bottom: 10px;
  text-align: center;
  width:100%;
}
.floor-list .floor-item .floor-item-text {
  margin:0;
  line-height: 2;
}

#floor-2f-box {
  margin-bottom: 50px;
  width:100%;
}
#floor-2f-box .box-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.5em;
}
#floor-2f-box .text {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  #floor-2f-box.flex-container {
    display: flex;
  }
  #floor-2f-box.flex-container .img-area {
    margin:0;
    max-width:250px;
    width:35%;
  }
  #floor-2f-box.flex-container .text-area {
    padding-left:5%;
    width:65%;
  }
}
@media (max-width: 767px) {
  #floor-2f-box.flex-container .img-area {
    margin-bottom: 5%;
  }
}

/*FLOOR PHASE BOX*/
#floor-phase-box {
  background-color:#FFF;
  padding:30px;
}
@media (max-width: 767px) {
  #floor-phase-box {
    padding:8% 5%;
  }
}
#floor-phase-box .box-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 1em;
  text-align: left;
}
#floor-phase-box .phase-item:not(:last-child) {
  margin-bottom: 50px;
  position: relative;
}
#floor-phase-box .phase-item:not(:last-child)::after {
  /*content: '\f107';*/
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-weight: 900;
  font-size: 2rem;
  color: #FFB500;
  display: inline-block;
  position: absolute;
  right:18%;
}
@media (max-width: 767px) {
  #floor-phase-box .phase-item:not(:last-child) {
    margin-bottom: 15%;
  }
  #floor-phase-box .phase-item:not(:last-child)::after {
    left:0;
    right:0;
    margin:2% auto 0;
    text-align: center;
  }
}

#floor-phase-box .phase-item-media {
  border:solid 1px #333;
  padding:10px;
  text-align: center;
}
@media (min-width: 768px) {
  #floor-phase-box .phase-item-container {
    display: flex;
    align-items: center;
  }
  #floor-phase-box .phase-item-media {
    margin:0;
    max-width:400px;
    width:55%;
  }
  #floor-phase-box .phase-item-text {
    padding-left:5%;
    padding-right: 2%;
    width:45%;
  }
}
@media (max-width: 767px) {
  #floor-phase-box .phase-item-media {
    padding:3% 8%;
    margin:0 auto 5%;
  }
}
#floor-phase-box .phase-item-ttl {
  font-size:14px;
  font-weight: bold;
  margin-bottom: 0.5em;
}
#floor-phase-box .phase-item-txt {
  font-size:14px;
  line-height: 1.8;
}

/*----- GARDEN BLOCK -----*/
.img-box {
  width:100%;
  margin: 0 auto 50px;
}
@media (max-width: 767px) {
  .img-box {
    margin-bottom: 10%;
  }
}

.gallery-items {
  margin-bottom: 50px;
}
.gallery-items .gallery-item {
  margin:0 auto;
  width:100%;
}
@media (min-width: 768px) {
  .gallery-items {
    display: flex;
  }
  .gallery-items.col-3 .gallery-item {
    margin:0 20px 0 0;
    width:calc(33.33% - 40px / 3);
  }
  .gallery-items.col-3 .gallery-item:nth-child(3n) {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .gallery-items .gallery-item:not(:last-child) {
    margin-bottom: 5%;
  }
}

.gallery-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.2;
  padding-top:0.5em;
  margin-bottom: 0.5em;
  text-align: center;
}
.gallery-item-text {
  font-size:14px;
  line-height: 1.6;
}

/*GARDEN DETAILS BOX*/
#bl-contents-garden .floor-img-box {
  padding:0;
}
.garden-details-box {
  background-color:#FFF;
  padding:30px;
}
@media (max-width: 767px) {
  .garden-details-box {
    padding:8% 5%;
  }
}
.garden-details dt {
  margin-bottom: 0.5em;
}
.garden-details dd {
  margin-bottom: 0.8em;
}
.garden-details dt >span{
  display: inline-block;
  background-color:#333;
  color:#FFF;
  line-height: 1;
  padding:0.3em 0.5em;
}
.garden-details dd {
  font-size:14px;
  line-height: 2;
}
@media (max-width: 767px) {
  .garden-details dd:not(:last-child) {
    margin-bottom: 2em;
  }
}

/*----- PASSIVE DISIGN BLOCK -----*/
@media (min-width: 768px) {
  #bl-contents-passive_design .floor-img-box {
    padding:40px;
  }
}

.passive-details-box {
  background-color:#FFF;
  padding:30px;
}
@media (max-width: 767px) {
  .passive-details-box {
    padding:8% 5%;
  }
}

.passive-details-box .passive-details-item:not(:last-child) {
  margin-bottom: 30px;
}

.passive-details-box .box-ttl {
  margin-bottom: 1em;
}
@media (max-width: 767px) {
  .passive-details-box .box-ttl {
    margin-bottom: 0.5em;
  }
}
.passive-details-box .box-ttl >span {
  background-color:#333;
  display: inline-block;
  color:#FFF;
  font-size:14px;
  padding:0.3em 0.5em;
}

.passive-details-box .text {
  margin-bottom: 0;
}
.passive-details-box .col {
  padding-bottom: 1em;
  border-bottom: solid 1px #333;
}
@media (min-width: 768px) {
  .passive-details-box .row {
    display: flex;
    align-items: flex-end;
    margin-bottom: 1em
  }
  .passive-details-box .row >* {
    margin-right: 50px;
    width:calc(50% - 50px /2);
  }
  .passive-details-box .row >*:nth-child(even) {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .passive-details-box .col {
    padding-top: 1em;
  }
}

.passive-details-box .passive-details {
  display: flex;
  align-items: center;
}
.passive-details-box .passive-details >*{
  font-size:14px;
  line-height: 1.4;
}
.passive-details-box .passive-details dt {
  text-align: center;
  width:5em;
}
.passive-details-box .passive-details dt .js-span-wrap {
  display: flex;
  justify-content: space-around;
  width:5em;
}
.passive-details-box .passive-details dd {
  padding-left:1em;
  width:calc(100% - 5em);
}

/*----- MODELHOUSE ACCESS BLOCK -----*/
#bl-contents-access .text {
  line-height: 2;
  margin-bottom: 2em;
}
#bl-contents-access .map-box {
  aspect-ratio:8/3;
  width:100%;
}
@media (max-width: 767px) {
  #bl-contents-access .map-box {
    aspect-ratio:5/6;
  }
}
#bl-contents-access #google-map iframe {
  height: 100%;
  width:100%;
}
#bl-contents-access .link-area {
  text-align: center;
}
#bl-contents-access .link-map {
  display: inline-block;
  font-size:16px;
  font-weight: bold;
  padding-top:1em;
}

/*----- GARDEN BLOCK -----*/
/*モデルハウス見学申し込みフォーム*/
#bl-contents-request {
  border:solid 1px #333;
}

#bl-contents-request .bl-contents-ttl {
  border-bottom:solid 1px #333;
  margin-bottom: 2em;
  padding-bottom: 0.8em;
}

.tbl__request.tbl {
  margin-bottom: 30px;
}
.tbl__request.tbl th,
.tbl__request.tbl td {
  font-size:16px;
  font-weight: bold;
  border:none!important;
}
.tbl__request.tbl td {
  font-size:18px;
}

@media (min-width: 768px) {
  .tbl__request.tbl th {
    width:18em;
  }
}
@media (max-width: 1024px) {
  .tbl__request.tbl th,
  .tbl__request.tbl td {
    font-size:14px;
  }
  .tbl__request.tbl td {
    font-weight: normal;
  }
}

.tbl__request.tbl .txt-remarks {
  display: block;
  font-size:14px;
  font-weight: normal;
  line-height: 1.3;
  margin-top:0.3em;
}

/*フォーム設定*/
#bl-contents-request .form-box input[type="text"],
#bl-contents-request .form-box input[type="tel"],
#bl-contents-request .form-box input[type="number"],
#bl-contents-request .form-box input[type="email"],
#bl-contents-request .form-box textarea {
  border:solid 1px #333;
  border-radius: 5px;
  font-size:14px;
}
#bl-contents-request .form-box .input-num {
  width:70%;
}
@media (min-width: 768px) {
  #bl-contents-request .form-box .input-num {
    max-width: 100px;
  }
}

#modelhouse .sidemenu {
  display: none;
  left:5%;
  position: fixed;
  top:150px;
  transition: 0.2s;
}
@media (max-width: 1260px) {
  #modelhouse .sidemenu {
    left:2%;
  }
}
@media (max-width: 1000px) {
  #modelhouse .sidemenu {
    display: none;
  }
}


/*----------------------------------------------------
  IECAFE PAGE
----------------------------------------------------*/
#main-visual--iecafe {
  background-image: url(../img/iecafe/img_mainvisual.png);
}

#iecafe .section-inner {
  max-width: none;
  width:100%;
}
#iecafe .bl-contents {
  max-width: 1200px;
  margin:0 auto;
  width:90%;
}

#iecafe .bl-contents-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 2em;
  text-align: center;
}

/*----- POINT BLOCK -----*/
#bl-contents-point {
  padding-top:30px;
}
@media (max-width: 767px) {
  #bl-contents-point {
    padding-top:5%;
  }
}

#bl-contents-point .point-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  #bl-contents-point .point-list {
    margin-bottom: 10px;
  }
}
#bl-contents-point .point-list .point-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 40px;
  width:calc(25% - 120px / 4);
}
@media (max-width: 1500px) {
  #bl-contents-point .point-list .point-item {
    margin-right: 30px;
    width:calc(25% - 90px / 4);
  }
}
#bl-contents-point .point-list .point-item:nth-child(4n) {
  margin-right: 0;
}
@media (max-width: 767px) {
  #bl-contents-point .point-list .point-item {
    margin:0 5% 10% 0;
    width:calc(50% - 5% / 2);
  }
  #bl-contents-point .point-list .point-item:nth-child(even) {
    margin-right: 0;
  }
}

#bl-contents-point .point-item-icon {
  margin:0 auto 20px;
  max-width:150px;
  text-align: center;
  width:70%;
}
#bl-contents-point .point-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 0.5em;
  text-align: center;
}
@media (max-width: 1260px) {
  #bl-contents-point .point-item-ttl {
    font-size:16px;
  }
}
@media (max-width: 480px) {
  #bl-contents-point .point-item-ttl {
    font-size:15px;
  }
}
#bl-contents-point .point-item-txt {
  font-size: 14px;
  line-height: 2;
  text-align: left;
}
#bl-contents-point .btn::after {
  bottom:auto;
  height: 8px;
  top:0.8em;
  right:1em;
  transform:rotate(135deg);
  width:8px;
}

/*----- QUESTION BLOCK -----*/
#iecafe #bl-contents-question {
  max-width: none;
  width:100%;
}
@media (min-width: 871px) {
  #bl-contents-question {
    display: flex;
    flex-direction: row-reverse;
  }
  #bl-contents-question >* {
    width:50%;
  }
}
@media (max-width: 870px) {
  #iecafe #bl-contents-question {
    padding:50px;
  }
}
@media (max-width: 767px) {
  #iecafe #bl-contents-question {
    padding:8% 5%;
  }
}

#bl-contents-question .media-area {
  background:url(../img/iecafe/img_iecafe.png) center no-repeat;
  background-size: cover;
}
@media (max-width: 870px) {
  #bl-contents-question .media-area {
    padding:50% 0;
  }
}

#bl-contents-question .text-area {
  padding:80px 60px;
}
@media (max-width: 870px) {
  #bl-contents-question .text-area {
    padding:0 0 10%;
  }
}
#bl-contents-question .bl-contents-ttl {
  text-align: left;
}

#bl-contents-question .question-list-box {
  margin-bottom: 10px;
}
#bl-contents-question .question-list-box .box-ttl {
  font-size:18px;
  font-weight: bold;
  margin-bottom: 1em;
  text-align: left;
}
@media (max-width: 414px) {
  #bl-contents-question .question-list-box .box-ttl {
    font-size:14px;
  }
}

#bl-contents-question .question-list >* {
  border-bottom: dotted 2px #333;
  font-size:16px;
  padding:1.5em 0;
  line-height: 1.4;
}
#bl-contents-question .question-list >*:first-child {
  border-top: dotted 2px #333;
}
@media (max-width: 767px) {
  #bl-contents-question .question-list >* {
    padding:0.8em 0;
  }
}

#bl-contents-question .remarks-txt {
  font-size:14px;
  text-align: right;
}

/*----- STEP BLOCK -----*/
@media (max-width: 767px) {
  #iecafe #bl-contents-step {
    margin-bottom: 20%;
  }
}

#bl-contents-step .step-list .step-item {
  position: relative;
}
#bl-contents-step .step-list .step-item:not(:last-child) {
  margin-bottom: 50px;
}
#bl-contents-step .step-list .step-item:not(:last-child)::after {
  content: '\f107';
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-weight: 900;
  font-size: 2rem;
  color: #FFB500;
  display: inline-block;
  line-height: 1;
  position: absolute;
  left:0;
  right:0;
  margin:0.2em auto 0;
  text-align: center;
}
#bl-contents-step .step-item .step-item-container {
  display: flex;
}
#bl-contents-step .step-item .title-area {
  background-color:#333;
  color:#FFF;
  display: flex;
  justify-content: center;
  align-items: center;
  padding:20px;
  max-width:230px;
  width:30%;
  text-align: center;
	}

@media (min-width: 768px) {
  #bl-contents-step .step-item .title-area {
    xaspect-ratio:1/1;
  }
}

#bl-contents-step .step-item .title-area .num {
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:80px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
#bl-contents-step .step-item .title-area .num::before {
  content:'STEP';
  display: block;
  font-size:18px;
}
@media (max-width: 767px) {
  #bl-contents-step .step-item .title-area .num {
    font-size:40px;
  }
  #bl-contents-step .step-item .title-area .num::before {
    font-size:15px;
  }
}

#bl-contents-step .step-item .info-area {
  background-color:#F2F2F2;
  padding:30px;
  width:70%;
}
@media (min-width: 811px) {
  #bl-contents-step .step-item .info-area {
    display: flex;
    align-items: center;
    max-width: calc(100% - 230px);
    width:100%;
  }
  #bl-contents-step .step-item .text-area {
    padding-right: 40px;
    padding-left:10px;
    width:75%;
  }
  #bl-contents-step .step-item .media-area {
    max-width:200px;
    width:25%;
  }
}
@media (max-width: 810px) {
  #bl-contents-step .step-item .media-area .step-item-thumb.pc {
    display: none;
  }
  #bl-contents-step .step-item .text-area .step-item-thumb.sp {
    display: block;
    margin-bottom: 5%
  }
}
@media (max-width: 767px) {
  #bl-contents-step .step-item .info-area {
    padding:8% 6%;
  }
}

#bl-contents-step .step-item .step-item-ttl {
  font-size:18px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 0.8em;
}
@media (max-width: 414px) {
  #bl-contents-step .step-item .step-item-ttl {
    font-size:15px;
  }
}

#bl-contents-step .step-item .step-item-ttl .remarks-txt {
  font-size:14px;
  font-weight: normal;
  display: block;
}
@media (min-width: 768px) {
  #bl-contents-step .step-item .step-item-ttl .remarks-txt {
    display: inline-block;
    margin-left: 1em;
  }
}
@media (max-width: 414px) {
  #bl-contents-step .step-item .step-item-ttl .remarks-txt {
    font-size:10px;
  }
}

#bl-contents-step .step-item .step-item-text {
  line-height: 2;
  font-size:14px;
}

#bl-contents-step .step-item .text__link {
  font-size:30px;
  line-height: 1.6;
  padding:30px 0 0;
}
@media (max-width: 767px) {
  #bl-contents-step .step-item .text__link {
    font-size:20px;
  }
}

/*----- ACCESS BLOCK -----*/
#iecafe .bl-contents:not(:last-child) {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  #iecafe .bl-contents:not(:last-child) {
    margin-bottom: 10%;
  }
}

#iecafe #bl-contents-access .bl-contents-inner,
#iecafe #bl-contents-request .bl-contents-inner{
  max-width: 800px;
}


/*----------------------------------------------------
  GREETING PAGE
----------------------------------------------------*/

/*----- GREETING BLOCK -----*/
#bl-contents--greeting {
  margin-bottom: 80px;
}

#bl-contents--greeting .bl-contents-inner {
  max-width: 800px;
}

#bl-contents--greeting .greeting-name {
  line-height: 1.4;
  text-align: right;
}
#bl-contents--greeting .name {
  font-size:20px;
  font-weight: bold;
}
@media (min-width: 768px) {
  #bl-contents--greeting .bl-contents-inner {
    display: flex;
    flex-direction: row-reverse;
  }
  #bl-contents--greeting .bl-contents-text {
    padding-right: 5%;
    width:75%;
  }
  #bl-contents--greeting .bl-contents-img {
    width:25%;
  }
}
@media (max-width: 767px) {
  #bl-contents--greeting {
    padding:15% 0;
  }
  #bl-contents--greeting .section-lead {
    letter-spacing: -0.01em;
  }
  #bl-contents--greeting figure {
    margin:0 auto 15%;
    max-width: 430px;
    width:75%;
  }
}

/*----- HISTORY BLOCK -----*/
#bl-contents--history {
  border:solid 1px #333;
}
#bl-contents--history .bl-contents-inner {
  max-width: 800px;
}

#bl-contents--history .bl-contents-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1em;
  padding-bottom:1em;
  text-align: center;
}

#bl-contents--history figcaption {
  font-size:14px;
  line-height: 1.3;
  padding-top:0.3em;
}
#bl-contents--history .pic-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}

@media (min-width: 768px) {
  #bl-contents--history .pic-list >* {
    margin:0 25px 0 0;
    width:calc(50% - 25px / 2);
  }
  #bl-contents--history .pic-list >*:nth-child(2n) {
    margin-right: 0;
  }
}
@media (max-width: 767px) {

  #bl-contents--history .pic-list {
    margin-bottom: 10%;
  }
  #bl-contents--history .pic-list >*:not(:last-child) {
    margin:0 0 5%;
    width:100%;
  }
}

/*----------------------------------------------------
  ABOUT PAGE
----------------------------------------------------*/

#about .bl-contents:not(:last-child) {
  margin-bottom: 80px;
}

#about .bl-contents-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1em;
  padding-bottom:1em;
  text-align: center;
}

/*----- BUSINESS BLOCK -----*/
@media (min-width: 768px) {
  #bl-contents--business .text {
    text-align: center;
  }
}

.business-list .business-item {
  margin:0 auto 10%;
  width:100%;
}
@media (min-width: 481px) {
  .business-list {
    display: flex;
    flex-wrap: wrap;
  }
  .business-list .business-item {
    margin:0 20px 0 0;
    width:calc(25% - 60px / 4);
  }
  .business-list .business-item:nth-child(4n) {
    margin-right: 0;
  }
}
@media (max-width: 767px) and (min-width: 481px) {
  .business-list .business-item {
    margin:0 5% 10% 0;
    width:calc(50% - 5% / 2);
  }
  .business-list .business-item:nth-child(even) {
    margin-right: 0;
  }
}

.business-list .business-item-thumb {
  margin-bottom: 15px;
}
.business-list .business-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 0.5em;
  text-align: left;
}
.business-list .business-item-txt {
  font-size:14px;
  line-height: 2;
}
@media (max-width: 1000px) {
  .business-list .business-item-ttl {
    font-size:18px;
  }
}
@media (max-width: 767px) {
  .business-list .business-item-ttl {
    font-size:15px;
  }
}

/*----- INFO BLOCK -----*/
#bl-contents--info .info-item:not(:last-child) {
  margin-bottom: 50px;
}
#bl-contents--info .info-item-ttl {
  border-bottom: dotted 2px #000;
  font-size:20px;
  font-weight: bold;
  line-height: 1.3;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  #bl-contents--info .info-item .info-item-content {
    display: flex;
  }
  #bl-contents--info .info-item .info-item-content {
    display: flex;
  }
  #bl-contents--info .info-item .info-item-text {
    padding-right: 5%;
    width:55%;
  }
  #bl-contents--info .info-item .info-item-map {
    width:45%;
  }
}
#bl-contents--info .info-item-text .text{
  line-height: 2;
  margin-bottom: 1em;
}
#bl-contents--info .map-box {
  aspect-ratio:3 / 2;
  height:100%;
  overflow: hidden;
  width:100%;
}
#bl-contents--info .map-box iframe {
  height:100%;
  width:100%;
}
#bl-contents--info .link-area {
  text-align: right;
}
#bl-contents--info .link-area .link {
  display: inline-block;
  font-size:16px;
  font-weight: bold;
  padding-top:10px;
}
@media (max-width: 767px) {
  #bl-contents--info .link-area {
    text-align: center;
  }
}

/*----- PROFILE BLOCK -----*/
@media (min-width: 768px) {
  .tbl--profile.tbl th {
    text-align: center;
    width:12em;
  }
  .tbl--profile.tbl th .js-span-wrap {
    display: flex;
    justify-content: space-between;
    margin:auto;
    width:5em;
  }
}

#about .sidemenu {
  left:5%;
  position: fixed;
  top:150px;
  transition: 0.2s;
}
@media (max-width: 1260px) {
  #about .sidemenu {
    left:2%;
  }
}
@media (max-width: 1000px) {
  #about .sidemenu {
    display: none;
  }
}

/*----------------------------------------------------
  FAQ PAGE
----------------------------------------------------*/
#bl-contents--faq .bl-contents-item {
  margin-bottom: 20px;
}
#bl-contents--faq .bl-contents-ttl {
  font-size:16px;
  font-weight: bold;
  line-height: 1.2;
			    border-bottom: 1px solid #000000;
    padding: 0 0 20px 0;

}

@media (min-width: 1025px) {
  .contents-wrap.col2 {
    margin-top:100px;
    display: flex;
    justify-content: space-between;
    overflow: visible;
  }
  .contents-wrap.col2 >*:not(.sidemenu) {
    max-width:900px;
    width:75%;
  }
  .contents-wrap.col2 .sidemenu {
    padding-right: 2em;
    max-width:250px;
    width:25%;
  }
  .contents-wrap.col2 .sidemenu ul {
    position: -webkit-sticky;
    position: sticky;
    top:100px;
  }
  .contents-wrap.col2 .sidemenu ul.fixed {
    position: fixed;
  }
}



@media (max-width: 1024px) {
  #faq .sidemenu {
    margin-bottom: 10%;
  }
  #faq .sidemenu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  #faq .sidemenu ul li {
    display: flex;
    font-size:14px;
    line-height: 1.3;
    margin-right: 10px;
  }
  #faq .sidemenu ul li:last-child {
    margin-right: 0;
  }
  #faq .sidemenu ul li a {
    background-color:#E6E6E6;
    color:#333;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:0.5em 1em;
    text-align: center;
    width:100%;
  }
  #faq .sidemenu ul li a::before {
    content:none;
  }
}
@media (max-width: 480px) {
  #faq .sidemenu ul li {
    font-size:14px;
    margin:0 2% 2% 0;
    width:calc(50% - 2% / 2);
  }
  #faq .sidemenu ul li:nth-child(even) {
    margin-right: 0;
  }
}
@media (min-width: 768px) {
  #main-visual__faq{
    background: url("../img/faq/mv_faq_pc.webp") no-repeat center center / cover;
    height: 500px;
  }
}

@media (max-width: 767px) {
  #main-visual__faq.main-visual {
    background: url(../img/faq/mv_faq_sp.webp) no-repeat center center / 100% 100%;
    background-size: cover;
    height: 225px;
    aspect-ratio: 15 / 14;
    max-height: 700px;
    position: relative;
    width: 100%;
  }
}
/*----------------------------------------------------
  CONTACT PAGE
----------------------------------------------------*/
.bnr--line.bnr {
  margin: 100px auto;
  max-width: 1200px;
  width:100%;
}
@media (max-width: 767px) {
  .bnr--line.bnr {
    margin: 10% auto;
  }
}

#] .bl-contents-inner {
  max-width: 800px;
}

#bl-contents--contact .bl-contents-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.2;
  border-bottom: solid 1px #333;
  padding-bottom: 0.8em;
  margin-bottom: 1em;
  text-align: center;
}


.tbl__contact.tbl {
  margin-bottom: 30px;
}
.tbl__contact.tbl th,
.tbl__contact.tbl td {
  font-size:16px;
  font-weight: bold;
  border:none!important;
}
.tbl__contact.tbl td {
  font-size:18px;
}

@media (min-width: 768px) {
  .tbl__contact.tbl th {
    width:18em;
  }
}
@media (max-width: 1024px) {
  .tbl__contact.tbl th,
  .tbl__contact.tbl td {
    font-size:14px;
  }
  .tbl__contact.tbl td {
    font-weight: normal;
  }
}

.tbl__contact.tbl .txt-remarks {
  display: block;
  font-size:14px;
  font-weight: normal;
  line-height: 1.3;
  margin-top:0.3em;
}

/*----- FORM SETTINGS -----*/
.form-box {}
.form-box .form-area {
  background-color:#FAF8F5;
  border-radius: 5px;
  padding:30px 50px 50px;
  margin-bottom: 50px;
}
/*フォーム部品*/
.form-box input[type='text'],
.form-box input[type='password'],
.form-box input[type='tel'],
.form-box input[type='email'],
.form-box input[type='number'],
.form-box select,
.form-box textarea {
  border-radius: 5px;
  width: 100%;
  padding: 1em;
  background-color:#FFF;
  border:none;
  box-shadow: none!important;
}

.form-box input[type='checkbox'],
.form-box input[type='radio'] {
  margin: 0 2px 0 0;
}
.form-box select{
  width:auto;
  color:#727171;
}
.form-box .mwform-checkbox-field label,
.form-box .mwform-radio-field label {
  font-weight: bold;
  font-size:16px;
}
select[name="selectChubu"],
select[name="selectNanbu"] {
  height: 36px;
  padding: 4px 8px;
  font-size: 14px;
}
@media (max-width: 1024px) {
  .form-box .mwform-checkbox-field label,
  .form-box .mwform-radio-field label {
    font-size:14px;
  }
}
@media (max-width: 767px) {
  .form-box .mwform-checkbox-field label,
  .form-box .mwform-radio-field label {
    font-weight:normal;
  }
  select[name="selectChubu"]{
    margin-bottom:10px;
  }
}

.form-box input::placeholder {
  color: #CCCCCC;
}
.form-box textarea::placeholder {
  font-size:0.9em;
  color:#CCCCCC;
  line-height: 1.4;
}
.form-box .required{
  background-color:#E83854;
  color:#FFF;
  display: inline-block;
  font-size:12px;
  line-height: 1.2;
  margin-left:2em;
  padding:0.2em 0.8em;
  vertical-align: middle;
}

.form-box .agree-box {
  margin:30px auto;
  text-align: center;
}
.form-box .agree-box .text {
  font-size:16px;
  margin-bottom: 2em;
}
.form-box .agree-box .required {
  margin:0 1em 0 0;
}
@media (min-width: 768px) {
  .form-box .agree-box .text {
    text-align: center;
  }
}
@media (max-width: 1024px) {
  .form-box .agree-box .text {
    font-size:14px;
  }
}

/*ボタン*/
.form-box .btn-box{
  padding:30px 0;
  text-align: center;
}
.form-box .btn,
.form-box #submitback,
.form-box #submitforword {
  background-color:#fff;
  border:solid 2px #333;
  color:#000!important;
  cursor: pointer;
  display: inline-block;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-weight: bold;
  font-size:18px;
  opacity:1;
  line-height: 1;
  max-width: 200px;
  margin:5px;
  padding: 0.6em 1em;
  filter:alpha(opacity=100);
  -webkit-transition:opacity 0.2s ease;
  transition:opacity 0.2s ease;
  position: relative;
  width: 80%;
}
.form-box .btn-box [type='submit'] {
  background:none;
  border:none;
  /*color:#FFF;*/
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
}

/*ボタン -戻る*/
.form-box #submitback {
  background-color:#FFF;
  color:#333!important;
  display: inline-block;
  margin-bottom: 10px;
}
.form-box #submitback [type='submit'] {
  color:#333!important;
}

.form-box #submitback::after,
.form-box #submitforword::after {
  content: '';
    display: inline-block;
    /* border-top: solid 2px #FFB500; */
    border-right: solid 1px #000;
    right: -10px;
    position: absolute;
    height: 10px;
    bottom: 36px;
    transform: rotate(90deg);
    width: 32px;
}

@media (max-width: 767px) {
  .form-box .btn,
  .form-box #submitback,
  .form-box #submitforword {
    display: block;
    margin:0 auto 10px;
    max-width:none;
  }
}

.form-box .mw_wp_form .error {
  display: inline-block;
  font-size:14px;
  margin-top:5px;
}

.form-box .mwform-radio-field ~ .error,
.form-box .mwform-checkbox-field-text ~ .error,
.form-box .mwform-checkbox-field ~ .error,
.form-box .input-num ~ .error {
  margin-left: 1em;
}


/*[入力画面]*/
.form-box .text {
  line-height: 1.6;
}
.form-box .mw_wp_form_input .txt__input {
  display: block;
}
.form-box .mw_wp_form_input .txt__confirm {
  display: none;
}
.form-box .mw_wp_form_input #submitback {
  display: none;
}
/*[確認画面]*/
.form-box .mw_wp_form_confirm .txt__input {
  display: none;
}
.form-box .mw_wp_form_confirm .txt__confirm {
  display: block;
}
.form-box .mw_wp_form_confirm #btn-reset,
.form-box .mw_wp_form_confirm .btn[type='reset']{
  display: none;
}

@media (min-width: 768px) {
  .form-box .agree-box {
    text-align: center;
  }
}
@media (max-width: 1024px) {
  .form-box .btn {
     -webkit-appearance: none;
  }
}
@media (max-width: 767px) {
  .form-box .mwform-checkbox-field {
    font-size:14px;
  }
  .form-box .btn,
  .form-box .button{
    font-size:15px;
     -webkit-appearance: none;
    margin-bottom: 10px;
  }

  .form-box input[type='text'],
  .form-box input[type='tel'],
  .form-box input[type='email'],
  .form-box textarea {
    width:100%;
    margin-right: 0;
  }
  .form-box .mw_wp_form_confirm .agree-box{
    text-align: left;
  }

  .form-box .agree-box .required {
    margin:0 0 8px;
  }
}

/*----------------------------------------------------
  EVENT PAGE
----------------------------------------------------*/

@media (max-width: 767px) {
  #event .event-list .event-item {
    padding:0;
    margin-bottom: 10%;
  }
}

/*SINGLE PAGE*/
#event #bl-contents-post {
  border-top:solid 5px #333;
  margin-bottom: 80px;
}
#event #bl-contents-post .bl-contents-inner,
#event #bl-contents-reserve .bl-contents-inner {
  max-width: 800px;
}

#event #bl-contents-post .bl-contents-ttl{
  font-size:20px;
  line-height: 1.4;
  margin-bottom: 2em;
  text-align: center;
}

#event #bl-contents-post .mainvisual {
  margin-bottom: 50px;
}

/*イベント 予約フォーム*/
#event #bl-contents-reserve {
  border:solid 1px #333;
}
#event #bl-contents-reserve:not(.bl-contents-thanks) {
  margin-bottom: 80px;
}


#bl-contents-calendar .calendarWrap {
  position: relative;
  width:100%;
  margin:0 auto;
  text-align:center;
  margin: 50px auto;
  padding-top: 75%;
}
#bl-contents-calendar .calendarWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}



@media (max-width: 767px) {
  #event #bl-contents-post {
    margin-bottom: 10%;
  }
  #event #bl-contents-reserve:not(.bl-contents-thanks) {
    margin-bottom: 10%;
  }
}
@media (min-width: 768px) {
  #event .bl-contents-inner {
    padding:0;
  }
  #bl-contents-calendar .calendarWrap {
    width:70%;
    max-width:940px;
  }
}


#event #bl-contents-reserve .bl-contents-ttl {
  border-bottom:solid 1px #333;
  font-size:20px;
  line-height: 1.4;
  margin-bottom: 1em;
  padding-bottom: 0.8em;
  text-align: center;
}

.tbl__reserve.tbl {
  margin-bottom: 30px;
}
.tbl__reserve.tbl th,
.tbl__reserve.tbl td {
  font-size:16px;
  font-weight: bold;
  border:none!important;
}
.tbl__reserve.tbl td {
  font-size:18px;
}

@media (min-width: 768px) {
  .tbl__reserve.tbl th {
    width:18em;
  }
}
@media (max-width: 1024px) {
  .tbl__reserve.tbl th,
  .tbl__reserve.tbl td {
    font-size:14px;
  }
  .tbl__reserve.tbl td {
    font-weight: normal;
  }
}
#event #bl-contents-reserve .bl-contents-ttl {margin-top: 45px;}
.tbl__reserve.tbl .visitdate_wrap {
  dl {
    &:not(:first-child){margin-top: .5em;}
    dt {font-weight: bold;font-size: 14px;}
    dd {input {font-size: 17px!important;padding: 12px 17px;}}
  }
}
#bl-contents-reserve .form-box #submitforword,
  #bl-contents-reserve .form-box #submitback
   {
    padding: 0;
    input[type=submit] {
      height: 52px;
      width: 100%;
      display: flex;
      justify-content: center;align-items: center;
    }
  }
@media (min-width: 768px) {
  #event #bl-contents-reserve .bl-contents-ttl {margin-top: 95px;}
  .tbl__reserve.tbl .visitdate_wrap {
    dl {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      gap: 1em;

      &:not(:first-child){margin-top: 1em;}
      dt {font-size: 16px;}
      dd {input {font-size: 14px!important;padding: 14px;}}
    }
  }

}

.tbl__reserve.tbl .txt-remarks {
  display: block;
  font-size:14px;
  font-weight: normal;
  line-height: 1.3;
  margin-top:0.3em;
}

/*フォーム設定*/
#event #bl-contents-reserve .form-box input[type="text"],
#event #bl-contents-reserve .form-box input[type="tel"],
#event #bl-contents-reserve .form-box input[type="number"],
#event #bl-contents-reserve .form-box input[type="email"],
#event #bl-contents-reserve .form-box textarea {
  border:solid 1px #333;
  border-radius: 5px;
  font-size:14px;
}
#event #bl-contents-reserve .form-box .input-num {
  width:70%;
}
.form-box .label{
  font-size:14px;
  margin-right: 1em;
}
.form-box input.read-only {
  font-weight: bold;
  border:none!important;
  padding:1em 0;
}
#adult-member {
  margin-bottom: 0.5em;
}
@media (min-width: 768px) {
  #event #bl-contents-reserve .form-box .input-num {
    max-width: 100px;
  }
}


/*----------------------------------------------------
  PRIVACY POLICY PAGE
----------------------------------------------------*/
@media (max-width: 767px) {
  #privacy_policy .text {
    letter-spacing: 0.05em;
    line-height: 2;
  }
  #privacy_policy .text-list-num > * {
    padding-left:1.0em;
    text-indent: -1.0em;
  }
}

#privacy_policy .def-list dt {
  border-left:solid 5px #FFB500;
  font-size:20px;
  margin-bottom: 0.6em;
  padding-left:0.5em;
}


/*----------------------------------------------------
  CASES PAGE
----------------------------------------------------*/
#cases #bl-contents-cases .bl-contents-inner {
  max-width: 1000px;
}

#cases .bl-contents .bl-contents-ttl {
  font-size:20px;
  line-height: 1.4;
  margin-bottom: 0.5em;
  text-align: center;
}

#cases .cat-list {
  display: flex;
    flex-wrap: wrap;
    margin-bottom: 50px;
    margin-left: 50px;
    margin-right: 50px;
		}

@media (max-width: 767px) {
  #cases .cat-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 50px;
    margin-left: 2em;
    margin-right: 2em;
  }
  #main-visual__cases.main-visual {
    background: url(../img/cases/mv_cases_sp.webp) no-repeat center center / 100% 100%;
    background-size: cover;
    height: 225px;
  }
}

#cases .cat-list .cat {
  margin:0 5px 5px 0;
  text-align: center;
  transition: 0.2s;
  width:calc(25% - 15px / 4);
}
#cases .cat-list .cat:nth-child(4n) {
  margin-right: 0;
}
#cases .cat-list .cat > a {
  background-color: #FFF;
    display: block;
    font-size: 16px;
    font-weight: bold;
    padding: 1em;
    border: solid 0.5px;
}
#cases .cat-list .cat.current > a,
#cases .cat-list .cat > a:hover {
  background-color:#333;
  color:#FFF;
}
@media (max-width: 767px) {
  #cases .cat-list .cat {
    margin: 0 2% 2% 0;
    width:calc(50% - 2% / 2);
  }
  #cases .cat-list .cat:nth-child(even) {
    margin-right: 0;
  }
  #cases .cat-list .cat > a {
    font-size:28px;
  }
}
@media (max-width: 640px) {
  #cases .cat-list .cat > a {
    font-size:18px;
  }
}
@media (max-width: 480px) {
  #cases .cat-list .cat > a {
    font-size:14px;
  }
}

#cases.section .cases-item {
  margin:0 auto 30px;
}
@media (min-width: 768px) {
  #cases.section .cases-list {
    display: flex;
    flex-wrap: wrap;
  }
  #cases.section .cases-item {
    margin:0 40px 40px 0;
    width:calc(33.33% - 80px / 3);
  }
  #cases.section .cases-item:nth-child(3n) {
    margin-right: 0;
  }
  #main-visual__cases{
    background: url(../img/cases/mv_cases_pc.webp) no-repeat center center / 100% 100%;
    background-size: cover;
    height: 500px;
        }
  }
}

#cases.section .cases-item-thumb {
  aspect-ratio:3/2;
  margin-bottom: 15px;
  width:100%;
}
#cases.section .cases-item-thumb img {
  width:100%;
}
#cases.section .cases-item-cat {
      /* background-color: #FFB500; */
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    padding: 0.2em 0.5em;
    margin: 0 5px 10px 0;
    text-align: center;
    border: solid 0.5px;
}
#cases.section .cases-item-cat:last-child {
  margin-right: 0;
}
#cases.section .cases-item-ttl {
  font-size: 18px;
  line-height: 1.4;
  text-align: left;
}
@media (max-width: 1260px) {
  #cases.section .cases-item-ttl {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  #cases.section .cases-item-ttl {
    font-size: 14px;
  }
}

#cases.section #bl-contents-faq .bl-contents-inner {
  padding-top: 0;
}
#cases.section #bl-contents-faq .bl-contents-ttl {
  text-align: left;
}

/*WORKS SINGLE PAGE*/

#cases .bl-contents .bl-contents-head {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #cases .bl-contents .bl-contents-head {
    margin-bottom: 10%;
  }
}
#cases #bl-contents-post {
  border-top:solid 5px #333;
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  #cases #bl-contents-post {
    margin-bottom: 10%;
  }
}

#cases #bl-contents-post .bl-contents-inner,
#cases #bl-contents-3d .bl-contents-inner,
#cases #bl-contents-voice .bl-contents-inner {
  xmax-width: 800px;
  max-width: 1000px;
  width:100%;
}

#cases #bl-contents-post .bl-contents-inner {
  padding-bottom: 10px;
}

#cases #bl-contents-post .cat-area {
  text-align: center;
}
#cases #bl-contents-post .cat {
  background-color:#FFB500;
  display: inline-block;
  font-size:12px;
  font-weight: bold;
  line-height: 1;
  padding:0.5em 2em;
  margin: 0 10px 10px 0;
  text-align: center;
}
#cases #bl-contents-post .cat:last-child {
  margin-right: 0;
}

/*SLIDER*/
#cases .slider-container {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #cases .slider-container {
    margin-bottom: 8%;
  }
}
#cases .slider-container .slider {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  #cases .slider-container .slider {
    margin-bottom: 5px;
  }
}
#cases .slider-container .slick-img,
#cases .slider-container .thumbnail-img {
aspect-ratio:3/2;
position: relative;
overflow: hidden;

  margin:5px;
}
#cases .slider-container .slick-img img,
#cases .slider-container .thumbnail-img img {
  display: block;

  height: 100%;
  left: 0;
  margin:auto;
  object-fit: cover;
  position: absolute;
  top: 0;
  right:0;
  width: auto;

}
@media (max-width: 767px) {
  #cases .slider-container .slick-img,
  #cases .slider-container .thumbnail-img {
    margin:3px;
  }
}



#cases .thumbnail.pos-fixed .slick-track{
  transform: translate3d(0,0,0) !important;
}

#cases .slick-arrow {
  transition: all 0.5s;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
#cases .slick-arrow:hover {
  cursor: pointer;
  opacity: 0.7;
}
#cases .prev-arrow {
  left: 15px;
}
#cases .next-arrow {
  right: 15px;
}
#cases .slick-arrow:before {
  content: '';
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  height: 40px;
  width: 40px;
}
#cases .prev-arrow:before {
  background-image: url(../img/common/arrow_prev.png);
}
#cases .next-arrow:before {
  background-image: url(../img/common/arrow_next.png);
}
@media (max-width: 767px) {
  #cases .slick-arrow:before {
    height: 20px;
    width:20px;
  }
  #cases .prev-arrow {
    left: 2%;
  }
  #cases .next-arrow {
    right: 2%;
  }
}

.field-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .field-items {
    margin-bottom: 8%;
  }
}
.field-items .field-item {
  background-color:#F2F2F2;
  padding:5px 5px 10px;
  position: relative;
  margin:30px 20px 10px 0;
  text-align: center;
  width:calc(20% - 80px / 5);
}
.field-items .field-item:nth-child(5n) {
  margin-right: 0;
}
.field-items .field-item::before {
  aspect-ratio:67/14;
  content:'';
  position: absolute;
  display: block;
  height: auto;
  left:0;right:0;
  bottom:100%;
  width:100%;
  background:url(../img/common/traiangle_up.png) center no-repeat;
  background-size:cover;
}
.field-items .field-item-ttl {
  font-size:14px;
  font-weight: bold;
  margin-bottom: 0.3em;
  line-height: 1.2;
}
.field-items .field-item-txt {
  font-size:14px;
  line-height: 1.4;
}
@media (max-width: 640px) {
  .field-items .field-item {
    margin:10% 5% 5% 0;
    width:calc(50% - 5% / 2);
  }
  .field-items .field-item:nth-child(even) {
    margin-right: 0;
  }
  .field-items .field-item-txt {
    font-size:12px;
  }
}

.details-box-wrap {
  width:100%;
  margin-bottom: 50px;
}
.details-box-wrap .details-box {
  border-bottom:solid 2px #333;
  padding:0.8em 0;
  width:100%;
}
.details-box-wrap .details-box:first-child {
  padding-top:0;
}
.details-box-wrap .details-col {
  font-size:14px;
  line-height: 2;
  padding:0;
  margin:0;
  text-align: left;
}
.details-box-wrap .details-col-head {
  font-weight: bold;
  margin-bottom: 0.3em;
}
@media (min-width: 768px) {
  .flex-box {
    display: flex;
    align-items: center;
  }
  .flex-box .details-col-head {
    width:13em;
    margin-bottom:0;
    display: flex;
    justify-content: center;
  }
  .flex-box .details-col-head >.js-span-wrap {
    display: flex;
    justify-content: space-between;
    margin: auto;
    width: 6em;
  }
  .flex-box .details-col-data {
    padding-left:1em;
    width:calc(100% - 13em);
  }
}

@media (min-width: 768px) {
  #case .flex-box .details-col-data {
    padding-left:5em;
  }
}

/*建築家の画像*/
.architect_img {
  margin-top:10px;
  max-width: 600px;
}

/*360度モデルハウス見学*/
#cases #bl-contents-3d {
  margin-bottom: 80px;
}
#cases #bl-contents-3d .text {
  margin-bottom: 1em;
}
#cases #bl-contents-3d .matterport-box {
  aspect-ratio: 16 / 9;
  width:100%;
}
#cases #bl-contents-3d .matterport-box iframe {
  height: 100%;
  width:100%;
}


/*お客様の声*/
#cases #bl-contents-voice {
  border:solid 1px #333;
  margin-bottom: 80px;
}
#cases #bl-contents-voice .bl-contents-head {
  border-bottom: solid 2px #333;
}
#cases #bl-contents-voice .bl-contents-ttl {
  margin-bottom: 1em;
}
.voice-content-main {
  margin-bottom: 30px;
}
.voice-content-main .voice-item-ttl {
  font-size:14px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 1em;
}
.voice-content-main .voice-item-catch {
  font-size:18px;
  font-weight: bold;
  line-height: 1.8;
}
.voice-content-main .voice-item-thumb {
  aspect-ratio:3/2;
  margin:0;
  overflow: hidden;
  position: relative;
  width:100%;
}
.voice-content-main .voice-item-thumb img {
  width:100%;
}
@media (min-width: 768px) {
  .voice-content-main {
    display: flex;
    align-items: center;
  }
  .voice-content-main >* {
    width:50%;
  }
  .voice-content-main .voice-item-media {
    padding-right: 5%;
  }
}
@media (max-width: 767px) {
  .voice-content-main .voice-item-media {
    margin-bottom: 5%;
  }
}
@media (max-width: 414px) {
  .voice-content-main .voice-item-catch {
    font-size:15px;
  }
}

#cases.section .cases-list.cases-list-others {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  #cases.section .cases-list.cases-list-others {
    margin-bottom: 15%;
  }
}


/*----------------------------------------------------
  STAFD PAGE
----------------------------------------------------*/

#staff .staff-list .staff-item {
  margin:0 auto 30px;
  width:100%;
}
@media (min-width: 768px) {
  #staff .staff-list {
    display: flex;
    flex-wrap: wrap;
  }
  #staff .staff-list .staff-item {
    margin:0 40px 40px 0;
    width:calc(33.33% - 80px / 3);
  }
  #staff .staff-list .staff-item:nth-child(3n) {
    margin-right: 0;
  }
}

#staff .staff-item .item-link {
  display: block;
  height: 100%;
}

#staff .staff-item .item-thumb {
  aspect-ratio: 58 / 71;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  margin: 0;
}
#staff .staff-item .item-title {
  font-size: 16px;
  font-weight: bold;
  padding:0.7em 0 0.5em;
  line-height: 1.2;
}
#staff .staff-item .item-content {
  position: absolute;
  left:20px;
  bottom:20px;
}
#staff .staff-item .staff-name-en {
  color:#FFF;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:20px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0.5em;
  text-shadow:
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5);
}
#staff .staff-item .staff-name-en >* {
  display: block;
}
#staff .staff-item .staff-name-en >*:first-child {
  font-size:30px;
}
#staff .staff-item .company-name {
  color:#FFF;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:12px;
  font-weight: bold;
  text-shadow:
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5),
    0 0 15px rgba(0,0,0,0.5);
}
#staff .staff-item .staff-position {
  color:#FFB500;
  font-size:12px;
}
@media (max-width: 1024px) {
  #staff .staff-item .staff-name-en {
    font-size:16px;
  }
  #staff .staff-item .staff-name-en >*:first-child {
    font-size:25px;
  }
}
@media (max-width: 767px) {
  #staff .staff-item .staff-name-en {
    font-size:44px;
  }
  #staff .staff-item .staff-name-en >*:first-child {
    font-size:63px;
  }
  #staff .staff-item .item-title {
    font-size: 34px;
  }
  #staff .staff-item .company-name {
    font-size:27px;
  }
}
@media (max-width: 414px) {
  #staff .staff-item .item-title {
    font-size: 17px;
  }
  #staff .staff-item .staff-name-en {
    font-size:16px;
  }
  #staff .staff-item .staff-name-en >*:first-child {
    font-size:24px;
  }
  #staff .staff-item .company-name {
    font-size:14px;
  }
}

/*SINGLE PAGE*/
#staff #bl-contents-post .staff-item {
  margin-bottom: 50px;
}
#staff #bl-contents-post .bl-contents-ttl {
  border-bottom: solid 2px #333;
  font-size:20px;
  font-weight: bold;
  padding-bottom:0.5em;
  margin-bottom: 1em;
  line-height: 1.4;
  text-align: left;
}
@media (min-width: 768px) {
  #staff #bl-contents-post .staff-item {
    display: flex;
  }
  #staff #bl-contents-post .staff-item .bl-contents-media {
    width:30%;
  }
  #staff #bl-contents-post .staff-item .bl-contents-info {
    padding-left:5%;
    width:70%;
  }
}
@media (max-width: 767px) {
  #staff #bl-contents-post .staff-item .bl-contents-media {
    margin-bottom: 5%;
  }
}

#staff #bl-contents-post .staff-license {
  font-size:14px;
  padding:1em 0;
  line-height: 1.8;
}
#staff #bl-contents-post .staff-item-hobby {
  font-size:14px;
  line-height: 1.8;
  margin-bottom: 30px;
}
#staff #bl-contents-post .staff-message-box {
  background-color: #FFF;
  padding:20px 30px;
}
#staff #bl-contents-post .staff-item-message {
  font-size:14px;
  line-height: 1.8;
}
@media (max-width: 414px) {
  #staff #bl-contents-post .bl-contents-ttl {
    font-size:15px;
  }
  #staff #bl-contents-post .staff-message-box {
    padding:5%;
  }
}

/*----------------------------------------------------
  TIDBITS PAGE
----------------------------------------------------*/
#tidbits .section-ttl {
  margin-bottom: 3em;
}

#tidbits #tidbits-cards .card {
  padding:0;
			margin-bottom: 50px;
			border-top: solid 0.5px;
        padding: 50px 0 0 0;
}
@media (max-width: 767px) {
  #tidbits #tidbits-cards .card {
    margin-bottom: 8%;
  }
}

body:not(.single) #tidbits #tidbits-cards .card .card-item-body {
  /*background-color:#F2F2F2;*/
}

#tidbits .sidemenu-ttl {
  border-bottom: solid 1px #333;
  font-size:14px;
  line-height: 1.2;
  padding-bottom: 0.8em;
  margin-bottom: 1em;
  text-align: left;
}

@media (max-width: 1024px) {
  #tidbits .sidemenu {
    margin-bottom: 10%;
  }
  #tidbits .sidemenu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #tidbits .sidemenu ul li {
    display: flex;
    font-size:14px;
    line-height: 1.3;
    margin-right: 10px;
  }
  #tidbits .sidemenu ul li:last-child {
    margin-right: 0;
  }
  #tidbits .sidemenu ul li a {
    background-color:#E6E6E6;
    color:#333;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:0.5em 1em;
    text-align: center;
    width:100%;
  }
  #tidbits .sidemenu ul li a::before {
    content:none;
  }
}
@media (max-width: 480px) {
  #tidbits .sidemenu ul li {
    font-size:14px;
    margin:0 2% 2% 0;
    width:calc(50% - 2% / 2);
  }
  #tidbits .sidemenu ul li:nth-child(even) {
    margin-right: 0;
  }
}

/*TIDBITS SINGLE PAGE*/
#tidbits #bl-contents-post .bl-contents-head {
  margin-bottom: 50px;
}
#tidbits #bl-contents-post .bl-contents-ttl {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 0.5em;
  text-align: center;
}
#tidbits #bl-contents-post .post-date {
  color:#d3d3d3;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:14px;
  font-weight: bold;
  text-align: center;
}
@media (max-width: 767px) {
  #tidbits #bl-contents-post .bl-contents-head {
    margin-bottom: 10%;
  }
}
@media (max-width: 414px) {
  #tidbits #bl-contents-post .post-date {
    font-size:12px;
  }
}

#tidbits #bl-contents-post {
  border-top:solid 5px #333;
}
#tidbits #bl-contents-post .bl-contents-inner {
  max-width:800px;
  width:100%;
}
#tidbits #bl-contents-post .post-content {
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  #tidbits #bl-contents-post .post-content {
    margin-bottom: 15%;
  }
}

@media (max-width: 1024px) {
  #sidemenu--tidbits.sidemenu {
    display: none;
  }
}

/*----------------------------------------------------
  COLUMN PAGE
----------------------------------------------------*/
#column-cards {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #column-cards {
    margin-bottom: 25%;
  }
}

#column-cards .card {
  padding:0 25px;
}
@media (max-width: 767px) {
  #column-cards .card {
    padding:0 5px;
  }
}

#column-cards .card a {
  width:100%;
}
@media (min-width: 768px) {
  #column-cards .card a {
    display: flex;
  }
}

@media (min-width: 768px) {
  #column-cards .card .card-item-media {
    width:45%;
  }
  #column-cards .card-item-body {
    width:55%;
  }
}

#column-cards .card .card-item-thumb {
  background-color:#F2F2F2;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 100%;
  margin:0;
  overflow: hidden;
  position: relative;
  width:100%;
}
@media (max-width: 767px) {
  #column-cards .card .card-item-thumb {
    aspect-ratio:3/2;
  }
}
#column-cards .card .card-item-thumb img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#column-cards .card .card-item-body {
  background-color:#FFF;
  padding:30px;
}
@media (max-width: 767px) {
  #column-cards .card .card-item-body {
    padding:5%;
  }
}

#column-cards .card .card-item-ttl {
  font-size:20px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 1em;
}
@media (max-width: 1260px) {
  #column-cards .card .card-item-ttl {
    font-size:16px;
  }
}
@media (max-width: 375px) {
  #column-cards .card .card-item-ttl {
    font-size:14px;
  }
}

#column-cards .card .card-item-date {
  color:#FFB500;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:14px;
  font-weight: bold;
}
@media (max-width: 375px) {
  #column-cards .card .card-item-date {
    font-size:10px;
  }
}

#column-cards .card .card-item-txt {
  font-size:14px;
  line-height: 2.4;
  margin-top:2em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* 表示したい行数を指定する */
  overflow: hidden;
}
@media (max-width: 767px) {
  #column-cards .card .card-item-txt {
    line-height: 1.8;
  }
}

#column .section-ttl {
  margin-bottom: 3em;
}

#column #column-cards .card {
  padding:0;
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  #column #column-cards .card {
    margin-bottom: 8%;
  }
}

body:not(.single) #column #column-cards .card .card-item-body {
  background-color:#F2F2F2;
}

#column .sidemenu-ttl {
  border-bottom: solid 1px #333;
  font-size:14px;
  line-height: 1.2;
  padding-bottom: 0.8em;
  margin-bottom: 1em;
  text-align: left;
}

@media (max-width: 1024px) {
  #column .sidemenu {
    margin-bottom: 10%;
  }
  #column .sidemenu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #column .sidemenu ul li {
    display: flex;
    font-size:14px;
    line-height: 1.3;
    margin-right: 10px;
  }
  #column .sidemenu ul li:last-child {
    margin-right: 0;
  }
  #column .sidemenu ul li a {
    background-color:#E6E6E6;
    color:#333;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:0.5em 1em;
    text-align: center;
    width:100%;
  }
  #column .sidemenu ul li a::before {
    content:none;
  }
}
@media (max-width: 480px) {
  #column .sidemenu ul li {
    font-size:14px;
    margin:0 2% 2% 0;
    width:calc(50% - 2% / 2);
  }
  #column .sidemenu ul li:nth-child(even) {
    margin-right: 0;
  }
}

/*COLUMN SINGLE PAGE*/
#column #bl-contents-post .bl-contents-head {
  margin-bottom: 50px;
}
#column #bl-contents-post .bl-contents-ttl {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 0.5em;
  text-align: center;
}
#column #bl-contents-post .post-date {
  color:#FFB500;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  font-size:14px;
  font-weight: bold;
  text-align: center;
}
@media (max-width: 767px) {
  #column #bl-contents-post .bl-contents-head {
    margin-bottom: 10%;
  }
}
@media (max-width: 414px) {
  #column #bl-contents-post .post-date {
    font-size:12px;
  }
}

#column #bl-contents-post {
  border-top:solid 5px #333;
}
#column #bl-contents-post .bl-contents-inner {
  max-width:800px;
  width:100%;
}
#column #bl-contents-post .post-content {
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  #column #bl-contents-post .post-content {
    margin-bottom: 15%;
  }
}

#column #bl-contents-post .post-content img {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
#column #bl-contents-post .post-content h2,
#column #bl-contents-post .post-content h3,
#column #bl-contents-post .post-content h4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

@media (max-width: 1024px) {
  #sidemenu--column.sidemenu {
    display: none;
  }
}



/*----- ARTICLE SETTINGS -----*/
/* img */
.article-body {
  font-size:14px;
  line-height: 2.1;
}
.article .aligncenter {
  display: block;
  margin: 0 auto;
}
.article-body .alignright { float: right; }
.article-body .alignleft { float: left; }

/* title */
.article-body h1,.article-body h2,.article-body h3,.article-body h4,.article-body h5,.article-body h6{
  line-height: 1.4;
}
.article-body h1 {font-size:2em}
.article-body h2 {font-size:1.5em}
.article-body h3 {font-size:1.17em}
.article-body h4 {font-size:1em}
.article-body h5 {font-size:0.83em}
.article-body h6 {font-size:0.67em}

.article-body h1,
.article-body h2,
.article-body h3 {
  border-bottom: solid 1px #333;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}


/*----------------------------------------------------
  PLAN PAGE
----------------------------------------------------*/
#plan .section-inner {
  max-width: 1000px;
}

#plan .bl-contents:not(:last-child) {
  margin-bottom: 80px;
}
@media (max-width: 767px) {
  #plan .bl-contents:not(:last-child) {
    margin-bottom: 10%;
  }
}

@media (min-width: 768px) {
  #plan .flex-container {
    display: flex;
    align-items: center;
  }
  #plan .flex-container.row-reverse {
    flex-direction: row-reverse;
  }
  #plan .media-area {
    width:40%;
  }
  #plan .text-area {
    padding-left: 5%;
    width:60%;
  }
}

#plan #bl-contents-msg .bl-contents-inner {
  max-width: 900px;
}
@media (min-width: 768px) {
  #plan #bl-contents-msg {
    background-color: transparent;
  }
  #plan #bl-contents-msg .bl-contents-inner {
    background-color:#F2F2F2;
    margin-right: 0;
  }
  #plan #bl-contents-msg .flex-container {
    transform:translateX(-100px);
  }
  #plan #bl-contents-msg .media-area {
    width:52%;
  }
  #plan #bl-contents-msg .text-area {
    width:48%;
  }
  #plan #bl-contents-msg .text {
    margin-bottom: 0;
  }
}



/*----------------------------------------------------
  404 PAGE
----------------------------------------------------*/

/*----- HOME FAQ SECTION -----*/

@media (min-width: 768px) {
}
@media (max-width: 767px) {
}



/*----------------------------------------------------
  CASES PAGE
  ADD CONTENT SENTENCE
----------------------------------------------------*/
/* .single, ←全てのシングルに適応させる場合*/
.cases-template-default {
  & .slideHeader {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    margin-top: 3em;
  }
  & .single_content {
    & p {
      &:not(:first-child){margin-top: 1em;}
      line-height: 2;
      font-size: 14px;
      font-weight: 400;

      & img {margin-top: 1em;margin-bottom: 2em;}
    }
    /* end "p" */
    & h1, & h2, & h3 {
      font-size: 18px;
      line-height: 1.35;

      &:not(:first-child){margin-top: 1em;margin-bottom: 1em;}
    }
    /* end "h" */
  }

  & .slider-container {margin-top: 2em;}
}

@media (min-width: 768px) {
  .cases-template-default {
    & .single_content {
      & .slider-container {margin-top: 5em;}
      & p {
        &:not(:first-child){margin-top: 1em;}
        /* line-height: 1.5; */
        /* font-size: 14px; */
      }
      /* end "p" */
      & h1, & h2, & h3 {
        font-size: 20px;
        line-height: 1.35;

        &:not(:first-child){margin-top: 1.5em;margin-bottom: 1em;}
      }
      /* end "h" */
    }
  }
}
/* .cases-template-default */

/* =========================================
   縦書きタイトル h2 tateSEC
========================================= */
@media screen and (min-width: 811px) {

  .tateSEC {
    position: relative;
    background: linear-gradient(
      to bottom,
      #f8f8f6 0,
      #f8f8f6 180px,
      #efeeea 180px,
      #efeeea 100%
    );
    overflow: hidden;
    padding: 0 0 110px;
  }

  .tateSEC .section-inner {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0;
  }

  .tateSEC #bl-contents-modelhouse,
  .tateSEC .bl-contents {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 72px;
  }

  .tateSEC .bl-contents-item,
  .tateSEC .bl-contents-text {
    width: 34%;
/*    max-width: 420px;*/
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 2;
  }

  /* =========================
     見出し
     section-ttl-tate-a
     section-ttl-tate-b
     section-ttl-tate-c
  ========================= */
  .tateSEC .section-ttl {
    width: fit-content;
    margin: 0 auto 30px;
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    column-gap: 28px;
    row-gap: 0;
    align-items: start;
    justify-content: center;
    writing-mode: horizontal-tb;
    text-align: left;
  }

  .tateSEC .section-ttl-tate-a,
  .tateSEC .section-ttl-tate-b,
  .tateSEC .section-ttl-tate-c {
    display: block;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    white-space: nowrap;
    color: #231815;
    font-weight: 400;
  }

  /* 右列：日本の家づくりを */
  .tateSEC .section-ttl-tate-a {
    grid-column: 2;
    grid-row: 1 / 3;
    font-size: 24px;
    line-height: 1.45;
    letter-spacing: 0.12em;
    margin: 6px 0 0;
    align-self: start;
    justify-self: start;
  }

  /* 左列 上：もっと */
  .tateSEC .section-ttl-tate-c {
    grid-column: 1;
    grid-row: 1;
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0.12em;
    margin: 6px 0 -4px;
    align-self: end;
    justify-self: anchor-center;
  }

  /* 左列 下：まっとうに */
  .tateSEC .section-ttl-tate-b {
    grid-column: 1;
    grid-row: 2;
    font-size: 60px;
    line-height: 1.02;
    letter-spacing: 0.08em;
    margin: 0;
    align-self: start;
    justify-self: end;
  }

  .tateSEC .text {
/*    max-width: 480px;*/
    margin: 0;
    color: #231815;
  }

  .tateSEC .text p {
    margin: 0;
    line-height: 2.15;
    letter-spacing: 0.08em;
  }

  .tateSEC .text p + p {
    margin-top: 0;
  }

  .bou.btn {
     position: relative !important;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 200px;
    height: 52px;
    padding: 0 56px 0 20px;
    border: 1px solid #8f8a83;
    color: #231815 !important;
    background: transparent;
    text-decoration: none;
    font-size: 15px;
    line-height: 1;
    letter-spacing: 0.08em;
    position: absolute;
    transition: opacity 0.3s ease;
    box-sizing: border-box;
  }

  #home_modelhouse.tateSEC .bou.btn{
    position:absolute;
    right:0;
  }

  .bou.btn::before {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 28px;
    height: 1px;
    background: #8f8a83;
    transform: translateY(-50%);
  }

  .bou.btn:hover {
    opacity: 0.75;
  }

  .tateSEC > .section-thumb {
    display: block;
    width: min(58vw, 960px);
    max-width: 960px;
    margin: 36px 0 0 auto;
    position: relative;
    z-index: 1;
  }

  .tateSEC > .section-thumb img,
  .tateSEC > .section-thumb picture,
  .tateSEC > .section-thumb video {
    display: block;
    width: 100%;
    height: auto;
  }

  .tateSEC .bl-contents-text {
    padding-top: 10px;
  }
}


/* =========================
   タブレット～SP
========================= */
@media screen and (max-width: 810px) {

  .tateSEC {
    background: #f3f2ee;
    padding: 50px 0 70px;
  }

  .tateSEC .section-inner {
    padding: 0 20px;
  }

  .tateSEC #bl-contents-modelhouse,
  .tateSEC .bl-contents {
    display: block;
  }

  .tateSEC .bl-contents-item,
  .tateSEC .bl-contents-text {
    width: 100%;
    max-width: none;
  }

  /* =========================
     見出し
  ========================= */
  .tateSEC .section-ttl {
    width: fit-content;
    margin: 0 auto 36px;
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    column-gap: 16px;
    row-gap: 0;
    align-items: start;
    justify-content: center;
    writing-mode: horizontal-tb;
    text-align: left;
  }

  .tateSEC .section-ttl-tate-a,
  .tateSEC .section-ttl-tate-b,
  .tateSEC .section-ttl-tate-c {
    display: block;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    white-space: nowrap;
    color: #231815;
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-weight: 400;
  }

  /* 右列：日本の家づくりを */
  .tateSEC .section-ttl-tate-a {
    grid-column: 2;
    grid-row: 1 / 3;
    font-size: 16px;
    line-height: 1.45;
    letter-spacing: 0.10em;
    margin: 4px 0 0;
    align-self: start;
    justify-self: start;
  }

  /* 左列 上：もっと */
  .tateSEC .section-ttl-tate-c {
    grid-column: 1;
    grid-row: 1;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.10em;
    margin: 4px 0 -2px;
    align-self: end;
    justify-self: anchor-center;
  }

  /* 左列 下：まっとうに */
  .tateSEC .section-ttl-tate-b {
    grid-column: 1;
    grid-row: 2;
    font-size: 36px;
    line-height: 1.05;
    letter-spacing: 0.08em;
    margin: 0;
    align-self: start;
    justify-self: end;
  }

  .tateSEC > .section-thumb {
    width: 100%;
    margin: 0 0 30px;
  }

  .tateSEC > .section-thumb img,
  .tateSEC > .section-thumb picture,
  .tateSEC > .section-thumb video {
    display: block;
    width: 100%;
    height: auto;
  }

  .tateSEC .text {
    margin: 0 0 32px;
  }

  .tateSEC .text p {
    margin: 0;
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.06em;
  }

  .tateSEC .text p + p {
    margin-top: 0;
  }

  .bou.btn {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 180px;
    height: 48px;
    padding: 0 48px 0 18px;
    margin: 0 auto;
    border: 1px solid #8f8a83;
    color: #231815 !important;
    background: transparent;
    text-decoration: none;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 0.08em;
    position: relative;
    box-sizing: border-box;
  }

  .bou.btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 32px;
    height: 1px;
    background: #8f8a83;
    transform: translateY(-50%);
  }
}




/*******************************
  住まいの提案 のナビ
*******************************/
@media (min-width: 768px) {
  [id^="main-visual__suggestion"] {
    background: url("../img/suggestion/suggestion_mv_pc.webp") no-repeat center center / cover;
    height: 500px;
  }
}

.section-inner.suggestion-top{
    padding: 0 0 0;
}

.section-ttl-area.is_suggestion {
  padding: 10% 0 0;
  .section-ttl {margin-bottom: 25px;}
}
@media (min-width: 768px) {
  .section-ttl-area.is_suggestion {
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
    padding: 80px 0 0;
    .section-ttl {
      margin-bottom: 40px;
    }
  }
}

.proposal-nav {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 48px;
  margin: 0;
  list-style: none;
}

.proposal-nav li {
  margin: 0;
  padding: 0;
}

.proposal-nav a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #3f332d;

  &.current {font-weight: bold;}
}

.proposal-nav .num {
  display: block;
  position: relative;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.08em;
  padding-bottom: 14px;
  margin-bottom: 18px;
}

.proposal-nav .num::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 28px;
  height: 1px;
  background: #231815;
  transform: translateX(-50%);
}

.proposal-nav .title {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-size: 20px;
  line-height: 1.6;
  letter-spacing: 0.08em;
  white-space: nowrap;
}
.proposal-nav .title .title-en {
  text-orientation: upright;
}

.proposal-nav a:hover .title {
  opacity: 0.7;
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
  .proposal-nav {
  gap: 28px;
  }
}

@media screen and (max-width: 767px) {
  .proposal-nav {
    display: block;
    width: calc(100% - 20px);
    margin: 24px auto 0;
    padding: 0;
    list-style: none;
    gap: 0;
  }

  .proposal-nav li {
    display: block;
    margin: 0;
    padding: 0;
    border-top: 1px solid #231815;
  }

  .proposal-nav li:last-child {
    /* border-bottom: 1px solid #cfcfc9; */
  }

  .proposal-nav a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: 100%;
    padding: 8px 8px 30px;
    text-decoration: none;
    color: #231815;
    box-sizing: border-box;

    position: relative;

    &:before {
      content: "";
      width: 1px;
      height: 34px;
      background-color: #231815;

      position: absolute;
      left: 0;
      top: 0;
    }
  }

  .proposal-nav .num {
    display: block;
    flex: 0 0 28px;
    width: 28px;
    margin: 0;
    padding: 0;
    font-size: 15px;
    line-height: 1;
    letter-spacing: 0.08em;
    color: #231815;
  }

  .proposal-nav .num::after {
    content: none;
  }

  .proposal-nav .title {
    display: block;
    flex: 1 1 auto;
    writing-mode: horizontal-tb;
    text-orientation: mixed;
    white-space: normal;
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.04em;
    color: #231815;
  }

  .proposal-nav .title .title-en {
    text-orientation: mixed;
  }

  .proposal-nav a:hover .title {
    opacity: 1;
  }
}
