/*top_information
────────────────────────────────────*/
.top_information {}

.top_information>.inner {
  position: relative;
}

.top_information>.inner::before,
.top_information>.inner::after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
}

.top_information>.inner::before {
  background: #a4c964;
  left: -100%;
}

.top_information>.inner::after {
  background: #e1edcb;
  right: -100%;
}

.top_information .qa {
  width: 50%;
  background: #a4c964;
  color: #fff;
  padding: 35px 30px;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  position: relative;
}

.top_information .qa:hover {
  opacity: 1;
  color: #32a74f;
  /*  text-decoration: underline;*/
  transition: all .3s;
}

.top_information .qa figure {
/*  width: 72%;*/
  width: 60%;
  position: absolute;
  bottom: 0;
/*  left: -53px;*/
  left: -15px;
  margin-bottom: 0;
}

.top_information .qa .txt_area {}

.top_information .qa .txt_area p {
  font-size: 2.1rem;
  line-height: 1.3;
}

.top_information .qa .txt_area p .txt_s {
  font-size: 1.7rem;
  display: block;
}

.top_information .qa .txt_area h2 {
  font-size: 3.1rem;
  font-weight: bold;
  line-height: 1;
  position: relative;
  padding-left: 55px;
  margin-top: 15px;
}

.top_information .qa .txt_area h2::before {
  content: '';
  width: 38.5px;
  height: 32px;
  background: url("../images/common/icon_qa.svg") no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.top_information .news {
  width: 50%;
  background: #e1edcb;
  padding: 40px 45px 65px;
}

.top_information .news h2 {
  font-size: 2.2rem;
  border-bottom: #707070 1px solid;
  padding-bottom: 5px;
}

.top_information .news ul {}

.top_information .news li {
  border-bottom: #707070 1px dashed;
}

.top_information .news li a {
  padding: 1.45rem 0;
}

.top_information .news li a .date {
  font-size: 1.4rem;
  width: 100px;
  margin-top: 0.25rem;
}

.top_information .news li a .ttl {
  width: calc(100% - 100px);
}

@media screen and (max-width:1240px) {
  .top_information .qa figure {
/*    width: calc((100vw - 1125px) / 2 + 60%);
    left: calc((100vw - 1125px) / 2 * -1);*/
    width: calc((100vw - 1125px) / 2 + 50%);
    left: calc((100vw - 1125px) / 2 * .5);
  }
}

@media screen and (max-width:1140px) {
  .top_information .qa {
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
  }
  
  .top_information .qa figure {
    width: 80%;
    max-width: 335px;
    position: static;
    transform: translateY(0) translateX(3%);
    margin-top: -17%;
/*    margin-bottom: 25px;*/
  }
  
  .top_information .news {
    padding: 40px 10px 65px 30px;
  }
}

@media screen and (max-width:768px) {
  
  .top_information>.inner::before,
  .top_information>.inner::after {
    content: none;
  }
  
  .top_information .qa {
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-right: -20px;
  }
  
  .top_information .news {
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-right: -20px;
    padding: 65px 30px 65px 30px;
  }
}

@media screen and (max-width:540px) {
  .top_information .qa {
    padding: 30px 15px;
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-right: -15px;
  }
  
  .top_information .qa .txt_area p {
    font-size: 1.7rem;
  }
  
  .top_information .qa .txt_area p .txt_s {
    font-size: 1.5rem;
  }
  
  .top_information .qa .txt_area h2 {
    font-size: 2.4rem;
    padding-left: 45px;
    margin-top: 10px;
  }
  
  .top_information .qa .txt_area h2::before {
    width: 32.5px;
    height: 27px;
  }
  
  .top_information .qa figure {
    width: 75%;
    margin-bottom: 20px;
  }
  
  .top_information .news {
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-right: -15px;
    padding: 35px 15px 50px 15px;
  }
  
  .top_information .news h2 {
    font-size: 2rem;
  }
  
  .top_information .news li a {
    padding: 1.2rem 0;
  }
  
  .top_information .news li a .date {
    width: 90px;
    margin-top: 0.15rem;
  }
  
  .top_information .news li a .ttl {
    font-size: 1.5rem;
    width: calc(100% - 90px);
  }
}

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

body.page .top_information {
  margin-top: 15rem;
}

/* ------------------------------------
共通
------------------------------------ */
/*@font-face {
  font-family: 'Quentin';
  font-display: swap;
  src: local("Quentin Regular"),
  local("Quentin Regular"),
  url('../fonts/Quentin-min.eot') format('embedded-opentype'),
  url('../fonts/Quentin-min.woff') format('woff'),
  url('../fonts/Quentin-min.ttf') format('truetype');
}

@font-face {
  font-family: 'CoreSansG';
  font-display: swap;
  src: local("CoreSansG Medium"),
  local("CoreSansG Medium"),
  url('../fonts/CoreSansG-Medium-min.eot') format('embedded-opentype'),
  url('../fonts/CoreSansG-Medium-min.woff') format('woff'),
  url('../fonts/CoreSansG-Medium-min.ttf') format('truetype');
}*/

@font-face {
  font-family: 'TsukuARdGothic';
  font-display: swap;
  src: local("FOT-筑紫A丸ゴシック Std"),
  local("FOT-TsukuARdGothic Std"),
  url('../fonts/TsukuBRdGothic-Bold-min.woff') format('woff'),
  url('../fonts/TsukuBRdGothic-Bold-min.ttf') format('truetype');
}

/*@font-face {
  font-family: 'HomemadeApple';
  font-display: swap;
  src: local('Homemade Apple'),
  url('../fonts/HomemadeApple-Regular.ttf') format('truetype');
}*/

/*.Quentin {
  font-family: 'Quentin';
}*/

/*.CoreSansG {
  font-family: 'CoreSansG';
}*/

.TsukuARdGothic {
  font-family: 'TsukuARdGothic';
}

html {
  font-size: 62.5%;
  /* 10px */
  -webkit-text-size-adjust: 100%;
}

body.page .inner {
  max-width: 1200px;
}

body.page .page_mv .inner {
  max-width:inherit;
}

body.page section:not(.top_information) {
  margin-bottom: 5.0rem;
  position: relative;
}

.page #price .price-img img {
  display: block;
  margin: 0 auto;
  max-width: 620px;
  height: auto;
}



@media screen and (max-width:1240px) {
  html {
    font-size: 61.25%;
  }
}

@media screen and (max-width:1140px) {
  html {
    font-size: 60%;
  }
}

@media screen and (max-width:768px) {
  html {
    font-size: 58.75%;
  }
}

@media screen and (max-width:540px) {
  html {
    font-size: 58.334%;
  }
}

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


section.bg-sec01 {
  padding: 5rem 0;
  background: #E4F3D8;
}
/*section.sec01,
.tatami section.bg-sec01,
.fusuma section.bg-sec01 {
  padding: 5rem 0;
  background: none;
}*/

section.bg-sec01:before,
section.bg-sec01:after {
  content: "";
  display: block;
  width: 100%;
  height: 18px;
  background: url(../images/tatami/section-type01.png);
  position: absolute;
  left: 0;
  right: 0;
}

section.bg-sec01:before {
  top: 0;
}

section.bg-sec01:after {
  bottom: 0;
}

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

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

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

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

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


.flex-nowrap {
  flex-wrap: nowrap;
}

.justify-content-start {
  justify-content: flex-start;
}

.justify-content-center {
  justify-content: center;
}

.align-items-start {
  align-items: start;
}

.gap30 {
  gap: 3.0rem;
}

.gap40 {
  gap: 4.0rem;
}

.gap50 {
  gap: 5.0rem;
}

.gap60 {
  gap: 6.0rem;
}

.mb30 {
  margin-bottom: 3.0rem !important;
}

.mb40 {
  margin-bottom: 4.0rem !important;
}

.mb50 {
  margin-bottom: 5.0rem !important;
}

.mb60 {
  margin-bottom: 6.0rem !important;
}

.mb80 {
  margin-bottom: 8.0rem !important;
}

.pb30 {
  padding-bottom: 3.0rem !important;
}

.pb40 {
  padding-bottom: 4.0rem !important;
}

.pb50 {
  padding-bottom: 5.0rem !important;
}

.pb60 {
  padding-bottom: 6.0rem !important;
}

.pb80 {
  padding-bottom: 8.0rem !important;
}

.mx877 {
  max-width: 877px;
}
.mn877 {
  min-width: 877px;
}

img {
  width: unset;
}

.centered {
  width: fit-content;
  margin: auto;
}

.two-blocks {
  gap: 6.0rem;
}

.two-blocks [class*="-item"] {
  width: calc(50% - 3rem);
}

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

@media screen and (max-width:1140px) {
  .mn877 {
    min-width: inherit;
  }
}

@media screen and (max-width:768px) {
  .two-blocks {
    gap: 3rem;
  }
}

@media screen and (max-width:540px) {
  .two-blocks {
    gap: 1.5rem;
  }
}

@media screen and (max-width:415px) {
  .two-blocks {
    gap: 1.0rem;
  }
}

@media screen and (max-width:320px) {
  .two-blocks {
    flex-wrap: wrap;
  }
}

/* Font */
.red {
  color: #D83838;
}

.main-ttl {
  position: relative;
  margin: 0 auto 80px;
  width: 100%;
/*  height: 260px;*/
  height: auto;
  text-align: center;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
}
/*.page .main-ttl,*/
/*.tatami .main-ttl {
  background-image: url("../images/tatami/mv_tatami.jpg") ;
  	background-image: url('../images/index/mv01.jpg');
  background-size: contain;
  width: 100%;
  height:auto;
  aspect-ratio: 2.889 / 1;
}
.fusuma .main-ttl {
  background-image: url("../images/fusuma/mv_fusuma.jpg") ;
}
.shouji .main-ttl {
  background-image: url("../images/shouji/mv_shouji.jpg") ;
}
.amido .main-ttl {
  background-image: url("../images/amido/mv_amido.jpg") ;
}*/

.page .main-ttl,
.tatami .main-ttl,
.fusuma .main-ttl,
.shouji .main-ttl,
.amido .main-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
}

/*.area .main-ttl {
  position: relative;
  z-index: 1;
  background-image: url("../images/index/mv_area.jpg") ;
}
.area .main-ttl::after {
  content: "";
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: gray;
  opacity: 0.3;
}*/
.area .page_mv .main-ttl span {
  position: relative;
}
.area .page_mv .main-ttl span::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(128,128,128,0.3);
}
.contact .main-ttl {
  display: block;
  margin: 50px auto 35px;
  width: fit-content!important;
  height: auto!important;
}
.main-ttl-txt{
  position:absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
/*.page .main-ttl-txt,
.tatami .main-ttl-txt,
.fusuma .main-ttl-txt,
.shouji .main-ttl-txt,
.amido .main-ttl-txt {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block;
  transform: inherit;
  -webkit-transform: inherit;
  -ms-transform: inherit;
}*/
.page_mv .main-ttl img {
  width: 100%;
  object-fit: contain;
}

.area .main-ttl .main-ttl-txt {
  z-index: 3;
  color: #fff;
}
/*.main-ttl-en {
  font-size: 5.6rem;
  font-family: "Quentin";
  font-size: 4rem;
  font-family: 'HomemadeApple';
  line-height: 1;
}*/

/*.main-ttl-en:after,
.main-ttl-en.thin-pen:before {
  height: 52px;
  content: "";
  display: block;
  width: 48px;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 42px;
  right: -60px;
}

.main-ttl-en:after {
  background: url(../images/tatami/pen.png);
}*/

/*.main-ttl-en.thin-pen:before{
  background: url(../images/tatami/thin-pen.png);
  right: 92px;
  z-index: -1;
}*/
.page h1,
.main-ttl-jp {
  font-size: 2.4rem;
  font-weight: bold;
}
.main-ttl-en {
  white-space: nowrap;
}
.main-ttl-jp {
  font-family: 'TsukuARdGothic';
}


@media screen and (max-width:1140px) {
  .main-ttl-en {
/*    font-size: 4.8rem;*/
  }
  .main-ttl-jp {
    font-size: 1.8rem;
  }
  .page .main-ttl,
  .tatami .main-ttl,
  .fusuma .main-ttl,
  .shouji .main-ttl,
  .amido .main-ttl {
    background-position: left center;
    background-size: cover;
    text-shadow: 1px 1px 2px #f0ebd6;
  }
}

@media screen and (max-width:800px) {
  .main-ttl-en {
/*    font-size: 5.2rem;*/
    font-size: 3rem;
  }
  
  .main-ttl-jp {
    font-size: 2.1rem;
  }
}

@media screen and (max-width:768px) {
/*  .main-ttl-en {
    font-size: 3.6rem;
  }*/
  .contact .main-ttl {
    margin: 0 auto;
  }
}

@media screen and (max-width:560px) {
/*  .main-ttl-en {
    font-size: 3.8rem;
    line-height: 1.5;
  }*/
}

@media screen and (max-width:540px) {
  .main-ttl-en,
  .page h1, .main-ttl-jp {
    font-size: 2rem;
  }
  .main-ttl-en:after {
    bottom: 20px;
  }
}
@media screen and (max-width:450px) {
/*  .main-ttl-en {
    font-size: 3.8rem;
  }*/
}

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

.ttl-waku,
.ttl-waku_w {
  font-family: 'TsukuARdGothic';
  font-size: 2.8rem;
  font-weight: bold;
  text-align: center;
  margin: 80px auto;
  padding: 20px 18px 20px 24px;
  background: url(../images/tatami/ttl-waku_bg.png)no-repeat center/contain;
}
.ttl-waku_w {
  background: url(../images/tatami/ttl-waku_bg2.png)no-repeat center/contain;
}

span.waku {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-top: 2px solid #222;
  border-bottom: 2px solid #222;
}

span.waku:before,
span.waku:after {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  bottom: -2px;
  width: 16px;
  height: 72px;
  background: url(../images/tatami/waku-arrow.svg);
}

span.waku:before {
  left: -14px;
}

span.waku:after {
  right: -14px;
  transform: rotate(180deg);
}

span.beta {
  display: block;
  background: #DDDAD3;
  position: absolute;
  top: 7px;
  left: 20px;
  width: 100%;
  height: 100%;
  z-index: -1;
}

span.beta:before,
span.beta:after {
  content: "";
  display: block;
  position: absolute;
  border: 36px solid transparent;
  width: 0;
  height: 0;
}

span.beta:before {
  border-right: 15px solid #DDDAD3;
  left: -51px;
}

span.beta:after {
  border-left: 15px solid #DDDAD3;
  right: -51px;
}

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

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

@media screen and (max-width:768px) {
  .ttl-waku,
  .ttl-waku_w {
    font-size: 2.6rem;
    min-width: 210px;
  }
  
  span.waku:before,
  span.waku:after {
    height: 66px;
    width: 15px;
  }
  
  span.beta:before,
  span.beta:after {
    border: 33px solid transparent;
  }
  
  span.beta:before {
    border-right: 12px solid #DDDAD3;
    left: -45px;
  }
  
  span.beta:after {
    border-left: 12px solid #DDDAD3;
    right: -45px;
  }
}

@media screen and (max-width:540px) {
  .page h2.ttl-waku,
  .page h2.ttl-waku_w {
    margin-bottom: 20px;
  }
  .page.amido h2.ttl-waku,
  .page.amido h2.ttl-waku_w {
    letter-spacing: -0.3rem;
  }
}
@media screen and (max-width:415px) {
  .ttl-waku,
  .ttl-waku_w {
    font-size: 2.1rem;
    min-width: 180px;
    padding: 10px 18px 10px 24px;
  }
  
  span.waku:before,
  span.waku:after {
    height: 49px;
    width: 11px;
  }
  
  span.waku:before {
    left: -10px;
  }
  
  span.waku:after {
    right: -10px;
  }
  
  span.beta:before,
  span.beta:after {
    border: 25px solid transparent;
  }
  
  span.beta:before {
    border-right: 12px solid #DDDAD3;
    left: -37px;
  }
  
  span.beta:after {
    border-left: 12px solid #DDDAD3;
    right: -37px;
  }
}

@media screen and (max-width:280px) {
  .ttl-waku,
  .ttl-waku_w {
    min-width: 140px;
  }
}

.sub-ttl {
  font-family: 'TsukuARdGothic';
  /*    font-size: 2.2rem;*/
  font-size: 2.8rem;
  text-align: center;
  margin-bottom: 4rem;
}

.ttl-h3 {
  font-family: 'TsukuARdGothic';
  /*    font-size: 3.2rem;*/
  font-size: 2.4rem;
  text-align: center;
  margin: 2rem auto;
}

@media screen and (max-width:840px) {
  .ttl-h3 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .page.area .sub-ttl {
    display: block;
  }
}
@media screen and (max-width:540px) {}

@media screen and (max-width:415px) {
  .sub-ttl {
    font-size: 1.8rem;
  }
  .page.area .main-ttl .main-ttl-txt {
    padding-top: 10px;
  }
  .page.area .main-ttl-en {
    font-size: 1.8rem;
  }
  .page.area .main-ttl-jp {
    margin-top: .5em;
  }
}


.fs10 {
  font-size: 1.0rem;
}

.fs11 {
  font-size: 1.1rem;
}

.fs12 {
  font-size: 1.2rem;
}

.fs13 {
  font-size: 1.3rem;
}

.fs14 {
  font-size: 1.4rem;
}

.fs15 {
  font-size: 1.5rem;
}

.fs16 {
  font-size: 1.6rem;
}

.fs17 {
  font-size: 1.7rem;
}

.fs18 {
  font-size: 1.8rem;
}

.fs19 {
  font-size: 1.9rem;
}

.fs20 {
  font-size: 2.0rem;
}

.fs21 {
  font-size: 2.1rem;
}

.fs22 {
  font-size: 2.2rem;
}

.fs23 {
  font-size: 2.3rem;
}

.fs24 {
  font-size: 2.4rem;
}

.fs25 {
  font-size: 2.5rem;
}

.fs26 {
  font-size: 2.6rem;
}

.fs27 {
  font-size: 2.7rem;
}

.fs28 {
  font-size: 2.8rem;
}

.fs29 {
  font-size: 2.9rem;
}

.fs30 {
  font-size: 3.0rem;
}

.fs31 {
  font-size: 3.1rem;
}

.fs32 {
  font-size: 3.2rem;
}

.fs33 {
  font-size: 3.3rem;
}

.fs34 {
  font-size: 3.4rem;
}

.fs35 {
  font-size: 3.5rem;
}

.fs36 {
  font-size: 3.6rem;
}

.fs37 {
  font-size: 3.7rem;
}

.fs38 {
  font-size: 3.8rem;
}

.fs39 {
  font-size: 3.9rem;
}

.fs40 {
  font-size: 4.0rem;
}

.fs41 {
  font-size: 4.1rem;
}

.fs42 {
  font-size: 4.2rem;
}

.fs43 {
  font-size: 4.3rem;
}

.fs44 {
  font-size: 4.4rem;
}

.fs45 {
  font-size: 4.5rem;
}

.fs46 {
  font-size: 4.6rem;
}

.fs47 {
  font-size: 4.7rem;
}

.fs48 {
  font-size: 4.8rem;
}

.fs49 {
  font-size: 4.9rem;
}

.fs50 {
  font-size: 5.0rem;
}

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

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

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

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

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

/**/
ul.page-info {
  display: flex;
  justify-content: center;
  gap: 8.0rem;
  margin-bottom: 15rem;
  position: relative;
  z-index: 2;
}

ul.page-info li {
  position: relative;
}

ul.page-info li:after {
  content: "";
  display: block;
  width: 80%;
  max-width: 103px;
  height: 3px;
  margin: auto;
  background: #222222;
}

ul.page-info li a {
  font-size: 2.0rem;
}

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

@media screen and (max-width:900px) {
  ul.page-info {
    gap: 6rem;
  }
}

@media screen and (max-width:845px) {
  ul.page-info {
    gap: 4rem;
  }
}

@media screen and (max-width:786px) {
  ul.page-info li a {
    font-size: 1.8rem;
  }
}

@media screen and (max-width:768px) {
  ul.page-info {
    gap: 2.5rem;
    margin-bottom: 15rem;
  }
}

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

@media screen and (max-width:670px) {
  ul.page-info li a {
    font-size: 1.6rem;
  }
}

@media screen and (max-width:630px) {
  ul.page-info li a {
    font-size: 1.8rem;
  }
  
  ul.page-info {
    flex-wrap: wrap;
  }
}

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

/* ------------------------------------
畳
------------------------------------ */

/* price */
.price-block-wrap {
  margin: 6rem auto 8rem;
  display: grid;
  grid-template-columns: 3fr 2fr;
  grid-template-rows: 240px 40px 340px;
}

.price-img {
  grid-row-start: 1;
  grid-row-end: 4;
}

.price-info {
  grid-row-start: 1;
  grid-row-end: 2;
}

.price-info-repletion {
  grid-row-start: 2;
  grid-row-end: 3;
}

.comment {
  grid-row-start: 3;
  grid-row-end: 4;
  position: relative;
}

.comment p {
  width: 65%;
}

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

@media screen and (max-width:1140px) {
  .price-block-wrap {
    grid-template-rows: 220px 180px 200px;
  }
  
  .comment p {
    width: 60%;
    font-size: 2.2rem;
  }
}

@media screen and (max-width:1000px) {
  .price-block-wrap {
    /*        grid-template-rows: 200px 160px 200px;*/
    grid-template-rows: 280px 160px 200px;
  }
  /*    .tatami #price .price-block-wrap {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 200px 160px 200px;
  }*/
  .tatami #price .price-img img,
  .fusuma #price .price-img img,
  .shouji #price .price-img img,
  .amido #price .price-img img {
    max-width: 100%;
  }
}

@media screen and (max-width:880px) {
  .price-block-wrap {
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (max-width:768px) {
  .price-block-wrap {
    column-gap: 1em;
  }
  
  .price-img {
    grid-row-start: 1;
    grid-row-end: 3;
    grid-column-start: 1;
    grid-column-end: 1;
  }
  
  .price-info {
    grid-row-start: 1;
    grid-row-end: 2;
    grid-column-start: 2;
    grid-column-end: 3;
  }
  
  .price-info-repletion {
    grid-row-start: 2;
    grid-row-end: 3;
    grid-column-start: 2;
    grid-column-end: 3;
  }
  
  .comment {
    grid-row-start: 3;
    grid-row-end: 4;
    grid-column-start: 1;
    grid-column-end: 3;
  }
  
  .comment p {
    width: 75%;
    font-size: 1.6rem;
  }
  
  .tatami .construction {
    flex-wrap: wrap;
    justify-content: center;
  }
  .tatami .construction .separate {
    display: none;
  }
}

@media screen and (max-width:680px) {
  .price-block-wrap {
    grid-template-rows: 1fr 160px 80px 80px;
    grid-template-rows: 1fr 160px 40px 80px;
  }
}

@media screen and (max-width:640px) {
  .comment p {
    width: 58%;
  }
}

@media screen and (max-width:620px) {
  .price-block-wrap {
    grid-template-rows: 1fr 140px 80px 80px;
    grid-template-rows: 1fr 140px 40px 80px;
  }
}

@media screen and (max-width:540px) {
  .price-block-wrap {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 160px 140px 120px;
    grid-template-rows: 1fr 160px 40px 120px;
  }
  
  .price-img {
    grid-row-start: 1;
    grid-row-end: 1;
    grid-column-start: 1;
    grid-column-end: 1;
  }
  
  .price-info {
    grid-row-start: 2;
    grid-row-end: 2;
    grid-column-start: 1;
    grid-column-end: 1;
  }
  
  .price-info-repletion {
    grid-row-start: 3;
    grid-row-end: 3;
    grid-column-start: 1;
    grid-column-end: 1;
  }
  
  .comment {
    grid-row-start: 4;
    grid-row-end: 4;
    grid-column-start: 1;
    grid-column-end: 1;
  }
  
  .tatami #size .inner .flex.flex-nowrap {
    flex-wrap: wrap;
  }
  .tatami #edge .flex.two-blocks,
  .tatami #method .flex.two-blocks {
    display: block;
  }
  .tatami #edge .flex.two-blocks div,
  .tatami #method .flex.two-blocks div {
    margin: 1em 0;
  }
}

@media screen and (max-width:415px) {
  .price-block-wrap {
    grid-template-rows: 1fr 160px 140px 160px;
    grid-template-rows: 1fr 160px 40px 160px;
  }
}

@media screen and (max-width:290px) {
  .price-block-wrap {
    grid-template-rows: 1fr 140px 120px 180px;
    grid-template-rows: 1fr 140px 40px 180px;
  }
}

.price-meta {
  justify-content: flex-start;
  align-items: start;
  gap: 5.0rem;
}

.price-meta .tatami {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1;
  padding: 16px 23px;
  background: url(../images/tatami/tatami.png);
  background-size: cover;
}

.special-price {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1;
  padding: 12px 32px 12px 38px;
  background: #F2CD0E;
  border: 4px solid #FFF;
  border-radius: 30px;
  position: relative;
  left: 0;
  right: 0;
  margin: auto;
  margin-top: -3px;
}

.special-price:before,
.special-price:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 10px solid transparent;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.special-price:before {
  bottom: -20px;
  border-top: 10px solid #F2CD0E;
  border-left: 10px solid #F2CD0E;
}

.special-price:after {
  left: -2px;
  bottom: -31px;
  border: 14px solid transparent;
  border-top: 14px solid #FFF;
  border-left: 14px solid #FFF;
  z-index: -1;
}

.special-price span:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: -33px;
  border: 14px solid transparent;
  border-top: 14px solid #F2CD0E;
  border-left: 14px solid #F2CD0E;
  z-index: -3;
}

.special-price span:after {
  content: "";
  display: block;
  width: 90%;
  height: calc(100% + 10px);
  position: absolute;
  top: -3px;
  left: 32px;
  border: 2px solid #F2CD0E;
  border-radius: 30px 30px 30px 0;
  border-left: none;
  z-index: -2;
}

.service-price {
  font-size: 12.0rem;
/*  font-family: 'CoreSansG';*/
/*  letter-spacing: -10px;*/
/*  letter-spacing: -4px;*/
  letter-spacing: -0.03em;
  color: #D83838;
  line-height: 1.3;
  border-bottom: 3px solid #707070;
  margin-bottom: 4.1rem;
}

span.tax {
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", "游ゴシック体", "游ゴシック Medium", "游ゴシック", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, Verdana, Meiryo, sans-serif;
  font-size: 3.2rem;
  font-weight: bold;
  letter-spacing: normal;
  margin-left: 1rem;
}

.price-info p,
.price-info-repletion p {
  margin-bottom: 3.2rem;
}

.price-memo-small {
  font-size: 1.6rem;
}

.price-memo-big {
  font-size: 2.6rem;
}

img.good-man {
  position: absolute;
  top: 0;
  right: 0;
}


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

@media screen and (max-width:1140px) {
  .price-meta {
    gap: 2rem;
  }
  
  .special-price {
    padding: 12px 22px 12px 28px;
  }
  
  .service-price {
    font-size: 9rem;
  }
  
  .price-memo-big {
    font-size: 2.4rem;
  }
  
/*  .tatami,*/
  .special-price {
    font-size: 2.6rem;
  }
  img.good-man {
    width: 40%;
    height: auto;
  }
}

@media screen and (max-width:1000px) {
  /*.tatami main */.comment p {
    width: 100%;
  }
  img.good-man {
    width: 200px;
    top: 60%;
  }
  
  .price-memo-big {
    font-size: 2.0rem;
  }
}

@media screen and (max-width:880px) {
  img.good-man {
    width: unset;
  }
}

@media screen and (max-width:768px) {
  img.good-man {
    /*        top: -30px;*/
    top: 32px;
  }
}

@media screen and (max-width:720px) {
  .price-meta {
    gap: 1rem;
  }
  
  .tatami,
  .special-price {
    font-size: 2.0rem;
  }
  
  .service-price {
    font-size: 8.4rem;
  }
  
  span.tax {
    font-size: 3.0rem;
  }
}

@media screen and (max-width:680px) {
  .price-memo-small {
    font-size: 1.4rem;
  }
  
  .price-memo-big {
    font-size: 1.8rem;
  }
}

@media screen and (max-width:640px) {
  .service-price {
    font-size: 7.0rem;
  }
  
  span.tax {
    font-size: 2.6rem;
  }
  
  .price-memo-big {
    font-size: 1.6rem;
  }
}

@media screen and (max-width:600px) {
  .tatami {
/*    padding: 16px;*/
  }
  
  .special-price {
    padding: 12px 16px 12px 20px;
    margin-left: 0;
  }
  
  .special-price:before,
  .special-price:after {
    border: 8px solid transparent;
  }
  
  .special-price:before {
    bottom: -16px;
    border-top: 8px solid #F2CD0E;
    border-left: 8px solid #F2CD0E;
  }
  
  .special-price:after {
    left: -2px;
    bottom: -27px;
    border: 12px solid transparent;
    border-top: 12px solid #FFF;
    border-left: 12px solid #FFF;
  }
  
  .special-price span:before {
    bottom: -29px;
    border: 12px solid transparent;
    border-top: 12px solid #F2CD0E;
    border-left: 12px solid #F2CD0E;
  }
  
  .special-price span:after {
    left: 21px;
  }
}

@media screen and (max-width:540px) {
  .price-memo-small {
    font-size: 1.6rem;
  }
  
  .price-memo-big {
    font-size: 2.0rem;
  }
  
  img.good-man {
    width: 160px;
  }
/*  .service-price {
    letter-spacing: -7px;
  }*/
/*  .tatami .sub-ttl-en {
    font-size: 3rem;
  }*/
}

@media screen and (max-width:415px) {
  .comment p {
    width: 100%;
    height: 5em;
  }
  
  img.good-man {
    position: relative;
    margin-left: auto;
    display: block;
    top: 0;
  }
  .tatami .sub-ttl-en:after,
  .fusuma .sub-ttl-en::after {
/*    right: 10px;
    bottom: 40px;*/
    width: 32px;
    height: 32px;
    background-size: cover;
    right: -40px;
    bottom: 30px;
  }
}

@media screen and (max-width:360px) {
  .price-memo-small {
    font-size: 1.4rem;
  }
  
  .price-memo-big {
    font-size: 1.8rem;
  }
  
  img.good-man {
    top: -30px;
  }
}

@media screen and (max-width:290px) {
  .price-memo-small {
    font-size: 1.2rem;
  }
  
  .price-memo-big {
    font-size: 1.4rem;
  }
  
  img.good-man {
    top: 0px;
  }
  
  .tatami,
  .special-price {
    font-size: 1.6rem;
  }
  
  .tatami {
    padding: 12px;
  }
  
  .service-price {
    font-size: 6.0rem;
  }
  
  span.tax {
    font-size: 2.1rem;
  }
}

.gekiyasu-info-wrap {
  flex-wrap: nowrap;
  justify-content: center;
  gap: 4.0rem;
}

.gekiyasu-info {
  font-family: 'TsukuARdGothic';
/*  font-size: 4.2rem;*/
  font-size: 4.1rem;
  margin-top: 6.0rem;
}

.gekiyasu {
  padding: 3.2rem 3.5rem;
  transform: rotate(2deg);
  position: relative;
  min-width: 100%;
}

.gekiyasu:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/tatami/gekiyasu-bg.png);
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  transform: rotate(-2deg);
}

.zeniki {
  padding: 3.5rem;
  transform: rotate(-4deg);
  position: relative;
  width: fit-content;
  margin: auto;
  top: -2rem;
  z-index: -1;
}

.zeniki:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/tatami/zeniki-bg.png);
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  transform: rotate(4deg);
}

.construction {
  flex-wrap: nowrap;
}

.separate {
  display: block;
  width: 2px;
  background: linear-gradient(to bottom, #222 6px, transparent 6px);
  background-size: 6px 12px;
  background-repeat: repeat-y;
}

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

@media screen and (max-width:1140px) {
  .gekiyasu-info {
    font-size: 3.8rem;
  }
}

@media screen and (max-width:1100px) {
  .gekiyasu-info {
    font-size: 3.6rem;
  }
}

@media screen and (max-width:1020px) {
  .gekiyasu-info {
    font-size: 3.4rem;
  }
  
  .gekiyasu:before,
  .zeniki:before {
    background-size: cover;
  }
}

@media screen and (max-width:980px) {
  .gekiyasu-info {
    font-size: 3.2rem;
  }
}

@media screen and (max-width:960px) {
  .gekiyasu-info {
    font-size: 3.0rem;
  }
}

@media screen and (max-width:920px) {
  .gekiyasu-info {
    font-size: 2.6rem;
  }
}

@media screen and (max-width:850px) {
  .gekiyasu-info {
    font-size: 2.4rem;
  }
}

@media screen and (max-width:820px) {
  .gekiyasu-info {
    font-size: 2.2rem;
  }
}

@media screen and (max-width:780px) {
  .price-block-wrap {
    margin-bottom: 5rem;
  }
  
  .gekiyasu-info-wrap {
    flex-wrap: wrap;
  }
  
  .gekiyasu-info {
    margin-top: 0;
    font-size: 3.0rem;
  }
}

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

@media screen and (max-width:625px) {
  .gekiyasu-info-wrap {
    gap: 0;
  }
  
  .gekiyasu-info {
    font-size: 2.6rem;
  }
}

@media screen and (max-width:560px) {
  .gekiyasu-info {
    font-size: 2.1rem;
  }
}

@media screen and (max-width:460px) {
  .gekiyasu-info {
    font-size: 1.8rem;
  }
  
  .construction {
    flex-wrap: wrap;
  }
  
  .separate {
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, #222 6px, transparent 6px);
    background-repeat: repeat-x;
    background-size: 12px 6px;
    background-position: left bottom;
    margin: 1rem auto;
  }
  
}

@media screen and (max-width:415px) {
  .gekiyasu-info {
    font-size: 1.6rem;
  }
}

/* Size & Kinds */

section#kinds p {
  margin-bottom: 3rem;
}
/*section#kinds .centered p {
  font-size: 2rem;
}*/

.kinds-type {
  margin: 8rem auto;
  display: grid;
  gap: 5rem;
  grid-template-columns: 1fr 1fr;
}

.tatami-item p {
  margin-bottom: 0 !important;
}

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

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

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

@media screen and (max-width:540px) {
  .tatami .kinds-type {
    grid-template-columns: 1fr;
  }/**/
}

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

/* edge */
section#edge p {
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 6.5rem;
}

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

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

@media screen and (max-width:768px) {
/*  section#edge p {
    font-size: 1.8rem;
  }*/
}

@media screen and (max-width:540px) {
  section#edge p {
    font-size: 1.6rem;
  }
}

@media screen and (max-width:415px) {
  section#edge p {
    text-align: left;
  }
}

/* method */
section#method {
  margin-top: 20rem;
}

section#method .ttl-h3 {
  margin-top: 8rem;
}

section#method p {
  font-size: 2.0rem;
  margin-bottom: 3rem;
}

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

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

@media screen and (max-width:768px) {
  section#method {
    margin-top: 10rem;
  }
}

@media screen and (max-width:570px) {
  section#method p {
    font-size: 1.8rem;
  }
}

@media screen and (max-width:500px) {
  section#method p {
    font-size: 1.6rem;
  }
}

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

/* ------------------------------------
襖
------------------------------------ */
.price-meta .fusuma {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1;
  padding: 16px 23px;
  background: url(../images/fusuma/fusuma.png);
  background-size: cover;
}

.fusuma #kinds_txt div.inner.flex,
.shouji #kinds_txt div.inner.flex {
  border-style: solid;
  border-image-source: url('../images/common/box_all_66.png');
  border-image-slice: 55 65 65 65;
  border-image-width: 55px 65px 65px 65px;
  border-width: 65px;
  border-image-repeat: round;
}
.fusuma #kinds_txt div.inner.flex dl dt,
.shouji #kinds_txt div.inner.flex dl dt {
  position: relative;
  font-weight: 700;
}
.fusuma #kinds_txt div.inner.flex dl dt:not(:first-child),
.shouji #kinds_txt div.inner.flex dl dt:not(:first-child) {
  margin-top: 1em;
}
.fusuma #kinds_txt div.inner.flex dl dt,
.shouji #kinds_txt div.inner.flex dl dt,
.fusuma #kinds_txt div.inner.flex dl dd,
.shouji #kinds_txt div.inner.flex dl dd {
  padding-left: 1.5em;
}
.fusuma #kinds_txt div.inner.flex dl dt::before,
.shouji #kinds_txt div.inner.flex dl dt::before {
  position: absolute;
  content: '■';
  top: 0;
  left: 0;
}

.kinds_txt ul {
  width: calc(100% / 2 - 20%);
}

.kinds_txt.inner {
  padding: 30px;
}

.fusu_kinds_wrap img {
  width: calc(100% / 3 - 20px);
  border-radius: 25px;
  margin-bottom: 40px;
}

.kinds-type-grn {
  width: calc(100% / 2 - 5%);
}

.ttl-grn {
  font-family: 'TsukuARdGothic';
  font-size: 2.8rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  margin: 80px 50px;
  padding: 20px 18px 20px 24px;
  background: url(../images/tatami/ttl-grn_bg.png)no-repeat center/contain;
}

.kinds-type-grn {
  display: flex;
  flex-direction: column;
  height: auto;
}

.kinds-type-grn .fusuma-item:nth-child(3) {
  flex-grow: 0.68;
}

.kinds-type-grn:first-child {
  position: relative;
}

.kinds-type-grn:first-child::after {
  content: "";
  position: absolute;
  top: 50px;
  left: 109%;
  margin: 0 1rem;
  height: 93%;
  border-right: dashed 2px #707070;
}

.fusuma #kinds_txt p.notice {
  text-align: center;
}

@media screen and (max-width: 768px) {
  .fusuma .ttl-grn {
    margin: 20px;
  }
}
@media screen and (max-width:540px) {
  .fusuma .sub-ttl-en::after {/* .tatami と同じ*/
/*    right: 0;
    right: -50px;
    bottom: 60px;*/
  }
  .fusuma #size .inner .flex.flex-nowrap {
    flex-wrap: wrap;
    row-gap: 30px;
  }
  .fusuma #size .inner .flex.flex-nowrap div,
  .fusu_kinds_wrap img {
    width: calc(100% / 2 - 20px);
  }
  .fusuma #size .inner .flex.flex-nowrap div:not(:nth-of-type(2)) {
    padding-right: 12%;
  }
  .fusuma #kinds .description.flex {
    display: block;
  }
  .fusuma #kinds .description .kinds-type-grn {
    width: 100%;
  }
  .fusuma #kinds .description .kinds-type-grn .ttl-grn {
    margin-bottom: 0;
  }
  .fusuma .kinds-type-grn:first-child::after {
    content: none;
  }
  .fusu_kinds_wrap img {
    border-radius: 15px;
  }
  .fusuma #kinds_txt p.notice {
    text-align: left;
    text-indent: 1em;
  }
}
@media screen and (max-width:415px) {
  .fusuma #size .inner .flex.flex-nowrap div,
  .fusuma .fusu_kinds_wrap img {
    width: calc(100% / 2 - 5px);
  }
/*  .fusuma #size .inner .flex.flex-nowrap div {
    flex-direction: column;
    width: 100%;
  }
  .fusuma #size .inner .flex.flex-nowrap div:not(:nth-of-type(2)) {
    padding: 0 13%;
  }*/
}

/* ------------------------------------
障子
------------------------------------ */
.price-meta .shouji {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1;
  padding: 16px 23px;
  background: url(../images/shouji/shouji.png)no-repeat center 100%/contain;
}
.shouji #kinds_txt div.inner.flex {
  /* .fusuma #kinds_txt div.inner.flex と同じ箇所に指定 */
}

@media screen and (max-width: 540px) {
  .shouji #size .sub-ttl {
    text-align: left;
  }
}



/* ------------------------------------
網戸
------------------------------------ */
.price-meta .amido {
  font-size: 3.0rem;
  font-weight: bold;
  line-height: 1;
  padding: 16px 23px;
  background: url(../images/amido/amido.png) no-repeat center 100%/contain;
}
.amido #method > div > div div img {
  max-width: 408px;
}
@media screen and (max-width: 1000px) {
  .amido #method > div > div div img {
    width: 100%;
  }
}
@media screen and (max-width: 540px) {
  .amido .kinds-type {
    grid-template-columns: 1fr;
    }
  }

/* ------------------------------------
問い合わせ
------------------------------------ */

/*top_promiseより
────────────────────────────────────*/
.con_promise {
  padding: 20px 0;
  background: #A4C964;
  margin-bottom: 0 !important;
}

.con_promise .pro_box02 {
  border-radius: 0 10px 10px 0;
  background: url("../images/index/pro_bg.svg");
  position: relative;
  padding: 35px 25px 35px 75px;
}

.con_promise .pro_box02::before {
  content: '';
  width: 13px;
  height: calc(100% - 32px);
  display: block;
  position: absolute;
  top: 16px;
  left: 16px;
  background: url("../images/index/pro_circle.svg") repeat-y;
}

.con_promise .pro_box02 h3 {
  font-size: 2.5rem;
  font-weight: bold;
  position: relative;
  padding-bottom: 20px;
  z-index: 1;
}

.con_promise .pro_box02 h3::after {
  content: '';
  width: 100%;
  height: 3px;
  background: url("../images/index/pro_line.svg") no-repeat;
  background-size: cover;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

.con_promise .pro_box02 .area_check {
  padding-right: 30%;
  margin-top: 25px;
  position: relative;
  z-index: 1;
}

.con_promise .pro_box02 .area_check .check_box {
  width: 48.5%;
}

.con_promise .pro_box02 .area_check .check_box h4 {
  font-size: 2rem;
  font-weight: bold;
  padding-left: 33px;
  position: relative;
  margin-bottom: 10px;
}

.con_promise .pro_box02 .area_check .check_box h4::before {
  content: '';
  width: 20px;
  height: 22px;
  display: block;
  background: url("../images/index/icon_check.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 3px;
  left: 0;
}

.con_promise .pro_box02 .area_check .check_box p {
  padding-left: 33px;
}

.con_promise .pro_box02 .staff {
  position: absolute;
  bottom: 3px;
  right: 25px;
  width: 26.4%;
  z-index: 1;
}

.con_promise .pro_box02 .line {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.con_promise .pro_box02 .line01 {
  width: calc(100% - 48px);
  left: 24px;
  border-top: 3px #354756 solid;
  border-bottom: 3px #354756 solid;
}

.con_promise .pro_box02 .line02 {
  height: calc(100% - 48px);
  top: 24px;
  border-left: 3px #354756 solid;
  border-right: 3px #354756 solid;
}

.con_promise .pro_box02 .corner {
  position: absolute;
  width: 25px;
  height: 25px;
}

.con_promise .pro_box02 .corner01 {
  top: 0;
  left: 0;
}

.con_promise .pro_box02 .corner02 {
  top: 0;
  right: 0;
}

.con_promise .pro_box02 .corner03 {
  bottom: 0;
  right: 0;
}

.con_promise .pro_box02 .corner04 {
  bottom: 0;
  left: 0;
}

.con_promise .area_virus {
  border-left: #39a3d4 7px solid;
  padding: 0 0 0 15px;
}

.con_promise .area_virus .txt_area {
  width: 40%;
}

.con_promise .area_virus .txt_area h3 {
  font-size: 1.9rem;
  font-weight: bold;
  color: #39a3d4;
}

.con_promise .area_virus .txt_area p {
  margin-top: 10px;
}

.con_promise .area_virus .wrap_img_area {
  width: 58.5%;
}

.con_promise .area_virus .img_area {
  width: 55.2%;
}

.con_promise .area_virus .img_area figure {
  width: 31.12%;
  background: #e6eef7;
  border-radius: 5px;
  position: relative;
  align-self: flex-end;
}

.con_promise .area_virus .img_area figure::before {
  content: "";
  padding-top: 100%;
  display: block;
}

.con_promise .area_virus .img_area figure img {
  width: 59.6%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

.con_promise .area_virus .btn01 {
  width: 42.3%;
}

.con_promise .inner {
  background: #FFF;
  border-radius: 0 15px 15px 0;
}

@media screen and (max-width:1140px) {
  .con_promise .area_virus .txt_area {
    width: calc(100% - 380px);
    max-width: 550px;
  }
  
  .con_promise .area_virus .wrap_img_area {
    width: 350px;
    justify-content: flex-end;
  }
  
  .con_promise .area_virus .img_area {
    width: 100%;
    max-width: 350px;
  }
  
  .con_promise .area_virus .btn01 {
    width: 100%;
    margin-top: 20px;
  }
}

@media screen and (max-width:768px) {
  .con_promise .pro_box02 {
/*    padding: 25px 20px 115px 55px;*/
    padding: 25px 20px 140px 55px;
  }
  
  .con_promise .pro_box02 h3 {
    font-size: 2.1rem;
  }
  
  .con_promise .pro_box02 .area_check {
    padding-right: 0;
  }
  
  .con_promise .pro_box02 .area_check .check_box h4 {
    font-size: 1.8rem;
    padding-left: 29px;
    margin-bottom: 7px;
  }
  
  .con_promise .pro_box02 .area_check .check_box p {
    padding-left: 29px;
  }
  
  .con_promise .pro_box02 .staff {
    width: 165px;
  }
  
  .con_promise .area_virus .txt_area {
    width: 100%;
    margin: 0 0 25px;
  }
  
  .con_promise .area_virus .wrap_img_area {
    justify-content: center;
    margin: 0 auto;
  }
  
  .con_promise .area_virus .btn01 {
    margin-top: 25px;
  }
}

@media screen and (max-width:540px) {
  .con_promise .pro_box02 {
/*    padding: 25px 15px 115px 45px;*/
      padding: 25px 15px 140px 45px;
  }
  
  .con_promise .pro_box02 h3 {
    font-size: 1.8rem;
  }
  
  .con_promise .pro_box02 .area_check {
    margin-top: 20px;
  }
  
  .con_promise .pro_box02 .area_check .check_box {
    width: 100%;
  }
  
  .con_promise .pro_box02 .area_check .check_box:first-of-type {
    margin-bottom: 15px;
  }
  
  .con_promise .pro_box02 .area_check .check_box h4::before {
    width: 18px;
    height: 20px;
  }
  
  .con_promise .area_virus .txt_area h3 {
    font-size: 1.7rem;
  }
  
  .con_promise .area_virus .txt_area {
    margin: 0px 0 15px;
  }
  
  .con_promise .area_virus .btn01 {
    margin-top: 20px;
  }
}

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

/* ------------------------------------
対象エリア
------------------------------------ */
.page-id-82 .top_information,
.page-id-36 .top_information {
  margin-top: 0 !important;
}

.page-id-82 .bg-sec01,
.page-id-36 .bg-sec01 {
  padding-bottom : 150px;
  margin-bottom: 0 !important;
}

.area-ttl {
  position: relative;
  padding-left: 1.9em;
  font-size: 2.6rem;
  font-weight: 700;
  margin: 20px 0 8px;
  font-family: 'TsukuARdGothic';
}

.area-ttl::before {
  position: absolute;
  content: '';
  bottom: 0.8rem;
  left: 0.4em;
  width: 26px;
  height: 26px;
  background-color: #61C194;
  transform: rotate(45deg);
}

.area-ttl::after {
  position: absolute;
  content: '';
  bottom: 0.2em;
  left: 0.98em;
  width: 13px;
  height: 13px;
  background-color: #F08913;
  transform: rotate(45deg);
}

.page-id-82 .page_mv .main-ttl-en:after {
  bottom: 62px;
}
.page-id-82 .page_mv .main-ttl-jp {
  margin-top: 1em;
}

.page-id-82 main .pref {
  max-width: 1060px;
  margin: 0 auto;
}

@media screen and (max-width: 415px) {
  .page-id-82 .page_mv .main-ttl-en:after {
    bottom: 36px;
  }
  .page-id-82 .page_mv .sub-ttl span::before {
    content: "";
    display: block;
    clear: both;
  }
}

/* ------------------------------------
FAQ
------------------------------------ */
.faq_top{
  background: #A4C964;
  color: #fff;
}
.faq_top.flex{
  justify-content: end;
}

body.page.faq .faq_top .inner {
  display: grid;
  grid-template-columns: 2fr 1fr;
}
body.page.faq .faq_top .inner .txt_area {
  margin: auto;
  padding: 50px 0 50px 160px;
}
body.page.faq .faq_top .inner div:nth-of-type(2) {
  text-align: right;
}

.faq_top img{
  width: 70%;
}
body.page.faq .inner img {
  width: 100%;
}

.faq_top .txt_area .txt_s{
  font-size: 3rem;
  display: block;
}
.faq_top .txt_area p{
  font-size: 3.4rem;;
}
.faq_top .txt_area h2{
  position: relative;
  font-size: 3.8rem;
  font-weight: bold;
  line-height: 1;
  padding-left: 55px;
  margin-top: 15px;
}
.faq_top .txt_area h2::before {
  content: '';
  width: 38.5px;
  height: 32px;
  background: url(../images/common/icon_qa.svg) no-repeat;
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.accordion-faq-content dt {
  position: relative;
  padding: 4px 0 32px 40px;
  font-weight: normal;
  cursor: pointer;
}
.accordion-faq-content dd {
  position: relative;
  margin-bottom: 32px;
/*  margin-left: 40px;
  padding: 4px 0 32px 40px;*/
  padding: 4px 0 32px 80px;
  border-bottom: 2px dashed #00974B;
}
.accordion-faq-content .question:before {
  display: inline-block;
  content: "Q";
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  background: #61C194;
  color: #fff;
  border-radius: 50%;
  font-weight: normal;
}
.accordion-faq-content .answer:before {
  display: inline-block;
  content: "A";
  position: absolute;
  top: 0;
/*  left: 0;*/
  left: 40px;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  background: #F08913;
  color: #fff;
  border-radius: 50%;
  font-weight: normal;
}

@media screen and (max-width: 768px) {
/*  body.page.faq .faq_top .inner {
    padding: 0;
  }*/
  body.page.faq .faq_top .inner .txt_area {
    padding: 0;
  }
}
@media screen and (max-width: 540px) {
  body.page.faq .faq_top .inner {
    display: block;
  }
  body.page.faq .faq_top .inner div:nth-of-type(2) img {
    width: 50%;
  }
  .accordion-faq-content dd {
    padding-left: 40px;
  }
  .accordion-faq-content .answer:before {
    left: 0;
  }
}

/* ------------------------------------
Privacy Policy
------------------------------------ */
.page-id-3 .page_mv .main-ttl-jp {
  margin-top: 1em;
}
.page-id-3 main h3 {
  font-weight: 700;
  font-size: 2.4rem;
}
.page-id-3 main h3:not(:first-child) {
  margin-top: 2rem;
}
.page-id-3 main p {
  margin: 0 0 1em 0;
}

/**
 * .measures
 * .page-id-206
 * ウイルス感染防止のための対策
**/
.page.measures main .page_mv {
  margin-top: 100px;
  height: 50px;
}
.measures .ttl-waku,
.measures .ttl-waku_w {
  background: url("../images/tatami/ttl-waku_bg2.png") no-repeat center / contain;
}
.measures main .box {
  margin: 0 auto 90px;
  max-width: 768px;
}
.measures main .box p {
  margin-top: 1em;
}
.page.measures .bg-sec01 {
  margin-bottom: 0;
}
.page.measures .top_information {
  margin-top: 0;
}
@media screen and (max-width: 415px) {
  .measures .ttl-waku_w {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4em;
  }
/*  .measure .bg-sec01 {
    margin-top: 6em;
  }*/
/*  .measures main {
    margin-top: 0;
    padding-top: 0;
  }*/
  .measures .page_mv {
/*    padding-bottom: 30px;*/
    height: 30px;
  }
  .measures .main-ttl {
/*    padding-top: 1px;*/
    height: 3em;
  }
/*  .page.measures .bg-sec01 {
    margin-bottom: 0;
  }
  .page.measures .top_information {
    margin-top: 0;
  }*/
}


@media screen and (min-width: 769px) {
  .tatami #price,
  .tatami #size,
  .tatami #edge,
  .tatami #method,
  .fusuma #price,
  .fusuma #size,
  .fusuma #kinds,
  .shouji #price,
  .shouji #method,
  .shouji #size,
  .amido #price,
  .amido #method,
  .amido #kinds{
    margin-top: -181px;
    padding-top: 141px;
  }

  .area #fukuoka,
  .area #saga,
  .area #nagasaki,
  .area #kumamoto,
  .area #ooita,
  .aera #miyazaki,
  .area #kagoshima,
  .area #yamaguchi {
    margin-top: -141px;
    padding-top: 141px;
  }
}

/**
 * .single
**/
.single .post-area p {
  margin-bottom: 1em;
}

/**
 * .contact
**/
.contact .form-btn input {
  cursor: pointer;
}


/**
 * .privacy
**/
.privacy main {
  margin-top: unset;
  overflow-x: unset;
}
/*_::-webkit-full-page-media, _:future, :root .privacy main .page_mv*/
.privacy main .page_mv {
  height: 20px;
}
.page.privacy .bg-sec01 {
  margin-bottom: 0;
  padding-bottom: 80px;
}
.page.privacy .top_information {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .privacy main {
    margin-top: 150px;
  }
  .privacy main .page_mv {
    height: 5px;
  }
}
@media screen and (max-width: 540px) {
  .page.privacy .bg-sec01 {
    padding-bottom: 40px;
  }
}


/**
 * .error404
 * .thanks
**/
body.error404{
  display: flex;
  flex-flow: column;
  min-height: 100vh;
}
body.error404 main {
  flex: 1;
  max-width: 768px;
  margin: 0 auto;
}

body.thanks {
  min-height: 100vh;
}
body.thanks main {
  margin: 0 auto;
}