@charset "utf-8";

/*
Theme Name: Tunematu Gas
*/

/*===========================================
Foundation
===========================================*/
/*
Reset.cssやNormalize.cssなどを用いたブラウザのデフォルトスタイルの初期化や、
プロジェクトにおける基本的なスタイルを定義します。
ページの下地としての全体の背景や、基本的なタイポグラフィなどが該当します。
*/

/* ress.min.css */
html{-webkit-text-size-adjust:100%;box-sizing:border-box;-moz-tab-size:4;tab-size:4;word-break:normal}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{margin:0;padding:0}hr{color:inherit;height:0;overflow:visible}details,main{display:block}summary{display:list-item}small{font-size:80%}[hidden]{display:none}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}a{background-color:transparent}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}pre{font-size:1em}b,strong{font-weight:bolder}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}iframe{border-style:none}input{border-radius:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}button,select{text-transform:none}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,input,select,textarea{background-color:transparent;border-style:none}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}[disabled]{cursor:default}img{border-style:none}progress{vertical-align:baseline}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}

/* splide-core.min.css */
@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}

/* Noto Sans Japanese */
@font-face {
  font-display: swap;
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400 700;
  src: url("lib/fonts/Noto_Sans_JP/NotoSansJP-VariableFont_wght.woff2") format("woff2"),
       url("lib/fonts/Noto_Sans_JP/NotoSansJP-VariableFont_wght.woff") format("woff"),
       url("lib/fonts/Noto_Sans_JP/NotoSansJP-VariableFont_wght.ttf") format("truetype");
}

/* Roboto */
@font-face {
  font-display: swap;
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400 900;
  src: url("lib/fonts/Roboto/Roboto-VariableFont_wdth,wght.woff2") format("woff2"),
       url("lib/fonts/Roboto/Roboto-VariableFont_wdth,wght.woff") format("woff"),
       url("lib/fonts/Roboto/Roboto-VariableFont_wdth,wght.ttf") format("truetype");
}

:root {
  --ui-scale: clamp(0.875, calc(0.875 + (1 - 0.875) * (100vw - 1280px) / (1920px - 1280px)), 1);
}

body {
  background: #fff;
  color: #333;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
  /*font-size: clamp(14px, calc(14px + (16 - 14) * (100vw - 1280px) / (1920px - 1280px)), 16px);*/
  font-size: calc(16px * var(--ui-scale));
  line-height: 1.7;
  overflow-wrap: break-word;
  word-break: normal;
}

body.is-no-scroll {
  overflow: hidden;
}

textarea {
  border-radius: 0;
  vertical-align: bottom
}

picture {
  display: block
}

address {
  font-style: normal
}

iframe {
  vertical-align: bottom
}

table {
  width: 100%;
  border-collapse: collapse
}

video {
  vertical-align: bottom
}

time {
  display: block
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom
}

li {
  list-style-type: none
}

a {
  text-decoration: none
}

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

  :root {
    --ui-scale: 1;
  }

}

/*===========================================
Layout
===========================================*/
/*
ページを構成するヘッダーやメインのコンテンツエリア、
サイドバーやフッターといったプロジェクト共通の
コンテナーブロックのスタイルを定義します。
*/

.l-wrapper {
  position: relative;
  overflow: clip;
  /*min-width: calc(1224px + (24px * 2));*/
  /*margin: 0 auto;*/
}

.l-container {
  padding: calc(90px * var(--ui-scale)) 0 calc(200px * var(--ui-scale));
}

.l-container__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.l-container__content {
  display: grid;
  grid-template-columns: 1fr calc(304px * var(--ui-scale));
  gap: 0 calc(112px * var(--ui-scale));
}

[id] {
  scroll-margin-top: 64px;
}

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

  .l-wrapper {
    min-width: 100%;
    padding-bottom: 66px;
  }

  .l-wrapper:before {
    position: absolute;
    height: 66px;
    width: 100%;
    bottom: 0;
    left: 0;
    background: #EDF5F9;
    z-index: -1;
    content: "";
  }

  .l-container {
    padding: 48px 0 80px;
  }

  .l-container__content {
    grid-template-columns: none;
    gap: 82px 0;
  }

  [id] {
    scroll-margin-top: 40px;
  }

}

/* 緊急ご連絡はこちら */
.l-emerg {
  position: fixed;
  top: calc(50% + calc(48px * var(--ui-scale)));
  right: 0;
  z-index: 5;
  transform: translateY(-50%);
}

.l-emerg__button {
  display: block;
  position: relative;
  z-index: 1;
  padding: calc(24px * var(--ui-scale)) calc(15px * var(--ui-scale)) calc(20px * var(--ui-scale)) calc(15px * var(--ui-scale));
  border: calc(2px * var(--ui-scale)) solid #fff;
  border-right: none;
  border-radius: calc(16px * var(--ui-scale)) 0 0 calc(16px * var(--ui-scale));
  box-shadow: 0 0 calc(20px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #FF9604 5.03%, #FF6A00 94.9%);
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: right;
  line-height: 1.25;
  letter-spacing: .06em;
  transition: opacity .5s;

  writing-mode: vertical-rl;
  text-orientation: upright;
}

.l-emerg__button:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: calc(16px * var(--ui-scale)) 0 0 calc(16px * var(--ui-scale));
  background: rgba(255, 236, 92, .2);
  content: "";
  opacity: 0;
  transition: opacity .5s;
}

.l-emerg__button:hover:before {
  opacity: 1;
}

.l-emerg__button span {
  display: flex;
  align-items: center;
  gap: 0 10px;
}

.l-emerg__button span:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75556%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75556%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75556%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75556%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-emerg__button:after {
  position: absolute;
  top: calc(-64px * var(--ui-scale));
  left: calc(-12px * var(--ui-scale));
  width: calc(80px * var(--ui-scale));
  height: calc(79px * var(--ui-scale));
  background: url("lib/images/illust_yellow.png") no-repeat center / contain;
  content: "";
}

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

  .l-emerg {
    display: none;
  }

}

/* 固定ボタン */
.p-fix {
  display: none;
}

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

  .p-fix {
    display: block;
    position: fixed;
    bottom: 0;
    bottom: -100%;
    left: 0;
    z-index: 900;
    width: 100%;
  }

  .p-fix.is-fixed {
    /*position: fixed;*/
    /*transition: bottom 1s;*/
    animation: kenburns_02 1s linear forwards;
  }

  @keyframes kenburns_02 {
    0% {
      bottom: -100%;
    }
    100% {
      bottom: 0px;
    }
  }

  .p-fix__buttons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }

  .p-fix__button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 7px 8px 3px;
    border-radius: 8px 8px 0 0;
  }

  .p-fix__button--phone {
    background: #399273;
    transition: opacity .5s;
  }

  .p-fix__button--phone:hover {
    opacity: .7;
  }

  .p-fix__button--form {
    background: linear-gradient(91.74deg, #FF9604 5.03%, #FF6A00 94.9%);
  }

  .p-fix-phone__text {
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    line-height: 1;
  }

  .p-fix-phone__text span {
    display: block;
    padding: 4px 0;
    background: #005638;
    color: #fff;
  }

  .p-fix-phone__number {
    margin-top: 4px;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    font-family: "Roboto", sans-serif;
    text-align: center;
  }

  .p-fix-phone__number:before {
    display: inline-block;
    transform: translateY(3px);
    width: 18px;
    height: 18px;
    margin-right: 8px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M16.95%2018C14.8667%2018%2012.8083%2017.5458%2010.775%2016.6375C8.74167%2015.7292%206.89167%2014.4417%205.225%2012.775C3.55833%2011.1083%202.27083%209.25833%201.3625%207.225C0.454167%205.19167%200%203.13333%200%201.05C0%200.75%200.1%200.5%200.3%200.3C0.5%200.1%200.75%200%201.05%200H5.1C5.33333%200%205.54167%200.0791667%205.725%200.2375C5.90833%200.395833%206.01667%200.583333%206.05%200.8L6.7%204.3C6.73333%204.56667%206.725%204.79167%206.675%204.975C6.625%205.15833%206.53333%205.31667%206.4%205.45L3.975%207.9C4.30833%208.51667%204.70417%209.1125%205.1625%209.6875C5.62083%2010.2625%206.125%2010.8167%206.675%2011.35C7.19167%2011.8667%207.73333%2012.3458%208.3%2012.7875C8.86667%2013.2292%209.46667%2013.6333%2010.1%2014L12.45%2011.65C12.6%2011.5%2012.7958%2011.3875%2013.0375%2011.3125C13.2792%2011.2375%2013.5167%2011.2167%2013.75%2011.25L17.2%2011.95C17.4333%2012.0167%2017.625%2012.1375%2017.775%2012.3125C17.925%2012.4875%2018%2012.6833%2018%2012.9V16.95C18%2017.25%2017.9%2017.5%2017.7%2017.7C17.5%2017.9%2017.25%2018%2016.95%2018Z%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
    content: "";
  }

  .p-fix-form__text {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 4px;
    padding-bottom: 4px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
  }

  .p-fix-form__text:before {
    display: block;
    width: 24px;
    height: 24px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20width%3D%2224%22%20height%3D%2224%22%20rx%3D%2212%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3Cmask%20id%3D%22mask0_2225_92301%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%3E%0A%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2225_92301)%22%3E%0A%3Cpath%20d%3D%22M11.9625%2016.5C12.225%2016.5%2012.4469%2016.4094%2012.6281%2016.2281C12.8094%2016.0469%2012.9%2015.825%2012.9%2015.5625C12.9%2015.3%2012.8094%2015.0781%2012.6281%2014.8969C12.4469%2014.7156%2012.225%2014.625%2011.9625%2014.625C11.7%2014.625%2011.4781%2014.7156%2011.2969%2014.8969C11.1156%2015.0781%2011.025%2015.3%2011.025%2015.5625C11.025%2015.825%2011.1156%2016.0469%2011.2969%2016.2281C11.4781%2016.4094%2011.7%2016.5%2011.9625%2016.5ZM11.2875%2013.6125H12.675C12.675%2013.2%2012.7219%2012.875%2012.8156%2012.6375C12.9094%2012.4%2013.175%2012.075%2013.6125%2011.6625C13.9375%2011.3375%2014.1938%2011.0281%2014.3813%2010.7344C14.5688%2010.4406%2014.6625%2010.0875%2014.6625%209.675C14.6625%208.975%2014.4062%208.4375%2013.8938%208.0625C13.3813%207.6875%2012.775%207.5%2012.075%207.5C11.3625%207.5%2010.7844%207.6875%2010.3406%208.0625C9.89687%208.4375%209.5875%208.8875%209.4125%209.4125L10.65%209.9C10.7125%209.675%2010.8531%209.43125%2011.0719%209.16875C11.2906%208.90625%2011.625%208.775%2012.075%208.775C12.475%208.775%2012.775%208.88438%2012.975%209.10313C13.175%209.32188%2013.275%209.5625%2013.275%209.825C13.275%2010.075%2013.2%2010.3094%2013.05%2010.5281C12.9%2010.7469%2012.7125%2010.95%2012.4875%2011.1375C11.9375%2011.625%2011.6%2011.9937%2011.475%2012.2437C11.35%2012.4938%2011.2875%2012.95%2011.2875%2013.6125ZM12%2019.5C10.9625%2019.5%209.9875%2019.3031%209.075%2018.9094C8.1625%2018.5156%207.36875%2017.9813%206.69375%2017.3063C6.01875%2016.6313%205.48438%2015.8375%205.09063%2014.925C4.69687%2014.0125%204.5%2013.0375%204.5%2012C4.5%2010.9625%204.69687%209.9875%205.09063%209.075C5.48438%208.1625%206.01875%207.36875%206.69375%206.69375C7.36875%206.01875%208.1625%205.48438%209.075%205.09063C9.9875%204.69687%2010.9625%204.5%2012%204.5C13.0375%204.5%2014.0125%204.69687%2014.925%205.09063C15.8375%205.48438%2016.6313%206.01875%2017.3063%206.69375C17.9813%207.36875%2018.5156%208.1625%2018.9094%209.075C19.3031%209.9875%2019.5%2010.9625%2019.5%2012C19.5%2013.0375%2019.3031%2014.0125%2018.9094%2014.925C18.5156%2015.8375%2017.9813%2016.6313%2017.3063%2017.3063C16.6313%2017.9813%2015.8375%2018.5156%2014.925%2018.9094C14.0125%2019.3031%2013.0375%2019.5%2012%2019.5ZM12%2018C13.675%2018%2015.0938%2017.4187%2016.2563%2016.2563C17.4187%2015.0938%2018%2013.675%2018%2012C18%2010.325%2017.4187%208.90625%2016.2563%207.74375C15.0938%206.58125%2013.675%206%2012%206C10.325%206%208.90625%206.58125%207.74375%207.74375C6.58125%208.90625%206%2010.325%206%2012C6%2013.675%206.58125%2015.0938%207.74375%2016.2563C8.90625%2017.4187%2010.325%2018%2012%2018Z%22%20fill%3D%22%23FF6A01%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
    content: "";
  }

}


/* ヘッダー */
.l-header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  border-top: calc(8px * var(--ui-scale)) solid #399273;
}

.l-header__content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-left: 24px;
}

.l-header__logo {
  width: calc(442px * var(--ui-scale));
  margin-top: calc(20px * var(--ui-scale));
}

.l-header__logo a {
  display: block;
  transition: opacity .5s;
}

.l-header__logo a:hover {
  opacity: .7;
}

.l-header__logo img {
  display: block;
}

.l-header__contact {
  display: flex;
  align-items: center;
  gap: 0 calc(24px * var(--ui-scale));
}

.l-header__phone {
  display: flex;
  align-items: flex-start;
  gap: 0 calc(20px * var(--ui-scale));
}

.l-header-phone__text {
  font-size: calc(12px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.l-header-phone__text span {
  display: inline-block;
  padding: calc(10px * var(--ui-scale)) calc(14px * var(--ui-scale));
  border: calc(2px * var(--ui-scale)) solid #fff;
  background: #FFE762;
  color: #444;
}

.l-header-phone__number {
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.l-header-phone__number a {
  color: #444;
  transition: opacity .5s;
}

.l-header-phone__number a:hover {
  opacity: .7;
}

.l-header-phone__number a:before {
  display: inline-block;
  transform: translateY(-1px);
  width: calc(18px * var(--ui-scale));
  height: calc(18px * var(--ui-scale));
  margin-right: 7px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M16.95%2018C14.8667%2018%2012.8083%2017.5458%2010.775%2016.6375C8.74167%2015.7292%206.89167%2014.4417%205.225%2012.775C3.55833%2011.1083%202.27083%209.25833%201.3625%207.225C0.454167%205.19167%200%203.13333%200%201.05C0%200.75%200.1%200.5%200.3%200.3C0.5%200.1%200.75%200%201.05%200H5.1C5.33333%200%205.54167%200.0791667%205.725%200.2375C5.90833%200.395833%206.01667%200.583333%206.05%200.8L6.7%204.3C6.73333%204.56667%206.725%204.79167%206.675%204.975C6.625%205.15833%206.53333%205.31667%206.4%205.45L3.975%207.9C4.30833%208.51667%204.70417%209.1125%205.1625%209.6875C5.62083%2010.2625%206.125%2010.8167%206.675%2011.35C7.19167%2011.8667%207.73333%2012.3458%208.3%2012.7875C8.86667%2013.2292%209.46667%2013.6333%2010.1%2014L12.45%2011.65C12.6%2011.5%2012.7958%2011.3875%2013.0375%2011.3125C13.2792%2011.2375%2013.5167%2011.2167%2013.75%2011.25L17.2%2011.95C17.4333%2012.0167%2017.625%2012.1375%2017.775%2012.3125C17.925%2012.4875%2018%2012.6833%2018%2012.9V16.95C18%2017.25%2017.9%2017.5%2017.7%2017.7C17.5%2017.9%2017.25%2018%2016.95%2018Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-header-phone__number span {
  display: block;
  margin-top: -2px;
  font-size: calc(12px * var(--ui-scale));
  font-weight: 400;
  text-align: right;
}

.l-header__button a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  min-width: calc(208px * var(--ui-scale));
  padding: calc(18px * var(--ui-scale)) 0 calc(24px * var(--ui-scale));
  border-bottom-left-radius: calc(32px * var(--ui-scale));
  background: #399273;
  color: #fff;
  font-size: calc(12px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  transition: opacity .5s;
}

.l-header__button a:hover {
  opacity: .7;
}

.l-header__button a:before {
  display: block;
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  margin: 0 auto calc(6px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M9.95%2016C10.3%2016%2010.5958%2015.8792%2010.8375%2015.6375C11.0792%2015.3958%2011.2%2015.1%2011.2%2014.75C11.2%2014.4%2011.0792%2014.1042%2010.8375%2013.8625C10.5958%2013.6208%2010.3%2013.5%209.95%2013.5C9.6%2013.5%209.30417%2013.6208%209.0625%2013.8625C8.82083%2014.1042%208.7%2014.4%208.7%2014.75C8.7%2015.1%208.82083%2015.3958%209.0625%2015.6375C9.30417%2015.8792%209.6%2016%209.95%2016ZM9.05%2012.15H10.9C10.9%2011.6%2010.9625%2011.1667%2011.0875%2010.85C11.2125%2010.5333%2011.5667%2010.1%2012.15%209.55C12.5833%209.11667%2012.925%208.70417%2013.175%208.3125C13.425%207.92083%2013.55%207.45%2013.55%206.9C13.55%205.96667%2013.2083%205.25%2012.525%204.75C11.8417%204.25%2011.0333%204%2010.1%204C9.15%204%208.37917%204.25%207.7875%204.75C7.19583%205.25%206.78333%205.85%206.55%206.55L8.2%207.2C8.28333%206.9%208.47083%206.575%208.7625%206.225C9.05417%205.875%209.5%205.7%2010.1%205.7C10.6333%205.7%2011.0333%205.84583%2011.3%206.1375C11.5667%206.42917%2011.7%206.75%2011.7%207.1C11.7%207.43333%2011.6%207.74583%2011.4%208.0375C11.2%208.32917%2010.95%208.6%2010.65%208.85C9.91667%209.5%209.46667%209.99167%209.3%2010.325C9.13333%2010.6583%209.05%2011.2667%209.05%2012.15ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-header__button span {
  display: block;
  font-size: calc(18px * var(--ui-scale));
}

.l-nav {
  margin-top: calc(24px * var(--ui-scale));
}

.l-nav.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: 0;
  box-shadow: 0 0 calc(30px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  animation: kenburns_03 1s linear forwards;
}

@keyframes kenburns_03 {
  0% {
    top: -100%;
  }
  100% {
    top: 0;
  }
}

.l-nav__list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(13px * var(--ui-scale));
  width: 100%;
  max-width: calc(1320px * var(--ui-scale));
  margin: 0 auto;
  border-radius: 9999px;
  padding: calc(29px * var(--ui-scale)) 0;
  background: #fff;
}

.l-nav.is-fixed .l-nav__list {
  max-width: none;
  border-radius: 0;
}

.l-nav__item {
  display: flex;
  align-items: center;
  gap: 0 calc(13px * var(--ui-scale));
}

.l-nav__item:nth-child(n + 2):before {
  display: block;
  width: calc(2px * var(--ui-scale));
  height: calc(16px * var(--ui-scale));
  background: #399273;
  content: "";
}

.l-nav__item a {
  display: block;
  color: #444;
  font-size: calc(15px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
  /*transition: opacity .5s;*/
  transition: color .5s;
}

.l-nav__item.is-current > a {
  color: #399273;
}

.l-nav__item:not(.is-current) a:hover {
  /*opacity: .7;*/
  color: #83563B;
}

/* （ドロップダウンメニュー） */
.l-nav__item--has-child {
  position: relative;
}

.l-nav__item--has-child ul {
  position: absolute;
  top: calc(100% + calc(29px * var(--ui-scale)));
  left: 0;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(16px * var(--ui-scale));
  padding: 0 calc(24px * var(--ui-scale)) calc(24px * var(--ui-scale));
  border-radius: 0 0 calc(16px * var(--ui-scale)) calc(16px * var(--ui-scale));
  background: #fff;


  visibility: hidden;
  opacity: 0;
  transition: opacity .5s, visibility .5s;
}

.l-nav__item--has-child:hover ul {
  visibility: visible;
  opacity: 1;
}

.l-nav__item--has-child ul a {
  display: grid;
  grid-template-columns: calc(56px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(12px * var(--ui-scale));
  transition: color .5s;
}

.l-nav__item--has-child ul a:hover {
  color: #83563B;
}

.l-nav__item--has-child ul span {
  font-size: calc(14px * var(--ui-scale));
  white-space: nowrap;
}

.l-nav__item--has-child ul img {
  width: 100%;
}

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

  .l-header {
    /*border-top: 4px solid #399273;*/
    border-top: none;
    padding-top: 4px;
  }

  .l-header__logo {
    width: 257px;
    margin-top: 16px;
  }

  .l-nav {
    display: none;
  }

  .l-menu .l-nav {
    display: block;
  }

  .l-nav__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 0;
  }

  .l-nav__item:nth-child(2n) {
    padding-left: 16px;
  }

  .l-nav__item a {
    display: block;
    padding: 0;
    color: #fff;
    font-size: 16px;

    font-size: 17px;

  }

  .l-nav__item.is-current a {
    color: #fff;
  }

  .l-nav__item.is-current a:before {
    content: none;
  }

  .l-nav__item--pull-down a:after {
    content: none;
  }

  .l-header__contact {
    display: none;
  }

}

/* ハンバーガーボタン */
.p-hamburger {
  display: none;
}

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

  .p-hamburger {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    position: absolute;
    top: 4px;
    right: 0;
    z-index: 1100;
    width: 60px;
    height: 60px;
    background: linear-gradient(92.71deg, #29BC88 0%, #399273 94.95%);
    cursor: pointer;
  }

  .p-hamburger.is-fixed {
    position: fixed;
    animation: kenburns 1s linear forwards;
  }

  @keyframes kenburns {
    0% {
      top: -100%;
    }
    100% {
      top: 4px;
    }
  }

  .p-hamburger:before {
    position: absolute;
    bottom: 100%;
    right: 0;
    width: 100vw;
    height: 4px;
    background: #399273;
    content: "";
  }

  .p-hamburger.is-open {
    background: transparent;
  }

  .p-hamburger.is-open:before {
    content: none;
  }

  .p-hamburger__line {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px 0;
    padding-top: 10px;
  }

  .p-hamburger__line > span:nth-child(1),
  .p-hamburger__line > span:nth-child(2) {
    width: 16px;
    height: 2px;
    background: #fff;
    /*transition: transform .2s, background .2s, opacity .2s;*/
  }

  .p-hamburger.is-open .p-hamburger__line > span:nth-child(1),
  .p-hamburger.is-open .p-hamburger__line > span:nth-child(2) {
    width: 17px;
    background: #399273;
  }

  .p-hamburger.is-open .p-hamburger__line > span:nth-child(1) {
    transform: translateY(2px) rotate(-45deg);
  }

  .p-hamburger.is-open .p-hamburger__line > span:nth-child(2) {
    transform: translateY(-2px) rotate(45deg);
  }

  .p-hamburger .p-hamburger__line > span:nth-child(3) {
    transform: translateY(4px);
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    font-family: "Roboto", sans-serif;
    line-height: 1.7;
    letter-spacing: 0.05em;
  }

  .p-hamburger .p-hamburger__line > span:nth-child(3) span:nth-child(2) {
    display: none;
  }

  .p-hamburger.is-open .p-hamburger__line > span:nth-child(3) span:first-child {
    display: none;
  }

  .p-hamburger.is-open .p-hamburger__line > span:nth-child(3) span:nth-child(2) {
    display: block;
    color: #399273;
  }

}

/* ハンバーガーメニュー */
.l-menu {
  display: none;
}

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

  .l-menu {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    overflow-y: auto;
    visibility: hidden;
    width: 100%;
    height: 100%;
    padding: 48px 0 0;
    background: #fff;
    opacity: 0;
    transition: opacity .5s, visibility .5s;
  }

  .l-menu:before {
    position: absolute;
    top: 20px;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 250px;
    background: url(lib/images/bg_wave_02.png) repeat-x left calc(50% - 50px) top 0px / 1600px auto,
                linear-gradient(0deg, #FFFFFF 25.96%, #EDF5F9 61.54%, #DDF4FF 100%);
    content: "";
  }

  .l-menu.is-open {
    visibility: visible;
    opacity: 1;
  }

  .l-menu__inner {
    display: flex;
    flex-direction: column;
    padding: 0 24px;
  }

  .l-menu .l-footer__columns {
    flex-direction: column-reverse;
    gap: 64px 0;
  }

  .l-menu .l-footer__buttons {
    margin-top: 0;
  }

  .l-menu .l-footer__button--form {
    padding: 20px 0 14px;
  }

  .l-menu .l-footer-form__text {
    flex-direction: column;
    gap: 10px 0;
  }

  .l-menu .l-footer-form__text > span span {
    font-size: 20px;
  }

  .l-menu .l-footer__logo,
  .l-menu .l-footer__address,
  .l-menu .l-trigger {
    display: none;
  }

  .l-menu .l-footer-menu {
    /*display: grid;*/
    height: auto;
    overflow: visible;
  }

  .l-menu__trigger {
    order: 1;
  }

  .l-menu__trigger {
    width: 100vw;
    margin: 48px calc(50% - 50vw) 0;
    padding: 50px 0 66px;
    background: #EDF5F9 url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% - 4px) top -118px / 800px auto;
  }

  .l-menu__line {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 8px;
    padding-left: 4px;
  }

  .l-menu__line > span:first-child {
    display: flex;
    flex-direction: column;
    gap: 3px 0;
  }

  .l-menu__line > span:first-child span,
  .l-menu__line > span:first-child span {
    display: block;
    width: 17px;
    height: 2px;
    background: #399273;
    /*transition: transform .2s, background .2s, opacity .2s;*/
  }

  .l-menu__trigger .l-menu__line > span:first-child span:nth-child(1) {
    transform: translateY(2.5px) rotate(-45deg);
  }

  .l-menu__trigger .l-menu__line > span:first-child span:nth-child(2) {
    transform: translateY(-2.5px) rotate(45deg);
  }

  .l-menu__trigger .l-menu__line > span:nth-child(2) {
    color: #399273;
    font-size: 14px;
    font-weight: 700;
  }

}

/* 背景 */
.l-burger-mask {
  display: none;
}

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

  .l-burger-mask {
    /*display: block;*/
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 900;
    transform: translate(-24px, -16px);
    width: 110px;
    height: 42px;
    background: rgba(0, 0, 0, .75);
    background: rgba(18, 24, 56, 1);
    border-radius: 9999px;
    /*transition: all .2s ease;*/
  }

  .l-burger-mask.is-open {
    transform: translate(0, 0);
    width: 100%;
    height: 100%;
    border-radius: 0;
  }

}

/* ページタイトル */
.l-page-head {
  /*padding: calc(390px * var(--ui-scale)) 0 calc(190px * var(--ui-scale));*/
  padding-bottom: 190px;
  background: url(lib/images/bg_wave_03_.png) repeat-x left calc(50% + calc(960px * var(--ui-scale))) bottom / calc(3840px * var(--ui-scale)) calc(353px * var(--ui-scale)),
  /*url(lib/images/bg_wave_03.png) no-repeat center bottom / calc(1920px * var(--ui-scale)) calc(353px * var(--ui-scale)),*/
              url(lib/images/bg_dot_01.png) no-repeat left calc(50% + calc(410px * var(--ui-scale))) bottom calc(-158px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;
}

.l-page-head__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.l-page-head__heading {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: calc(calc(640px * var(--ui-scale)) - calc(190px * var(--ui-scale)));
  color: #399273;
  font-size: calc(40px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.l-page-head__heading[data-title]:before {
  display: block;
  width: fit-content;
  margin-bottom: calc(12px * var(--ui-scale));
  padding: calc(3px * var(--ui-scale)) calc(16px * var(--ui-scale));
  background: #fff;
  color: #399273;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  content: attr(data-title);
}

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

  .l-page-head {
    /*padding: 154px 0 90px;*/
    padding: 64px 0 0;
    background: url(lib/images/bg_wave_04_.png) repeat-x left calc(50% + 198px) bottom / calc(1920px * 2 * .28) calc(353px * .28),
    /*url(lib/images/bg_wave_04_sp.png) no-repeat center bottom / 100% 160px,*/
                /*url(lib/images/bg_wave_04_.png) repeat-x left calc(50% + 214px) bottom -6px / calc(1920px * 2 * .375) calc(353px * .375),*/
                url(lib/images/bg_dot_01_sp.png) no-repeat left bottom / 241px 203px,
                #EDF5F9;
  }

  .l-page-head__heading {
    justify-content: center;
    height: calc(280px - 64px);
    font-size: 24px;
  }

  .l-page-head__heading[data-title]:before {
    margin-bottom: 4px;
    padding: 1px 8px;
    font-size: 12px;
  }

}

/* パンくずリスト */
.l-breadcrumb {
  padding-top: calc(34px * var(--ui-scale));
}

.l-breadcrumb__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.l-breadcrumb__list {
  display: flex;
  align-items: center;
}

.l-breadcrumb__item {
  display: inline;
  color: #333;
  font-weight: 700;
  font-size: calc(14px * var(--ui-scale));
}

.l-breadcrumb__item:nth-last-child(n + 2) {
  flex: 0 0 auto;
}

.l-breadcrumb__item:nth-last-child(n + 2):after {
  margin: 0 calc(12px * var(--ui-scale));
  font-weight: 400;
  content: "/";
}

body:not(.single-customer) .l-breadcrumb__item:last-child {
  flex: 1;
  overflow: hidden;
  white-space: nowrap;
}

body:not(.single-customer) .l-breadcrumb__item:last-child span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

.l-breadcrumb__item a {
  color: #005638;
  font-weight: 400;
  text-decoration: underline;
}

.l-breadcrumb__item a:hover {
  text-decoration: none;
}

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

  .l-breadcrumb {
    padding-top: 32px;
  }

  .l-breadcrumb__item {
    font-size: 12px;
    line-height: 1.3;
  }

  .l-breadcrumb__item:nth-last-child(n + 2):after {
    margin: 0 4px;
    font-size: 10px;
  }

  .l-breadcrumb__item a {
    font-size: 10px;
    vertical-align: 1px;
  }

}

/* お湯に関するお困りごとは、… */
.l-rescue {
  position: relative;
  padding: calc(90px * var(--ui-scale)) 0;
}

.l-rescue__body {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
}

.l-rescue__image img {
  width: 100%;
  height: calc(400px * var(--ui-scale));
  object-fit: cover;
}

.l-rescue__heading {
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.l-rescue__list {
  display: flex;
  justify-content: center;
  gap: 0 calc(48px * var(--ui-scale));
  margin-top: calc(64px * var(--ui-scale));
}

.l-rescue__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(290px * var(--ui-scale));
  height: calc(290px * var(--ui-scale));
  padding-top: calc(10px * var(--ui-scale));
  background: url("lib/images/bg_badge_01.png") no-repeat center / contain;
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

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

  .l-rescue {
    display: flex;
    flex-direction: column-reverse;
    padding: 0 0 50px;
  }

  .l-rescue__header {
    padding-top: 30px;
  }

  .l-rescue__heading {
    color: #333;
    font-size: 22px;
  }

  .l-rescue__heading span {
    color: #399273;
  }

  .l-rescue__body {
    position: static;
  }

  .l-rescue__image img {
    height: auto;
    height: 108px;
  }

  .l-rescue__list {
    gap: 0 4px;
    margin-top: 26px;
  }

  .l-rescue__item {
    width: 115px;
    height: 115px;
    padding-top: 2px;
    font-size: 14px;
  }

}

/* サイドバー */
.l-aside__section:nth-child(n + 2) {
  margin-top: calc(78px * var(--ui-scale));
}

.l-aside__list {
  margin-top: calc(32px * var(--ui-scale));
}

.l-aside__list li:nth-child(n + 2) {
  margin-top: calc(15px * var(--ui-scale));
}

.l-aside__list li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-width: calc(240px * var(--ui-scale));
  padding-bottom: calc(20px * var(--ui-scale));
  /*border-bottom: calc(1px * var(--ui-scale)) dashed #399273;*/
  border-bottom: 1px dashed #399273;
  color: #333;
  transition: color .5s;
}

.l-aside__list li.current-cat a {
  color: #399273;
  font-weight: 700;
}

.l-aside__list li a:hover {
  color: #83563B;
}

.l-aside__list li a:after {
  width: calc(14px * var(--ui-scale));
  height: calc(14px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M7.11667%206.66667L5.06667%208.71667L6%209.66667L9%206.66667L6%203.66667L5.06667%204.61667L7.11667%206.66667ZM6.66667%2013.3333C5.74444%2013.3333%204.87778%2013.1583%204.06667%2012.8083C3.25556%2012.4583%202.55%2011.9833%201.95%2011.3833C1.35%2010.7833%200.875%2010.0778%200.525%209.26667C0.175%208.45556%200%207.58889%200%206.66667C0%205.74444%200.175%204.87778%200.525%204.06667C0.875%203.25556%201.35%202.55%201.95%201.95C2.55%201.35%203.25556%200.875%204.06667%200.525C4.87778%200.175%205.74444%200%206.66667%200C7.58889%200%208.45556%200.175%209.26667%200.525C10.0778%200.875%2010.7833%201.35%2011.3833%201.95C11.9833%202.55%2012.4583%203.25556%2012.8083%204.06667C13.1583%204.87778%2013.3333%205.74444%2013.3333%206.66667C13.3333%207.58889%2013.1583%208.45556%2012.8083%209.26667C12.4583%2010.0778%2011.9833%2010.7833%2011.3833%2011.3833C10.7833%2011.9833%2010.0778%2012.4583%209.26667%2012.8083C8.45556%2013.1583%207.58889%2013.3333%206.66667%2013.3333ZM6.66667%2012C8.15556%2012%209.41667%2011.4833%2010.45%2010.45C11.4833%209.41667%2012%208.15556%2012%206.66667C12%205.17778%2011.4833%203.91667%2010.45%202.88333C9.41667%201.85%208.15556%201.33333%206.66667%201.33333C5.17778%201.33333%203.91667%201.85%202.88333%202.88333C1.85%203.91667%201.33333%205.17778%201.33333%206.66667C1.33333%208.15556%201.85%209.41667%202.88333%2010.45C3.91667%2011.4833%205.17778%2012%206.66667%2012Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  .l-aside__section:nth-child(n + 2) {
    margin-top: 50px;
  }

  .l-aside__list {
    margin-top: 18px;
  }

  .l-aside__list li a {
    min-width: 0;
    padding-bottom: 12px;
    font-size: 14px;
  }

}

/* CTA */
body.home .l-cta {
  padding: calc(120px * var(--ui-scale)) 0 calc(160px * var(--ui-scale));
}

body:not(.home) .l-cta {
  padding-bottom: calc(160px * var(--ui-scale));
  background: url(lib/images/bg_wave_02.png) repeat-x left calc(50% + 198px) top 0px / 3840px 47px,
              linear-gradient(0deg, #FFFFFF 25.96%, #EDF5F9 61.54%, #DDF4FF 100%);
}

.l-cta__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

body:not(.home) .l-cta .c-heading {
  font-size: 32px;
}

.l-cta .c-heading:before {
  display: block;
  margin: 0 auto calc(32px * var(--ui-scale));
  width: calc(120px * var(--ui-scale));
  height: calc(118px * var(--ui-scale));
  background: url("lib/images/illust_yellow.png") no-repeat center / contain;
  content: "";
}

.l-cta__header {
  margin-bottom: calc(70px * var(--ui-scale));
}

.l-cta__buttons {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
}

.l-cta__button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(39px * var(--ui-scale)) 0;
  border-radius: calc(16px * var(--ui-scale));
}

.l-cta__button--phone {
  border: calc(4px * var(--ui-scale)) solid #f3f3f3;
  background: #F8F8F8;
  transition: opacity .5s;
}

.l-cta__button--phone:hover {
  opacity: .7;
}

.l-cta__button--form {
  position: relative;
  z-index: 1;
  border: calc(4px * var(--ui-scale)) solid #fff;
  box-shadow: 0 0 calc(20px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #FF9604 5.03%, #FF6A00 94.9%);
}

.l-cta__button--form:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: calc(16px * var(--ui-scale));
  background: rgba(255, 236, 92, .2);
  content: "";
  opacity: 0;
  transition: opacity .5s;
}

.l-cta__button--form:hover:before {
  opacity: 1;
}

.l-cta-phone__text {
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.l-cta-phone__text span {
  display: inline-block;
  padding: calc(11px * var(--ui-scale)) calc(47px * var(--ui-scale));
  border: calc(2px * var(--ui-scale)) solid #fff;
  background: #FFE762;
  color: #333;
}

.l-cta-phone__number {
  color: #005638;
  font-size: calc(48px * var(--ui-scale));
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  text-align: center;
}

.l-cta-phone__number:before {
  display: inline-block;
  transform: translateY(2px);
  width: calc(36px * var(--ui-scale));
  height: calc(36px * var(--ui-scale));
  margin-right: calc(14px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M33.9%2036C29.7333%2036%2025.6167%2035.0917%2021.55%2033.275C17.4833%2031.4583%2013.7833%2028.8833%2010.45%2025.55C7.11667%2022.2167%204.54167%2018.5167%202.725%2014.45C0.908334%2010.3833%200%206.26667%200%202.1C0%201.5%200.2%201%200.6%200.6C1%200.2%201.5%200%202.1%200H10.2C10.6667%200%2011.0833%200.158333%2011.45%200.475C11.8167%200.791667%2012.0333%201.16667%2012.1%201.6L13.4%208.6C13.4667%209.13333%2013.45%209.58333%2013.35%209.95C13.25%2010.3167%2013.0667%2010.6333%2012.8%2010.9L7.95%2015.8C8.61667%2017.0333%209.40833%2018.225%2010.325%2019.375C11.2417%2020.525%2012.25%2021.6333%2013.35%2022.7C14.3833%2023.7333%2015.4667%2024.6917%2016.6%2025.575C17.7333%2026.4583%2018.9333%2027.2667%2020.2%2028L24.9%2023.3C25.2%2023%2025.5917%2022.775%2026.075%2022.625C26.5583%2022.475%2027.0333%2022.4333%2027.5%2022.5L34.4%2023.9C34.8667%2024.0333%2035.25%2024.275%2035.55%2024.625C35.85%2024.975%2036%2025.3667%2036%2025.8V33.9C36%2034.5%2035.8%2035%2035.4%2035.4C35%2035.8%2034.5%2036%2033.9%2036Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-cta-phone__time {
  color: #000;
  text-align: center;
}

.l-cta-form__text {
  color: #FFE762;
  font-weight: 700;
  text-align: center;
}

.l-cta-form__text:before {
  display: block;
  width: calc(64px * var(--ui-scale));
  height: calc(64px * var(--ui-scale));
  margin: 0 auto calc(10px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2264%22%20height%3D%2264%22%20viewBox%3D%220%200%2064%2064%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20width%3D%2264%22%20height%3D%2264%22%20rx%3D%2232%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3Cmask%20id%3D%22mask0_2459_13082%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%228%22%20y%3D%228%22%20width%3D%2248%22%20height%3D%2248%22%3E%0A%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2248%22%20height%3D%2248%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2459_13082)%22%3E%0A%3Cpath%20d%3D%22M31.9%2044C32.6%2044%2033.1917%2043.7583%2033.675%2043.275C34.1583%2042.7917%2034.4%2042.2%2034.4%2041.5C34.4%2040.8%2034.1583%2040.2083%2033.675%2039.725C33.1917%2039.2417%2032.6%2039%2031.9%2039C31.2%2039%2030.6083%2039.2417%2030.125%2039.725C29.6417%2040.2083%2029.4%2040.8%2029.4%2041.5C29.4%2042.2%2029.6417%2042.7917%2030.125%2043.275C30.6083%2043.7583%2031.2%2044%2031.9%2044ZM30.1%2036.3H33.8C33.8%2035.2%2033.925%2034.3333%2034.175%2033.7C34.425%2033.0667%2035.1333%2032.2%2036.3%2031.1C37.1667%2030.2333%2037.85%2029.4083%2038.35%2028.625C38.85%2027.8417%2039.1%2026.9%2039.1%2025.8C39.1%2023.9333%2038.4167%2022.5%2037.05%2021.5C35.6833%2020.5%2034.0667%2020%2032.2%2020C30.3%2020%2028.7583%2020.5%2027.575%2021.5C26.3917%2022.5%2025.5667%2023.7%2025.1%2025.1L28.4%2026.4C28.5667%2025.8%2028.9417%2025.15%2029.525%2024.45C30.1083%2023.75%2031%2023.4%2032.2%2023.4C33.2667%2023.4%2034.0667%2023.6917%2034.6%2024.275C35.1333%2024.8583%2035.4%2025.5%2035.4%2026.2C35.4%2026.8667%2035.2%2027.4917%2034.8%2028.075C34.4%2028.6583%2033.9%2029.2%2033.3%2029.7C31.8333%2031%2030.9333%2031.9833%2030.6%2032.65C30.2667%2033.3167%2030.1%2034.5333%2030.1%2036.3ZM32%2052C29.2333%2052%2026.6333%2051.475%2024.2%2050.425C21.7667%2049.375%2019.65%2047.95%2017.85%2046.15C16.05%2044.35%2014.625%2042.2333%2013.575%2039.8C12.525%2037.3667%2012%2034.7667%2012%2032C12%2029.2333%2012.525%2026.6333%2013.575%2024.2C14.625%2021.7667%2016.05%2019.65%2017.85%2017.85C19.65%2016.05%2021.7667%2014.625%2024.2%2013.575C26.6333%2012.525%2029.2333%2012%2032%2012C34.7667%2012%2037.3667%2012.525%2039.8%2013.575C42.2333%2014.625%2044.35%2016.05%2046.15%2017.85C47.95%2019.65%2049.375%2021.7667%2050.425%2024.2C51.475%2026.6333%2052%2029.2333%2052%2032C52%2034.7667%2051.475%2037.3667%2050.425%2039.8C49.375%2042.2333%2047.95%2044.35%2046.15%2046.15C44.35%2047.95%2042.2333%2049.375%2039.8%2050.425C37.3667%2051.475%2034.7667%2052%2032%2052ZM32%2048C36.4667%2048%2040.25%2046.45%2043.35%2043.35C46.45%2040.25%2048%2036.4667%2048%2032C48%2027.5333%2046.45%2023.75%2043.35%2020.65C40.25%2017.55%2036.4667%2016%2032%2016C27.5333%2016%2023.75%2017.55%2020.65%2020.65C17.55%2023.75%2016%2027.5333%2016%2032C16%2036.4667%2017.55%2040.25%2020.65%2043.35C23.75%2046.45%2027.5333%2048%2032%2048Z%22%20fill%3D%22%23FF6A01%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-cta-form__text > span span {
  display: block;
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
}

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

  body.home .l-cta {
    padding: 82px 0 80px;
  }

  body:not(.home) .l-cta {
    /*padding-bottom: calc(160px * var(--ui-scale));
    background: url(lib/images/bg_wave_02.png) repeat-x left calc(50% + 198px) top 0px / 3840px 47px,
                linear-gradient(0deg, #FFFFFF 25.96%, #EDF5F9 61.54%, #DDF4FF 100%);*/
    padding-bottom: 80px;
    background: transparent;
  }

  body:not(.home) .l-cta .c-heading {
    font-size: 20px;
  }

  .l-cta .c-heading:before {
    width: 80px;
    height: 78px;
    margin: 0 auto 32px;
  }

  .l-cta__header {
    margin-bottom: 28px;
  }

  .l-cta__buttons {
    display: flex;
    flex-direction: column;
    gap: 16px 0;
  }

  .l-cta__button {
    padding: 12px;
    border-radius: 8px;
  }

  .l-cta__button--phone {
    padding-bottom: 14px;
    border: 4px solid #f3f3f3;
  }

  .l-cta__button--form {
    border: 2px solid #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }

  .l-cta-phone__text span {
    width: 100%;
    padding: 7px;
    border: 2px solid #fff;
    font-size: 14px;
  }

  .l-cta-phone__number {
    font-size: 28px;
  }

  .l-cta-phone__number:before {
    width: 24px;
    height: 24px;
    margin-right: 12px;
  }

  .l-cta-phone__time {
    margin-top: -4px;
    font-size: 12px;
  }

  .l-cta-form__text {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 16px;
    padding: 7px 0;
    font-size: 14px;
  }

  .l-cta-form__text:before {
    width: 48px;
    height: 48px;
    margin: 0;
  }

  .l-cta-form__text > span span {
    font-size: 20px;
  }

}

/* フッター */
.l-footer {
  position: relative;
}

.l-footer__middle {
  margin-top: calc(160px * var(--ui-scale));
}

.l-footer__bottom {
  padding: calc(312px * var(--ui-scale)) 0 calc(186px * var(--ui-scale));
  background: #EDF5F9 url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% - calc(72px * var(--ui-scale))) top calc(-100px * var(--ui-scale)) / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale));
}

.l-footer__inner {
  width: 100%;
  max-width: calc((1792px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.l-footer__columns {
  display: flex;
  justify-content: space-between;
  gap: 0 calc(80px * var(--ui-scale));
}

.l-footer__logo {
  width: calc(442px * var(--ui-scale));
}

.l-footer__logo a {
  display: block;
  transition: opacity .5s;
}

.l-footer__logo a:hover {
  opacity: .7;
}

.l-footer__logo img {
  display: block;
}

.l-footer__address {
  margin-top: 30px;
}

.l-footer__list {
  display: flex;
  gap: 0 calc(32px * var(--ui-scale));
  margin-top: calc(16px * var(--ui-scale));
}

.l-footer__item {
  color: #005638;
  font-weight: 700;
}

.l-footer__item span {
  display: inline-block;
  margin-right: calc(12px * var(--ui-scale));
  padding: calc(9px * var(--ui-scale));
  background: #F3F3F3;
  color: #399273;
  line-height: 1;
}

.l-footer__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 21px 24px;
  margin-top: calc(80px * var(--ui-scale));
}

.l-footer__button {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: clamp(372px, calc(387px + (372 - 387) * (100vw - 1280px) / (1920 - 1280)), 387px);
  padding: clamp(15px, calc(15px + (30 - 15) * (100vw - 1280px) / (1920 - 1280)), 30px) 0;
  border-radius: calc(16px * var(--ui-scale));
}

.l-footer__button--phone {
  background: #F8F8F8;
  transition: opacity .5s;
}

.l-footer__button--phone:hover {
  opacity: .7;
}

.l-footer__button--form {
  position: relative;
  z-index: 1;
  box-shadow: 0px 0px calc(20px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
}

.l-footer__button--form:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: calc(16px * var(--ui-scale));
  background: rgba(107, 255, 191, .2);
  content: "";
  opacity: 0;
  transition: opacity .5s;
}

.l-footer__button--form:hover:before {
  opacity: 1;
}

.l-footer-phone__text {
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.l-footer-phone__text span {
  display: inline-block;
  padding: calc(11px * var(--ui-scale)) calc(12px * var(--ui-scale));
  border: calc(2px * var(--ui-scale)) solid #fff;
  background: #FFE762;
  color: #333;
}

.l-footer-phone__number {
  margin-top: calc(2px * var(--ui-scale));
  color: #005638;
  font-size: calc(36px * var(--ui-scale));
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  text-align: center;
}

.l-footer-phone__number:before {
  display: inline-block;
  transform: translateY(6px);
  width: calc(36px * var(--ui-scale));
  height: calc(36px * var(--ui-scale));
  margin-right: calc(14px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M33.9%2036C29.7333%2036%2025.6167%2035.0917%2021.55%2033.275C17.4833%2031.4583%2013.7833%2028.8833%2010.45%2025.55C7.11667%2022.2167%204.54167%2018.5167%202.725%2014.45C0.908334%2010.3833%200%206.26667%200%202.1C0%201.5%200.2%201%200.6%200.6C1%200.2%201.5%200%202.1%200H10.2C10.6667%200%2011.0833%200.158333%2011.45%200.475C11.8167%200.791667%2012.0333%201.16667%2012.1%201.6L13.4%208.6C13.4667%209.13333%2013.45%209.58333%2013.35%209.95C13.25%2010.3167%2013.0667%2010.6333%2012.8%2010.9L7.95%2015.8C8.61667%2017.0333%209.40833%2018.225%2010.325%2019.375C11.2417%2020.525%2012.25%2021.6333%2013.35%2022.7C14.3833%2023.7333%2015.4667%2024.6917%2016.6%2025.575C17.7333%2026.4583%2018.9333%2027.2667%2020.2%2028L24.9%2023.3C25.2%2023%2025.5917%2022.775%2026.075%2022.625C26.5583%2022.475%2027.0333%2022.4333%2027.5%2022.5L34.4%2023.9C34.8667%2024.0333%2035.25%2024.275%2035.55%2024.625C35.85%2024.975%2036%2025.3667%2036%2025.8V33.9C36%2034.5%2035.8%2035%2035.4%2035.4C35%2035.8%2034.5%2036%2033.9%2036Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-footer-phone__time {
  margin-top: clamp((8 * .875px), calc((8 * .875px) + (8 - (8 * .875)) * (100vw - 1280px) / (1920 - 1280)), 8px);
  color: #000;
  text-align: center;
}

.l-footer-form__text {
  padding-top: clamp(10px, calc(10px + (8 - 10) * (100vw - 1280px) / (1920 - 1280)), 8px);
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.l-footer-form__text:before {
  display: block;
  width: calc(40px * var(--ui-scale));
  height: calc(40px * var(--ui-scale));
  margin: 0 auto calc(18px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M19.9%2032C20.6%2032%2021.1917%2031.7583%2021.675%2031.275C22.1583%2030.7917%2022.4%2030.2%2022.4%2029.5C22.4%2028.8%2022.1583%2028.2083%2021.675%2027.725C21.1917%2027.2417%2020.6%2027%2019.9%2027C19.2%2027%2018.6083%2027.2417%2018.125%2027.725C17.6417%2028.2083%2017.4%2028.8%2017.4%2029.5C17.4%2030.2%2017.6417%2030.7917%2018.125%2031.275C18.6083%2031.7583%2019.2%2032%2019.9%2032ZM18.1%2024.3H21.8C21.8%2023.2%2021.925%2022.3333%2022.175%2021.7C22.425%2021.0667%2023.1333%2020.2%2024.3%2019.1C25.1667%2018.2333%2025.85%2017.4083%2026.35%2016.625C26.85%2015.8417%2027.1%2014.9%2027.1%2013.8C27.1%2011.9333%2026.4167%2010.5%2025.05%209.5C23.6833%208.5%2022.0667%208%2020.2%208C18.3%208%2016.7583%208.5%2015.575%209.5C14.3917%2010.5%2013.5667%2011.7%2013.1%2013.1L16.4%2014.4C16.5667%2013.8%2016.9417%2013.15%2017.525%2012.45C18.1083%2011.75%2019%2011.4%2020.2%2011.4C21.2667%2011.4%2022.0667%2011.6917%2022.6%2012.275C23.1333%2012.8583%2023.4%2013.5%2023.4%2014.2C23.4%2014.8667%2023.2%2015.4917%2022.8%2016.075C22.4%2016.6583%2021.9%2017.2%2021.3%2017.7C19.8333%2019%2018.9333%2019.9833%2018.6%2020.65C18.2667%2021.3167%2018.1%2022.5333%2018.1%2024.3ZM20%2040C17.2333%2040%2014.6333%2039.475%2012.2%2038.425C9.76667%2037.375%207.65%2035.95%205.85%2034.15C4.05%2032.35%202.625%2030.2333%201.575%2027.8C0.525%2025.3667%200%2022.7667%200%2020C0%2017.2333%200.525%2014.6333%201.575%2012.2C2.625%209.76667%204.05%207.65%205.85%205.85C7.65%204.05%209.76667%202.625%2012.2%201.575C14.6333%200.525%2017.2333%200%2020%200C22.7667%200%2025.3667%200.525%2027.8%201.575C30.2333%202.625%2032.35%204.05%2034.15%205.85C35.95%207.65%2037.375%209.76667%2038.425%2012.2C39.475%2014.6333%2040%2017.2333%2040%2020C40%2022.7667%2039.475%2025.3667%2038.425%2027.8C37.375%2030.2333%2035.95%2032.35%2034.15%2034.15C32.35%2035.95%2030.2333%2037.375%2027.8%2038.425C25.3667%2039.475%2022.7667%2040%2020%2040ZM20%2036C24.4667%2036%2028.25%2034.45%2031.35%2031.35C34.45%2028.25%2036%2024.4667%2036%2020C36%2015.5333%2034.45%2011.75%2031.35%208.65C28.25%205.55%2024.4667%204%2020%204C15.5333%204%2011.75%205.55%208.65%208.65C5.55%2011.75%204%2015.5333%204%2020C4%2024.4667%205.55%2028.25%208.65%2031.35C11.75%2034.45%2015.5333%2036%2020%2036Z%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-footer-form__text > span span {
  display: block;
  margin-top: -4px;
  padding-bottom: clamp(0px, calc(5px + (0 - 5) * (100vw - 1280px) / (1920 - 1280)), 5px);
  font-size: calc(24px * var(--ui-scale));
}

.l-footer-menu {
  display: flex;
  gap: 0 calc(32px * var(--ui-scale));
}

.l-footer-menu__list:first-child {
  padding-right: calc(48px * var(--ui-scale));
}

.l-footer-menu__item:nth-child(n + 2) {
  margin-top: calc(25px * var(--ui-scale));
}

.l-footer-menu__item--sp + .l-footer-menu__item {
  margin-top: 0;
}

.l-footer-menu__item a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-width: calc(240px * var(--ui-scale));
  padding-bottom: calc(10px * var(--ui-scale));
  border-bottom: 1px dashed #399273;
  color: #333;
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
  transition: color .5s;
}

.l-footer-menu__item--has-child a {
  font-size: calc(18px * var(--ui-scale));
}

.l-footer-menu__item a:hover {
  color: #83563B;
}

.l-footer-menu__item a:after {
  width: calc(14px * var(--ui-scale));
  height: calc(14px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M7.11667%206.66667L5.06667%208.71667L6%209.66667L9%206.66667L6%203.66667L5.06667%204.61667L7.11667%206.66667ZM6.66667%2013.3333C5.74444%2013.3333%204.87778%2013.1583%204.06667%2012.8083C3.25556%2012.4583%202.55%2011.9833%201.95%2011.3833C1.35%2010.7833%200.875%2010.0778%200.525%209.26667C0.175%208.45556%200%207.58889%200%206.66667C0%205.74444%200.175%204.87778%200.525%204.06667C0.875%203.25556%201.35%202.55%201.95%201.95C2.55%201.35%203.25556%200.875%204.06667%200.525C4.87778%200.175%205.74444%200%206.66667%200C7.58889%200%208.45556%200.175%209.26667%200.525C10.0778%200.875%2010.7833%201.35%2011.3833%201.95C11.9833%202.55%2012.4583%203.25556%2012.8083%204.06667C13.1583%204.87778%2013.3333%205.74444%2013.3333%206.66667C13.3333%207.58889%2013.1583%208.45556%2012.8083%209.26667C12.4583%2010.0778%2011.9833%2010.7833%2011.3833%2011.3833C10.7833%2011.9833%2010.0778%2012.4583%209.26667%2012.8083C8.45556%2013.1583%207.58889%2013.3333%206.66667%2013.3333ZM6.66667%2012C8.15556%2012%209.41667%2011.4833%2010.45%2010.45C11.4833%209.41667%2012%208.15556%2012%206.66667C12%205.17778%2011.4833%203.91667%2010.45%202.88333C9.41667%201.85%208.15556%201.33333%206.66667%201.33333C5.17778%201.33333%203.91667%201.85%202.88333%202.88333C1.85%203.91667%201.33333%205.17778%201.33333%206.66667C1.33333%208.15556%201.85%209.41667%202.88333%2010.45C3.91667%2011.4833%205.17778%2012%206.66667%2012Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.l-footer-menu__list--second {
  margin-top: calc(25px * var(--ui-scale));
  padding-left: calc(16px * var(--ui-scale));
}

.l-footer-menu__item--sp {
  display: none;
}

.l-footer-menu__item--second a {
  min-width: auto;
}

.l-footer__name span {
  display: block;
  font-weight: 700;
  text-align: center;
}

.l-footer__name a {
  display: block;
  width: calc(384px * var(--ui-scale));
  margin: calc(32px * var(--ui-scale)) auto 0;
  transition: opacity .5s;
}

.l-footer__name a:hover {
  opacity: 0.7;
}

.l-footer__name img {
  display: block;
  width: 100%;
}

.l-footer__copyright {
  text-align: center;
}

.l-trigger {
  display: none;
}

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

  .l-footer__top {
    position: relative;
    z-index: 1;
    padding-top: 80px;
  }

  .l-footer__top:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 250px;
    background: url(lib/images/bg_wave_02.png) repeat-x left calc(50% - 50px) top 0px / 1600px auto,
                linear-gradient(0deg, #FFFFFF 25.96%, #EDF5F9 61.54%, #DDF4FF 100%);
    content: "";
  }

  .l-footer__top .l-footer__inner {
    position: relative;
    z-index: 1;
  }

  .l-footer__columns {
    flex-direction: column-reverse;
    flex-direction: column;
    gap: 32px 0;
  }

  .l-footer-menu {
    /*display: none;*/
    grid-template-columns: repeat(2, 1fr);
    gap: 48px 12px;
    padding-top: 32px;

    display: grid;
    overflow: hidden;
    height: 0;
    transition: height 0.3s ease;
  }

  .l-footer-menu.is-open {

  }

  .l-footer-menu__list:first-child {
    padding-right: 0;
  }

  .l-footer-menu__list:nth-child(1) {
    /*grid-area: 1 / 1 / 2 / 3;*/
    grid-area: 2 / 1 / 3 / 3;
  }

  .l-footer-menu__list:nth-child(2) {
    /*grid-area: 2 / 1 / 3 / 2;*/
    grid-area: 1 / 1 / 2 / 2;
  }

  .l-footer-menu__list:nth-child(3) {
    /*grid-area: 2 / 2 / 3 / 3;*/
    grid-area: 1 / 2 / 2 / 3;
  }

  .l-footer-menu__item:nth-child(n + 2) {
    margin-top: 16.5px;
  }

  .l-footer-menu__item--second:nth-child(n + 2) {
    margin-top: 25px;
  }

  .l-footer-menu__list--second {
    margin-top: 26px;
    padding-left: 16px;
  }

  .l-footer-menu__item--pc {
    display: none;
  }

  .l-footer-menu__item--sp {
    display: block;
  }

  .l-footer-menu__item a {
    min-width: 0;
    padding-bottom: 6px;
    font-size: 12px;
  }

  .l-footer-menu__item--second a {
    padding-bottom: 10px;
    font-size: 14px;
  }

  .l-footer-menu__item--has-child a {
    padding-bottom: 12px;
    font-size: 18px;
  }

  .l-footer-menu__item a:after {
    width: 14px;
    height: 14px;
  }

  .l-footer__logo {
    width: 290px;
    margin: 0 auto;
  }

  .l-footer__address {
    margin-top: 48px;
    font-size: 16px;
    text-align: center;
  }

  .l-footer__list {
    gap: 0 8px;
    justify-content: center;
    margin-top: 16px;
  }

  .l-footer__item span {
    margin-right: 4px;
    padding: 9px 8px;
  }

  .l-footer__buttons {
    flex-direction: column;
    gap: 24px 0;
    margin-top: 80px;
  }

  .l-footer__button {
    width: 100%;
    padding: 12px;
    border-radius: 8px;
  }

  .l-footer__button--phone {
    padding-bottom: 14px;
    border: 4px solid #f3f3f3;
  }

  .l-footer__button--form {
    border: none;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }

  .l-footer-phone__text span {
    width: 100%;
    padding: 7px;
    border: 2px solid #fff;
    font-size: 14px;
  }

  .l-footer-phone__number {
    margin-top: 0;
    font-size: 28px;
  }

  .l-footer-phone__number:before {
    transform: translateY(2px);
    width: 24px;
    height: 24px;
    margin-right: 12px;
  }

  .l-footer-phone__time {
    margin-top: -4px;
    font-size: 12px;
  }

  .l-footer-form__text {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 12px;
    padding: 0;
    font-size: 16px;
    text-align: left;
  }

  .l-footer-form__text:before {
    width: 40px;
    height: 40px;
    margin: 0;
  }

  .l-footer-form__text > span span {
    padding-bottom: 2px;
    font-size: 18px;
  }

  .l-footer__middle {
    margin-top: 80px;
  }

  .l-footer__name a {
    width: 250px;
    margin: 32px auto 0;
  }

  .l-footer__bottom {
    padding: 158px 0 22px;
    background: #EDF5F9 url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% - 4px) top -38px / 800px auto;
  }

  .l-footer__copyright {
    font-size: 12px;
    text-align: left;
  }

  .l-trigger {
    display: block;
    width: 100%;
    padding: 15px 0;
    border: 1px solid #399273;
    border-radius: 8px;
    background: #fff;
  }

  .l-trigger.is-open {
    border: 1px solid #F8F8F8;
    background: #F8F8F8;
  }

  .l-trigger__line {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 14px;
    padding-left: 4px;
  }

  .l-trigger__line > span:first-child {
    display: flex;
    flex-direction: column;
    gap: 3px 0;
  }

  .l-trigger__line > span:first-child span,
  .l-trigger__line > span:first-child span {
    display: block;
    width: 16px;
    height: 2px;
    background: #399273;
    /*transition: transform .2s, background .2s, opacity .2s;*/
  }

  .l-trigger.is-open .l-trigger__line > span:first-child span:nth-child(1),
  .l-trigger.is-open .l-trigger__line > span:first-child span:nth-child(2) {
    width: 17px;
  }

  .l-trigger.is-open .l-trigger__line > span:first-child span:nth-child(1) {
    transform: translateY(2.5px) rotate(-45deg);
  }

  .l-trigger.is-open .l-trigger__line > span:first-child span:nth-child(2) {
    transform: translateY(-2.5px) rotate(45deg);
  }

  .l-trigger .l-trigger__line > span:nth-child(2) {
    display: block;
  }

  .l-trigger .l-trigger__line > span:nth-child(2) span {
    color: #005638;
    font-weight: 700;
  }

  .l-trigger .l-trigger__line > span:nth-child(2) span:nth-child(2) {
    display: none;
  }

  .l-trigger.is-open .l-trigger__line > span:nth-child(2) span:first-child {
    display: none;
  }

  .l-trigger.is-open .l-trigger__line > span:nth-child(2) span:nth-child(2) {
    display: block;
  }

}

/* ページトップに戻るボタン */
.l-top {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: absolute;
  bottom: calc(90px * var(--ui-scale));
  right: clamp(32px, calc(32px + (64 - 32) * (100vw - 1280px) / (1920 - 1280)), 64px);
  width: calc(120px * var(--ui-scale));
  height: calc(120px * var(--ui-scale));
  padding: 0 0 calc(22px * var(--ui-scale)) calc(8px * var(--ui-scale));
  border-radius: 50%;
  background: #399273;
  cursor: pointer;
  transition: opacity .5s;
}

.l-top:hover {
  opacity: .7;
}

.l-top:before {
  position: absolute;
  top: calc(-49px * var(--ui-scale));
  left: calc(-19px * var(--ui-scale));
  width: calc(100px * var(--ui-scale));
  height: calc(98px * var(--ui-scale));
  background: url("lib/images/illust_yellow.png") no-repeat center / contain;
  content: "";
}

.l-top__text {
  color: #FFE762;
  font-family: "Roboto", sans-serif;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  letter-spacing: 0.05em;
}

.l-top__text:before {
  display: block;
  transform: translateX(-4px);
  width: calc(11px * var(--ui-scale));
  height: calc(14px * var(--ui-scale));
  margin: 0 auto;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2211%22%20height%3D%2214%22%20viewBox%3D%220%200%2011%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M4.5%201.86875L1.05%205.3L0%204.25L5.25%20-1L10.5%204.25L9.45%205.31875L6%201.86875V7.25H4.5V1.86875ZM4.5%2011V8.75H6V11H4.5ZM4.5%2014V12.5H6V14H4.5Z%22%20fill%3D%22%23FFE762%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  .l-top {
    bottom: 24px;
    right: 20px;
    width: 69px;
    height: 69px;
    padding: 0 0 12px 5px;
  }

  .l-top:before {
    top: -29px;
    left: -11px;
    width: 58px;
    height: 57px;
  }

  .l-top__text {
    font-size: 10.36px;
  }

  .l-top__text:before {
    transform: translateX(-2px);
    width: 7px;
    height: 9px;
  }

}

/*===========================================
Object
===========================================*/
/*-------------------------------------------
Component
-------------------------------------------*/
/*
再利用できるパターンとして、小さな単位のモジュールを定義します。
出来る限り、最低限の機能を持ったものとして定義されるべきであり、
それ自体が固有の幅や色などの特色を持つことは避けるのが望ましいです。
*/

/* 見出し */
.c-heading {
  font-size: calc(36px * var(--ui-scale));
  /*font-size: clamp((36 * .875px), calc((36 * .875px) + (36 - (36 * .875)) * (100vw - 1280px) / (1920 - 1280)), 36px);*/
  line-height: 1.5;
}

.c-heading--small {
  font-size: calc(32px * var(--ui-scale));
  /*font-size: clamp((32 * .875px), calc((32 * .875px) + (32 - (32 * .875)) * (100vw - 1280px) / (1920 - 1280)), 32px);*/
}

.c-heading--center {
  text-align: center;
}

.c-heading:after {
  display: block;
  margin-top: calc(6px * var(--ui-scale));
  /*margin-top: clamp((6 * .875px), calc((6 * .875px) + (6 - (6 * .875)) * (100vw - 1280px) / (1920 - 1280)), 6px);*/
  font-family: "Roboto", sans-serif;
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
  /*font-size: clamp((32 * .875px), calc((32 * .875px) + (32 - (32 * .875)) * (100vw - 1280px) / (1920 - 1280)), 32px);*/
  font-weight: 500;
  letter-spacing: .05em;
  content: attr(data-title);
}

.c-heading--small:after {
  font-size: calc(24px * var(--ui-scale));
  /*font-size: clamp((24 * .875px), calc((24 * .875px) + (24 - (24 * .875)) * (100vw - 1280px) / (1920 - 1280)), 24px);*/
}

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

  .c-heading {
    font-size: 22px;
  }

  .c-heading:after {
    margin-top: 4px;
    font-size: 18px;
  }

}

/* 見出し（下層ページ） */
.c-block-heading {
  position: relative;
  margin-top: calc(80px * var(--ui-scale));
  margin-bottom: calc(48px * var(--ui-scale));
  padding-bottom: calc(28px * var(--ui-scale));
  font-size: calc(24px * var(--ui-scale));
  line-height: 1.5;
}

.c-block-heading:before,
.c-block-heading:after {
  position: absolute;
  content: "";
}

.c-block-heading:before {
  bottom: 0;
  left: 0;
  width: calc(64px * var(--ui-scale));
  height: calc(3px * var(--ui-scale));
  background: #399273;
}

.c-block-heading:after {
  bottom: calc(1px * var(--ui-scale));
  left: calc(66px * var(--ui-scale));
  width: calc(100% - calc(66px * var(--ui-scale)));
  height: calc(1px * var(--ui-scale));
  background: #A8CEC1;
}

.c-block-heading:has(span) {
  display: flex;
  gap: 0 calc(24px * var(--ui-scale));
}

.c-block-heading span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(5px * var(--ui-scale)) calc(8px * var(--ui-scale));
  background: #399273;
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
}

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

  .c-block-heading {
    margin-top: 48px;
    margin-bottom: 32px;
    padding-bottom: 12px;
    font-size: 18px;
    line-height: 1.7;
  }

  .c-block-heading:before {
    width: 32px;
    height: 3px;
  }

  .c-block-heading:after {
    bottom: 1px;
    left: 34px;
    width: calc(100% - 34px);
    height: 1px;
  }

  .c-block-heading:has(span) {
    gap: 0 16px;
  }

  .c-block-heading span {
    font-size: 12px;
  }

}

/* キャッチコピー */
.c-block-catch {
  margin-top: calc(-8px * var(--ui-scale));
  margin-bottom: calc(26px * var(--ui-scale));
}

.c-block-catch span {
  display: flex;
  justify-content: center;
  gap: 0 calc(28px * var(--ui-scale));
  color: #399273;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.c-block-catch span:before,
.c-block-catch span:after {
  width: calc(4px * var(--ui-scale));
  height: calc(34px * var(--ui-scale));
  background: #46CC9D;
  content: "";
}

.c-block-catch span:before {
  transform: translateY(calc(3px * var(--ui-scale))) rotate(-16deg);
}

.c-block-catch span:after {
  /*transform: translateY(calc(3px * var(--ui-scale))) rotate(16deg);*/
  transform: translate(calc(-8px * var(--ui-scale)), calc(3px * var(--ui-scale))) rotate(16deg);
}

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

  .c-block-catch {
    margin-top: -5px;
    margin-bottom: 6px;
  }

  .c-block-catch span {
    gap: 0 13px;
    font-size: 14px;
  }

  .c-block-catch span:before,
  .c-block-catch span:after {
    width: 2px;
    height: 16px;
  }

  .c-block-catch span:before {
    transform: translateY(4px) rotate(-16deg);
  }

  .c-block-catch span:after {
    transform: translate(-3px, 4px) rotate(16deg);
  }

}

/* 見出し２ */
.c-block-heading-2 {
  font-size: calc(32px * var(--ui-scale));
  line-height: 1.5;
}

.c-block-heading-2--label {
  display: block;
  width: fit-content;
  margin: calc(-50px * var(--ui-scale)) auto calc(22px * var(--ui-scale));
  padding: calc(4px * var(--ui-scale)) calc(16px * var(--ui-scale));
  background: #399273;
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.c-block-heading-2--center {
  text-align: center;
}

.c-block-heading-2:after {
  display: block;
  width: calc(92px * var(--ui-scale));
  height: calc(4px * var(--ui-scale));
  margin-top: calc(26px * var(--ui-scale));
  background-image: radial-gradient(circle, #399273 2px, transparent 2px);
  background-position: -2px 0;
  background-repeat: repeat-x;
  background-size: 8px 4px;
  content: "";
}

.c-block-heading-2--center:after {
  margin-right: auto;
  margin-left: auto;
}

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

  .c-block-heading-2 {
    font-size: 20px;
  }

  .c-block-heading-2--large {
    display: block;
    margin-top: 4px;
    font-size: 32px;
  }

  .c-block-heading-2--label {
    margin: 0 auto 22px;
  }

  .c-block-heading-2:after {
    width: 52px;
    height: 4px;
    margin-top: 14px;
  }

}

/* 小見出し */
.c-subheading {
  position: relative;
  padding-left: calc(28px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.c-subheading--caution {
  color: #D92E2E;
}

.c-subheading:before {
  position: absolute;
  top: calc(10px * var(--ui-scale));
  left: 0;
  width: calc(12px * var(--ui-scale));
  height: calc(12px * var(--ui-scale));
  background: #399273;
  content: "";
}

.c-subheading--caution:before {
  background: #D92E2E;
}

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

  .c-subheading {
    padding-left: 19.5px;
    font-size: 16px;
  }

  .c-subheading:before {
    top: 6px;
  }

}

/* リード文 */
.c-block-lead {
  margin-top: calc(64px * var(--ui-scale));
}

.c-block-lead--center {
  text-align: center;
}

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

  .c-block-lead {
    margin-top: 30px;
  }

}

/* ボタン */
.c-button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(10px * var(--ui-scale));
  position: relative;
  z-index: 1;
  width: calc(416px * var(--ui-scale));
  height: calc(72px * var(--ui-scale));
  margin-top: calc(64px * var(--ui-scale));
  border-radius: calc(9999px * var(--ui-scale));
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  /*transition: opacity .5s;*/
}

.c-button--center {
  margin-right: auto;
  margin-left: auto;
}

.c-button--right {
  margin-left: auto;
}

.c-button--small {
  width: calc(320px * var(--ui-scale));
  height: calc(52px * var(--ui-scale));
  margin-top: calc(30px * var(--ui-scale));
  font-size: calc(16px * var(--ui-scale));
}

.c-button--cont {
  box-shadow: 0 calc(2px * var(--ui-scale)) calc(4px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #FF9604 5.03%, #FF6A00 94.9%);
}

.c-button--border {
  width: fit-content;
  padding-inline: calc(50px * var(--ui-scale)) calc(64px * var(--ui-scale));
  height: calc(64px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  background: #fff;
  color: #333;
}

.c-button--reverse {
  flex-flow: row-reverse;
}

.c-button:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: calc(9999px * var(--ui-scale));
  background: rgba(107, 255, 191, .2);
  /*background: rgba(0, 0, 0, .4);*/
  content: "";
  opacity: 0;
  transition: opacity .5s;
}

.c-button--cont:before {
  background: rgba(255, 236, 92, .2);
}

.c-button:hover:before {
  opacity: 1;
}

.c-button:after {
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.675%2010L7.6%2013.075L9%2014.5L13.5%2010L9%205.5L7.6%206.925L10.675%2010ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.c-button--border:after {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.675%2010L7.6%2013.075L9%2014.5L13.5%2010L9%205.5L7.6%206.925L10.675%2010ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
}

.c-button--border:before {
  content: none;
}

.c-button--border {
  transition: color .5s;
}

.c-button--border:hover {
  color: #399273;
}

.c-button--reverse:after {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M9.325%2010L12.4%206.925L11%205.5L6.5%2010L11%2014.5L12.4%2013.075L9.325%2010ZM10%200C11.3833%200%2012.6833%200.262501%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.262501%2012.6833%200%2011.3833%200%2010C0%208.61667%200.262501%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.262501%208.61667%200%2010%200ZM10%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
}

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

  .c-button {
    width: 100%;
    height: 56px;
    margin-top: 48px;
    font-size: 16px;
  }

}

/* リンク */
.c-link {
  margin-top: calc(12px * var(--ui-scale));
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
  text-align: right;
  transition: opacity .5s;
}

.c-link:hover {
  opacity: .6;
}

.c-link:after {
  display: inline-block;
  transform: translateY(calc(-1px * var(--ui-scale)));
  width: calc(14px * var(--ui-scale));
  height: calc(14px * var(--ui-scale));
  margin-left: calc(6px * var(--ui-scale));
  /*margin-left: 12px;*/
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M7.11667%206.66667L5.06667%208.71667L6%209.66667L9%206.66667L6%203.66667L5.06667%204.61667L7.11667%206.66667ZM6.66667%2013.3333C5.74444%2013.3333%204.87778%2013.1583%204.06667%2012.8083C3.25556%2012.4583%202.55%2011.9833%201.95%2011.3833C1.35%2010.7833%200.875%2010.0778%200.525%209.26667C0.175%208.45555%200%207.58889%200%206.66667C0%205.74444%200.175%204.87778%200.525%204.06667C0.875%203.25556%201.35%202.55%201.95%201.95C2.55%201.35%203.25556%200.875%204.06667%200.525C4.87778%200.175%205.74444%200%206.66667%200C7.58889%200%208.45555%200.175%209.26667%200.525C10.0778%200.875%2010.7833%201.35%2011.3833%201.95C11.9833%202.55%2012.4583%203.25556%2012.8083%204.06667C13.1583%204.87778%2013.3333%205.74444%2013.3333%206.66667C13.3333%207.58889%2013.1583%208.45555%2012.8083%209.26667C12.4583%2010.0778%2011.9833%2010.7833%2011.3833%2011.3833C10.7833%2011.9833%2010.0778%2012.4583%209.26667%2012.8083C8.45555%2013.1583%207.58889%2013.3333%206.66667%2013.3333ZM6.66667%2012C8.15555%2012%209.41667%2011.4833%2010.45%2010.45C11.4833%209.41667%2012%208.15555%2012%206.66667C12%205.17778%2011.4833%203.91667%2010.45%202.88333C9.41667%201.85%208.15555%201.33333%206.66667%201.33333C5.17778%201.33333%203.91667%201.85%202.88333%202.88333C1.85%203.91667%201.33333%205.17778%201.33333%206.66667C1.33333%208.15555%201.85%209.41667%202.88333%2010.45C3.91667%2011.4833%205.17778%2012%206.66667%2012Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  vertical-align: middle;
  content: "";
}

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

  .c-link {
    font-size: 12px;
  }

  .c-link:after {
    width: 12px;
    height: 12px;
    margin-left: 10px;
  }

}

/* アンカー */
* + .c-anchor {
  margin-top: calc(80px * var(--ui-scale));
}

.c-anchor__buttons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(32px * var(--ui-scale));
}

.c-anchor__button a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(12px * var(--ui-scale));
  width: 100%;
  height: calc(64px * var(--ui-scale));
  border-radius: calc(9999px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  background: #fff;
  color: #333;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  transition: color .5s;
}

.c-anchor__button a:hover {
  color: #399273;
}

.c-anchor__button a:after {
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10%2010.675L6.925%207.6L5.5%209L10%2013.5L14.5%209L13.075%207.6L10%2010.675ZM0%2010C0%208.61667%200.262501%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.262501%2012.6833%200%2011.3833%200%2010ZM2%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  * + .c-anchor {
    margin-top: 48px;
  }

  .c-anchor__buttons {
    display: flex;
    flex-direction: column;
    gap: 8px 0;
  }

  .c-anchor__button a {
    height: 48px;
    font-size: 14px;
  }

  .c-anchor__button a:after {
    width: 14px;
    height: 14px;
  }

}

/* アンカー */
* + .c-anchor-02 {
  margin-top: calc(64px * var(--ui-scale));
}

.c-anchor-02__buttons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(16px * var(--ui-scale));
}

.c-anchor-02__button a {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  min-height: calc(86px * var(--ui-scale));
  padding: calc(12px * var(--ui-scale)) calc(12px * var(--ui-scale)) calc(12px * var(--ui-scale)) calc(18px * var(--ui-scale));
  border-radius: calc(8px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  background: #fff;
  color: #333;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
  transition: color .5s;
}

.c-anchor-02__button a:hover {
  color: #399273;
}

.c-anchor-02__button a:before {
  position: absolute;
  bottom: -2px;
  right: -2px;
  width: calc(40px * var(--ui-scale));
  height: calc(40px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M0%2040C0%2017.9086%2017.9086%200%2040%200V32C40%2036.4183%2036.4183%2040%2032%2040H0Z%22%20fill%3D%22white%22%2F%3E%0A%3Cmask%20id%3D%22mask0_2761_33758%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%228%22%20y%3D%228%22%20width%3D%2224%22%20height%3D%2224%22%3E%0A%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2761_33758)%22%3E%0A%3Cpath%20d%3D%22M19%2012V24.175L13.4%2018.575L12%2020L20%2028L28%2020L26.6%2018.575L21%2024.175V12H19Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.c-anchor-02__button span {
  display: block;
  padding-left: calc(38px * var(--ui-scale));
  position: relative;
}

.c-anchor-02__button span:before {
  position: absolute;
  top: 1px;
  left: 0;
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75556%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75556%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75556%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75556%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  * + .c-anchor-02 {
    margin-top: 32px;
  }

  .c-anchor-02__buttons {
    grid-template-columns: none;
    gap: 8px 0;
  }

  .c-anchor-02__button a {
    min-height: 56px;
    padding: 12px 16px;
    font-size: 14px;
  }

  .c-anchor-02__button span {
    padding-left: 30px;
  }

  .c-anchor-02__button span:before {
    width: 20px;
    height: 20px;
  }

}

/*  */


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



}

/* アドバイス */
* + .c-advice {
  margin-top: calc(64px * var(--ui-scale));
}

.c-advice__block {
  display: grid;
  grid-template-columns: calc(180px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: calc(16px * var(--ui-scale)) calc(32px * var(--ui-scale));
}

.c-advice--reverse .c-advice__block {
  grid-template-columns: 1fr calc(180px * var(--ui-scale));
}

.c-advice--reverse .c-advice__image {
  order: 1;
}

.c-advice__image img {
  width: 100%;
}

.c-advice__content {
  padding: calc(32px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #F8F8F8;
}

.c-advice__text {
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

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

  * + .c-advice {
    margin-top: 46px;
  }

  .c-advice__block {
    display: flex;
    flex-direction: column;
  }

  .c-advice--reverse .c-advice__block {
    flex-direction: column-reverse;
  }

  .c-advice__image {
    width: 90px;
    margin: 0 auto;
  }

  .c-advice--reverse .c-advice__image {
    order: 0;
  }

  .c-advice__content {
    padding: 24px;
    border-radius: 8px;
  }

  .c-advice__text {
    font-size: 16px;
  }

}

/* 記事ナビゲーション */
.c-post-nav {
  margin-top: calc(76px * var(--ui-scale));
}

.single-customer .c-post-nav {
  margin-top: calc(152px * var(--ui-scale));
}

.c-post-nav__buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.c-post-nav__button--prev {
  margin-right: auto;
}

.c-post-nav__button--list {
  padding-bottom: calc(6px * var(--ui-scale));
}

.c-post-nav__button--next {
  margin-left: auto;
}

.c-post-nav__button a {
  display: flex;
  align-items: center;
  gap: calc(16px * var(--ui-scale));
  color: #555;
  font-size: calc(14px * var(--ui-scale));
}

.c-post-nav__button--prev a,
.c-post-nav__button--next a {

}

.c-post-nav__button--list a {
  flex-direction: column-reverse;
}

.c-post-nav__button--next a {
  flex-flow: row-reverse;
}

.c-post-nav__button a:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M12.4332%2013.3333L16.5332%2017.4333L14.6665%2019.3333L8.6665%2013.3333L14.6665%207.33333L16.5332%209.23333L12.4332%2013.3333ZM13.3332%2026.6667C15.1776%2026.6667%2016.9109%2026.3167%2018.5332%2025.6167C20.1554%2024.9167%2021.5665%2023.9667%2022.7665%2022.7667C23.9665%2021.5667%2024.9165%2020.1556%2025.6165%2018.5333C26.3165%2016.9111%2026.6665%2015.1778%2026.6665%2013.3333C26.6665%2011.4889%2026.3165%209.75556%2025.6165%208.13333C24.9165%206.51111%2023.9665%205.1%2022.7665%203.9C21.5665%202.7%2020.1554%201.75%2018.5332%201.05C16.9109%200.35%2015.1776%200%2013.3332%200C11.4887%200%209.75539%200.35%208.13317%201.05C6.51095%201.75%205.09984%202.7%203.89984%203.9C2.69983%205.1%201.74984%206.51111%201.04984%208.13333C0.349836%209.75556%20-0.000164032%2011.4889%20-0.000164032%2013.3333C-0.000164032%2015.1778%200.349836%2016.9111%201.04984%2018.5333C1.74984%2020.1556%202.69983%2021.5667%203.89984%2022.7667C5.09984%2023.9667%206.51095%2024.9167%208.13317%2025.6167C9.75539%2026.3167%2011.4887%2026.6667%2013.3332%2026.6667ZM13.3332%2024C10.3554%2024%207.83317%2022.9667%205.7665%2020.9C3.69984%2018.8333%202.6665%2016.3111%202.6665%2013.3333C2.6665%2010.3556%203.69984%207.83333%205.7665%205.76667C7.83317%203.7%2010.3554%202.66667%2013.3332%202.66667C16.3109%202.66667%2018.8332%203.7%2020.8998%205.76667C22.9665%207.83333%2023.9998%2010.3556%2023.9998%2013.3333C23.9998%2016.3111%2022.9665%2018.8333%2020.8998%2020.9C18.8332%2022.9667%2016.3109%2024%2013.3332%2024Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.c-post-nav__button--list a:before {
  transform: rotate(-90deg);
}

.c-post-nav__button--next a:before {
  transform: scaleX(-1);
}

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

  .c-post-nav,
  .single-customer .c-post-nav {
    margin-top: 82px;
  }

  .c-post-nav__buttons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 34px 0;
  }

  .c-post-nav__button--prev {
    grid-area: 2 / 1 / 3 / 2;
  }

  .c-post-nav__button--list {
    grid-area: 1 / 1 / 2 / 3;
    padding-bottom: 0;
  }

  .c-post-nav__button--next {
    grid-area: 2 / 2 / 3 / 3;
  }

  .c-post-nav__button--list a {
    flex-direction: column;
  }

  .c-post-nav__button--list a:before {
    transform: rotate(90deg);
  }

}

/* お悩み・問題 */
* + .c-block-trouble {
  margin-top: calc(34px * var(--ui-scale));
}

.c-block-trouble__inner {
  width: 100%;
  max-width: calc(1088px * var(--ui-scale));
  margin: 0 auto;
}

.c-block-trouble__container:has(img) {
  display: grid;
  grid-template-columns: calc(236px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(48px * var(--ui-scale));
}

.c-block-trouble__image {
  position: relative;
  z-index: 1;
}

.c-block-trouble__image:before {
  position: absolute;
  top: 50%;
  right: calc(-74px * var(--ui-scale));
  z-index: -1;
  transform: translateY(-50%);
  width: calc(240px * var(--ui-scale));
  height: calc(240px * var(--ui-scale));
  border-radius: 50%;
  background: #F3F3F3;
  content: "";
}

.c-block-trouble__image--no-circle:before {
  content: none;
}

.c-block-trouble__image img {
  width: 100%;
}

.c-block-trouble__content {
  position: relative;
  z-index: 1;
}

.c-block-trouble__text span {
  color: #D92E2E;
}

.c-block-trouble__list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(16px * var(--ui-scale));
  margin-bottom: calc(32px * var(--ui-scale));
}

.c-block-trouble__container:not(:has(img)) .c-block-trouble__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
  margin-bottom: calc(48px * var(--ui-scale));
}

.c-block-trouble__item {
  padding: calc(14px * var(--ui-scale)) calc(32px * var(--ui-scale));
  border-radius: calc(8px * var(--ui-scale));
  background: #666666;
  color: #FFE762;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.c-block-trouble__container:not(:has(img)) .c-block-trouble__item {
  text-align: center;
}

.c-block-trouble__container:not(:has(img)) .c-block-trouble__text {
  text-align: center;
}

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

  * + .c-block-trouble {
    margin-top: 32px;
  }

  .c-block-trouble__container:has(img) {
    display: flex;
    flex-direction: column;
    gap: 32px 0;
  }

  .c-block-trouble__image {
    transform: translateX(-24px);
    width: 192px;
    margin: 0 auto;
  }

  .c-block-trouble__image--no-circle {
    transform: translateX(0);
  }

  .c-block-trouble__image:before {
    right: -48px;
    width: 195px;
    height: 195px;
  }

  .c-block-trouble__list {
    flex-direction: column;
    gap: 8px 0;
  }

  .c-block-trouble__container:not(:has(img)) .c-block-trouble__list {
    grid-template-columns: none;
    gap: 8px 0;
    margin-bottom: 30px;
  }

  .c-block-trouble__item {
    padding: 8px;
    border-radius: 4px;
    font-size: 16px;
    text-align: center;
  }

  .c-block-trouble__container:not(:has(img)) .c-block-trouble__text {
    text-align: left;
  }

}

/*  */

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



}

/* ページネーション */
.c-pagination {
  margin-top: calc(156px * var(--ui-scale));
}

.l-container .c-pagination {
  margin-right: calc(-416px * var(--ui-scale));
}

.c-pagination__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(16px * var(--ui-scale));
}

.c-pagination__item--prev,
.c-pagination__item--next {
  display: flex;
  align-items: center;
}

.c-pagination__item--prev {
  margin-right: calc(50px * var(--ui-scale));
}

.c-pagination__item--next {
  margin-left: calc(50px * var(--ui-scale));
}

.c-pagination__item span,
.c-pagination__item a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(64px * var(--ui-scale));
  height: calc(64px * var(--ui-scale));
  font-family: "Roboto", sans-serif;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 500;
  letter-spacing: 0.05em;
}

.c-pagination__item span,
.c-pagination__item a {
  border-radius: 50%;
}

.c-pagination__item span {
  background: #399273;
  color: #fff;
}

.c-pagination__item:not(.c-pagination__item--prev):not(.c-pagination__item--next) a {
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  background: #fff;
  color: #399273;
  transition: background .5s, color .5s;
}

.c-pagination__item:not(.c-pagination__item--prev):not(.c-pagination__item--next) a:hover {
  background: #399273;
  color: #fff;
}

.c-pagination__item--prev a,
.c-pagination__item--next a {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M12.4337%2013.3333L16.5337%2017.4333L14.667%2019.3333L8.66699%2013.3333L14.667%207.33333L16.5337%209.23333L12.4337%2013.3333ZM13.3337%2026.6667C15.1781%2026.6667%2016.9114%2026.3167%2018.5337%2025.6167C20.1559%2024.9167%2021.567%2023.9667%2022.767%2022.7667C23.967%2021.5667%2024.917%2020.1556%2025.617%2018.5333C26.317%2016.9111%2026.667%2015.1778%2026.667%2013.3333C26.667%2011.4889%2026.317%209.75556%2025.617%208.13333C24.917%206.51111%2023.967%205.1%2022.767%203.9C21.567%202.7%2020.1559%201.75%2018.5337%201.05C16.9114%200.35%2015.1781%200%2013.3337%200C11.4892%200%209.75588%200.35%208.13366%201.05C6.51143%201.75%205.10032%202.7%203.90032%203.9C2.70032%205.1%201.75033%206.51111%201.05033%208.13333C0.350325%209.75556%200.000324249%2011.4889%200.000324249%2013.3333C0.000324249%2015.1778%200.350325%2016.9111%201.05033%2018.5333C1.75033%2020.1556%202.70032%2021.5667%203.90032%2022.7667C5.10032%2023.9667%206.51143%2024.9167%208.13366%2025.6167C9.75588%2026.3167%2011.4892%2026.6667%2013.3337%2026.6667ZM13.3337%2024C10.3559%2024%207.83366%2022.9667%205.76699%2020.9C3.70033%2018.8333%202.66699%2016.3111%202.66699%2013.3333C2.66699%2010.3556%203.70033%207.83333%205.76699%205.76667C7.83366%203.7%2010.3559%202.66667%2013.3337%202.66667C16.3114%202.66667%2018.8337%203.7%2020.9003%205.76667C22.967%207.83333%2024.0003%2010.3556%2024.0003%2013.3333C24.0003%2016.3111%2022.967%2018.8333%2020.9003%2020.9C18.8337%2022.9667%2016.3114%2024%2013.3337%2024Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  transition: opacity .5s;
}

.c-pagination__item--next a {
  transform: scaleX(-1);
}

.c-pagination__item--prev a:hover,
.c-pagination__item--next a:hover {
  opacity: .7;
}

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

  .c-pagination {
    margin-top: 74px;
  }

  .l-container .c-pagination {
    margin-right: 0;
  }

  .c-pagination__list {
    gap: 8px;
  }

  .c-pagination__item--prev,
  .c-pagination__item--next {

  }

  .c-pagination__item--prev {
    margin-right: 30px;
  }

  .c-pagination__item--next {
    margin-left: 30px;
  }

  .c-pagination__item span,
  .c-pagination__item a {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }

  .c-pagination__item span,
  .c-pagination__item a {

  }

  .c-pagination__item span {

  }

  .c-pagination__item:not(.c-pagination__item--prev):not(.c-pagination__item--next) a {

  }

  .c-pagination__item:not(.c-pagination__item--prev):not(.c-pagination__item--next) a:hover {

  }

  .c-pagination__item--prev a,
  .c-pagination__item--next a {
    width: 20px;
    height: 20px;
  }

  .c-pagination__item--next a {

  }

  .c-pagination__item--prev a:hover,
  .c-pagination__item--next a:hover {

  }


}

/* ULリスト */
.c-unordered-list li {
  position: relative;
  padding-left: calc(28px * var(--ui-scale));
}

.c-unordered-list li:before {
  position: absolute;
  top: calc(10px * var(--ui-scale));
  left: calc(2px * var(--ui-scale));
  transform: rotate(45deg);
  width: calc(8px * var(--ui-scale));
  height: calc(8px * var(--ui-scale));
  background: #399273;
  content: "";
}

.c-unordered-list li:nth-child(n + 2) {
  margin-top: calc(16px * var(--ui-scale));
}

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

  .c-unordered-list li {
    padding-left: 20px;
  }

}

/* テーブル */
.c-block-table th,
.c-block-table td {
  padding-block: calc(10px * var(--ui-scale));
}

.c-block-table tr:nth-child(n + 2) {
  border-top: calc(4px * var(--ui-scale)) solid #fff;
}

.c-block-table tr > *:nth-child(n + 2) {
  border-left: calc(4px * var(--ui-scale)) solid #fff;
}

.c-block-table th,
.single .c-block-table td:first-child {
  width: calc(((192 + 4) / 1088) * 100%);
  min-width: calc(116px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
  text-align: center;
}

.single .c-block-table td:first-child {
  padding-inline: calc(4px * var(--ui-scale));
}

.c-block-table tr:nth-child(2n - 1) th,
.single .c-block-table tr:nth-child(2n - 1) td:first-child {
  background: #EDF5F9;
}

.c-block-table tr:nth-child(2n) th,
.single .c-block-table tr:nth-child(2n) td:first-child {
  background: #DEECF3;
}

.c-block-table td {
  padding-inline: calc(32px * var(--ui-scale));
}

.c-block-table tr:nth-child(2n - 1) td {
  background: #fff;
}

.c-block-table tr:nth-child(2n) td {
  background: #F8F8F8;
}

.c-block-table td a {
  color: #005638;
  text-decoration: underline;
}

.c-block-table td a:hover {
  text-decoration: none;
}

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

  .c-block-table th,
  .c-block-table td {
    padding-block: 8px;
  }

  .c-block-table--vertical th,
  .c-block-table--vertical td {
    display: block;
    width: 100%;
    padding: 10px 8px;
  }

  .c-block-table tr:nth-child(n + 2) {
    border-top: 4px solid #fff;
  }

  .c-block-table tr > *:nth-child(n + 2) {
    border-left: 4px solid #fff;
  }

  .c-block-table th {
    width: 112px;
    /*width: calc((112 / 352) * 100%);*/
    min-width: 0;
    font-size: 16px;
  }

  .c-block-table--vertical th {
    width: 100%;
    text-align: left;
  }

  .c-block-table td {
    padding-inline: 16px;
  }

  .c-block-table--vertical td {
    padding-inline: 8px;
    border-left: none!important;
    line-height: 1.7;
  }

  .c-block-table li:nth-child(n + 2) {
    margin-top: 4px;
  }

}

/*-------------------------------------------
Project
-------------------------------------------*/
/*
プロジェクト固有のパターンであり、いくつかのComponentと、
それに該当しない要素によって構成されるものを定義します。
例えば、記事一覧や、ユーザープロフィール、
画像ギャラリーなどコンテンツを構成する要素などが該当します。
*/

.p-section {
  padding: 120px 0;
  padding: 104px 0;
  padding: 96px 0 104px;
  padding: 120px 0;
}

.p-section__inner {
  width: min(100%, calc(1120px + (24px * 2)));
  width: min(100%, calc(1000px + (24px * 2)));
  width: min(100%, calc(1208px + (24px * 2)));
  margin: 0 auto;
  padding: 0 24px;
}

.p-section__inner--wide {
  width: 100%;
}

.p-section__inner--narrow {
  width: min(100%, calc(960px + (24px * 2)));
  width: min(100%, calc(1000px + (24px * 2)));
}

.p-section__body {
  margin-top: 72px;
}

.p-section__columns {
  display: flex;
  display: grid;
  align-items: center;
  grid-template-columns: auto 1fr;
  gap: 0 32px;
}

.p-section__column:nth-child(2) {
  padding-left: 4px;
}

.p-section__desc {
  font-size: 17px;
  font-weight: 400;
  line-height: 1.5;
}

/*.p-section__button {
  margin-top: 56px;
  margin-top: 64px;
}*/

.p-section__footer {
  display: none;
  margin-top: 40px;
}

.p-section__buttons {
  display: flex;
  justify-content: center;
}

body:not(.page-sokuto) .p-block {
  padding: calc(96px * var(--ui-scale)) 0 calc(200px * var(--ui-scale));
}

body:not(.page-sokuto) .p-block__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

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

  .p-section {
    padding: 88px 0 80px;
  }

  .p-section__body {
    margin-top: 32px;
    margin-top: 40px;
  }

  body:not(.page-sokuto) .p-block {
    padding: 48px 0 80px;
  }

}

/* ヒーロー（トップページ） */
.p-hero {
  padding: calc(256px * var(--ui-scale)) 0 calc(138px * var(--ui-scale));
  padding: calc(264px * var(--ui-scale)) 0 calc(138px * var(--ui-scale));
  background: url(lib/images/bg_wave_05.png) no-repeat left calc(50% - calc(510px * var(--ui-scale))) bottom calc(-46px * var(--ui-scale)) / calc(451px * var(--ui-scale)) calc(198px * var(--ui-scale)),
              /*url(lib/images/bg_wave_04.png) no-repeat center bottom / calc(1920px * var(--ui-scale)) calc(353px * var(--ui-scale)),*/
              url(lib/images/bg_wave_04_.png) repeat-x left calc(50% + calc(960px * var(--ui-scale))) bottom / calc(3840px * var(--ui-scale)) calc(353px * var(--ui-scale)),
              url("lib/images/bg_hero_pc.jpg") no-repeat center / cover;
}

/*@media screen and (min-width: 1921px) {

  .p-hero {
    background: url(lib/images/bg_wave_05.png) no-repeat left calc(50% - 510px) bottom -46px / 451px 198px,
                url(lib/images/bg_wave_04_.png) repeat-x left calc(50% + 960px) bottom / 3840px 353px,
                url("lib/images/bg_hero_pc.jpg") no-repeat center / cover;
  }

}*/

.p-hero__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));;
  margin: 0 auto;
  padding: 0 24px;
}

.p-hero__heading {
  display: inline-block;
}

.p-hero__heading span {
  display: flex;
  justify-content: center;
  gap: 0 calc(20px * var(--ui-scale));
  color: #399273;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-hero__heading span:before,
.p-hero__heading span:after {
  width: calc(4px * var(--ui-scale));
  height: calc(30px * var(--ui-scale));
  background: #399273;
  content: "";
}

.p-hero__heading span:before {
  transform: translateY(5px) rotate(-15deg);
}

.p-hero__heading span:after {
  transform: translateY(5px) rotate(15deg);
}

.p-hero__heading img {
  display: block;
  width: calc(600px * var(--ui-scale));
  margin-top: calc(22px * var(--ui-scale));
}

.p-hero__list {
  display: flex;
  gap: 0 calc(9px * var(--ui-scale));
  margin-top: calc(24px * var(--ui-scale));
}

.p-hero__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(194px * var(--ui-scale));
  height: calc(194px * var(--ui-scale));
  background: url("lib/images/bg_badge_01.png") no-repeat center / contain;
  color: #fff;
  font-size: calc(22px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

#cta-clone-target {
  display: none;
}

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

  .p-hero {
    /*padding: 118px 0 306px;*/
    padding: 118px 0 76.5vw;
    background: url(lib/images/bg_wave_05.png) no-repeat left calc(50% - 144px) bottom -20px / calc(451px / 2) calc(198px / 2),
                /*url(lib/images/bg_wave_04.png) no-repeat left calc(50% - 144px) bottom -6px / calc(1920px * .375) calc(353px * .375),*/
                url(lib/images/bg_wave_04_.png) repeat-x left calc(50% + 214px) bottom -6px / calc(1920px * 2 * .375) calc(353px * .375),
                url("lib/images/bg_hero_sp.jpg") no-repeat center bottom 10px / 100% auto,
                url("lib/images/bg_hero_back.jpg") no-repeat center bottom / cover;
  }

  .p-hero__heading {
    display: block;
  }

  .p-hero__heading span {
    gap: 0 10px;
    font-size: 12.05px;
  }

  .p-hero__heading span:before,
  .p-hero__heading span:after {
    width: 2px;
    height: 15px;
  }

  .p-hero__heading span:before {
    transform: translateY(2.5px) rotate(-15deg);
  }

  .p-hero__heading span:after {
    transform: translateY(2.5px) rotate(15deg);
  }

  .p-hero__heading img {
    width: 301px;
    margin: 10px auto 0;
  }

  .p-hero__list {
    justify-content: center;
    gap: 0 5.5px;
    margin-top: 16px;
    margin-bottom: 26px;
  }

  .p-hero__item {
    width: 108px;
    height: 108px;
    padding-bottom: 2px;
    font-size: 12px;
  }

  #cta-clone-target {
    display: block;
  }

  #cta-clone-target .l-cta__button--phone {
    border: none;
    background: #fff;
  }

}

/* PICKUP（トップページ） */
.p-top-pickup {
  /*padding-top: calc(48px * var(--ui-scale));*/
  padding: calc(40px * var(--ui-scale)) 0 calc(144px * var(--ui-scale));
  background: url(lib/images/bg_wave_07.png) repeat-x left calc(50% + 180px) bottom 0 / 3840px 247px,
              url(lib/images/bg_dot_02.png) no-repeat left calc(50% - 728px) bottom 2px / 486px 506px,
              url(lib/images/bg_dot_02.png) no-repeat left calc(50% + 728px) bottom 2px / 486px 506px;
}

.p-top-pickup__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));;
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-pickup__heading {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(4px * var(--ui-scale));
  font-family: "Roboto", sans-serif;
  font-size: calc(28px * var(--ui-scale));
  font-weight: 600;
  text-align: center;
}

.p-top-pickup__heading:before,
.p-top-pickup__heading:after {
  width: calc(92px * var(--ui-scale));
  height: calc(4px * var(--ui-scale));
  background-image: radial-gradient(circle, #399273 calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)));
  background-position: calc(-2px * var(--ui-scale)) 0;
  background-repeat: repeat-x;
  background-size: calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale));
  content: "";
}

.p-top-pickup__heading:before {
  margin-right: calc(28px * var(--ui-scale));
}

.p-top-pickup__heading:after {
  margin-left: calc(28px * var(--ui-scale));
}

.p-top-pickup__heading span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(40px * var(--ui-scale));
  height: calc(40px * var(--ui-scale));
  padding-top: calc(2px * var(--ui-scale));
  border-radius: 50%;
  background: #399273;
  color: #fff;
}

.p-top-pickup__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
  margin-top: calc(32px * var(--ui-scale));
}

.p-top-pickup__card {
  display: block;
  position: relative;
  z-index: 1;
  transition: opacity .5s;
  border-radius: calc(32px * var(--ui-scale));

  /* シャドウ追加 */
  box-shadow: 0 calc(2px * var(--ui-scale)) calc(4px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
}

.p-top-pickup__card:hover {
  opacity: 0.7;
}

.p-top-pickup__card:before {
  position: absolute;
  top: calc(100% - calc(34px * var(--ui-scale)));
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(226px * var(--ui-scale));
  height: calc(68px * var(--ui-scale));
  border-radius: 50%;
  background: #D7E9F3;
  filter: blur(calc(12.5px * var(--ui-scale)));
  content: "";
}

.p-top-pickup-card__outer {
  border: 3px solid #B3D2C7;
  border-radius: calc(32px * var(--ui-scale));
  padding: calc(44px * var(--ui-scale)) calc(28px * var(--ui-scale));
  background: #fff;
}

.p-top-pickup-card__head {
  display: grid;
  grid-template-columns: calc(100px * var(--ui-scale)) 1fr;
  gap: 0 calc(13px * var(--ui-scale));
}

.p-top-pickup-card__image {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-top-pickup-card__image img[src*="illust_yellow.png"] {
  width: calc(80px * var(--ui-scale));
}

.p-top-pickup-card__image img[src*="illust_heater.png"] {
  width: calc(80px * var(--ui-scale));
}

.p-top-pickup-card__image img[src*="illust_helper.png"] {
  width: calc(64px * var(--ui-scale));
}

.p-top-pickup-card__text {
  color: #333;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.p-top-pickup-card__text span {
  display: block;
  padding: calc(14px * var(--ui-scale)) 0 calc(14px * var(--ui-scale)) calc(36px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #EDF5F9;
}

.p-top-pickup__card:nth-child(3) .p-top-pickup-card__text span {
  padding-left: calc(24px * var(--ui-scale));
}

.p-top-pickup-card__heading {
  margin-top: calc(20px * var(--ui-scale));
  color: #333;
  font-size: calc(28px * var(--ui-scale));
  text-align: center;
}

.p-top-pickup-card__heading span {
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
}

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

  .p-top-pickup {
    padding: 50px 0 80px;
    background: transparent;
  }

  .p-top-pickup__heading {
    gap: 0 2.8px;
    font-size: 19.4px;
  }

  .p-top-pickup__heading:before,
  .p-top-pickup__heading:after {
    width: 64px;
    height: 3px;
    background-image: radial-gradient(circle, #399273 1.5px, transparent 1.5px);
    background-position: -1.5px 0;
    background-repeat: repeat-x;
    background-size: 6px 3px;
  }

  .p-top-pickup__heading:before {
    margin-right: 21px;
  }

  .p-top-pickup__heading:after {
    margin-left: 21px;
  }

  .p-top-pickup__heading span {
    width: 27.7px;
    height: 27.7px;
    padding-top: 1px;
  }

  .p-top-pickup__cards {
    grid-template-columns: none;
    gap: 16px 0;
    margin-top: 32px;
  }

  .p-top-pickup__card {
    border-radius: 16px;
  }

  .p-top-pickup__card:before {
    content: none;
  }

  .p-top-pickup-card__outer {
    padding: 21px 21px 19px;
    border: 2.5px solid #B3D2C7;
    border-radius: 16px;
  }

  .p-top-pickup-card__head {
    grid-template-columns: 64px 1fr;
    gap: 0 11px;
  }

  .p-top-pickup-card__image img[src*="illust_yellow.png"] {
    width: 51px;
  }

  .p-top-pickup-card__image img[src*="illust_heater.png"] {
    width: 51px;
  }

  .p-top-pickup-card__image img[src*="illust_helper.png"] {
    width: 40px;
  }

  .p-top-pickup-card__text {
    font-size: 16px;
  }

  .p-top-pickup-card__text span {
    padding: 8px 0 8px 60px;
    border-radius: 8px;
  }

  .p-top-pickup__card:nth-child(3) .p-top-pickup-card__text span {
    padding-left: 52px;
  }

  .p-top-pickup-card__heading {
    margin-top: 14px;
    font-size: 20px;
  }

  .p-top-pickup-card__heading span {
    font-size: 24px;
  }

}

/* お湯が出ない…！を今すぐなんとかしたい！そんな時は（トップページ） */
.p-top-propose {
  position: relative;
  z-index: 1;
}

.p-top-propose:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(916px * var(--ui-scale));
  background: linear-gradient(180deg, #EDF5F9 0%, #B8E7FF 100%);
  content: "";
}

.p-top-propose:after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(1046px * var(--ui-scale));
  background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(50px * var(--ui-scale))) bottom / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              url(lib/images/bg_dot_01.png) repeat-x center bottom calc(175px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale));
  content: "";
}

.p-top-propose__inner {
  width: 100%;
  max-width: calc((1152px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-propose__container {
  margin-top: calc(-48px * var(--ui-scale));
}

.p-top-propose__header {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(48px * var(--ui-scale)) calc(24px * var(--ui-scale)) calc(46px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: #399273;
}

.p-top-propose__header:before {
  position: absolute;
  top: calc(100% - calc(20px * var(--ui-scale)));
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: calc(65px * var(--ui-scale));
  height: calc(56px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2265%22%20height%3D%2256%22%20viewBox%3D%220%200%2065%2056%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M32.043%2055.5L3.53695e-05%20-6.03593e-06L64.0859%20-4.3336e-07L32.043%2055.5Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-top-propose__lead {
  color: #fff;
  font-weight: 700;
  text-align: center;
}

.p-top-propose__lead > span {
  display: inline-block;
  padding: calc(7px * var(--ui-scale)) calc(80px * var(--ui-scale));
  /*border-top: calc(1px * var(--ui-scale)) solid #46CC9D;
  border-bottom: calc(1px * var(--ui-scale)) solid #46CC9D;*/
  border-top: 1px solid #46CC9D;
  border-bottom: 1px solid #46CC9D;
}

.p-top-propose__lead > span span {
  margin-left: calc(10px * var(--ui-scale));
}

.p-top-propose__heading {
  margin-top: calc(10px * var(--ui-scale));
  color: #fff;
  font-size: calc(36px * var(--ui-scale));
  text-align: center;
}

.p-top-propose__heading span {
  color: #FFE762;
}

.p-top-propose__body {
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-top: calc(-100px * var(--ui-scale));
  padding: calc(148px * var(--ui-scale)) 0 calc(80px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: url(lib/images/bg_dot_03.png) no-repeat left calc(50% - 0px) top calc(114px * var(--ui-scale)) / calc(486px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #fff;
}

.p-top-propose__body:before,
.p-top-propose__body:after {
  position: absolute;
  z-index: -1;
  content: "";
}

.p-top-propose__body:before {
  left: 50%;
  transform: translateX(-50%);
  width: calc(1208px * var(--ui-scale));
  height: calc(320px * var(--ui-scale));
  bottom: calc(430px * var(--ui-scale));
  border-radius: 50%;
  background: #EDF5F9;
}

.p-top-propose__body:after {
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(630px * var(--ui-scale));
  background: linear-gradient(180deg, #EDF5F9 0%, #EDF5F9 30%, #B8E7FF 100%);
}

.p-top-propose__content {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.p-top-propose__outer {
  position: relative;
  z-index: 1;
}

.p-top-propose__outer:first-child {
  margin-top: calc(6px * var(--ui-scale));
  margin-right: calc(65px * var(--ui-scale));
}

.p-top-propose__outer:nth-child(2) {
  order: 1;
  margin-top: calc(-12px * var(--ui-scale));
  margin-left: calc(28px * var(--ui-scale));
}

.p-top-propose__outer:before,
.p-top-propose__outer:after {
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  background: #EDF5F9;
  content: "";
}

.p-top-propose__outer:before {
  width: calc(28px * var(--ui-scale));
  height: calc(28px * var(--ui-scale));
}

.p-top-propose__outer:after {
  width: calc(12px * var(--ui-scale));
  height: calc(12px * var(--ui-scale));
}

.p-top-propose__outer:first-child:before {
  bottom: calc(30px * var(--ui-scale));
  right: calc(10px * var(--ui-scale));
}

.p-top-propose__outer:first-child:after {
  bottom: calc(22px * var(--ui-scale));
  right: calc(-6px * var(--ui-scale));
}

.p-top-propose__outer:nth-child(2):before {
  bottom: calc(90px * var(--ui-scale));
  left: calc(-10px * var(--ui-scale));
}

.p-top-propose__outer:nth-child(2):after {
  bottom: calc(108px * var(--ui-scale));
  left: calc(-28px * var(--ui-scale));
}

.p-top-propose__outer:first-child .p-top-propose__list {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(304px * var(--ui-scale));
  height: calc(214px * var(--ui-scale));
  padding-top: calc(10px * var(--ui-scale));
  padding-right: calc(4px * var(--ui-scale));
  background: url("lib/images/bg_ellipse_01.png") no-repeat center / contain;
}

.p-top-propose__outer:nth-child(2) .p-top-propose__list {
  width: calc(329px * var(--ui-scale));
  height: calc(272px * var(--ui-scale));
  padding-top: calc(44px * var(--ui-scale));
  background: url("lib/images/bg_ellipse_02.png") no-repeat center / contain;
}

.p-top-propose__item {
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-top-propose__outer:nth-child(2) .p-top-propose__list .p-top-propose__item:first-child {
  padding-left: calc(90px * var(--ui-scale));
}

.p-top-propose__outer:nth-child(2) .p-top-propose__list .p-top-propose__item:nth-child(2) {
  margin-top: calc(54px * var(--ui-scale));
  padding-right: calc(58px * var(--ui-scale));
}

.p-top-propose__image {
  width: calc(236px * var(--ui-scale));
}

.p-top-solution {
  margin-top: calc(80px * var(--ui-scale));
  padding: 0 calc(24px * var(--ui-scale));
}

.p-top-solution__head {
  display: flex;
  justify-content: center;
  gap: 0 calc(16px * var(--ui-scale));
}

.p-top-solution__image {
  transform: translateY(calc(-24px * var(--ui-scale)));
  width: calc(163px * var(--ui-scale));
}

.p-top-solution__heading {
  color: #399273;
  font-size: calc(36px * var(--ui-scale));
}

.p-top-solution__heading span {
  position: relative;
  z-index: 1;
  /*background: linear-gradient(transparent 65%, #FFE762 65%);*/
  font-size: calc(48px * var(--ui-scale));
}

.p-top-solution__heading span:before {
  position: absolute;
  left: 50%;
  bottom: calc(4px * var(--ui-scale));
  z-index: -1;
  transform: translateX(-50%);
  width: calc(100% - calc(34px * var(--ui-scale)));
  height: calc(20px * var(--ui-scale));
  background: #FFE762;
  content: "";
}

.p-top-solution__wrapper {
  position: relative;
  width: 100%;
  max-width: calc(928px * var(--ui-scale));
  margin: calc(8px * var(--ui-scale)) auto 0;
  border-radius: calc(16px * var(--ui-scale));
  background: #fff;
}

.p-top-solution__wrapper:before,
.p-top-solution__wrapper:after {
  position: absolute;
  top: calc(10px * var(--ui-scale));
  width: calc(12px * var(--ui-scale));
  height: calc(12px * var(--ui-scale));
  border-radius: 50%;
  background: #399273;
  content: "";
}

.p-top-solution__wrapper:before {
  left: calc(10px * var(--ui-scale));
}

.p-top-solution__wrapper:after {
  right: calc(10px * var(--ui-scale));
}

.p-top-solution__container {
  position: relative;
  padding: calc(46px * var(--ui-scale)) calc(24px * var(--ui-scale));
}

.p-top-solution__container:before,
.p-top-solution__container:after {
  position: absolute;
  bottom: calc(7px * var(--ui-scale));
  width: calc(12px * var(--ui-scale));
  height: calc(12px * var(--ui-scale));
  border-radius: 50%;
  background: #399273;
  content: "";
}

.p-top-solution__container:before {
  left: calc(10px * var(--ui-scale));
}

.p-top-solution__container:after {
  right: calc(10px * var(--ui-scale));
}

.p-top-solution__copy {
  color: #399273;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-top-solution__copy:after {
  display: block;
  width: calc(44px * var(--ui-scale));
  height: calc(4px * var(--ui-scale));
  margin: calc(14px * var(--ui-scale)) auto 0;
  background-image: radial-gradient(circle, #399273 calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)));
  background-position: calc(-2px * var(--ui-scale)) 0;
  background-repeat: repeat-x;
  background-size: calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale));
  content: "";
}

.p-top-solution__text {
  margin-top: calc(16px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-top-solution__micro {
  margin-top: calc(42px * var(--ui-scale));
  color: #005638;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-top-solution__micro > span {
  display: flex;
  justify-content: center;
  gap: 0 calc(38px * var(--ui-scale));
}

.p-top-solution__micro > span:before,
.p-top-solution__micro > span:after {
  width: calc(6px * var(--ui-scale));
  height: calc(45px * var(--ui-scale));
  background: #46CC9D;
  content: "";
}

.p-top-solution__micro > span:before {
  transform: translateY(calc(16px * var(--ui-scale))) rotate(-15deg);
}

.p-top-solution__micro > span:after {
  transform: translateY(calc(16px * var(--ui-scale))) rotate(15deg);
}

.p-top-solution__micro > span span span {
  display: block;
  font-size: calc(24px * var(--ui-scale));
}

.p-top-solution .c-button {
  width: calc(480px * var(--ui-scale));
  margin-top: calc(28px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
}

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

  .p-top-propose {

  }

  .p-top-propose:before {

  }

  .p-top-propose:after {

  }

  .p-top-propose__inner {
    padding: 0;
  }

  .p-top-propose__container {
    margin-top: 0;
  }

  .p-top-propose__header {
    max-width: none;
    padding: 22px 30px 22px;
    border-radius: 0px;
  }

  .p-top-propose__header:before {
    top: calc(100% - 30px);
    width: 65px;
    height: 56px;
  }

  .p-top-propose__lead {
    font-size: 12px;
  }

  .p-top-propose__lead > span {
    display: block;
    padding: 3px 0;
    border-top: 1px solid #46CC9D;
    border-bottom: 1px solid #46CC9D;
  }

  .p-top-propose__lead > span span {
    margin-left: 5px;
  }

  .p-top-propose__heading {
    margin-top: 5px;
    font-size: 20px;
  }

  .p-top-propose__heading span {
    display: block;
    font-size: 24px;
    line-height: 1.5;
  }

  .p-top-propose__body {
    margin-top: 0;
    padding: 44px 24px 80px;
    border-radius: 0;
    background: url(lib/images/bg_dot_03.png) no-repeat left calc(50% - 0px) top -56px / calc(486px * 0.371) calc(506px * 0.371),
                #fff;
  }

  .p-top-propose__body:before,
  .p-top-propose__body:after {

  }

  .p-top-propose__body:before {
    width: calc(100% + 40px);
    height: 84px;
    bottom: 616px;
  }

  .p-top-propose__body:after {
    height: 668px;
  }

  .p-top-propose__content {
    flex-direction: column;
  }

  .p-top-propose__outer {
    display: contents;
  }

  .p-top-propose__outer:first-child {

  }

  .p-top-propose__outer:nth-child(2) {

  }

  .p-top-propose__outer:before,
  .p-top-propose__outer:after {

  }

  .p-top-propose__outer:before {

  }

  .p-top-propose__outer:after {

  }

  .p-top-propose__outer:first-child:before {

  }

  .p-top-propose__outer:first-child:after {

  }

  .p-top-propose__outer:nth-child(2):before {

  }

  .p-top-propose__outer:nth-child(2):after {

  }

  .p-top-propose__outer:first-child .p-top-propose__list {
    display: contents;
  }

  .p-top-propose__outer:nth-child(2) .p-top-propose__list {
    display: contents;
  }

  .p-top-propose__item {
    position: relative;
    padding-left: 32px;
    font-size: 16px;
    text-align: left;
    line-height: 1.5;
  }

  .p-top-propose__item:before {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 20px;
    height: 20px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8.6%2014.6L15.65%207.55L14.25%206.15L8.6%2011.8L5.75%208.95L4.35%2010.35L8.6%2014.6ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
    content: "";
  }

  .p-top-propose__outer:nth-child(2) .p-top-propose__list .p-top-propose__item:first-child {
    margin-top: 12px;
    padding-left: 32px;
  }

  .p-top-propose__outer:nth-child(2) .p-top-propose__list .p-top-propose__item:nth-child(2) {
    margin-top: 12px;
    padding-right: 0;
  }

  .p-top-propose__image {
    order: -1;
    width: 160px;
    margin: 0 auto 32px;
  }

  .p-top-solution {
    margin-top: 50px;
    padding: 0;
  }

  .p-top-solution__head {
    flex-direction: column;
    gap: 9px 0;
  }

  .p-top-solution__image {
    transform: translate(12px, 0);
    margin: 0 auto;
  }

  .p-top-solution__heading {
    font-size: 20px;
    text-align: center;
  }

  .p-top-solution__heading span {
    display: inline-block;
    margin-bottom: 6px;
    font-size: 32px;
    line-height: 1.4;
  }

  .p-top-solution__heading span:before {
    bottom: -2px;
    width: calc(100% - 14px);
  }

  .p-top-solution__wrapper {
    max-width: none;
    margin: 28px 0 0;
  }

  .p-top-solution__wrapper:before,
  .p-top-solution__wrapper:after {
    width: 8px;
    height: 8px;
  }

  .p-top-solution__wrapper:before {

  }

  .p-top-solution__wrapper:after {

  }

  .p-top-solution__container {
    padding: 32px;
  }

  .p-top-solution__container:before,
  .p-top-solution__container:after {
    width: 8px;
    height: 8px;
  }

  .p-top-solution__container:before {

  }

  .p-top-solution__container:after {

  }

  .p-top-solution__copy {
    font-size: 16px;
  }

  .p-top-solution__copy:after {

  }

  .p-top-solution__text {
    font-size: 14px;
    font-weight: 400;
    text-align: left;
  }

  .p-top-solution__micro {
    margin-top: 32px;
    font-size: 14px;
  }

  .p-top-solution__micro > span {
    gap: 0 22px;
  }

  .p-top-solution__micro > span:before,
  .p-top-solution__micro > span:after {
    width: 2.5px;
    height: 36px;
  }

  .p-top-solution__micro > span:before {
    transform: translateY(14px) rotate(-15deg);
  }

  .p-top-solution__micro > span:after {
    transform: translateY(14px) rotate(15deg);
  }

  .p-top-solution__micro > span span span {
    margin-top: 2px;
    font-size: 16px;
  }

  .p-top-solution .c-button {
    width: 100%;
    margin-top: 20px;
    font-size: 16px;
  }

}

/* （トップページ） */
.p-top-service {
  /*padding: 354px 64px 0;*/
  padding-top: calc(160px * var(--ui-scale));
}

.p-top-service__wrapper {
  position: relative;
  z-index: 1;
  /*padding-bottom: 120px;*/
  padding-bottom: calc(280px * var(--ui-scale));
  /*border-radius: 32px 32px 0 0;*/
  /*background: url(lib/images/bg_dot_01_reverse.png) no-repeat left calc(50% - 190px) top 200px / 491px 506px,
              url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(72px * var(--ui-scale))) bottom 154px / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              #EDF5F9;*/
  /*background: url(lib/images/bg_dot_01_reverse.png) no-repeat left calc(50% - calc(190px * var(--ui-scale))) top calc(200px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale));*/
}

.p-top-service__wrapper:before {
  position: absolute;
  top: calc(194px * var(--ui-scale));
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: calc(100% - calc(194px * var(--ui-scale)));
  border-radius: calc(32px * var(--ui-scale));
  background: url(lib/images/bg_dot_01_reverse.png) no-repeat left calc(50% - calc(190px * var(--ui-scale))) top calc(200px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(72px * var(--ui-scale))) bottom calc(-90px * var(--ui-scale)) / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              #EDF5F9;
  content: "";
}

/*.p-top-service__wrapper:before {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 200px;
  background: #fff;
  content: "";
}*/

.p-top-service__inner {
  width: 100%;
  max-width: calc((1568px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-service__columns {
  display: grid;
  grid-template-columns: 1fr calc(824px * var(--ui-scale));
  gap: 0 calc(184px * var(--ui-scale));
  /*position: relative;
  top: -120px;*/
  padding-right: clamp(34px, calc(34px + (128 - 34) * (100vw - 1280px) / (1920 - 1280)), 128px);
}

.p-top-service__column {
  position: relative;
}

.p-top-service__column:nth-child(2) {
  padding-top: calc(74px * var(--ui-scale));
}

.p-top-service__illust:first-child {
  position: absolute;
  left: clamp(180px, calc(180px + (278 - 180) * (100vw - 1280px) / (1920 - 1280)), 278px);
  bottom: clamp(-72px, calc(-62px + (-10) * (100vw - 1280px) / (1920 - 1280)), -62px);
  z-index: 1;
  width: clamp(262.5px, calc(262.5px + (300 - 262.5) * (100vw - 1280px) / (1920 - 1280)), 300px);
  height: clamp(262.5px, calc(262.5px + (300 - 262.5) * (100vw - 1280px) / (1920 - 1280)), 300px);
  border-radius: 50%;
  background: #fff;
}

.p-top-service__illust:first-child img {
  transform: translate(calc(-30px * var(--ui-scale)), calc(-35px * var(--ui-scale)));
  width: 280px;
  width: clamp(245px, calc(245px + (280 - 245) * (100vw - 1280px) / (1920 - 1280)), 280px);
}

.p-top-service__illust:nth-child(2) {
  position: absolute;
  left: 515px;
  left: clamp(387px, calc(387px + (515 - 387) * (100vw - 1280px) / (1920 - 1280)), 515px);
  bottom: -56px;
  bottom: clamp(-56px, calc(-48px + (-8) * (100vw - 1280px) / (1920 - 1280)), -48px);
  width: clamp(120.75px, calc(120.75px + (138 - 120.75) * (100vw - 1280px) / (1920 - 1280)), 138px);
  height: clamp(120.75px, calc(120.75px + (138 - 120.75) * (100vw - 1280px) / (1920 - 1280)), 138px);
  border-radius: 50%;
  background: #fff;
}

.p-top-service__illust:nth-child(2) img {
  transform: translate(clamp(50px, calc(50px + (58 - 50) * (100vw - 1280px) / (1920 - 1280)), 58px), clamp(24px, calc(24px + (28 - 24) * (100vw - 1280px) / (1920 - 1280)), 28px));
}

.p-top-service__illust:nth-child(2):before,
.p-top-service__illust:nth-child(2):after {
  position: absolute;
  border-radius: 50%;
  background: #fff;
  content: "";
}

.p-top-service__illust:nth-child(2):before {
  width: calc(28px * var(--ui-scale));
  height: calc(28px * var(--ui-scale));
  bottom: calc(6px * var(--ui-scale));
  right: calc(-92px * var(--ui-scale));
}

.p-top-service__illust:nth-child(2):after {
  width: calc(14px * var(--ui-scale));
  height: calc(14px * var(--ui-scale));
  bottom: calc(-8px * var(--ui-scale));
  right: calc(-118px * var(--ui-scale));
}

.p-top-service__image {
  /*overflow: hidden;*/
  /*margin-top: -76px;*/
  /*margin-left: -178px;*/
  margin-left: clamp(-216px, calc(-216px + 38 * (100vw - 1280px) / (1920 - 1280)), -178px);
  /*border-radius: 0 clamp(0px, calc(0px + (32 - 0) * (100vw - 1280px) / (1920 - 1280)), 32px) clamp(0px, calc(0px + (32 - 0) * (100vw - 1280px) / (1920 - 1280)), 32px) 0;*/
}

.p-top-service__lead {
  margin-top: calc(40px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-top-service__text {
  margin-top: calc(24px * var(--ui-scale));
  padding-bottom: calc(18px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
}

.p-top-service__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
  margin-top: calc(176px * var(--ui-scale));
  /*margin-top: calc(58px * var(--ui-scale));*/
}

.p-top-service__card {
  padding: calc(32px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
}

.p-top-service-card__image {
  width: calc(112px * var(--ui-scale));
  margin: 0 auto;
}

.p-top-service-card__heading {
  margin-top: calc(22px * var(--ui-scale));
  color: #399273;
  font-size: calc(20px * var(--ui-scale));
  text-align: center;
}

.p-top-service-card__heading:after {
  display: block;
  width: calc(44px * var(--ui-scale));
  height: calc(4px * var(--ui-scale));
  margin: calc(22px * var(--ui-scale)) auto 0;
  background-image: radial-gradient(circle, #399273 calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)));
  background-position: calc(-2px * var(--ui-scale)) 0;
  background-repeat: repeat-x;
  background-size: calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale));
  content: "";
}

.p-top-service-card__list {
  margin-top: calc(32px * var(--ui-scale));
}

.p-top-service-card__item:nth-child(n + 2) {
  margin-top: calc(15px * var(--ui-scale));
}

.p-top-service-card__item a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: calc(15px * var(--ui-scale));
  /*border-bottom: calc(1px * var(--ui-scale)) dashed #399273;*/
  border-bottom: 1px dashed #399273;
  color: #333;
  font-weight: 700;
  transition: color .5s;
}

.p-top-service-card__item a:hover {
  color: #83563B;
}

.p-top-service-card__item a:after {
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M7.11667%206.66667L5.06667%208.71667L6%209.66667L9%206.66667L6%203.66667L5.06667%204.61667L7.11667%206.66667ZM6.66667%2013.3333C5.74444%2013.3333%204.87778%2013.1583%204.06667%2012.8083C3.25556%2012.4583%202.55%2011.9833%201.95%2011.3833C1.35%2010.7833%200.875%2010.0778%200.525%209.26667C0.175%208.45556%200%207.58889%200%206.66667C0%205.74444%200.175%204.87778%200.525%204.06667C0.875%203.25556%201.35%202.55%201.95%201.95C2.55%201.35%203.25556%200.875%204.06667%200.525C4.87778%200.175%205.74444%200%206.66667%200C7.58889%200%208.45556%200.175%209.26667%200.525C10.0778%200.875%2010.7833%201.35%2011.3833%201.95C11.9833%202.55%2012.4583%203.25556%2012.8083%204.06667C13.1583%204.87778%2013.3333%205.74444%2013.3333%206.66667C13.3333%207.58889%2013.1583%208.45556%2012.8083%209.26667C12.4583%2010.0778%2011.9833%2010.7833%2011.3833%2011.3833C10.7833%2011.9833%2010.0778%2012.4583%209.26667%2012.8083C8.45556%2013.1583%207.58889%2013.3333%206.66667%2013.3333ZM6.66667%2012C8.15556%2012%209.41667%2011.4833%2010.45%2010.45C11.4833%209.41667%2012%208.15556%2012%206.66667C12%205.17778%2011.4833%203.91667%2010.45%202.88333C9.41667%201.85%208.15556%201.33333%206.66667%201.33333C5.17778%201.33333%203.91667%201.85%202.88333%202.88333C1.85%203.91667%201.33333%205.17778%201.33333%206.66667C1.33333%208.15556%201.85%209.41667%202.88333%2010.45C3.91667%2011.4833%205.17778%2012%206.66667%2012Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  .p-top-service {
    padding-top: 0;
  }

  .p-top-service__wrapper {
    padding-bottom: 170px;
  }

  .p-top-service__wrapper:before {
    top: 300px;
    left: 0;
    transform: translateX(0);
    width: 100%;
    height: calc(100% - 300px);
    border-radius: 0;
    background: url(lib/images/bg_dot_01_reverse.png) no-repeat left 0 top 0 / calc(491px / 2) calc(506px / 2),
                url(lib/images/bg_wave_01.png) repeat-x left calc(50% + 78px) bottom -50px / calc(1408px * .568) calc(247px * .568),
                #EDF5F9;
  }

  .p-top-service__inner {
    padding: 0 24px;
  }

  .p-top-service__columns {
    /*grid-template-columns: none;*/
    display: flex;
    flex-direction: column;
    padding-right: 0;
  }

  .p-top-service__column {
    display: contents;
  }

  .p-top-service__column:nth-child(2) {
    padding: 64px 0;
  }

  .p-top-service__illusts {
    order: 1;
    position: relative;
    margin-top: 70px;
  }

  .p-top-service__illust:first-child {
    position: relative;
    z-index: 1;
    left: auto;
    bottom: auto;
    transform: translateX(-50px);
    width: 212px;
    height: 212px;
    margin: 0 auto;
  }

  .p-top-service__illust:first-child img {
    transform: translate(-20px, -25px);
    width: 198px;
  }

  .p-top-service__illust:nth-child(2) {
    bottom: 12px;
    left: calc(50% + 10px);
    width: 98px;
    height: 98px;
  }

  .p-top-service__illust:nth-child(2) img {
    transform: translate(42px, 20px);
  }

  .p-top-service__illust:nth-child(2):before,
  .p-top-service__illust:nth-child(2):after {

  }

  .p-top-service__illust:nth-child(2):before {
    right: -68px;
    bottom: 4px;
    width: 20px;
    height: 20px;
  }

  .p-top-service__illust:nth-child(2):after {
    content: none;
  }

  .p-top-service__image {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }

  .p-top-service__image img {
    width: 100%;
    height: 300px;
    object-fit: cover;
  }

  .p-top-service .c-heading {
    margin-top: 64px;
    text-align: center;
  }

  .p-top-service__lead {
    margin-top: 44px;
    font-size: 16px;
  }

  .p-top-service__text {
    margin-top: 14px;
    padding-bottom: 0;
    font-size: 16px;
  }

  .p-top-service__cards {
    grid-template-columns: none;
    gap: 32px 0;
    margin-top: 88px;
  }

  .p-top-service__card {
    padding: 24px;
    border-radius: 16px;
  }

  .p-top-service-card__head {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0 16px;
  }

  .p-top-service-card__image {
    width: 80px;
  }

  .p-top-service-card__heading {
    margin-top: 0;
    font-size: 16px;
    text-align: left;
  }

  .p-top-service-card__heading:after {
    content: none;
  }

  .p-top-service-card__list {
    margin-top: 18px;
  }

  .p-top-service-card__item:nth-child(n + 2) {
    margin-top: 9px;
  }

  .p-top-service-card__item a {
    padding-bottom: 6px;
    font-size: 14px;
  }

  .p-top-service-card__item a:after {
    width: 14px;
    height: 14px;
  }

}

/* 仙台給湯器レスキューが選ばれる理由（トップページ） */
.p-top-feature__wrapper {
  position: relative;
  z-index: 1;
  /*padding: calc(142px * var(--ui-scale)) 0 calc(120px * var(--ui-scale));*/
  padding: 0 0 calc(120px * var(--ui-scale));
  /*border-radius: calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale)) 0 0;
  background: url(lib/images/bg_dot_01.png) no-repeat center top calc(210px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;*/
}

.p-top-feature__wrapper:before {
  position: absolute;
  top: calc(244px * var(--ui-scale));
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: calc(100% - calc(244px * var(--ui-scale)));
  border-radius: calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale)) 0 0;
  background: url(lib/images/bg_dot_01.png) no-repeat center top calc(210px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              linear-gradient(180deg, #EDF5F9 38.46%, #DDF4FF 79.33%, #EDF5F9 100%);
  content: "";
}

.p-top-feature__inner {
  width: 100%;
  max-width: calc((1568px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-feature__float {

}

.p-top-feature__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
  margin-top: calc(70px * var(--ui-scale));
  /*margin-top: calc(60px * var(--ui-scale));*/
}

.p-top-feature__card {
  padding: calc(24px * var(--ui-scale)) calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) dashed #399273;*/
  border: 1px dashed #399273;
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
}

.p-top-feature-card__number {
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: calc(40px * var(--ui-scale));
  font-weight: 500;
}

.p-top-feature-card__number span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(60px * var(--ui-scale));
  height: calc(60px * var(--ui-scale));
  margin: 0 auto;
  background: #F5CB29;
}

.p-top-feature-card__body {
  margin-top: calc(12px * var(--ui-scale));
}

.p-top-feature-card__text {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-top-feature-card__heading {
  margin-top: calc(14px * var(--ui-scale));
  color: #399273;
  font-size: calc(30px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-top-difference {
  margin-top: calc(96px * var(--ui-scale));
  /*margin-top: calc(110px * var(--ui-scale));*/
}

.p-top-difference__inner {
  width: 100%;
  max-width: calc((1088px + (4px * 1)) * var(--ui-scale));
  margin: 0 auto;
}

.p-top-difference__lead {
  text-align: center;
  font-weight: 700;
}

.p-top-difference__lead span {
  display: inline-block;
  padding: calc(7px * var(--ui-scale)) calc(184px * var(--ui-scale));
  /*border-top: calc(1px * var(--ui-scale)) solid #399273;
  border-bottom: calc(1px * var(--ui-scale)) solid #399273;*/
  border-top: 1px solid #399273;
  border-bottom: 1px solid #399273;
}

.p-top-difference__heading {
  margin-top: calc(14px * var(--ui-scale));
  color: #444444;
  font-size: calc(24px * var(--ui-scale));
  text-align: center;
}

.p-top-difference__heading span {
  color: #399273;
}

.p-top-difference__rows {
  position: relative;
  z-index: 1;
  margin-top: calc(46px * var(--ui-scale));
}

.p-top-difference__rows:before {
  position: absolute;
  top: 60px;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 480px;
  background: #EDF5F9;
  content: "";
}

.p-top-difference__row:nth-child(n + 2) {
  margin-top: calc(4px * var(--ui-scale));
}

.p-top-difference__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 calc(4px * var(--ui-scale));
}

.p-top-difference__row:first-child .p-top-difference__item {
  margin-top: calc(18px * var(--ui-scale));
  padding: calc(24px * var(--ui-scale)) 0;
  border-radius: calc(16px * var(--ui-scale)) calc(16px * var(--ui-scale)) 0 0;
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-top-difference__row:first-child .p-top-difference__item:first-child {
  background: #399273;
}

.p-top-difference__row:first-child .p-top-difference__item:nth-child(2) {
  margin-top: 0;
  padding: calc(38px * var(--ui-scale)) 0 0;
  border-radius: calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale)) 0 0;
  box-shadow: 0 calc(2px * var(--ui-scale)) calc(4px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  font-size: calc(20px * var(--ui-scale));
}

.p-top-difference__row:first-child .p-top-difference__item:nth-child(3) {
  background: #005638;
}

.p-top-difference__row:nth-child(n + 2) .p-top-difference__item {
  display: flex;
  align-items: center;
  /*min-height: calc(116px * var(--ui-scale));*/
  min-height: calc(114px * var(--ui-scale));
  background: #fff;
}

.p-top-difference__row:nth-child(n + 2) .p-top-difference__item:first-child {
  justify-content: center;
  background: #F4FAFE;
  font-family: "Roboto", sans-serif;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 500;
  letter-spacing: 0.05em;
}

.p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(2),
.p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(3) {
  padding-inline: calc(32px * var(--ui-scale)) calc(24px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
}

.p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(2) {
  font-weight: 700;
}

.p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(2) span {
  transform: translateY(calc(-5px * var(--ui-scale)));
  color: #399273;
  font-size: calc(24px * var(--ui-scale));
}

.p-top-difference-item__text {
  display: flex;
  gap: 0 calc(16px * var(--ui-scale));
}

/*.p-top-difference__table {
  margin-top: 44px;
}

.p-top-difference__table table {
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 2px;
}

.p-top-difference__table thead th {
  padding: 32px 0;
  border-radius: 16px 16px 0 0;
  color: #fff;
  font-size: 18px;
}

.p-top-difference__table thead th:first-child {
  background: #399273;
}

.p-top-difference__table thead th:nth-child(2) {
  margin-bottom: -16px;
  border-radius: 32px 32px 0 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  font-size: 20px;
}

.p-top-difference__table thead th:nth-child(3) {
  background: #005638;
}*/

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

  .p-top-feature__wrapper {
    padding: 0 0 48px;
  }

  .p-top-feature__wrapper:before {
    top: 16px;
    left: 0;
    transform: translateX(0);
    width: 100%;
    height: calc(100% - 16px);
    border-radius: 0;
    background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top 554px / calc(491px / 2) calc(506px / 2),
                linear-gradient(180deg, #EDF5F9 38.46%, #DDF4FF 79.33%, #EDF5F9 100%);
  }

  .p-top-feature__inner {
    padding: 0 14px;
  }

  .p-top-feature__float {

  }

  .p-top-feature__cards {
    display: block;
    margin-top: 46px;
    padding: 24px;
    border-radius: 16px;
    background: #fff;
  }

  .p-top-feature__card {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0 24px;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
  }

  .p-top-feature__card:nth-child(n + 2) {
    margin-top: 16px;
    padding-top: 25px;
    border-top: 1px dashed #399273;
  }

  .p-top-feature-card__number {
    font-size: 32px;
  }

  .p-top-feature-card__number span {
    width: 48px;
    height: 48px;
  }

  .p-top-feature-card__body {
    margin-top: 0;
  }

  .p-top-feature-card__text {
    font-size: 14px;
    text-align: left;
  }

  .p-top-feature-card__heading {
    margin-top: 4px;
    font-size: 18px;
    text-align: left;
  }

  .p-top-difference {
    margin-top: 72px;
  }

  .p-top-difference__inner {
    padding: 0 10px;
  }

  .p-top-difference__lead {
    font-size: 14px;
  }

  .p-top-difference__lead span {
    display: block;
    padding: 7px 0;
    border-top: 1px solid #399273;
    border-bottom: 1px solid #399273;
  }

  .p-top-difference__heading {
    margin-top: 16px;
    font-size: 20px;
    line-height: 1.5;
  }

  .p-top-difference__heading span {

  }

  .p-top-difference__rows {
    margin-top: 50px;
  }

  .p-top-difference__rows:before {

  }

  .p-top-difference__row:nth-child(n + 2) {

  }

  .p-top-difference__list {
    grid-template-columns: calc((80 / 352) * 100%) 1fr calc((132 / 352) * 100%);
  }

  .p-top-difference__row:first-child .p-top-difference__item {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 10px;
    padding: 8px;
    border-radius: 8px 8px 0 0;
    font-size: 14px;
    text-align: left;
  }

  .p-top-difference__row:first-child .p-top-difference__item:first-child {

  }

  .p-top-difference__row:first-child .p-top-difference__item:nth-child(2) {
    padding: 14px 8px 0;
    border-radius: 8px 8px 0 0;
    font-size: 14px;
    line-height: 1.5;
  }

  .p-top-difference__row:first-child .p-top-difference__item:nth-child(3) {

  }

  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item {
    min-height: 60px;
    padding-block: 4px;
    text-align: center;
  }

  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item:first-child {
    font-size: 12px;
    line-height: 1.5;
  }

  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(2),
  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(3) {
    justify-content: center;
    padding-inline: 0;
    font-size: 12px;
    line-height: 1.5;
  }

  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(2) {

  }

  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(2) span {
    transform: translateY(0);
    font-size: 20px;
  }

  .p-top-difference__row:nth-child(n + 2) .p-top-difference__item:nth-child(3) span {
    font-size: 14px;
  }

  .p-top-difference-item__text {
    flex-direction: column;
    align-items: center;
    gap: 4px 0;
  }

}

/* 価格の安さだけで選ぶと、後悔することも。（トップページ） */
.p-top-point__wrapper {
  width: 100%;
  max-width: calc(1792px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(80px * var(--ui-scale)) 0 calc(80px * var(--ui-scale));
  /*background: url("lib/images/bg_maintenance.png") no-repeat center / cover;*/
  background: linear-gradient(rgba(0, 36, 23, .7), rgba(0, 36, 23, .7)),
              url("lib/images/bg_maintenance.png") no-repeat center / cover;
}

.p-top-point__inner {
  /*padding: 0 calc(24px * var(--ui-scale));*/
  padding: 0 24px;
}

.p-top-point__heading {
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-top-point__heading span {
  display: inline-block;
  padding: calc(14px * var(--ui-scale)) calc(30px * var(--ui-scale)) calc(16px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #46CC9D;*/
  border: 1px solid #46CC9D;
}

.p-top-point__lead {
  margin-top: calc(24px * var(--ui-scale));
  color: #fff;
  font-weight: 700;
  text-align: center;
}

.p-top-point__list {
  width: fit-content;
  margin: calc(46px * var(--ui-scale)) auto 0;
}

.p-top-point__item {
  display: flex;
  align-items: center;
  gap: 0 calc(18px * var(--ui-scale));
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-top-point__item:nth-child(n + 2) {
  margin-top: calc(14px * var(--ui-scale));
}

.p-top-point__item:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75555%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75555%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75555%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75555%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-top-point__text {
  margin-top: calc(48px * var(--ui-scale));
  color: #fff;
  font-weight: 700;
  text-align: center;
}

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

  .p-top-point__wrapper {
    padding: 62px 0;
    /*background: url("lib/images/bg_maintenance.jpg") no-repeat left calc(50% + 60px) center / cover;*/
    background: linear-gradient(rgba(0, 36, 23, .7), rgba(0, 36, 23, .7)),
               url("lib/images/bg_maintenance.png") no-repeat left calc(50% + 60px) center / cover;
  }

  .p-top-point__inner {

  }

  .p-top-point__heading {
    font-size: 18px;
    line-height: 1.7;
  }

  .p-top-point__heading span {
    display: block;
    padding: 0 0 16px;
    border: none;
    border-bottom: 1px solid #46CC9D;
  }

  .p-top-point__lead {
    margin-top: 24px;
    font-size: 14px;
  }

  .p-top-point__list {
    margin-top: 24px;
  }

  .p-top-point__item {
    align-items: flex-start;
    gap: 0 10px;
    padding-left: 2px;
    font-size: 16px;
    line-height: 1.5;
  }

  .p-top-point__item:nth-child(n + 2) {
    margin-top: 16px;
  }

  .p-top-point__item:before {
    flex-shrink: 0;
    transform: translateY(3px);
    width: 20px;
    height: 20px;
  }

  .p-top-point__text {
    margin-top: 24px;
  }


}

/* 料金・費用（トップページ） */
.p-top-fee {
  padding: 0 calc(64px * var(--ui-scale));
}

.p-top-fee__wrapper {
  position: relative;
  z-index: 1;
  padding: calc(142px * var(--ui-scale)) 0 calc(96px * var(--ui-scale));
  /*border-radius: 0 0 calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale));*/
  /*background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top calc(80px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;*/
}

.p-top-fee__wrapper:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: 100%;
  border-radius: 0 0 calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale));
  background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top calc(80px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;
  content: "";
}

.p-top-fee__inner {
  width: 100%;
  max-width: calc(1088px * var(--ui-scale));
  margin: 0 auto;
}

.p-top-fee__head {
  display: grid;
  grid-template-columns: calc(418px * var(--ui-scale)) 1fr;
  gap: 0 calc(80px * var(--ui-scale));
}

.p-top-fee__lead {
  margin-top: calc(38px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.p-top-fee__text {
  margin-top: calc(24px * var(--ui-scale));
}

.p-top-subsidy {
  margin-top: calc(104px * var(--ui-scale));
}

.p-top-subsidy__container {
  position: relative;
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(58px * var(--ui-scale)) calc(32px * var(--ui-scale)) calc(44px * var(--ui-scale));
  border: calc(3px * var(--ui-scale)) solid #B3D2C7;
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
}

.p-top-subsidy__container--sp {
  display: none;
}

.p-top-subsidy__container:before {
  position: absolute;
  top: calc(-3px * var(--ui-scale));
  left: 50%;
  transform: translateX(-50%);
  width: calc(402px * var(--ui-scale));
  height: calc(3px * var(--ui-scale));
  background: #fff;
  content: "";
}

.p-top-subsidy__float {
  position: absolute;
  top: calc(-84px * var(--ui-scale));
  right: calc(48px * var(--ui-scale));
  width: calc(177px * var(--ui-scale));
}

.p-top-subsidy__heading {
  position: absolute;
  top: calc(-26px * var(--ui-scale));
  left: 50%;
  transform: translateX(-50%);
}

.p-top-subsidy__heading span {
  display: flex;
  justify-content: center;
  gap: 0 calc(26px * var(--ui-scale));
  color: #399273;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-top-subsidy__heading span:before,
.p-top-subsidy__heading span:after {
  width: calc(4px * var(--ui-scale));
  height: calc(30px * var(--ui-scale));
  background: #399273;
  content: "";
}

.p-top-subsidy__heading span:before {
  transform: translateY(calc(5px * var(--ui-scale))) rotate(-15deg);
}

.p-top-subsidy__heading span:after {
  transform: translateY(calc(5px * var(--ui-scale))) rotate(15deg);
}

.p-top-subsidy__image {
  position: relative;
  padding-top: calc(12px * var(--ui-scale));
}

.p-top-subsidy__image span {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: calc(40px * var(--ui-scale));
  right: calc(-54px * var(--ui-scale));
  width: calc(120px * var(--ui-scale));
  height: calc(120px * var(--ui-scale));
  border-radius: 50%;
  background: #F5CB29;
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  font-weight: 700;
}

.p-top-subsidy__image img {
  position: relative;
  z-index: 1;
}

.p-top-subsidy__body {
  display: grid;
  grid-template-columns: calc(177px * var(--ui-scale)) 1fr;
  gap: 0 calc(62px * var(--ui-scale));
}

.p-top-subsidy__label {
  padding-left: calc(46px * var(--ui-scale));
  color: #005638;
  font-weight: 700;
}

.p-top-subsidy__label span {
  display: inline-block;
  padding: calc(4px * var(--ui-scale)) calc(32px * var(--ui-scale));
  background: #FFE762;
}

.p-top-subsidy__copy {
  margin-top: calc(26px * var(--ui-scale));
  padding-left: calc(10px * var(--ui-scale));
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.p-top-subsidy__copy span {
  margin-right: calc(6px * var(--ui-scale));
  color: #005638;
  font-size: calc(32px * var(--ui-scale));
}

.p-top-subsidy__text {
  margin-top: calc(2px * var(--ui-scale));
  font-weight: 700;
}

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

  .p-top-fee {
    padding: 0;
  }

  .p-top-fee__wrapper {
    padding: 80px 0;
  }

  .p-top-fee__wrapper:before {
    width: 100%;
    height: 100%;
    border-radius: 0;
    background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top -1px / calc(491px / 2) calc(506px / 2),
                #EDF5F9;
  }

  .p-top-fee__inner {
    padding: 0 24px;
  }

  .p-top-fee__head {
    grid-template-columns: none;
    gap: 48px 0;
  }

  .p-top-fee .c-heading {
    text-align: center;
  }

  .p-top-fee__image {
    width: 352px;
    margin: 0 auto;
  }

  .p-top-fee__lead {
    margin-top: 44px;
    font-size: 18px;
    line-height: 1.7;
  }

  .p-top-fee__text {
    margin-top: 16px;
  }

  .p-top-subsidy {
    margin-top: 132px;
  }

  .p-top-subsidy__container {
    max-width: none;
    padding: 46px 16px;
    border: 2px solid #B3D2C7;
    border-radius: 16px;
  }

  .p-top-subsidy__container--pc {
    display: none;
  }

  .p-top-subsidy__container--sp {
    display: block;
  }

  .p-top-subsidy__container:before {
    content: none;
  }

  .p-top-subsidy__float {
    top: -50px;
    right: 14px;
    width: 71px;
  }

  .p-top-subsidy__heading {
    top: -76px;
    width: 100%;
  }

  .p-top-subsidy__heading span {
    align-items: flex-end;
    gap: 0 16px;
    font-size: 20px;
    line-height: 1.5;
  }

  .p-top-subsidy__heading span:before,
  .p-top-subsidy__heading span:after {
    width: 3.5px;
    height: 26px;
  }

  .p-top-subsidy__heading span:before {
    transform: translateY(-4px) rotate(-15deg);
  }

  .p-top-subsidy__heading span:after {
    transform: translateY(-4px) rotate(15deg);
  }
  .p-top-subsidy__image {
    position: absolute;
          top: -66px;
      left: 4px;
    padding-top: 0;
    width: 89px;
  }

  .p-top-subsidy__block {
    display: flex;
    justify-content: center;
    gap: 0 8px;
    margin-top: 10px;
  }

  .p-top-subsidy__body {
    display: block;
  }

  .p-top-subsidy__label {
    padding-left: 0;
    text-align: center;
  }

  .p-top-subsidy__max {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #F5CB29;
    color: #fff;
    font-weight: 700;
  }

  .p-top-subsidy__copy {
    margin-top: 0;
    padding-left: 0;
    font-size: 16px;
    text-align: right;
  }

  .p-top-subsidy__copy span {
    display: block;
    margin-bottom: 2px;
    margin-right: 0;
    font-size: 24px;
  }

  .p-top-subsidy__text {
    margin-top: 14px;
    font-size: 14px;
    text-align: center;
  }

  .p-top-subsidy .c-button {
    margin-top: 18px;
  }

}

/* 取扱い製品（トップページ） */
#lineup-carousel {
  padding: 0 clamp(0px, calc(0px + (76 - 0) * (100vw - 1280px) / (1920 - 1280)), 76px);
}

#lineup-carousel .splide__wrapper {
  position: relative;
}

#lineup-carousel .splide__arrow {
  position: absolute;
  top: 50%;
  z-index: 1;
  width: calc(40px * var(--ui-scale));
  height: calc(40px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M18.65%2020L24.8%2026.15L22%2029L13%2020L22%2011L24.8%2013.85L18.65%2020ZM20%2040C22.7667%2040%2025.3667%2039.475%2027.8%2038.425C30.2333%2037.375%2032.35%2035.95%2034.15%2034.15C35.95%2032.35%2037.375%2030.2333%2038.425%2027.8C39.475%2025.3667%2040%2022.7667%2040%2020C40%2017.2333%2039.475%2014.6333%2038.425%2012.2C37.375%209.76667%2035.95%207.65%2034.15%205.85C32.35%204.05%2030.2333%202.625%2027.8%201.575C25.3667%200.525%2022.7667%200%2020%200C17.2333%200%2014.6333%200.525%2012.2%201.575C9.76667%202.625%207.65%204.05%205.85%205.85C4.05%207.65%202.625%209.76667%201.575%2012.2C0.525002%2014.6333%200%2017.2333%200%2020C0%2022.7667%200.525002%2025.3667%201.575%2027.8C2.625%2030.2333%204.05%2032.35%205.85%2034.15C7.65%2035.95%209.76667%2037.375%2012.2%2038.425C14.6333%2039.475%2017.2333%2040%2020%2040ZM20%2036C15.5333%2036%2011.75%2034.45%208.65%2031.35C5.55%2028.25%204%2024.4667%204%2020C4%2015.5333%205.55%2011.75%208.65%208.65C11.75%205.55%2015.5333%204%2020%204C24.4667%204%2028.25%205.55%2031.35%208.65C34.45%2011.75%2036%2015.5333%2036%2020C36%2024.4667%2034.45%2028.25%2031.35%2031.35C28.25%2034.45%2024.4667%2036%2020%2036Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  transition: opacity .5s;
}

#lineup-carousel .splide__arrow--prev {
  /*left: calc(-40px + -28px);*/
  left: clamp(-76px, calc(-12px + (-64) * (100vw - 1280px) / (1920 - 1280)), -12px);
  transform: translateY(-50%);
}

#lineup-carousel .splide__arrow--next {
  /*right: calc(-40px + -28px);*/
  right: clamp(-76px, calc(-12px + (-64) * (100vw - 1280px) / (1920 - 1280)), -12px);
  transform: translateY(-50%) scaleX(-1);
}

#lineup-carousel .splide__arrow:hover {
  opacity: .7;
}

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

  #lineup-carousel {
    padding: 0;
  }

  #lineup-carousel .splide__arrow {
    display: none;
  }

}

/* 取扱い製品 */
.c-product {
  display: block;
  /*padding: 48px;*/
  padding: clamp(34px, calc(34px + (48 - 34) * (100vw - 1280px) / (1920 - 1280)), 48px) clamp(34px, calc(34px + (48 - 34) * (100vw - 1280px) / (1920 - 1280)), 48px) clamp(30px, calc(30px + (44 - 30) * (100vw - 1280px) / (1920 - 1280)), 44px);
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  border-radius: clamp(22px, calc(22px + (32 - 22) * (100vw - 1280px) / (1920 - 1280)), 32px);
transition: opacity .5s;
}


.c-product:hover {
  opacity: .7;
}

.c-product__columns {
  display: grid;
  grid-template-columns: 1fr calc(184px * var(--ui-scale));
  grid-template-columns: 1fr calc((184 / 456) * 100%);
  gap: 0 clamp(32px, calc(32px + (44 - 32) * (100vw - 1280px) / (1920 - 1280)), 44px);
}

.c-product__categories {

}

.c-product__category {
  font-size: clamp(9.91px, calc(9.91px + (14 - 9.91) * (100vw - 1280px) / (1920 - 1280)), 14px);
  font-weight: 700;
  line-height: 1;
}

.c-product__category span {
  display: inline-block;
  padding: clamp(6px, calc(6px + (8 - 6) * (100vw - 1280px) / (1920 - 1280)), 8px) clamp(12px, calc(12px + (16 - 12) * (100vw - 1280px) / (1920 - 1280)), 16px);
  background: #399273;
  color: #fff;
}

.c-product__heading {
  margin-top: clamp(2px, calc(2px + (4 - 2) * (100vw - 1280px) / (1920 - 1280)), 4px);
  color: #005638;
  font-size: clamp(16.98px, calc(16.98px + (24 - 16.98) * (100vw - 1280px) / (1920 - 1280)), 24px);
  line-height: 1.5;
}

.c-product__specs {
  margin-top: clamp(10px, calc(10px + (16 - 10) * (100vw - 1280px) / (1920 - 1280)), 16px);
}

.c-product__spec {
  display: grid;
  grid-template-columns: clamp(62px, calc(62px + (90 - 62) * (100vw - 1280px) / (1920 - 1280)), 90px) 1fr;
  align-items: center;
  gap: 0 calc(8px * var(--ui-scale));
}

.c-product__spec:nth-child(n + 2) {
  margin-top: calc(4px * var(--ui-scale));
}

.c-product__spec dt {
  position: relative;
  color: #333;
  padding-left: clamp(14px, calc(14px + (20 - 14) * (100vw - 1280px) / (1920 - 1280)), 20px);
  font-size: clamp(8.49px, calc(8.49px + (12 - 8.49) * (100vw - 1280px) / (1920 - 1280)), 12px);
  font-weight: 700;
}

.c-product__spec dt:before {
  position: absolute;
  top: calc(4px * var(--ui-scale));
  left: 0;
  width: clamp(8.49px, calc(8.49px + (12 - 8.49) * (100vw - 1280px) / (1920 - 1280)), 12px);
  height: clamp(8.49px, calc(8.49px + (12 - 8.49) * (100vw - 1280px) / (1920 - 1280)), 12px);
  background: #399273;
  content: "";
}

.c-product__spec dd {
color: #333;
/*   color: #399273; */
  font-size: clamp(14.15px, calc(14.15px + (20 - 14.15) * (100vw - 1280px) / (1920 - 1280)), 20px);
  font-weight: 700;
  line-height: 1.5;
}

.c-product__spec:nth-child(2) dd {
  color: #399273;
}

.c-product__tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(4px * var(--ui-scale));
  margin-top: clamp(20px, calc(20px + (26 - 20) * (100vw - 1280px) / (1920 - 1280)), 26px);
}

.c-product__tags--sp {
  display: none;
}

.c-product__tag {
  padding: clamp(6px, calc(6px + (8 - 6) * (100vw - 1280px) / (1920 - 1280)), 8px) clamp(5px, calc(5px + (7 - 5) * (100vw - 1280px) / (1920 - 1280)), 7px);
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  color: #005638;
  font-size: clamp(9.91px, calc(9.91px + (14 - 9.91) * (100vw - 1280px) / (1920 - 1280)), 14px);
  line-height: 1;
}

.c-product__button {
  margin-top: clamp(10px, calc(10px + (16 - 10) * (100vw - 1280px) / (1920 - 1280)), 16px);
}

.c-product .c-product__button .c-link {
  font-size: clamp(9.91px, calc(9.91px + (14 - 9.91) * (100vw - 1280px) / (1920 - 1280)), 14px);
}

.c-product .c-product__button .c-link:after {
  width: clamp(9.43px, calc(9.43px + (14 - 9.43) * (100vw - 1280px) / (1920 - 1280)), 14px);
  height: clamp(9.43px, calc(9.43px + (14 - 9.43) * (100vw - 1280px) / (1920 - 1280)), 14px);
}

.c-product__image img {
  width: 100%;
  /*height: 100%;*/
  aspect-ratio: 184 / 238;
  object-fit: contain;
}

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

  .c-product {
    padding: 24px;
    border: 1px solid #399273;
    border-radius: 8px;
  }

  .c-product__columns {
    grid-template-columns: 1fr 102px;
    gap: 0 16px;
  }

  .c-product__column:first-child {
    display: flex;
    flex-direction: column;
  }

  .c-product__categories {

  }

  .c-product__category {
    font-size: 12px;
  }

  .c-product__category span {
    padding: 8px 7px;
  }

  .c-product__heading {
    margin-top: 4px;
    font-size: 20px;
  }

  .c-product__specs {
    margin-top: 8px;
  }

  .c-product__spec {
    grid-template-columns: none;
    align-items: normal;
    gap: 0;
  }

  .c-product__spec:nth-child(n + 2) {
    margin-top: 4px;
  }

  .c-product__spec dt {
    padding-left: 20px;
    font-size: 12px;
  }

  .c-product__spec dt:before {
    top: 4px;
    width: 12px;
    height: 12px;
  }

  .c-product__spec dd {
    font-size: 20px;
  }

  .c-product__tags {
    flex-direction: column;
    gap: 4px 0;
    margin-top: 18px;
  }

  .c-product__tags--pc {
    display: none;
  }

  .c-product__tags--sp {
    display: flex;
  }

  .c-product__tag {
    padding: 7px 0;
    border: 1px solid #399273;
    color: #005638;
    font-size: 12px;
    text-align: center;
  }

  .c-product__button {
    margin-top: auto;
  }

  .c-product .c-product__button .c-link {
    font-size: 12px;
  }

  .c-product .c-product__button .c-link:after {
    width: 12px;
    height: 12px;
  }

  .c-product__image {

  }


}

/* 絞り込み機能 */
.p-filter {

}

.p-filter__container {
  width: 100%;
  max-width: calc(1088px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(48px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #F8F8F8;
}

.p-filter__list + .c-subheading {
  margin-top: calc(32px * var(--ui-scale));
}

.p-filter__list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(48px * var(--ui-scale));
  margin-top: calc(32px * var(--ui-scale));
}

.p-filter__item label {
  display: flex;
  align-items: center;
  gap: 0 calc(16px * var(--ui-scale));
  cursor: pointer;
}

.p-filter__item input[type="checkbox"] {
  position: relative;
  width: calc(32px * var(--ui-scale));
  height: calc(32px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #CCCCCC;*/
  border: 1px solid #CCCCCC;
  background: #fff;
  cursor: pointer;
  vertical-align: calc(-2px * var(--ui-scale));
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.p-filter__item input[type="checkbox"]:checked::before {
  position: absolute;
  top: calc(9px * var(--ui-scale));
  left: calc(13px * var(--ui-scale));
  transform: rotate(45deg);
  width: calc(6px * var(--ui-scale));
  height: calc(10px * var(--ui-scale));
  border-right: calc(2px * var(--ui-scale)) solid #399273;
  border-bottom: calc(2px * var(--ui-scale)) solid #399273;
  content: "";
}

.p-filter__buttons {
  margin-top: calc(32px * var(--ui-scale));
}

.p-filter__button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(10px * var(--ui-scale));
  width: calc(248px * var(--ui-scale));
  height: calc(64px * var(--ui-scale));
  margin: 0 auto;
  border-radius: calc(9999px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  background: #fff;
  color: #333;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  transition: color .5s;
}

.p-filter__button:hover {
  color: #399273;
}

.p-filter__button:after {
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10%2010.675L6.925%207.6L5.5%209L10%2013.5L14.5%209L13.075%207.6L10%2010.675ZM0%2010C0%208.61667%200.262501%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.262501%2012.6833%200%2011.3833%200%2010ZM2%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  .p-filter__container {
    max-width: none;
    padding: 24px;
    border-radius: 8px;
  }

  .p-filter__list {
    gap: 24px;
    margin-top: 18px;
  }

  .p-filter__list + .c-subheading {
    margin-top: 26px;
  }

  .p-filter__buttons {
    margin-top: 24px;
  }

  .p-filter__button {
    width: 100%;
    height: 48px;
    font-size: 14px;
  }

  .p-filter__button:after {
    width: 14px;
    height: 14px;
  }

}

/* 取扱い製品 */
.p-top-lineup {
  /*padding: calc(158px * var(--ui-scale)) 0 calc(176px * var(--ui-scale));*/
  margin-top: calc(158px * var(--ui-scale));
  margin-bottom: clamp(140px, calc(140px + (176 - 140) * (100vw - 1280px) / (1920 - 1280)), 176px);
}

.p-top-lineup__inner {
  width: 100%;
  max-width: calc((1920px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-lineup__body {
  margin-top: calc(68px * var(--ui-scale));
}

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

  .p-top-lineup {
    margin-top: 80px;
    margin-bottom: 78px;
  }

  .p-top-lineup__body {
    margin-top: 44px;
  }

  .p-top-lineup .c-product:nth-child(n + 2) {
    margin-top: 32px;
  }

  .p-top-lineup .c-product:nth-child(n + 4) {
    display: none;
  }

}

/* 取扱い製品一覧 */
.p-product-index {
  padding: calc(100px * var(--ui-scale)) 0 calc(200px * var(--ui-scale));
}

.p-product-index__inner {
  width: min(100%, calc(1726px + (24px * 2)));
  margin: 0 auto;
  padding: 0 24px;
}

.p-product-index__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(80px * var(--ui-scale)) calc(32px * var(--ui-scale));
  margin-top: calc(148px * var(--ui-scale));
}

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

  .p-product-index {
    padding: 48px 0 80px;
  }

  .p-product-index__cards {
    grid-template-columns: none;
    gap: 32px 0;
    margin-top: 80px;
  }

}

/* 取扱い製品 */
.p-product-pages__columns {
  display: grid;
  /*grid-template-columns: 1fr calc(336px * var(--ui-scale));*/
  grid-template-columns: 1fr calc((336 / 896) * 100%);
  gap: 0 calc(144px * var(--ui-scale));
}

.p-product-pages__categories {

}

.p-product-pages__category {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  line-height: 1;
}

.p-product-pages__category span {
  display: inline-block;
  padding: calc(15px * var(--ui-scale)) calc(30px * var(--ui-scale));
  background: #399273;
  color: #fff;
}

.p-product-pages__heading {
  margin-top: calc(6px * var(--ui-scale));
  color: #005638;
  font-size: calc(40px * var(--ui-scale));
  line-height: 1.5;
}

.p-product-pages__specs {
  margin-top: calc(32px * var(--ui-scale));
}

.p-product-pages__spec {
  display: grid;
  grid-template-columns: calc(160px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(22px * var(--ui-scale));
}

.p-product-pages__spec:nth-child(n + 2) {
  margin-top: calc(7px * var(--ui-scale));
}

.p-product-pages__spec dt {
  position: relative;
  padding-left: calc(36px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-product-pages__spec dt:before {
  position: absolute;
  top: calc(7px * var(--ui-scale));
  left: 0;
  width: calc(22px * var(--ui-scale));
  height: calc(22px * var(--ui-scale));
  background: #399273;
  content: "";
}

.p-product-pages__spec dd {
/*   color: #399273; */
  font-size: calc(37px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.p-product-pages__spec:nth-child(2) dd {
  color: #399273;
}

.p-product-pages__tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(7px * var(--ui-scale));
  margin-top: calc(48px * var(--ui-scale));
}

.p-product-pages__tag {
  padding: calc(12px * var(--ui-scale)) calc(14px * var(--ui-scale));
  border: calc(1.85px * var(--ui-scale)) solid #399273;
  color: #005638;
  font-size: calc(18px * var(--ui-scale));
  line-height: 1;
}

.p-product-pages__image img {
  width: 100%;
  /*height: 100%;*/
  aspect-ratio: 336 / 435;
  object-fit: contain;
}

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

  .p-product-pages__columns {
    grid-template-columns: none;
    gap: 48px 0;
  }

  .p-product-pages__category {
    font-size: 16px;
  }

  .p-product-pages__category span {
    padding: 14px 24px;
  }

  .p-product-pages__heading {
    font-size: 32px;
  }

  .p-product-pages__specs {
    margin-top: 24px;
  }

  .p-product-pages__spec {
    grid-template-columns: 130px 1fr;
  }

  .p-product-pages__spec dt {
    padding-left: 30px;
    font-size: 16px;
  }

  .p-product-pages__spec dt:before {
    top: 5px;
    width: 18px;
    height: 18px;
  }

  .p-product-pages__spec dd {
    font-size: 32px;
  }

  .p-product-pages__tags {
    margin-top: 32px;
  }

  .p-product-pages__tag {
    padding: 10px 11px;
    border: 1.5px solid #399273;
    font-size: 14px;
  }

  .p-product-pages__image {
    max-width: 154px;
    margin: 0 auto;
  }

}

/* お客様の声・施工事例（トップページ） */
.p-top-voice__wrapper {
  position: relative;
  z-index: 1;
  padding-bottom: calc(366px * var(--ui-scale));
}

body:not(.home) .p-top-voice__wrapper {
  padding-bottom: calc(80px * var(--ui-scale));
}

.p-top-voice__wrapper:before {
  position: absolute;
  top: calc(32px * var(--ui-scale));
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: calc(100% - calc(32px * var(--ui-scale)));
  border-radius: 32px;
  background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(80px * var(--ui-scale))) bottom / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              url(lib/images/bg_dot_01.png) repeat-x center bottom calc(126px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;
  content: "";
}

body:not(.home) .p-top-voice__wrapper:before {
  background: #EDF5F9;
}

.p-top-voice__inner {
  width: 100%;
  max-width: calc((1464px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-voice__header {

}

.p-top-voice__body {
  margin-top: calc(68px * var(--ui-scale));
}

#voice-carousel {
  /*padding: 0 76px;*/
  padding: 0 clamp(0px, calc(0px + (76 - 0) * (100vw - 1280px) / (1920 - 1280)), 76px);
}

#voice-carousel .splide__wrapper {
  position: relative;
}

#voice-carousel .splide__arrow {
  position: absolute;
  top: 50%;
  z-index: 1;
  width: calc(40px * var(--ui-scale));
  height: calc(40px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%220%200%2040%2040%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M18.65%2020L24.8%2026.15L22%2029L13%2020L22%2011L24.8%2013.85L18.65%2020ZM20%2040C22.7667%2040%2025.3667%2039.475%2027.8%2038.425C30.2333%2037.375%2032.35%2035.95%2034.15%2034.15C35.95%2032.35%2037.375%2030.2333%2038.425%2027.8C39.475%2025.3667%2040%2022.7667%2040%2020C40%2017.2333%2039.475%2014.6333%2038.425%2012.2C37.375%209.76667%2035.95%207.65%2034.15%205.85C32.35%204.05%2030.2333%202.625%2027.8%201.575C25.3667%200.525%2022.7667%200%2020%200C17.2333%200%2014.6333%200.525%2012.2%201.575C9.76667%202.625%207.65%204.05%205.85%205.85C4.05%207.65%202.625%209.76667%201.575%2012.2C0.525002%2014.6333%200%2017.2333%200%2020C0%2022.7667%200.525002%2025.3667%201.575%2027.8C2.625%2030.2333%204.05%2032.35%205.85%2034.15C7.65%2035.95%209.76667%2037.375%2012.2%2038.425C14.6333%2039.475%2017.2333%2040%2020%2040ZM20%2036C15.5333%2036%2011.75%2034.45%208.65%2031.35C5.55%2028.25%204%2024.4667%204%2020C4%2015.5333%205.55%2011.75%208.65%208.65C11.75%205.55%2015.5333%204%2020%204C24.4667%204%2028.25%205.55%2031.35%208.65C34.45%2011.75%2036%2015.5333%2036%2020C36%2024.4667%2034.45%2028.25%2031.35%2031.35C28.25%2034.45%2024.4667%2036%2020%2036Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  transition: opacity .5s;
}

#voice-carousel .splide__arrow--prev {
  /*left: calc(-76px);*/
  left: clamp(-76px, calc(-12px + (-64) * (100vw - 1280px) / (1920 - 1280)), -12px);
  transform: translateY(-50%);
}

#voice-carousel .splide__arrow--next {
  /*right: calc(-76px);*/
  right: clamp(-76px, calc(-12px + (-64) * (100vw - 1280px) / (1920 - 1280)), -12px);
  transform: translateY(-50%) scaleX(-1);
}

#voice-carousel .splide__arrow:hover {
  opacity: .7;
}

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

  .p-top-voice__wrapper {
    padding: 80px 0 210px;
  }

  body:not(.home) .p-top-voice__wrapper {
    padding: 0 0 80px;
  }

  .p-top-voice__wrapper:before {
    top: 0;
    left: 0;
    transform: translateX(0);
    width: 100%;
    height: 100%;
    border-radius: 0px;
    background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + 80px) bottom -16px / calc(1408px * .568) calc(247px * .568),
                url(lib/images/bg_dot_01.png) repeat-x center bottom 0px / calc(491px / 2) calc(506px / 2),
                #EDF5F9;
  }

  body:not(.home) .p-top-voice__wrapper:before {
    top: 22px;
    height: calc(100% - 22px);
    background: #EDF5F9;
  }

  .p-top-voice__body {
    margin-top: 44px;
  }

  .p-top-voice .c-customer:nth-child(n + 2) {
    margin-top: 32px;
  }

  .p-top-voice .c-customer:nth-child(n + 4) {
    display: none;
  }

  #voice-carousel .splide__arrow {
    display: none;
  }


}

/* お客様の声・施工事例 */
.c-customer {
  display: block;
  padding: calc(48px * var(--ui-scale)) calc(48px * var(--ui-scale)) calc(44px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
    transition: opacity .5s;
}

.c-customer:hover {
    opacity: .7;
}

.c-customer--border {
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
}

.c-customer__head {
  display: grid;
  grid-template-columns: calc(120px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(32px * var(--ui-scale));
}

.c-customer__image {
  overflow: hidden;
  border-radius: 50%;
}

.c-customer__image img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.c-customer__content {

}

.c-customer__categories {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8px * var(--ui-scale));
}

.c-customer__category {
  padding: calc(8px * var(--ui-scale)) calc(7px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
  line-height: 1;
}

.c-customer__meta {
  margin-top: calc(16px * var(--ui-scale));
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
}

.c-customer__heading {
  color: #333;
  margin-top: calc(32px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  line-height: 1.5;
}

.c-customer__text {
    color: #333;
  margin-top: calc(20px * var(--ui-scale));
  font-size: calc(14px * var(--ui-scale));
}

.c-customer__button {
  margin-top: calc(12px * var(--ui-scale));
  text-align: right;
}

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

  .c-customer {
    padding: 24px 24px 20px;
    border-radius: 8px;
  }

  .c-customer--border {

  }

  .c-customer__head {

  }

  .c-customer__image {

  }

  .c-customer__image img {

  }

  .c-customer__content {

  }

  .c-customer__categories {
    display: inline-flex;
    flex-direction: column;
  }

  .c-customer__category {
    text-align: center;
  }

  .c-customer__meta {

  }

  .c-customer__heading {
    font-size: 18px;
    line-height: 1.7;
  }

  .c-customer__text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }

  .c-customer__button {
    margin-top: 8px;
  }


}

/* お客様の声・施工事例（一覧） */
.p-customer-index__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(64px * var(--ui-scale));
}

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

  .p-customer-index__cards {
    grid-template-columns: none;
    gap: 32px 0;
  }

}

/* お客様の声・施工事例 */
.p-customer-pages {

}

.p-customer-pages__head {
  display: grid;
  grid-template-columns: calc(194px * var(--ui-scale)) 1fr;
  align-items: flex-start;
  gap: 0 calc(64px * var(--ui-scale));
}

.p-customer-pages__image {
  overflow: hidden;
  border-radius: 50%;
}

.p-customer-pages__image img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.p-customer-pages__content {

}

.p-customer-pages__categories {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8px * var(--ui-scale));
}

.p-customer-pages__category {
  padding: calc(8px * var(--ui-scale)) calc(7px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
  line-height: 1;
}

.p-customer-pages__heading {
  margin-top: calc(24px * var(--ui-scale));
  font-size: calc(32px * var(--ui-scale));
  line-height: 1.5;
}

.p-customer-pages__heading--sp {
  display: none;
}

.p-customer-pages__meta {
  margin-top: calc(14px * var(--ui-scale));
  color: #005638;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-customer-pages-enforcement {
  margin-top: calc(120px * var(--ui-scale));
}

.p-customer-pages-enforcement__columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(202px * var(--ui-scale));
  width: 100%;
  max-width: calc(814px * var(--ui-scale));
  margin: 0 auto;
}

.p-customer-pages-enforcement__column:nth-child(2) {
  position: relative;
}

.p-customer-pages-enforcement__column:nth-child(2):before {
  position: absolute;
  top: 50%;
  left: calc(-120px * var(--ui-scale));
  transform: translateY(-50%);
  width: calc(54px * var(--ui-scale));
  height: calc(64px * var(--ui-scale));
  background: #005638;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  content: "";
}

.p-customer-pages-enforcement__head {
  display: flex;
  align-items: center;
  gap: 0 calc(16px * var(--ui-scale));
}

.p-customer-pages-enforcement__label {
  display: inline-block;
  padding: calc(12px * var(--ui-scale)) calc(24px * var(--ui-scale));
  background: #666666;
  color: #fff;
  font-size: calc(16px * var(--ui-scale));
  font-weight: 700;
}

.p-customer-pages-enforcement__column:nth-child(2) .p-customer-pages-enforcement__label {
  background: #399273;
}

.p-customer-pages-enforcement__heading {
  color: #005638;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-customer-pages-enforcement__image {
  margin-top: calc(32px * var(--ui-scale));
}

.p-customer-pages-enforcement__image img {
  width: 100%;
  aspect-ratio: 305 / 394;
  object-fit: contain;
}

.p-customer-pages-enforcement__image figcaption {
	  margin-top: calc(16px * var(--ui-scale));
	text-align: center;
}

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

  .p-customer-pages__head {
    grid-template-columns: 120px 1fr;
    align-items: center;
    gap: 0 24px;
    margin-top: 28px;
  }

  .p-customer-pages__heading {
    position: relative;
    z-index: 1;
    margin-top: 0;
    font-size: 20px;
    text-align: center;
    background: #fff;
  }

  .p-customer-pages__heading:before,
  .p-customer-pages__heading:after {
    position: absolute;
    /*top: 100%;*/
    left: 50%;
    transform: translateX(-50%) rotate(45deg) skew(10deg, 10deg);
    width: 26px;
    /*height: 22px;*/
    height: 26px;
    background: #fff;
    content: "";
  }

  .p-customer-pages__heading:before {
    z-index: -1;
    top: calc(100% - 14px);
    border: 4px solid #399273;
  }

  .p-customer-pages__heading:after {
    top: calc(100% - 18px);
    background: #fff;
  }

  .p-customer-pages__heading span {
    display: block;
    padding: 16px 37px 20px;
    background: #fff;
    border: 2px solid #399273;
    border-radius: 8px;
  }

  .p-customer-pages__heading--pc {
    display: none;
  }

  .p-customer-pages__heading--sp {
    display: block;
  }

  .p-customer-pages__category {
    padding: 8px 7px;
    font-size: 14px;
  }

  .p-customer-pages__meta {
    margin-top: 16px;
    font-size: 14px;
  }

  .p-customer-pages-enforcement {
    margin-top: 48px;
  }

  .p-customer-pages-enforcement__columns {
    gap: 0 64px;
  }

  .p-customer-pages-enforcement__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px 0;
  }

  .p-customer-pages-enforcement__column:nth-child(2):before {
    left: -40px;
    width: 24px;
    height: 28px;
  }

  .p-customer-pages-enforcement__label {
    padding: 1px 12px;
    font-size: 8px;
  }

  .p-customer-pages-enforcement__heading {
    font-size: 14px;
  }

  .p-customer-pages-enforcement__image {
    margin-top: 14px;
  }
	
	.p-customer-pages-enforcement__image figcaption {
		    margin-top: 12px;
    text-align: left;
    font-size: 14px;
	}

}

/* 仙台市で給湯器トラブルなら、…（トップページ） */
.p-top-company {
  position: relative;
  z-index: 1;
  margin-top: calc(-20px * var(--ui-scale));
}

.p-top-company__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-top-company__logo {
  width: calc(476px * var(--ui-scale));
  margin: 0 auto;
}

.p-top-company__logo img {
  /*display: block;*/
}

.p-top-company__heading {
  margin-top: calc(80px * var(--ui-scale));
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-top-company__text {
  margin-top: calc(48px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
}

.p-top-company__image {
  width: 100vw;
  margin: calc(96px * var(--ui-scale)) calc(50% - 50vw) 0;
}

.p-top-company__image img {
  width: 100%;
  height: calc(400px * var(--ui-scale));
  object-fit: cover;
}

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

  .p-top-company__logo {
    width: 250px;
  }

  .p-top-company__heading {
    /*margin-top: 20px;*/
    margin-top: 48px;
    font-size: 20px;
  }

  .p-top-company__text {
    /*margin-top: 16px;*/
    margin-top: 24px;
    font-size: 16px;
  }

  .p-top-company__image {
    margin: 48px calc(50% - 50vw) 0;
  }

  .p-top-company__image img {
    height: 108px;
  }

}

/* 対応エリア・営業時間（トップページ） */
.p-area {
  padding-top: calc(120px * var(--ui-scale));
}

.p-area--wide {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding-top: 0;
}

.p-area__inner {
  width: 100%;
  max-width: calc(1792px * var(--ui-scale));
  margin: 0 auto;
}

.p-area__body {
  margin-top: calc(70px * var(--ui-scale));
}

.p-area__columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.p-area__column:nth-child(2) {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #EDF5F9;
}

.p-area__image img {
  width: 100%;
}

.p-area__item {
  display: grid;
  grid-template-columns: calc(112px * var(--ui-scale)) 1fr;
  align-items: flex-start;
  gap: 0 calc(32px * var(--ui-scale));
}

.p-area__item:nth-child(n + 2) {
  margin-top: calc(16px * var(--ui-scale));
}

.p-area__label {
  padding: calc(9px * var(--ui-scale)) 0;
  background: #399273;
  color: #fff;
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.p-area__content {
  padding-top: calc(4.5px * var(--ui-scale));
}

.p-area__text:nth-of-type(n + 2) {
  margin-top: calc(16px * var(--ui-scale));
}

.p-area__text span {
  font-weight: 700;
}

.p-area__notes {
  margin-top: calc(8px * var(--ui-scale));
}

.p-area__note {
  font-size: calc(14px * var(--ui-scale));
}

.p-area__note:nth-child(n + 2) {
  margin-top: calc(4px * var(--ui-scale));
}

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

  .p-area {
    padding-top: 80px;
  }

  .p-area--wide {
    padding-top: 0;
  }

  .p-area__body {
    margin-top: 44px;
  }

  .p-area__columns {
    grid-template-columns: none;
  }

  .p-area__column:nth-child(2) {
    padding: 48px 24px 0;
    background: transparent;
  }

  .p-area--wide .p-area__column:nth-child(2) {
    padding-bottom: 46px;
    background: #EDF5F9;
  }

  .p-area__item {
    grid-template-columns: 86px 1fr;
    gap: 0 16px;
  }

  .p-area__label {
    padding: 9px 0;
    font-size: 14px;
  }

  .p-area__content {
    padding-top: 0;
  }

  .p-area__text:nth-of-type(n + 2) {
    margin-top: 16px;
  }

  .p-area__notes {
    margin-top: 10px;
  }

  .p-area__note {
    font-size: 14px;
  }

  .p-area__note:nth-child(n + 2) {
    margin-top: 4px;
  }

}

/* よくあるQ&A、給湯器コラム（トップページ） */
.p-top-split {
  padding-top: clamp(0px, calc(82px + (0 - 82) * (100vw - 1280px) / 640), 82px);
  /*padding: 0 calc(64px * var(--ui-scale));*/
}

.p-top-split__wrapper {
  position: relative;
  z-index: 1;
  padding: calc(322px * var(--ui-scale)) 0 calc(160px * var(--ui-scale));
}

.p-top-split__wrapper:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: 100%;
  border-radius: calc(32px * var(--ui-scale));
  background: url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% + calc(72px * var(--ui-scale))) top calc(-44px * 1) / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              url(lib/images/bg_dot_01.png) repeat-x center bottom / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              linear-gradient(0deg, #EDF5F9 0%, #EDF5F9 30%, #B8E7FF 100%);
  content: "";
}

.p-top-split__inner {
  width: min(100%, calc(1312px * var(--ui-scale)));
  margin: 0 auto;
}

.p-top-split__container {
  padding: calc(80px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
}

.p-top-split__columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(80px * var(--ui-scale));
}

.p-top-split__column {
  display: flex;
  flex-direction: column;
}

.p-top-split__body {
  display: flex;
  flex-grow: 1;
  flex-direction: column;
  justify-content: space-between;
  margin-top: calc(66px * var(--ui-scale));
}

.p-top-column {
  margin-top: calc(-6px * var(--ui-scale));
  padding-bottom: calc(12px * var(--ui-scale));
}

.p-top-column-card__grids {
  display: grid;
  /*grid-template-columns: 1fr calc(((246 / 536) * 100%) * var(--ui-scale));*/
  grid-template-columns: 1fr calc(((246 / 536) * 100%) * 1);
  gap: 0 calc(32px * var(--ui-scale));
}

.p-top-column-card__grid:nth-child(1) {
  grid-area: 1 / 1 / 2 / 2;
}

.p-top-column-card__grid:nth-child(2) {
  grid-area: 2 / 1 / 3 / 2;
  margin-top: calc(24px * var(--ui-scale));
}

.p-top-column-card__grid:nth-child(3) {
  grid-area: 1 / 2 / 3 / 3;
}

.p-top-column__card:nth-child(n + 2) {
  margin-top: calc(44px * var(--ui-scale));
  padding-top: calc(48px * var(--ui-scale));
  /*border-top: calc(1px * var(--ui-scale)) dashed #333;*/
  border-top: 1px dashed #333;
}

.p-top-column-card__time {
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
}

.p-top-column-card__heading {
  margin-top: calc(4px * var(--ui-scale));
  color: #399273;
  font-size: calc(16px * var(--ui-scale));
}

.p-top-column-card__text {
  font-size: calc(14px * var(--ui-scale));

   display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
}

.p-top-column-card__button {
  margin-top: calc(16px * var(--ui-scale));
}

.p-top-column-card__image img {
  width: 100%;
  aspect-ratio: 246 / 184;
  object-fit: cover;
}

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

  .p-top-split {
    padding: 0;
  }

  .p-top-split__wrapper {
    padding: 212px 0 72px;
    border-radius: 0;
    /*background: url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% + 72px) top -60px / calc(1408px / 2) calc(247px / 2),
                url(lib/images/bg_dot_01.png) repeat-x center bottom / calc(491px / 2) calc(506px / 2),
                linear-gradient(0deg, #EDF5F9 0%, #EDF5F9 30%, #B8E7FF 100%);*/
  }

  .p-top-split__wrapper:before {
    width: 100%;
    border-radius: 0;
    background: url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% + 80px) top -8px / calc(1408px * .568) calc(247px * .568),
                url(lib/images/bg_dot_01.png) repeat-x center bottom / calc(491px / 2) calc(506px / 2),
                linear-gradient(0deg, #EDF5F9 0%, #EDF5F9 30%, #B8E7FF 100%);
  }

  .p-top-split__inner {
    padding: 0 24px;
  }

  .p-top-split__container {
    padding: 48px 24px 48px;
    border-radius: 16px;
  }

  .p-top-split__columns {
    grid-template-columns: none;
    gap: 78px 0;
  }

  .p-top-split__body {
    margin-top: 44px;
  }

  .p-top-column {
    margin-top: 0;
    padding-bottom: 0;
  }

  .p-top-column-card__grids {
    /*grid-template-columns: 1fr calc((134 / 304) * 100%);*/
    grid-template-columns: 1fr 134px;
    gap: 0 16px;
  }

  .p-top-column__card:nth-child(n + 2) {
    margin-top: 42px;
    padding-top: 50px;
    border-top: 1px dashed #333;
  }

  .p-top-column-card__grid:nth-child(1) {
    grid-area: 1 / 1 / 2 / 2;
  }

  .p-top-column-card__grid:nth-child(3) {
    grid-area: 1 / 2 / 2 / 3;
  }

  .p-top-column-card__grid:nth-child(2) {
    grid-area: 2 / 1 / 3 / 3;
    margin-top: 16px;
  }

  .p-top-column-card__time {
    font-size: 12px;
  }

  .p-top-column-card__heading {
    margin-top: 4px;
    font-size: 14px;
  }

  .p-top-column-card__text {
    font-size: 14px;
  }

  .p-top-column-card__button {
    margin-top: 4px;
    /*margin-top: -18px;*/
    text-align: right;
  }

}

/*  */

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



}

/*  */
.p-block-waves {
  margin-top: calc(82px * var(--ui-scale));
}

.c-anchor + .p-block-waves {
  margin-top: calc(120px * var(--ui-scale));
}

.p-block-wave {
  position: relative;
  z-index: 1;
  padding: calc(170px * var(--ui-scale)) 0 calc(200px * var(--ui-scale));
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  /*background: url(lib/images/bg_wave_06.png) no-repeat center top / 100% 600px;*/
  /*background: url(lib/images/bg_wave_06.png) repeat-x center top / calc(1920px * var(--ui-scale)) calc(600px * var(--ui-scale));*/
}

.p-block-wave:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(600px * var(--ui-scale));
  background: url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% - calc(72px * var(--ui-scale))) top calc(-202px * var(--ui-scale)) / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              linear-gradient(0deg, #FFFFFF 25.96%, #DDF4FF 76.44%, #EDF5F9 100%);
  content: "";
}

.p-block-wave:last-child {
  padding-bottom: 0;
}

.p-block-wave__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-block-wave__heading {
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-block-wave__heading span {
  display: block;
  padding: calc(24px * var(--ui-scale)) 0;
  border-radius: calc(9999px * var(--ui-scale));
  background: #fff;
}

.p-block-wave__lead {
  margin-top: calc(60px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

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

  .p-block-waves {
    margin-top: 80px;
  }

  .c-anchor + .p-block-waves {
    margin-top: 80px;
  }

  .p-block-wave {
    padding: 80px 0;
  }

  .p-block-wave:before {
    height: 240px;
    background: url(lib/images/bg_wave_01_reverse.png) repeat-x left calc(50% + 6px) top -84px / 590px auto,
                linear-gradient(0deg, #FFFFFF 25.96%, #DDF4FF 76.44%, #EDF5F9 100%);
    content: "";
  }

  .p-block-wave__heading {
    font-size: 20px;
  }

  .p-block-wave__heading span {
    padding: 8px 0;
  }

  .p-block-wave .c-block-heading {
    margin-top: 64px;
  }

}

/* 給湯器交換の相談・申込みフォーム */
#step-input .p-tel {
  padding-top: calc(160px * var(--ui-scale));
}

#step-complete .p-tel {
  padding-top: calc(80px * var(--ui-scale));
}

#step-input .p-email {
  padding-top: calc(160px * var(--ui-scale));
}

#step-input .p-form,
#step-confirm .p-form {
  padding-top: calc(80px * var(--ui-scale));
}

.p-tel__lead {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-tel__container {
  display: block;
  width: 100%;
  max-width: calc(634px * var(--ui-scale));
  margin: calc(48px * var(--ui-scale)) auto 0;
  padding: calc(40px * var(--ui-scale)) 0;
  border: calc(4px * var(--ui-scale)) solid #F3F3F3;
  border-radius: calc(16px * var(--ui-scale));
  background: #F8F8F8;
  transition: opacity .5s;
}

.p-tel__container:hover {
  opacity: .7;

}

.p-tel__text {
  font-weight: 700;
  text-align: center;
  line-height: 1;
}

.p-tel__text span {
  display: inline-block;
  padding: calc(11px * var(--ui-scale)) calc(47px * var(--ui-scale));
  border: calc(2px * var(--ui-scale)) solid #fff;
  background: #FFE762;
  color: #333;
}

.p-tel__number {
  color: #005638;
  font-size: calc(48px * var(--ui-scale));
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  text-align: center;
}

.p-tel__number:before {
  display: inline-block;
  transform: translateY(calc(2px * var(--ui-scale)));
  width: calc(36px * var(--ui-scale));
  height: calc(36px * var(--ui-scale));
  margin-right: calc(14px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2236%22%20height%3D%2236%22%20viewBox%3D%220%200%2036%2036%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M33.9%2036C29.7333%2036%2025.6167%2035.0917%2021.55%2033.275C17.4833%2031.4583%2013.7833%2028.8833%2010.45%2025.55C7.11667%2022.2167%204.54167%2018.5167%202.725%2014.45C0.908334%2010.3833%200%206.26667%200%202.1C0%201.5%200.2%201%200.6%200.6C1%200.2%201.5%200%202.1%200H10.2C10.6667%200%2011.0833%200.158333%2011.45%200.475C11.8167%200.791667%2012.0333%201.16667%2012.1%201.6L13.4%208.6C13.4667%209.13333%2013.45%209.58333%2013.35%209.95C13.25%2010.3167%2013.0667%2010.6333%2012.8%2010.9L7.95%2015.8C8.61667%2017.0333%209.40833%2018.225%2010.325%2019.375C11.2417%2020.525%2012.25%2021.6333%2013.35%2022.7C14.3833%2023.7333%2015.4667%2024.6917%2016.6%2025.575C17.7333%2026.4583%2018.9333%2027.2667%2020.2%2028L24.9%2023.3C25.2%2023%2025.5917%2022.775%2026.075%2022.625C26.5583%2022.475%2027.0333%2022.4333%2027.5%2022.5L34.4%2023.9C34.8667%2024.0333%2035.25%2024.275%2035.55%2024.625C35.85%2024.975%2036%2025.3667%2036%2025.8V33.9C36%2034.5%2035.8%2035%2035.4%2035.4C35%2035.8%2034.5%2036%2033.9%2036Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-tel__time {
  color: #000;
  text-align: center;
}

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

  #step-input .p-tel {
    padding-top: 62px;
  }

  #step-input .p-email {
    padding-top: 62px;
  }

  #step-complete .p-tel {
    padding-top: 48px;
  }

  #step-input .p-form,
  #step-confirm .p-form {
    padding-top: 48px;
  }

  .p-tel__lead {
    font-size: 16px;
  }

  .p-email .c-block-lead {
    text-align: left;
  }

  .p-tel__container {
    margin: 24px auto 0;
    padding: 12px;
  }

  .p-tel__text span {
    width: 100%;
    padding: 7px;
    border: 2px solid #fff;
    font-size: 14px;
  }

  .p-tel__number {
    font-size: 28px;
  }

  .p-tel__number:before {
    width: 24px;
    height: 24px;
    margin-right: 12px;
  }

  .p-tel__time {
    margin-top: -4px;
    font-size: 12px;
  }

}

/* フォーム */
.p-form__item {
  display: grid;
  grid-template-columns: calc(336px * var(--ui-scale)) 1fr;
  gap: 0 calc(80px * var(--ui-scale));
}

.p-form__item:nth-child(n + 2) {
  margin-top: calc(48px * var(--ui-scale));
  padding-top: calc(48px * var(--ui-scale));
  /*border-top: calc(1px * var(--ui-scale)) dashed #399273;*/
  border-top: 1px dashed #399273;
}

.p-form__item dt {
  display: flex;
  align-items: center;
  min-height: calc(80px * var(--ui-scale));
  padding-inline: calc(16px * var(--ui-scale));
  background: #EDF5F9;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-form__item dt span {
  display: inline-block;
  margin-left: calc(12px * var(--ui-scale));
  padding: calc(7px * var(--ui-scale)) calc(8px * var(--ui-scale));
  background: #399273;
  color: #fff;
  font-weight: 400;
  font-size: calc(12px * var(--ui-scale));
  line-height: 1;
  vertical-align: calc(3px * var(--ui-scale));
}

.p-form__item dd {
  padding: calc(15px * var(--ui-scale)) 0;
}

#step-confirm .p-form__item dd {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.p-form__item .wpcf7-form-control-wrap {
  display: block;
}

.p-form__item input[type="text"],
.p-form__item input[type="tel"],
.p-form__item input[type="email"],
.p-form__item select,
.p-form__item textarea {
  width: 100%;
  padding: calc(12px * var(--ui-scale)) calc(24px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #ccc;*/
  border: 1px solid #ccc;
  background: #fff;
  font-size: calc(14px * var(--ui-scale));
  outline: none;
}

.p-form__item input[type="text"],
.p-form__item input[type="tel"],
.p-form__item input[type="email"] {
  max-width: calc(448px * var(--ui-scale));
}

.p-form__item input[type="text"].half-size,
.p-form__item input[type="tel"].half-size,
.p-form__item input[type="email"].half-size {
  max-width: calc(200px * var(--ui-scale));
}

.p-form__item textarea {
  height: calc(((calc(14px * var(--ui-scale)) * 1.7) * 5) + (calc(12px * var(--ui-scale)) * 2 * 2) + (calc(1px) * 2));
}

.p-form__columns {
  display: flex;
  gap: 0 calc(24px * var(--ui-scale));
}

#step-confirm .p-form__columns {
  gap: 0 calc(96px * var(--ui-scale));
}

.p-form__row:nth-child(n + 2) {
  margin-top: calc(16px * var(--ui-scale));
}

#step-confirm .p-form__row:nth-child(n + 2) {
  margin-top: calc(26px * var(--ui-scale));
}

.p-form__note {
  margin-top: calc(8px * var(--ui-scale));
  font-size: calc(14px * var(--ui-scale));
}

#step-confirm .p-form__note {
  margin-top: calc(20px * var(--ui-scale));
}

.p-form__label {
  margin-bottom: calc(8px * var(--ui-scale));
  font-weight: 700;
}

#step-confirm .p-form__label {
  margin-bottom: calc(18px * var(--ui-scale));
}

.p-form__text {
  margin-bottom: calc(6px * var(--ui-scale));
  padding-top: calc(6px * var(--ui-scale));
  font-size: calc(14px * var(--ui-scale));
}

.p-form__file-group {
  display: flex;
  align-items: center;
  gap: 0 calc(24px * var(--ui-scale));
}

.p-form__file-label {
  display: flex;
  align-items: center;
  padding: calc(8px * var(--ui-scale)) calc(24px * var(--ui-scale));
  border-radius: calc(9999px * var(--ui-scale));
  background: #399273;
  color: #fff;
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
  cursor: pointer;
}

.p-form__file-select {
  width: 100%;
  max-width: calc(368px * var(--ui-scale));
  padding: calc(12px * var(--ui-scale)) calc(24px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #ccc;*/
  border: 1px solid #ccc;
  background: #fff;
  color: #999;
  font-size: calc(14px * var(--ui-scale));
}

.p-form__file-delete {
  display: none;
  padding-left: calc(20px * var(--ui-scale));
  cursor: pointer;
}

.wpcf7 input[type="file"] {
  display: none!important;
}

#step-confirm .p-form__file-select {
  display: none;
}

#step-confirm .p-form__file-label {
  display: block;
  padding: 0;
  background: transparent;
  color: #333;
  font-weight: 400;
}

.p-form__content {
  margin-top: calc(122px * var(--ui-scale));
}

.p-form__target {
  text-align: center;
  text-decoration: underline;
}

.p-form__target:hover {
  text-decoration: none;
}

.p-form__target a {
  color: #005638;
}

.p-form__target a:hover {

}

.p-form__item .wpcf7-not-valid-tip {
  margin-top: calc(5px * var(--ui-scale));
  color: #ff000a;
  font-size: calc(14px * var(--ui-scale));
}

.p-form__acceptance {
  margin-top: calc(48px * var(--ui-scale));
  text-align: center;
  /*text-decoration: underline;*/
}

/*.p-form__acceptance a {
  color: #005638;
  transition: opacity .5s;
}

.p-form__acceptance a:hover {
  opacity: 0.6;
}*/

.p-form__item input[type="text"]::placeholder,
.p-form__item input[type="tel"]::placeholder,
.p-form__item input[type="email"]::placeholder,
.p-form__item textarea::placeholder {
  color: #999
}

.p-form__item input[type="text"]::-webkit-input-placeholder,
.p-form__item input[type="tel"]::-webkit-input-placeholder,
.p-form__item input[type="email"]::-webkit-input-placeholder,
.p-form__item textarea::-webkit-input-placeholder {
  color: #999
}

.p-form__item input[type="text"]::-ms-input-placeholder,
.p-form__item input[type="tel"]::-ms-input-placeholder,
.p-form__item input[type="email"]::-ms-input-placeholder,
.p-form__item textarea::-ms-input-placeholder {
  color: #999
}

.p-form__item input[type="text"]::-moz-placeholder,
.p-form__item input[type="tel"]::-moz-placeholder,
.p-form__item input[type="email"]::-moz-placeholder,
.p-form__item textarea::-moz-placeholder {
  color: #999
}

.p-form__item input[type="text"]:-ms-input-placeholder,
.p-form__item input[type="tel"]:-ms-input-placeholder,
.p-form__item input[type="email"]:-ms-input-placeholder,
.p-form__item textarea:-ms-input-placeholder {
  color: #999
}

.p-form .wpcf7-radio,
.p-form .wpcf7-checkbox {
  display: block;
  padding: calc(8px * var(--ui-scale)) 0 0;
  line-height: 1;
}

.p-form .wpcf7-radio .wpcf7-list-item,
.p-form .wpcf7-checkbox .wpcf7-list-item,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item {
  display: inline-block;
  margin: 0;
}

.p-form .wpcf7-radio .wpcf7-list-item:nth-child(n + 2),
.p-form .wpcf7-checkbox .wpcf7-list-item:nth-child(n + 2) {
  margin-left: calc(32px * var(--ui-scale));
}

.p-form .wpcf7-radio .wpcf7-list-item label,
.p-form .wpcf7-checkbox .wpcf7-list-item label,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 0 calc(12px * var(--ui-scale));
  cursor: pointer;
}

.p-form .wpcf7-radio .wpcf7-list-item label:hover,
.p-form .wpcf7-checkbox .wpcf7-list-item label:hover,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item label:hover {
  /*color: #ff000a;*/
}

.p-form .wpcf7-radio .wpcf7-list-item input[type="radio"],
.p-form .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"],
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"] {
  position: relative;
  width: calc(32px * var(--ui-scale));
  height: calc(32px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #CCCCCC;*/
  border: 1px solid #CCCCCC;
  background: #fff;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.p-form .wpcf7-radio .wpcf7-list-item input[type="radio"] {
  border-radius: 50%;
}

.p-form .wpcf7-radio .wpcf7-list-item input[type="radio"]:checked {

}

.p-form .wpcf7-radio .wpcf7-list-item input[type="radio"]:checked::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(18px * var(--ui-scale));
  height: calc(18px * var(--ui-scale));
  border-radius: 50%;
  background: #399273;
  content: "";
}

.p-form .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"] {
  margin-right: calc(10px * var(--ui-scale));
  vertical-align: calc(-2px * var(--ui-scale));
}

.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"] {
  margin-right: calc(6px * var(--ui-scale));
}

.p-form .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"]:checked,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"]:checked {

}

.p-form .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"]:checked::before,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"]:checked::before {
  position: absolute;
  top: calc(9px * var(--ui-scale));
  left: calc(13px * var(--ui-scale));
  transform: rotate(45deg);
  width: calc(6px * var(--ui-scale));
  height: calc(10px * var(--ui-scale));
  border-right: calc(2px * var(--ui-scale)) solid #399273;
  border-bottom: calc(2px * var(--ui-scale)) solid #399273;
  content: "";
}

.p-form .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label,
.p-form .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label {
  display: inline-block;
}

.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label {
  /*text-decoration: underline;*/
}

.p-form .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before,
.p-form .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::after,
.p-form .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
.p-form .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::after,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before,
.p-form__acceptance .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::after {
  content: none;
}

 .p-form__buttons {
  margin-top: calc(72px * var(--ui-scale));
}

.p-form__button:nth-child(n + 2) {
  margin-top: calc(32px * var(--ui-scale));
}

.p-form__button .c-button {
  margin-top: 0;
  cursor: pointer;
}

.p-form__button button[type="button"],
.p-form__button button[type="submit"] {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(10px * var(--ui-scale));
  width: calc(416px * var(--ui-scale));
  height: calc(72px * var(--ui-scale));
  margin: 0 auto;
  border-radius: calc(9999px * var(--ui-scale));
  box-shadow: 0 calc(2px * var(--ui-scale)) calc(4px * var(--ui-scale)) rgba(0, 0, 0, 0.15);
  background: linear-gradient(91.74deg, #FF9604 5.03%, #FF6A00 94.9%);
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  cursor: pointer;
  transition: opacity .5s;
}

.p-form__button button[type="button"]:hover,
.p-form__button button[type="submit"]:hover {
  opacity: .7;
}

.p-form__button button[type="button"]:after,
.p-form__button button[type="submit"]:after {
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.675%2010L7.6%2013.075L9%2014.5L13.5%2010L9%205.5L7.6%206.925L10.675%2010ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

/*.p-form__button-wrapper {
  display: flex;
  align-items: center;
  position: relative;
  width: fit-content;
  height: 72px;
  margin-right: auto;
  margin-left: auto;
  height: 64px;
  border: 1px solid #399273;
  border-radius: 9999px;
  background: #fff;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  transition: opacity .5s;
}

.p-form__button-wrapper:hover {
  opacity: .7;
}

.p-form__button-wrapper:after {
  position: absolute;
  top: 50%;
  left: 50px;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M9.325%2010L12.4%206.925L11%205.5L6.5%2010L11%2014.5L12.4%2013.075L9.325%2010ZM10%200C11.3833%200%2012.6833%200.262501%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.262501%2012.6833%200%2011.3833%200%2010C0%208.61667%200.262501%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.262501%208.61667%200%2010%200ZM10%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-form__button input[type="button"] {
  width: 100%;
  height: 100%;
  padding-inline: 82px 64px;
}*/

.p-form__button .wpcf7-spinner {
  display: none;
}

.p-form + .wpcf7-response-output {
  margin: calc(24px * var(--ui-scale)) 0 0!important;
  padding: calc(4px * var(--ui-scale)) calc(12px * var(--ui-scale))!important;
  font-size: calc(15px * var(--ui-scale));
  font-weight: 500;
}

#step-complete .c-button {
  margin-top: calc(120px * var(--ui-scale));
}

.p-form--confirm,
.p-form--thanks {
  /*display: none;*/
}

.wpcf7 form.sent .wpcf7-response-output {
  display: none;
}

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

  .p-form__item {
    grid-template-columns: none;
    gap: 16px 0;
  }

  .p-form__item:nth-child(n + 2) {
    margin-top: 30px;
    padding-top: 32px;
  }

  .p-form__item dt {
    min-height: 51px;
    font-size: 16px;
  }

  .p-form__item dd {
    padding: 0;
  }

  #step-confirm .p-form__item dd p[id] {
    padding: 10px 0 16px;
    font-size: 14px;
  }

  #step-confirm .p-form__note {
    margin-top: 16px;
  }

  #step-confirm .p-form__label {
    margin-bottom: 8px;
  }

  #step-confirm .p-form__row:nth-child(n + 2) {
    margin-top: 14px;
  }

  #step-confirm .p-form__columns {
    gap: 16px 0;
  }

  .p-form__item input[type="text"], .p-form__item input[type="tel"], .p-form__item input[type="email"], .p-form__item select, .p-form__item textarea {
    padding: 12px;
    font-size: 13px;
  }

  .p-form__file-select {
    max-width: none;
  }

  .p-form__item textarea {
    padding: 24px 12px;
    font-size: 14px;
    height: calc(((14px * 1.7) * 10) + (12px * 2 * 2) + (1px * 2));
  }

  .p-form__note {
    margin-top: 18px;
    font-size: 14px;
  }

  .p-form__columns {
    flex-direction: column;
    gap: 16px 0;
  }

  .p-form__column:nth-child(n + 2) .p-form__text {
    margin-top: -2px;
    padding-top: 0px;
  }

  .p-form__file-group {
    flex-direction: column;
    align-items: flex-end;
    gap: 12px 0;
  }

  .p-form__content {
    margin-top: 48px;
  }

  .p-form__target {
    text-align: left;
  }

  .p-form__acceptance {
    margin-top: 24px;
  }

  .p-form__buttons {
    margin-top: 40px;
  }

  .p-form__button button[type="submit"],
  .p-form__button button[type="button"] {
    width: 100%;
    height: 56px;
    font-size: 16px;
  }

  .p-form__button .c-button,
  #step-complete .c-button {
    width: fit-content;
    height: 48px;
    padding: 0 24px;
    font-size: 14px;
  }

  .p-form__button .c-button:after,
  #step-complete .c-button:after {
    width: 15px;
    height: 15px;
  }

  #step-complete .c-button {
    margin-top: 80px;
  }

}

/* 404 NOT FOUND */
.p-not-found__text {
  text-align: center;
}

.p-not-found__buttons {
  display: flex;
  justify-content: center;
  gap: 0 calc(32px * var(--ui-scale));
}

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

  .p-not-found__text {
    text-align: left;
  }

}

/* よくあるQ&A */
.p-acc__item:nth-child(n + 2) {
  margin-top: calc(54px * var(--ui-scale));
}

.p-acc-item__header {
  position: relative;
  padding: 0 calc(((14px * 2) + 5px) * var(--ui-scale)) calc(30px * var(--ui-scale)) calc((40px + 16px) * var(--ui-scale));
  border-bottom: 1px dotted #ccc;
  cursor: pointer;
}

.p-acc-item__header:before,
.p-acc-item__header:after {
  position: absolute;
  top: calc((((16px * 1.7) - (2px / 1)) / 2) * var(--ui-scale));
  right: calc(5px * var(--ui-scale));
  width: calc(14px * var(--ui-scale));
  height: calc(2px * var(--ui-scale));
  background: #399273;
  content: "";
  transition: transform .3s;
}

.p-acc-item__header:before {
  /*transform: translateY(-50%);*/
}

.p-acc-item__header:after {
  /*transform: translateY(-50%) rotate(-90deg);*/
  transform: rotate(-90deg);
}

.p-acc__item.is-open .p-acc-item__header:after {
  transform: rotate(0deg);
}

.p-acc-item__heading {
  position: relative;
  color: #005638;
  font-size: calc(16px * var(--ui-scale));
  font-weight: 400;
  text-decoration: underline;
}

.p-acc__item.is-open .p-acc-item__heading {
  font-weight: 700;
  text-decoration: none;
}

.p-acc__item:hover .p-acc-item__heading {
  text-decoration: none;
}

.p-acc-item__heading:before,
.p-acc-item__text:before {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(40px * var(--ui-scale));
  height: calc(40px * var(--ui-scale));
  border-radius: 50%;
  color: #fff;
  font-weight: 700;
}

.p-acc-item__heading:before {
  top: calc(((-40px + (16px * 1.7)) / 2) * var(--ui-scale));
  left: calc((-40px + -16px) * var(--ui-scale));
  background: #399273;
  text-decoration: none;
  content: 'Q';
}

.p-acc-item__body {
  overflow: hidden;
  height: 0;
  transition: height .28s;
}

.p-acc-item__inner {
  min-height: calc(67px * var(--ui-scale));
  padding: calc(32px * var(--ui-scale)) 0 0 calc((40px + (16px * 2)) * var(--ui-scale));
}

.p-acc-item__text {
  position: relative;
}

.p-acc-item__text a:not(.c-button) {
  color: #333;
  text-decoration: underline;
}

.p-acc-item__text a:hover {
  text-decoration: none;
}

.p-acc-item__text:before {
  position: absolute;
  top: calc(((-40px + (16px * 1.7)) / 2) * var(--ui-scale));
  left: calc((-40px + -16px) * var(--ui-scale));
  background: #46CC9D;
  content: 'A';
}

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

  .p-acc__item:nth-child(n + 2) {
    margin-top: 18px;
  }

  .p-acc-item__heading:before,
  .p-acc-item__text:before {
    width: 24px;
    height: 24px;
    font-size: 9.6px;
  }

  .p-acc-item__heading:before {
    top: -2px;
    left: -40px;
  }

  .p-acc-item__header {
    padding: 0 20px 14px 40px;
  }

  .p-acc-item__header:before,
  .p-acc-item__header:after {
    top: calc(50% - 8px);
    right: 3px;
    transform: translateY(-50%);
    width: 9.3px;
    height: 1.3px;
  }

  .p-acc-item__header:after {
    transform: translateY(-50%) rotate(-90deg);
  }

  .p-acc__item.is-open .p-acc-item__header:after {
    transform: translateY(-50%) rotate(0deg);
  }

  .p-acc-item__heading {
    font-size: 14px;
  }

  .p-acc-item__text {
    font-size: 14px;
  }

  .p-acc-item__text:before {
    top: -2px;
    left: -40px;
  }

  .p-acc-item__inner {
    min-height: 44px;
    min-height: 64px;
    padding: 20px 0 20px 56px;
  }

}

/* 会社概要 */
.p-philos__text {
  margin-top: calc(64px * var(--ui-scale));
}

.p-philos__image {
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: calc(78px * var(--ui-scale)) auto 0;
}

.p-philos__image img {
  width: 100%;
}

.p-overview {
  padding-top: calc(106px * var(--ui-scale));
}

.p-overview__columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
  margin-bottom: calc(48px * var(--ui-scale));
}

.p-overview__image {
  width: 100%;
  max-width: calc(600px * var(--ui-scale));
  margin: calc(120px * var(--ui-scale)) auto 0;
}

.p-overview__image img {
  width: 100%;
}

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

  .p-philos__image {
    max-width: none;
    margin: 48px auto 0;
  }

  .p-overview {
    padding-top: 0;
  }

  .p-overview__columns {
    grid-template-columns: none;
    gap: 16px 0;
    margin-bottom: 48px;
  }

  .p-overview__image {
    max-width: none;
    margin: 48px auto 0;
  }

}

/* プライバシーポリシー */
.p-privacy__statement {
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-privacy .c-subheading {
  margin-top: calc(48px * var(--ui-scale));
}

.p-privacy .c-subheading + * + .c-subheading {
  margin-top: calc(32px * var(--ui-scale));
}

.p-privacy__text {
  margin-top: calc(32px * var(--ui-scale));
}

.p-privacy__text--margin-wide {
  margin-top: calc(50px * var(--ui-scale));
}

.p-privacy__text--line-wide {
  line-height: 2;
}

.p-privacy__text a {
  color: #005638;
  text-decoration: underline;
}

.p-privacy__text a:hover {
  text-decoration: none;
}

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

  .p-privacy__statement {
    font-size: 16px;
  }

  .p-privacy .c-subheading + .p-privacy__text {
    margin-top: 18px;
  }

  .p-privacy__text--margin-wide {
    margin-top: 48px;
  }

}

/* お申込み・修理交換の流れ */
.p-flow {
  padding-top: calc(120px * var(--ui-scale));
}

.c-block-heading + .p-flow {
  padding-top: 0;
}

.p-flow__list {
  margin-bottom: calc(-16px * var(--ui-scale));
}

.p-flow__item {
  display: grid;
  grid-template-columns: calc(208px * var(--ui-scale)) 1fr;
  align-items: flex-start;
  gap: 0 calc(46px * var(--ui-scale));
  position: relative;
}

.p-flow__item:nth-last-child(n + 2) {
  min-height: calc(112px * var(--ui-scale));
}

.p-flow__list--space-wide .p-flow__item:nth-last-child(n + 2) {
  min-height: calc(114px * var(--ui-scale));
}

.p-flow__item:nth-child(n + 2) {
  /*padding-top: 32px;*/
}

.p-flow__item:nth-last-child(n + 2):before {
  position: absolute;
  top: calc(14px * var(--ui-scale));
  left: calc(7px * var(--ui-scale));
  width: calc(2px * var(--ui-scale));
  height: 100%;
  background-image: linear-gradient(to bottom, #399273 0, #399273 calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)), transparent calc(4px * var(--ui-scale)));
  background-position: calc(-2px * var(--ui-scale)) 0;
  background-repeat: repeat-y;
  background-size: calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale));
  content: "";
}

.p-flow__item dt {
  position: relative;
  padding-left: calc(48px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  line-height: 1.5;
}

.p-flow__item dt:before {
  position: absolute;
  top: calc(7px * var(--ui-scale));
  left: 0;
  width: calc(16px * var(--ui-scale));
  height: calc(16px * var(--ui-scale));
  border-radius: calc(9999px * var(--ui-scale));
  background: #399273;
  content: "";
}

.p-flow__item dd {
  margin-bottom: calc(32px * var(--ui-scale));
}

.p-flow__list--space-wide .p-flow__item dd {
  margin-bottom: calc(60px * var(--ui-scale));
}

.p-flow__item dd span {
  color: #D92E2E;
}

.p-flow__item dd p {
  margin: calc(24px * var(--ui-scale)) 0 calc(8px * var(--ui-scale));
}

.p-flow__item dd a {
  color: #333;
  transition: opacity .5s;
}

.p-flow__item dd a:hover {
  opacity: 0.7;
}

.p-flow__annot {
  margin-top: calc(8px * var(--ui-scale));
  margin-bottom: 0;
}

.p-flow__annot-heading {
  margin-bottom: calc(12px * var(--ui-scale));
  font-weight: 700;
}

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

  .p-flow {
    padding-top: 66px;
  }

  .p-flow__list {
    margin-bottom: -26px;
  }

  .p-flow__item {
    grid-template-columns: 104px 1fr;
    gap: 0 16px;
  }

  .p-flow__list--narrow .p-flow__item {
    grid-template-columns: 86px 1fr;
  }

  .p-flow__item:nth-last-child(n + 2) {
    min-height: 106px;
  }

  .p-flow__item:nth-last-child(n + 2):before {
    top: 12px;
    left: 3px;
  }

  .p-flow__item dt {
    padding-left: 16px;
    font-size: 14px;
    line-height: 1.7;
  }

  .p-flow__item dt:before {
    top: 8px;
    width: 8px;
    height: 8px;
  }

  .p-flow__item dd {
    margin-top: -4px;
    margin-bottom: 26px;
    font-size: 16px;
  }

  .p-flow__list--space-wide .p-flow__item dd {
    margin-bottom: 28px;
  }

  .p-flow__item dd p {
    margin: 8px 0 0;
  }

}

/* お知らせ（一覧） */
.p-news-index {

}

.p-news-index .c-block-heading {
  margin-top: 0;
}

.p-news-index__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(60px * var(--ui-scale)) calc(64px * var(--ui-scale));
}

.p-news-index-card__image img {
  width: 100%;
  aspect-ratio: 416 / 312;
  object-fit: cover;
}

.p-news-index-card__body {
  margin-top: calc(32px * var(--ui-scale));
}

.p-news-index-card__meta {
  display: flex;
  align-items: center;
  gap: 0 calc(16px * var(--ui-scale));
}

.p-news-index-card__time {
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
}

.p-news-index-card__category {
  font-size: calc(14px * var(--ui-scale));
  line-height: 1;
}

.p-news-index-card__category span {
  display: inline-block;
  padding: calc(8px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  color: #005638;
}

.p-news-index-card__heading {
  margin-top: calc(32px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
}

.p-news-index-card__button {
  margin-top: calc(10px * var(--ui-scale));
  text-align: right;
}

.p-news-index-card__button .c-link {

}

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

  .p-news-index__cards {
    grid-template-columns: none;
    gap: 28px 0;
  }

  .p-news-index__card {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 0 28px;
  }

  .p-news-index-card__image img {
    aspect-ratio: 1;
  }

  .p-news-index-card__body {
    margin-top: 0;
  }

  .p-news-index-card__meta {
    gap: 0 8px;
  }

  .p-news-index-card__time {
    font-size: 12px;
  }

  .p-news-index-card__category {
    font-size: 12px;
  }

  .p-news-index-card__category span {
    padding: 6px;
  }

  .p-news-index-card__heading {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;

    margin-top: 10px;
    font-size: 14px;
  }

  .p-news-index-card__button {
    margin-top: 4px;
  }

}

/* お知らせ */
.p-news-pages {

}

.p-news-pages__meta {
  display: flex;
  align-items: center;
  gap: 0 calc(16px * var(--ui-scale));
}

.p-news-pages__time {
  color: #005638;
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
}

.p-news-pages__category {
  font-size: calc(14px * var(--ui-scale));
  line-height: 1;
}

.p-news-pages__category span {
  display: inline-block;
  padding: calc(8px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  color: #005638;
}

.p-news-pages__heading {
  margin-top: calc(48px * var(--ui-scale));
  font-size: calc(24px * var(--ui-scale));
}

.p-news-pages__image {
  margin-top: calc(48px * var(--ui-scale));
}

.p-news-pages__image img {
  width: 100%;
  aspect-ratio: 896 / 672;
  object-fit: cover;
}

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

  .p-news-pages__heading {
    margin-top: 24px;
    font-size: 18px;
  }

  .p-news-pages__image {
    margin-top: 50px;
  }

}

/* 詳細ページ共通 */
.wp-block-post-content > :first-child {
  margin-top: 0!important;
}

.wp-block-post-content > :last-child {
  margin-bottom: 0!important;
}

/*  */
.p-news-pages .wp-block-post-content {
  margin-top: calc(80px * var(--ui-scale));
}

.p-news-pages .wp-block-post-content p {
  margin-top: calc(32px * var(--ui-scale));
}

.p-news-pages .wp-block-post-content > *:not(p):not(.c-block-heading):not(.c-subheading) {
  margin-top: calc(80px * var(--ui-scale));
}

.p-news-pages .wp-block-post-content .c-subheading {
  margin-top: calc(80px * var(--ui-scale));
  margin-bottom: calc(30px * var(--ui-scale));
}

.p-news-pages .c-block-table td {
  padding-block: calc(6.5px * var(--ui-scale));
}

.p-news-pages .c-block-table td:first-child {
  font-size: calc(20px * var(--ui-scale));
}

.p-news-pages .c-button {
  display: inline-flex;
  margin-top: calc(48px * var(--ui-scale));
  padding-inline: calc(30px * var(--ui-scale)) calc(34px * var(--ui-scale));
}

/*  */
.p-product-pages .wp-block-post-content {
  margin-top: calc(88px * var(--ui-scale));
}

.p-product-pages .c-block-table td {
  padding-block: calc(11px * var(--ui-scale));
}

/*  */
.p-customer-pages .wp-block-post-content {
  margin-top: calc(118px * var(--ui-scale));
}

.p-customer-pages .c-block-heading {
  margin-top: calc(120px * var(--ui-scale));
}

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

  .p-news-pages .wp-block-post-content {
    margin-top: 48px;
    margin-bottom: 14px;
  }

  .p-news-pages .wp-block-post-content p {
    margin-top: 18px;
  }

  .p-news-pages .wp-block-post-content > *:not(p):not(.c-block-heading):not(.c-subheading) {
    margin-top: 46px;
  }

  .p-news-pages .wp-block-post-content .c-subheading {
    margin-top: 48px;
    margin-bottom: 18px;
  }

  .p-news-pages .c-block-table td {
    padding-block: 10px;
    padding-inline: 8px;
    font-size: 14px;
  }

  .p-news-pages .c-block-table td:first-child {
    font-size: 14px;
  }

  .p-news-pages .c-button {
    margin-top: 30px;
  }

  .p-product-pages .wp-block-post-content {
    margin-top: 48px;
  }

  .p-customer-pages .wp-block-post-content {
    margin-top: 48px;
  }

  .p-product-pages .c-block-table,
  .p-product-pages .c-block-table tr,
  .p-product-pages .c-block-table td,
  .p-customer-pages .c-block-table,
  .p-customer-pages .c-block-table tr,
  .p-customer-pages .c-block-table td {
    display: block!important;
    height: auto!important;
    width: 100%!important;
  }

  .p-product-pages .c-block-table td:first-child,
  .p-customer-pages .c-block-table td:first-child {
    font-size: 16px;
    text-align: left;
  }

  .p-product-pages .c-block-table td:first-child br,
  .p-customer-pages .c-block-table td:first-child br {
    display: none;
  }

  .p-product-pages .c-block-table td,
  .p-customer-pages .c-block-table td {
    padding-block: 9px!important;
    padding-inline: 8px!important;
    border-left: none!important;
  }

  .p-product-pages tr:nth-child(2n) td,
  .p-customer-pages tr:nth-child(2n) td {
    background: #fff;
  }

  .p-customer-pages .c-block-heading {
    margin-top: 48px;
  }

}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/*  */

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



}

/* 給湯器のコト */
.p-kyutoki {
  padding: calc(80px * var(--ui-scale)) calc(64px * var(--ui-scale)) 0;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.p-kyutoki__wrapper {
  position: relative;
  z-index: 1;
  padding: calc(80px * var(--ui-scale)) 0;
}

.p-kyutoki__wrapper:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  border-radius: calc(32px * var(--ui-scale));
  background: linear-gradient(180deg, #EDF5F9 17.31%, #DDF4FF 49.04%, #EDF5F9 100%);
  content: "";
}

.p-kyutoki__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-kyutoki__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(32px * var(--ui-scale));
}

.p-kyutoki__card {
  display: flex;
  flex-direction: column;
  padding: calc(32px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
}

.p-kyutoki-card__head {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 0 calc(24px * var(--ui-scale));
}

.p-kyutoki-card__image {
  width: calc(112px * var(--ui-scale));
}

.p-kyutoki-card__heading {
  color: #399273;
  font-size: calc(24px * var(--ui-scale));
}

.p-kyutoki-card__text {
  margin: calc(34px * var(--ui-scale)) 0 calc(32px * var(--ui-scale));
}

.p-kyutoki-card__list {
  margin-top: auto;
}

.p-kyutoki-card__item:nth-child(n + 2) {
  margin-top: calc(15px * var(--ui-scale));
}

.p-kyutoki-card__item a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: calc(15px * var(--ui-scale));
  /*border-bottom: calc(1px * var(--ui-scale)) dashed #399273;*/
  border-bottom: 1px dashed #399273;
  color: #333;
  font-weight: 700;
  transition: opacity .5s;
}

.p-kyutoki-card__item a:hover {
  opacity: .7;
}

.p-kyutoki-card__item a:after {
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M7.11667%206.66667L5.06667%208.71667L6%209.66667L9%206.66667L6%203.66667L5.06667%204.61667L7.11667%206.66667ZM6.66667%2013.3333C5.74444%2013.3333%204.87778%2013.1583%204.06667%2012.8083C3.25556%2012.4583%202.55%2011.9833%201.95%2011.3833C1.35%2010.7833%200.875%2010.0778%200.525%209.26667C0.175%208.45556%200%207.58889%200%206.66667C0%205.74444%200.175%204.87778%200.525%204.06667C0.875%203.25556%201.35%202.55%201.95%201.95C2.55%201.35%203.25556%200.875%204.06667%200.525C4.87778%200.175%205.74444%200%206.66667%200C7.58889%200%208.45556%200.175%209.26667%200.525C10.0778%200.875%2010.7833%201.35%2011.3833%201.95C11.9833%202.55%2012.4583%203.25556%2012.8083%204.06667C13.1583%204.87778%2013.3333%205.74444%2013.3333%206.66667C13.3333%207.58889%2013.1583%208.45556%2012.8083%209.26667C12.4583%2010.0778%2011.9833%2010.7833%2011.3833%2011.3833C10.7833%2011.9833%2010.0778%2012.4583%209.26667%2012.8083C8.45556%2013.1583%207.58889%2013.3333%206.66667%2013.3333ZM6.66667%2012C8.15556%2012%209.41667%2011.4833%2010.45%2010.45C11.4833%209.41667%2012%208.15556%2012%206.66667C12%205.17778%2011.4833%203.91667%2010.45%202.88333C9.41667%201.85%208.15556%201.33333%206.66667%201.33333C5.17778%201.33333%203.91667%201.85%202.88333%202.88333C1.85%203.91667%201.33333%205.17778%201.33333%206.66667C1.33333%208.15556%201.85%209.41667%202.88333%2010.45C3.91667%2011.4833%205.17778%2012%206.66667%2012Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

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

  .p-kyutoki {
    padding: 46px 0 0;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }

  .p-kyutoki__wrapper {
    padding: 32px 0;
  }

  .p-kyutoki__wrapper:before {
    border-radius: 0px;
  }

  .p-kyutoki__cards {
    grid-template-columns: none;
    gap: 24px 0;
  }

  .p-kyutoki__card {
    display: block;
    padding: 24px;
    border-radius: 16px;
  }

  .p-kyutoki-card__head {
    gap: 0 16px;
  }

  .p-kyutoki-card__image {
    width: 80px;
  }

  .p-kyutoki-card__heading {
    font-size: 16px;
  }

  .p-kyutoki-card__text {
    display: none;
  }

  .p-kyutoki-card__list {
    margin-top: 18px;
  }

  .p-kyutoki-card__item:nth-child(n + 2) {
    margin-top: 9px;
  }

  .p-kyutoki-card__item a {
    padding-bottom: 6px;
    font-size: 14px;
  }

  .p-kyutoki-card__item a:after {
    width: 14px;
    height: 14px;
  }

}

/* 給湯器のコト - 給湯器の故障・対処法 */
.p-diagnose {
  padding-top: calc(94px * var(--ui-scale));
}

.p-diagnose__row {
  padding: calc(48px * var(--ui-scale)) calc(80px * var(--ui-scale));
  background: #F8F8F8;
}

.p-diagnose__row:nth-child(n + 2) {
  margin-top: calc(48px * var(--ui-scale));
}

.p-diagnose__row > *:first-child {
  margin-top: 0!important;
}

.p-diagnose__blocks {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(24px * var(--ui-scale));
}

.p-diagnose__block {
  padding: calc(24px * var(--ui-scale));
  background: #fff;
}

.p-diagnose__block:nth-child(3) {
  grid-column: 1 / -1;
  /*border: calc(1px * var(--ui-scale)) solid #CCCCCC;*/
  border: 1px solid #CCCCCC;
}

.p-diagnose__block:has(.c-button) {
  display: grid;
  grid-template-columns: 1fr auto;
}

.p-diagnose__block .c-button {
  margin-top: 0;
  max-width: calc(352px * var(--ui-scale));
  padding-inline: calc(30px * var(--ui-scale)) calc(34px * var(--ui-scale));
}

.p-diagnose .c-subheading {
  font-size: calc(18px * var(--ui-scale));
}

.p-diagnose .c-subheading:before {
  top: calc(8px * var(--ui-scale));
}

.p-diagnose__text {
  margin-top: calc(18px * var(--ui-scale));
}

.p-diagnose__list {
  margin-top: calc(18px * var(--ui-scale));
}

.p-diagnose__block:nth-child(3) .p-diagnose__list {
  display: flex;
  flex-wrap: wrap;
  gap: calc(16px * var(--ui-scale));
}

.p-diagnose__item {
  padding-left: calc(1em + calc(4px * var(--ui-scale)));
  text-indent: calc(-1em + calc(-4px * var(--ui-scale)));
}

.p-diagnose__item:before {
  margin-right: calc(4px * var(--ui-scale));
  content: "・";
}

.p-diagnose .c-button:not(.c-button--cont) {
  margin-top: calc(48px * var(--ui-scale));
  padding-inline: calc(30px * var(--ui-scale)) calc(34px * var(--ui-scale));
}

.p-diagnose .c-button:not(.c-button--cont):after {
  transform: rotate(90deg);
}

.p-error-code {
  margin-top: calc(120px * var(--ui-scale));
}

.p-error-code > *:first-child {
  margin-top: 0!important;
}

.p-error-code > *:last-child {
  margin-bottom: 0!important;
}

.p-error-code .c-block-table {
  margin-top: calc(30px * var(--ui-scale));
  margin-bottom: calc(80px * var(--ui-scale));
}

.p-error-code .c-block-table table {
  table-layout: fixed;
}

.p-error-code .c-block-table tr * {
  width: 100%;
}

.p-error-code .c-block-table tr *:first-child {
  width: calc(128px * var(--ui-scale));
  font-family: "Roboto", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
  font-size: calc(20px * var(--ui-scale));
  line-height: 1;
}

.p-error-code .c-block-table tr:nth-child(n + 2) *:first-child {
  font-weight: 500;
}

.p-error-code .c-block-table tr:first-child th {
  padding-block: calc(47px * var(--ui-scale));
}

.p-error-code .c-block-table tr *:nth-child(2) {
  width: calc(244px * var(--ui-scale));
}

.p-error-code .c-block-table tr:nth-child(2n - 1) th {
  background: #DEECF3;
}

.p-error-code .c-block-table tr:nth-child(2n) th {
  background: #EDF5F9;
}

.p-error-code .c-block-table th,
.p-error-code .c-block-table td {
  padding-block: calc(39.5px * var(--ui-scale));
}

.p-symptoms {
  margin-top: calc(160px * var(--ui-scale));
}

.p-symptoms__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(32px * var(--ui-scale));
  margin-top: calc(62px * var(--ui-scale));
}

.p-symptoms__card {
  padding: calc(48px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
}

.p-symptoms__card:nth-child(4n - 3),
.p-symptoms__card:nth-child(4n) {
  background: #EDF5F9;
}

.p-symptoms__card:nth-child(4n - 2),
.p-symptoms__card:nth-child(4n - 1) {
  background: #F8F8F8;
}

.p-symptoms-card__blocks {
  display: grid;
}

.p-symptoms-card__blocks:first-child {
  grid-template-columns: calc(107px * var(--ui-scale)) 1fr;
  gap: 0 calc(24px * var(--ui-scale));
}

.p-symptoms-card__blocks:nth-child(2) {
  grid-template-columns: calc(120px * var(--ui-scale)) 1fr;
  gap: 0 calc(32px * var(--ui-scale));
  margin-top: calc(32px * var(--ui-scale));
}

.p-symptoms-card__block {

}

.p-symptoms-card__number {
  display: flex;
  align-items: center;
  height: 100%;
  padding: calc(12px * var(--ui-scale)) calc(16px * var(--ui-scale));
  background: #fff;
  color: #399273;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-symptoms-card__heading {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-symptoms-card__level {
  margin-top: calc(2px * var(--ui-scale));
  font-weight: 700;
}

.p-symptoms-card__level span {
  color: #D92E2E;
}

.p-symptoms-card__image img {
  width: 100%;
}

.p-symptoms-card__list {
  counter-reset: symptom;
}

.p-symptoms-card__item {
  position: relative;
  min-height: calc(32px * var(--ui-scale));
  padding-left: calc(48px * var(--ui-scale));
}

.p-symptoms-card__item:nth-child(n + 2) {
  margin-top: calc(8px * var(--ui-scale));
}

.p-symptoms-card__item::before {
  position: absolute;
  top: calc(-2px * var(--ui-scale));
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(32px * var(--ui-scale));
  height: calc(32px * var(--ui-scale));
  background: #399273;
  color: #fff;
  font-weight: 700;
  counter-increment: symptom;
  content: counter(symptom);
}

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

  .p-diagnose {
    padding-top: 80px;
  }

  .p-diagnose__row {
    padding: 24px;
  }

  .p-diagnose__blocks {
    display: flex;
    flex-direction: column;
    gap: 24px 0;
  }

  .p-diagnose__block {
    padding: 16px;
  }

  .p-diagnose__block:has(.c-button) {
    grid-template-columns: none;
  }

  .p-diagnose__block .c-button {
    margin-top: 24px;
    max-width: none;
  }

  .p-diagnose .c-subheading {
    font-size: 16px;
  }

  .p-diagnose .c-subheading:before {
    top: 6px;
  }

  .p-diagnose__block:nth-child(3) .p-diagnose__list {
    gap: 7px;
  }

  .p-diagnose .c-button:not(.c-button--cont) {
    width: fit-content;
    height: 48px;
    margin-top: 24px;
    padding-inline: 24px 26px;
    font-size: 14px;
  }

  .p-diagnose .c-button:not(.c-button--cont):after {
    width: 15px;
    height: 15px;
  }

  .p-error-code {
    margin-top: 78px;
  }

  .p-error-code .c-block-table {
    margin-top: 18px;
    margin-bottom: 50px;
  }

  .p-error-code .c-block-table th,
  .p-error-code .c-block-table td {
    padding-block: 2px;
    font-size: 12px;
  }

  .p-error-code .c-block-table td {
    padding-inline: 3px;
  }

  .p-error-code .c-block-table tr:first-child th {
    padding-block: 5px;
    padding-left: 4px;
    line-height: 1.5;
  }

  .p-error-code .c-block-table tr:first-child th:not(:nth-child(4)) {
    text-align: left;
  }

  .p-error-code .c-block-table tr *:first-child {
    width: 50px;
    font-size: 12px;
  }

  .p-error-code .c-block-table tr *:nth-child(2) {
    width: 64px;
  }

  .p-symptoms {
    margin-top: 80px;
  }

  .p-symptoms__cards {
    grid-template-columns: none;
    gap: 16px 0;
    margin-top: 30px;
  }

  .p-symptoms__card {
    padding: 24px;
  }

  .p-symptoms-card__blocks {
    display: flex;
    flex-direction: column;
  }

  .p-symptoms-card__blocks:first-child {
    gap: 16px 0;
  }

  .p-symptoms-card__blocks:nth-child(2) {
    gap: 16px 0;
    margin-top: 15px;
  }

  .p-symptoms-card__number {
    display: block;
    height: auto;
    padding: 4px;
    font-size: 14px;
    text-align: center;
  }

  .p-symptoms-card__heading {
    font-size: 18px;
    text-align: center;
  }

  .p-symptoms-card__level {
    margin-top: 5px;
    font-size: 14px;
    text-align: center;
  }

  .p-symptoms-card__image {
    width: 120px;
    margin: 0 auto;
  }

  .p-symptoms-card__item {
    min-height: 24px;
    padding-left: 32px;
    font-size: 14px;
  }

  .p-symptoms-card__item::before {
    top: 0;
    width: 24px;
    height: 24px;
    font-size: 12px;
  }

}

/* 給湯器のコト - 給湯器の修理 */
.p-repair-self {
  position: relative;
  z-index: 1;
  width: 100vw;
  margin: calc(80px * var(--ui-scale)) calc(50% - 50vw) 0;
}

.p-repair-self:before {
  position: absolute;
  bottom: calc(-416px * var(--ui-scale));
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(1556px * var(--ui-scale));
  background: linear-gradient(180deg, #FFFFFF 1.92%, #DDF4FF 49.04%, #EDF5F9 100%);
  content: "";
}

.p-repair-self:after {
  position: absolute;
  /*bottom: -516px;*/
  bottom: calc(-348px * var(--ui-scale));
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(833px * var(--ui-scale));
  background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(50px * var(--ui-scale))) bottom / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              url(lib/images/bg_dot_01.png) repeat-x center bottom calc(125px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale));
  content: "";
}

.p-repair-self__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-repair-self__container {

}

.p-repair-self__header {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(40px * var(--ui-scale)) calc(24px * var(--ui-scale));
  border: calc(5px * var(--ui-scale)) solid #F5CB29;
  border-radius: calc(32px * var(--ui-scale));
  background: #fff;
}

.p-repair-self__header:before,
.p-repair-self__header:after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%) rotate(45deg) skew(16deg, 16deg);
  width: calc(60px * var(--ui-scale));
  height: calc(60px * var(--ui-scale));
  background: #fff;
  content: "";
}

.p-repair-self__header:before {
  z-index: -1;
  top: calc(100% - 25px);
  border: calc(6px * var(--ui-scale)) solid #F5CB29;
}

.p-repair-self__header:after {
  top: calc(100% - 34px);
  background: #fff;
}

.p-repair-self__heading {
  position: relative;
  z-index: 1;
  color: #005638;
  font-size: calc(36px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-repair-self__body {
  position: relative;
  z-index: 1;
  margin-top: calc(-76px * var(--ui-scale));
  padding: calc(174px * var(--ui-scale)) calc(112px * var(--ui-scale)) calc(112px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale));
  background: #399273;
}

.p-repair-self__body:before {
  position: absolute;
  top: calc(100% - calc(20px * var(--ui-scale)));
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: calc(78px * var(--ui-scale));
  height: calc(88px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2265%22%20height%3D%2256%22%20viewBox%3D%220%200%2065%2056%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M32.043%2055.5L3.53695e-05%20-6.03593e-06L64.0859%20-4.3336e-07L32.043%2055.5Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-repair-self__cards {
  display: grid;
  gap: calc(32px * var(--ui-scale)) 0;
}

.p-repair-self__card {
  padding: calc(48px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #fff;
}

.p-repair-self__card .c-subheading {
  margin-bottom: calc(34px * var(--ui-scale));
}

.p-repair-self-card__content {
  display: grid;
  grid-template-columns: calc(192px * var(--ui-scale)) 1fr;
  gap: 0 calc(32px * var(--ui-scale));
}

.p-repair-self-card__image img {
  width: 100%;
}

.p-repair-self__card:first-child .p-repair-self-card__list {
  grid-template-columns: repeat(2, 1fr);
}

.p-repair-self-card__list {
  display: grid;
  gap: calc(32px * var(--ui-scale));
}

.p-repair-self-card__item {

}

.p-repair-self-card__item dt {
  position: relative;
  padding-left: calc(32px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-repair-self-card__item dt:before {
  position: absolute;
  top: calc(6px * var(--ui-scale));
  left: calc(2px * var(--ui-scale));
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8.6%2014.6L15.65%207.55L14.25%206.15L8.6%2011.8L5.75%208.95L4.35%2010.35L8.6%2014.6ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-repair-self-card__item dd {
  margin-top: calc(8px * var(--ui-scale));
}

.p-repair-self__footer {
  margin-top: calc(70px * var(--ui-scale));
}

.p-repair-self__decision {
  display: grid;
  grid-template-columns: calc(200px * var(--ui-scale)) auto;
  justify-content: center;
  align-items: center;
  gap: 0 calc(24px * var(--ui-scale));
}

.p-repair-self__decision--image img {
  width: 100%;
}

.p-repair-self__decision--content {

}

.p-repair-self__decision--heading {
  font-size: calc(32px * var(--ui-scale));
  font-weight: 700;
}

.p-repair-guide {
  position: relative;
  z-index: 1;
  margin-top: calc(270px * var(--ui-scale));
}

.p-repair-guide:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: 100vw;
  height: calc(200px * var(--ui-scale));
  background: #fff;
  content: "";
}

.p-repair-guide__header {
  position: relative;
  z-index: 1;
}

.p-repair-guide__body {
  position: relative;
  margin-top: calc(-48px * var(--ui-scale));
  padding: calc(86px * var(--ui-scale)) calc(80px * var(--ui-scale)) calc(80px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  border-radius: calc(16px * var(--ui-scale));
}

.p-repair-guide__body:before {
  position: absolute;
  top: calc(-2px * var(--ui-scale));
  left: 50%;
  transform: translateX(-50%);
  width: calc(638px * var(--ui-scale));
  height: calc(3px * var(--ui-scale));
  background: #fff;
  content: "";
}

.p-repair-guide__label {
  padding-left: calc(9px * var(--ui-scale));
}

.p-repair-guide__label span {
  display: inline-block;
  min-width: calc(144px * var(--ui-scale));
  padding: calc(10px * var(--ui-scale)) 0;
  background: #F8F8F8;
  border-radius: calc(9999px * var(--ui-scale));
  font-size: calc(14px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-repair-guide__list {
  margin-top: calc(25px * var(--ui-scale));
}

.p-repair-guide__item {
  display: grid;
  grid-template-columns: calc(160px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(96px * var(--ui-scale));
  position: relative;
}

.p-repair-guide__item:nth-last-child(n + 2):before {
  position: absolute;
  top: calc(52.5px * var(--ui-scale));
  left: calc(208px * var(--ui-scale));
  width: calc(2px * var(--ui-scale));
  height: 100%;
  background-image: linear-gradient(to bottom, #399273 0, #399273 calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)), transparent calc(4px * var(--ui-scale)));
  background-position: calc(-2px * var(--ui-scale)) 0;
  background-repeat: repeat-y;
  background-size: calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale));
  content: "";
}

.p-repair-guide__item:nth-last-child(2):before {
  background-image: linear-gradient(to bottom, #D92E2E 0, #D92E2E calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)), transparent calc(4px * var(--ui-scale)));
}

.p-repair-guide__item dt {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  min-height: calc(105px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-repair-guide__item:first-child dt {
  background: #f8f8f8;
  color: #005638;
}
.p-repair-guide__item:nth-child(2) dt {
  background: #dbdbdb;
  color: #005638;
}
.p-repair-guide__item:nth-child(3) dt {
  background: #999999;
  color: #fff;
}
.p-repair-guide__item:nth-child(4) dt {
  background: #666666;
  color: #fff;
}
.p-repair-guide__item:nth-child(5) dt {
  background: #D92E2E;
  color: #fff;
}

.p-repair-guide__item:nth-child(4) dt,
.p-repair-guide__item:nth-child(5) dt {
  font-size: calc(20px * var(--ui-scale));
}

.p-repair-guide__item dt:before {
  position: absolute;
  content: "";
}

.p-repair-guide__item:first-child dt:before,
.p-repair-guide__item:last-child dt:before {
  top: calc(44.5px * var(--ui-scale));
  right: calc(-57px * var(--ui-scale));
  width: calc(16px * var(--ui-scale));
  height: calc(16px * var(--ui-scale));
  border-radius: calc(9999px * var(--ui-scale));
  background: #399273;
}

.p-repair-guide__item:last-child dt:before {
  background: #D92E2E;
}

.p-repair-guide__item:nth-child(n + 2):nth-last-child(n + 2) dt:before {
  top: calc(38.5px * var(--ui-scale));
  right: calc(-61px * var(--ui-scale));
  width: calc(24px * var(--ui-scale));
  height: calc(24px * var(--ui-scale));
  background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cmask%20id%3D%22mask0_2307_98383%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2224%22%20height%3D%2224%22%3E%0A%3Crect%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2307_98383)%22%3E%0A%3Cpath%20d%3D%22M12%2018L6%2012L7.4%2010.6L11%2014.2V5H13V14.2L16.6%2010.6L18%2012L12%2018Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
}

.p-repair-guide__item:nth-last-child(2) dt:before {
  background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cmask%20id%3D%22mask0_2307_98389%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2224%22%20height%3D%2224%22%3E%0A%3Crect%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2307_98389)%22%3E%0A%3Cpath%20d%3D%22M12%2018L6%2012L7.4%2010.6L11%2014.2V5H13V14.2L16.6%2010.6L18%2012L12%2018Z%22%20fill%3D%22%23D92E2E%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain!important;
}

.p-repair-guide__item dd p {
  margin-top: calc(16px * var(--ui-scale));
}

.p-repair-estimate {
  width: 100vw;
  margin: calc(120px * var(--ui-scale)) calc(50% - 50vw) 0;
}

.p-repair-estimate__wrapper {
  width: 100%;
  max-width: calc(1792px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(80px * var(--ui-scale)) 0 calc(80px * var(--ui-scale));
  /*background: url("lib/images/bg_repair.jpg") no-repeat center / cover;*/
  background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)),
              url("lib/images/bg_repair.png") no-repeat center / cover;
}

.p-repair-estimate__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-repair-estimate__heading {
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-repair-estimate__heading > span {
  display: block;
  padding: calc(14px * var(--ui-scale)) calc(30px * var(--ui-scale)) calc(16px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #46CC9D;*/
  border: 1px solid #46CC9D;
}

.p-repair-estimate__heading > span span {
  display: block;
  font-size: calc(32px * var(--ui-scale));
}

.p-repair-estimate__lead {
  margin-top: calc(46px * var(--ui-scale));
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-repair-estimate__lead span {
  display: block;
  margin-top: calc(4px * var(--ui-scale));
  color: #FFE762;
  font-size: calc(24px * var(--ui-scale));
}

.p-repair-estimate__text {
  margin-top: calc(24px * var(--ui-scale));
  color: #fff;
  text-align: center;
  line-height: 2;
}

.p-repair-contact {
  width: 100vw;
  margin: calc(160px * var(--ui-scale)) calc(50% - 50vw) 0;
}

.p-repair-contact__wrapper {
  width: 100%;
  max-width: calc(1792px * var(--ui-scale));
  margin: 0 auto;
}

.p-repair-contact__inner {

}

.p-repair-contact__heading {

}

.p-repair-contact__heading > span {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(32px * var(--ui-scale));
}

.p-repair-contact__heading > span:before,
.p-repair-contact__heading > span:after {
  width: calc(6px * var(--ui-scale));
  height: calc(45px * var(--ui-scale));
  background: #46CC9D;
  content: "";
}

.p-repair-contact__heading > span:before {
  transform: translateY(calc(26px * var(--ui-scale))) rotate(-15deg);
  margin-right: calc(6px * var(--ui-scale));
}

.p-repair-contact__heading > span:after {
  transform: translateY(calc(26px * var(--ui-scale))) rotate(15deg);
  margin-left: calc(6px * var(--ui-scale));
}

.p-repair-contact__heading > span img {
  width: calc(120px * var(--ui-scale));
}

.p-repair-contact__heading > span span {
  font-size: calc(36px * var(--ui-scale));
  line-height: 1.5;
  text-indent: 1em;
}

.p-repair-contact__text {
  margin-top: calc(80px * var(--ui-scale));
  text-align: center;
}

.p-repair-contact__container {
  position: relative;
  z-index: 1;
  margin-top: calc(220px * var(--ui-scale));
}

.p-repair-contact__image {
  position: absolute;
  top: calc(-156px * var(--ui-scale));
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(416px * var(--ui-scale));
}

.p-repair-contact__image img {
  width: 100%;
}

.p-repair-contact__outer {
  padding: calc(48px * var(--ui-scale)) 0;
  border-radius: calc(32px * var(--ui-scale));
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
}

.p-repair-contact__block {
  width: 100%;
  max-width: calc(1312px * var(--ui-scale));
  margin: 0 auto;
}

.p-repair-fee {
  margin-top: calc(160px * var(--ui-scale));
}

.p-repair-fee__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(32px * var(--ui-scale));
  margin: calc(64px * var(--ui-scale)) 0 calc(76px * var(--ui-scale));
}

.p-repair-fee__card {
  padding: calc(48px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #F8F8F8;
}

.p-repair-fee-card__label {
  background: #666666;
  color: #FFFFFF;
  font-weight: 700;
  text-align: center;
}

.p-repair-fee-card__price {
  margin-top: calc(8px * var(--ui-scale));
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-repair-fee__list {
  margin-top: calc(24px * var(--ui-scale));
}

.p-repair-fee__item {
  padding-left: calc(1em + calc(8px * var(--ui-scale)));
  text-indent: calc(-1em + calc(-8px * var(--ui-scale)));
}

.p-repair-fee__item:nth-child(n + 2) {
  margin-top: calc(8px * var(--ui-scale));
}

.p-repair-fee__item:before {
  margin-right: calc(8px * var(--ui-scale));
  content: "※";
}

.p-repair-support {
  margin-top: calc(160px * var(--ui-scale));
}

.p-repair-support__content {
  margin-top: calc(64px * var(--ui-scale));
}

.p-repair-support__content > *:first-child {
  margin-top: 0!important;
}

.p-repair-support__content > *:last-child {
  margin-bottom: 0!important;
}

.p-repair-support__text {
  margin-top: calc(32px * var(--ui-scale));
  margin-bottom: calc(64px * var(--ui-scale));
}

.p-repair-support__list {
  margin-top: calc(32px * var(--ui-scale));
  margin-bottom: calc(64px * var(--ui-scale));
}

.p-repair-support__item:nth-child(n + 2) {
  margin-top: calc(32px * var(--ui-scale));
}

.p-repair-support__item dt {
  padding: calc(8px * var(--ui-scale)) calc(16px * var(--ui-scale));
  background: #F3F3F3;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-repair-support__item dd {
  margin-top: calc(16px * var(--ui-scale));
  padding-left: calc(16px * var(--ui-scale));
}

.p-repair-support__item dd a {
  color: #005638;
  text-decoration: underline;
}

.p-repair-support__item dd a:hover {
  text-decoration: none;
}

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

  .p-repair-self {
    margin: 48px calc(50% - 50vw) 0;
  }

  .p-repair-self:before {
    bottom: -188px;
    height: 463px;
  }

  .p-repair-self:after {
    bottom: -174px;
    background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + 80px) bottom -16px / calc(1408px * .568) calc(247px * .568),
                url(lib/images/bg_dot_01.png) repeat-x center bottom 34px / calc(491px / 2) calc(506px / 2);
  }

  .p-repair-self__inner {
    padding: 0;
  }

  .p-repair-self__header {
    width: calc(100% - (24px * 2));
    max-width: none;
    padding: 15px 0;
    border: 2px solid #F5CB29;
    border-radius: 13px;
  }

  .p-repair-self__header:before,
  .p-repair-self__header:after {
    width: 24px;
    height: 24px;
  }

  .p-repair-self__header:before {
    top: calc(100% - 10px);
    border: 3px solid #F5CB29;
  }

  .p-repair-self__header:after {
    top: calc(100% - 14px);
  }

  .p-repair-self__heading {
    font-size: 16px;
  }

  .p-repair-self__body {
    margin-top: -30px;
    padding: 74px 24px 32px;
    border-radius: 0;
  }

  .p-repair-self__body:before {
    width: 68px;
    height: 78px;
  }

  .p-repair-self__cards {
    gap: 24px 0;
  }

  .p-repair-self__card {
    padding: 24px;
    border-radius: 8px;
  }

  .p-repair-self__card .c-subheading {
    margin-bottom: 20px;
  }

  .p-repair-self-card__content {
    grid-template-columns: none;
    gap: 24px 0;
  }

  .p-repair-self-card__image {
    width: 160px;
    margin: 0 auto;
  }

  .p-repair-self-card__list {
    gap: 16px 0;
  }

  .p-repair-self__card:first-child .p-repair-self-card__list {
    grid-template-columns: none;
  }

  .p-repair-self-card__item dt {
    font-size: 16px;
  }

  .p-repair-self-card__item dt:before {
    top: 4px;
  }

  .p-repair-self-card__item dd {
    margin-top: 4px;
    font-size: 14px;
  }

  .p-repair-self__footer {
    margin-top: 64px;
  }

  .p-repair-self__decision {
    grid-template-columns: 100px auto;
    padding-right: 12px;
  }

  .p-repair-self__decision--heading {
    font-size: 18px;
  }

  .p-repair-guide {
    margin-top: 166px;
  }

  .p-repair-guide .c-block-catch {
    margin-bottom: 16px;
  }

  .p-repair-guide .c-block-catch span {
    align-items: flex-end;
    gap: 0 17px;
    font-size: 15px;
    line-height: 1.5;
  }

  .p-repair-guide .c-block-catch span:before,
  .p-repair-guide .c-block-catch span:after {
    width: 3px;
    height: 24px;
  }

  .p-repair-guide .c-block-catch span:before {
    transform: translateY(-4px) rotate(-16deg);
  }

  .p-repair-guide .c-block-catch span:after {
    transform: translate(-6px, -4px) rotate(16deg);
  }

  .p-repair-guide__body {
    margin-top: 30px;
    padding: 0;
    border: none;
    border-radius: 0;
  }

  .p-repair-guide__body:before {
    content: none;
  }

  .p-repair-guide__label {
    display: none;
  }

  .p-repair-guide__list {
    margin-top: 0;
  }

  .p-repair-guide__item {
    grid-template-columns: 64px 1fr;
    gap: 0 16px;
  }

  .p-repair-guide__item:nth-last-child(n + 2):before {
    content: none;
  }

  .p-repair-guide__item dt {
    flex-direction: column;
    min-height: 138px;
    font-size: 14px;
    text-align: center;
    line-height: 1.5;
  }

  .p-repair-guide__item:nth-child(4) dt,
  .p-repair-guide__item:nth-child(5) dt {
    font-size: 16px;
  }

  .p-repair-guide__item dt:before {
    content: none;
  }

  .p-repair-guide__item:nth-last-child(n + 2) dt:after {
    width: 17px;
    height: 17px;
    margin-top: 2px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2217%22%20viewBox%3D%220%200%2016%2017%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%228%22%20cy%3D%228%22%20r%3D%228%22%20fill%3D%22white%22%2F%3E%0A%3Cmask%20id%3D%22mask0_2307_98459%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2216%22%20height%3D%2217%22%3E%0A%3Crect%20y%3D%220.666504%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2307_98459)%22%3E%0A%3Cpath%20d%3D%22M8%2012.6664L4%208.66642L4.93333%207.73309L7.33333%2010.1331V3.99976H8.66667V10.1331L11.0667%207.73309L12%208.66642L8%2012.6664Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain!important;
    content: "";
  }

  .p-repair-guide__item:nth-child(3) dt:after,
  .p-repair-guide__item:nth-child(4) dt:after {
    margin-top: 8px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2217%22%20viewBox%3D%220%200%2016%2017%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%228%22%20cy%3D%228%22%20r%3D%228%22%20fill%3D%22white%22%2F%3E%0A%3Cmask%20id%3D%22mask0_2307_98480%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2216%22%20height%3D%2217%22%3E%0A%3Crect%20y%3D%220.666504%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22%23D9D9D9%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask0_2307_98480)%22%3E%0A%3Cpath%20d%3D%22M8%2012.6664L4%208.66642L4.93333%207.73309L7.33333%2010.1331V3.99976H8.66667V10.1331L11.0667%207.73309L12%208.66642L8%2012.6664Z%22%20fill%3D%22%23666666%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain!important;
  }

  .p-repair-guide__item dt span {
    color: #333;
    font-size: 12px;
    line-height: 1.5;
  }

  .p-repair-estimate {
    margin: 80px calc(50% - 50vw) 0;
  }

  .p-repair-estimate__wrapper {
    padding: 48px 0;
  }

  .p-repair-estimate__heading {
    font-size: 14px;
  }

  .p-repair-estimate__heading > span {
    padding: 17px;
  }

  .p-repair-estimate__heading > span span {
    font-size: 20px;
  }

  .p-repair-estimate__lead {
    margin-top: 32px;
    font-size: 16px;
  }

  .p-repair-estimate__lead span {
    margin-top: 8px;
    font-size: 20px;
  }

  .p-repair-estimate__text {
    text-align: left;
  }

  .p-repair-contact {
    margin: 90px calc(50% - 50vw) 0;
  }

  .p-repair-contact__header {
    padding: 0 24px;
  }

  .p-repair-contact__heading > span {
    flex-direction: column;
    gap: 12px 0;
  }

  .p-repair-contact__heading > span:before,
  .p-repair-contact__heading > span:after {
    content: none;
  }

  .p-repair-contact__heading > span img {
    width: 45px;
  }

  .p-repair-contact__heading > span span {
    font-size: 18px;
    text-align: center;
    text-indent: 0;
    line-height: 1.7;
  }

  .p-repair-contact__text {
    margin-top: 34px;
    text-align: left;
  }

  .p-repair-contact__container {
    margin-top: 150px;
  }

  .p-repair-contact__outer {
    padding: 32px 24px;
    border-radius: 0;
  }

  .p-repair-contact__image {
    top: -102px;
    left: calc(50% - 10px);
    width: 267px;
  }

  .p-repair-fee {
    margin-top: 80px;
  }

  .p-repair-fee__cards {
    grid-template-columns: none;
    margin: 30px 0 50px;
  }

  .p-repair-fee__card {
    padding: 24px;
    border-radius: 16px;
  }

  .p-repair-fee-card__label {
    font-size: 14px;
  }

  .p-repair-fee-card__price {
    margin-top: 6px;
    margin-bottom: -2px;
    font-size: 20px;
  }

  .p-repair-fee__list {
    margin-top: 16px;
  }

  .p-repair-fee__item:nth-child(n + 2) {
    margin-top: 0;
  }

  .p-repair-support {
    margin-top: 80px;
  }

  .p-repair-support__content {
    margin-top: 30px;
  }

  .p-repair-support__text {
    margin-top: 18px;
    margin-bottom: 34px;
  }

  .p-repair-support__list {
    margin-top: 18px;
    margin-bottom: 34px;
  }

  .p-repair-support__item:nth-child(n + 2) {
    margin-top: 16px;
  }

  .p-repair-support__item dt {
    padding: 4px 8px;
    font-size: 14px;
  }

  .p-repair-support__item dd {
    margin-top: 4px;
    padding-left: 8px;
  }

}

/* 給湯器のコト - 給湯器の交換 */
.p-exchange-sign {
  width: 100vw;
  margin: calc(80px * var(--ui-scale)) calc(50% - 50vw) 0;
}

.p-exchange-sign__wrapper {
  width: 100%;
  max-width: 1312px;
  margin: 0 auto;
  padding: calc(80px * var(--ui-scale)) 0 calc(80px * var(--ui-scale));
  background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)),
              url("lib/images/bg_exchange.jpg") no-repeat center / cover;
}

.p-exchange-sign__inner {
  padding: 0 24px;
}

.p-exchange-sign__heading {
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-exchange-sign__heading > span {
  display: inline-block;
  padding: calc(14px * var(--ui-scale)) calc(30px * var(--ui-scale)) calc(16px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #46CC9D;*/
  border: 1px solid #46CC9D;
}

.p-exchange-sign__list {
  width: fit-content;
  margin: calc(46px * var(--ui-scale)) auto 0;
}

.p-exchange-sign__item {
  display: flex;
  align-items: center;
  gap: 0 calc(18px * var(--ui-scale));
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-exchange-sign__item:nth-child(n + 2) {
  margin-top: calc(22px * var(--ui-scale));
}

.p-exchange-sign__item:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75555%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75555%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75555%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75555%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-exchange-merit {
  margin-top: 160px;
}

.p-exchange-merit__header {

}

.p-exchange-merit__body {
  position: relative;
  z-index: 1;
  margin-top: 80px;
  padding: 80px 0;
}

.p-exchange-merit__body:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: 100%;
  border-radius: calc(32px * var(--ui-scale));
  background: linear-gradient(180deg, #EDF5F9 17.31%, #DDF4FF 49.04%, #EDF5F9 100%);
  content: "";
}

.p-exchange-merit__cards {
  display: grid;
  gap: 32px 0;
}

.p-exchange-merit__card {
  padding: 22px 64px 64px;
  border-radius: 16px;
  background: #fff;
}

.p-exchange-merit-card__number {
  display: flex;
  align-items: center;
  gap: 0 34px;
  color: #399273;
  font-size: 32px;
  font-weight: 700;
}

.p-exchange-merit__card:nth-child(2n) .p-exchange-merit-card__number {
  margin-bottom: 6px;
}

.p-exchange-merit-card__number span {
  transform: translateY(2px);
  font-family: "Roboto", sans-serif;
  font-size: 72px;
  font-weight: 500;
  letter-spacing: -.02em;
}

.p-exchange-merit-card__block {
  display: grid;
  grid-template-columns: 224px 1fr;
  align-items: center;
  gap: 0 24px;
  margin-top: 8px;
}

.p-exchange-merit__card:nth-child(2n) .p-exchange-merit-card__block {
  grid-template-columns: 1fr 224px;
  align-items: flex-end;
  margin-top: 0;
}

.p-exchange-merit__card:nth-child(3) .p-exchange-merit-card__block {
  gap: 0;
}

.p-exchange-merit__card:nth-child(2n) .p-exchange-merit-card__image {
  order: 1;
}

.p-exchange-merit-card__image img {
  width: 100%;
}

.p-exchange-template {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

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

  .p-exchange-sign__wrapper {
    padding: 104px 0 108px;
    /*background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)),
                url("lib/images/bg_exchange.jpg") no-repeat left calc(50% + 154px) top calc(50% + 18px) / cover;*/
  }

  .p-exchange-sign__heading {
    font-size: 20px;
  }

  .p-exchange-sign__heading > span {
    display: block;
  }

  .p-exchange-sign__list {
    margin: 24px auto 0;
  }

  .p-exchange-sign__item {
    font-size: 16px;
  }

  .p-exchange-sign__item:nth-child(n + 2) {
    margin-top: 21px;
  }

  .p-exchange-sign__item:before {
    flex-shrink: 0;
    transform: translateY(3px);
  }

  .p-exchange-merit {
    margin-top: 80px;
  }

  .p-exchange-merit .c-block-lead {
    text-align: left;
  }

  .p-exchange-merit__body {
    margin-top: 48px;
    padding: 24px 0;
  }

  .p-exchange-merit__card {
    padding: 19px 24px 24px;
  }

  .p-exchange-merit-card__block {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 2px;
  }

  .p-exchange-merit__card:nth-child(2n) .p-exchange-merit-card__block {
    flex-direction: column;
    align-items: normal;
  }

  .p-exchange-merit-card__image {
    width: 112px;
    margin: 0 auto;
  }

  .p-exchange-merit-card__number {
    justify-content: center;
    gap: 0 18px;
    font-size: 20px;
  }

  .p-exchange-merit__card:nth-child(2n) .p-exchange-merit-card__number {
    margin-bottom: 2px;
  }

  .p-exchange-merit-card__number span {
    transform: translateY(1px);
    font-size: 36px;
  }

}

/* 給湯器のコト - 給湯器の種類と選び方 */
.p-kinds .c-block-heading {
  margin-top: calc(120px * var(--ui-scale));
}

.p-kinds-feature {
  margin-top: calc(160px * var(--ui-scale));
}

.p-kinds-feature .c-block-table {
  margin-top: calc(60px * var(--ui-scale));
}

.p-kinds-feature .c-block-table--sp-only {
  display: none;
}

.p-kinds-feature .c-block-table table {

}

.p-kinds-feature .c-block-table tr > *:first-child {
  width: calc(130px * var(--ui-scale));
}

.p-kinds-feature .c-block-table tr > *:nth-child(2),
.p-kinds-feature .c-block-table tr > *:nth-child(3) {
  width: calc(229px * var(--ui-scale));
}

.p-kinds-feature .c-block-table tr > *:nth-child(4) {
  width: calc(298px * var(--ui-scale));
}

.p-kinds-feature .c-block-table th,
.p-kinds-feature .c-block-table td {
  width: auto;
}

.p-kinds-feature .c-block-table th:first-child {
  padding: 0;
}

.p-kinds-feature .c-block-table th:first-child span {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(106px * var(--ui-scale));
  text-align: left;
}

.p-kinds-feature .c-block-table th:nth-child(n + 2) span {
  display: block;
  font-size: calc(14px * var(--ui-scale));
  line-height: 1;
}

.p-kinds-feature .c-block-table th:nth-child(n + 2) img {
  display: block;
  width: calc(80px * var(--ui-scale));
  margin: calc(14px * var(--ui-scale)) auto 0;
}

.p-kinds-feature .c-block-table td {
  padding: 0 calc(32px * var(--ui-scale));
}

.p-kinds-feature .c-block-table td span {
  display: block;
}

.p-kinds-feature .c-block-table td span.is-accent {
  color: #399273;
  font-size: calc(24px * var(--ui-scale));
}

.p-kinds-choose {
  margin-top: calc(160px * var(--ui-scale));
}

.p-kinds-choose .c-anchor {
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: calc(64px * var(--ui-scale)) auto 0;
}

.p-kinds-choose .c-anchor__buttons {
  grid-template-columns: repeat(2, 1fr);
}

.p-kinds-choose__text {
  /*margin-bottom: calc(40px * var(--ui-scale));*/
  margin-bottom: calc(80px * var(--ui-scale));
}

.p-kinds-choose__text span {
  color: #D92E2E;
}

.p-kinds-choose-ecocute {
  margin-bottom: calc(-40px * var(--ui-scale));
}

.p-kinds-choose-ecocute .c-block-table {
  /*margin-top: calc(80px * var(--ui-scale));*/
}

.p-kinds-choose-ecocute .c-block-table table {
  table-layout: fixed;
}

.p-kinds-choose-ecocute .c-block-table tr > *:first-child {
  width: calc(103px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
}

.p-kinds-choose-ecocute .c-block-table tr > *:nth-child(2) {
  width: calc(358px * var(--ui-scale));
}

.p-kinds-choose-ecocute .c-block-table th,
.p-kinds-choose-ecocute .c-block-table td {
  width: auto;
}

.p-kinds-choose-ecocute .c-block-table td {
  padding-block: calc(10px * var(--ui-scale));
}

.p-kinds-choose-ecocute__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(64px * var(--ui-scale));
  /*padding-top: calc(40px * var(--ui-scale));*/
}

.p-kinds-choose-ecocute-card__image {
  margin-top: calc(32px * var(--ui-scale));
}

.p-kinds-choose-ecocute-card__image img {
  width: 100%;
  aspect-ratio: 512 / 384;
  object-fit: cover;
}

.p-kinds-choose-ecocute-card__text {
  margin-top: calc(32px * var(--ui-scale));
}

.p-kinds-volume {
  /*margin-top: calc(40px * var(--ui-scale));*/
}

.p-kinds-volume__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 calc(32px * var(--ui-scale));
}

.p-kinds-volume__cards--three {
  grid-template-columns: repeat(3, 1fr);
  gap: 0 calc(64px * var(--ui-scale));
}

.p-kinds-volume__card {

}

.p-kinds-volume-card__heading {
  color: #666666;
  font-size: calc(24px * var(--ui-scale));
  text-align: center;
}

.p-kinds-volume-card__heading:after {
  display: block;
  width: calc(44px * var(--ui-scale));
  height: calc(4px * var(--ui-scale));
  margin: calc(12px * var(--ui-scale)) auto 0;
  background-image: radial-gradient(circle, #399273 calc(2px * var(--ui-scale)), transparent calc(2px * var(--ui-scale)));
  background-position: calc(-2px * var(--ui-scale)) 0;
  background-repeat: repeat-x;
  background-size: calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale));
  content: "";
}

.p-kinds-volume-card__image {
  width: calc(140px * var(--ui-scale));
  margin: calc(24px * var(--ui-scale)) auto 0;
}

.p-kinds-volume-card__label {
  margin-top: calc(32px * var(--ui-scale));
  background: #EDF5F9;
  color: #399273;
  font-weight: 700;
  text-align: center;
}

.p-kinds-volume-card__capacity {
  margin-top: calc(14px * var(--ui-scale));
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-kinds-volume-card__description {
  margin-top: calc(12px * var(--ui-scale));
}

.p-kinds-choose-infra {
  width: 100%;
  max-width: calc(1068px * var(--ui-scale));
  margin: calc(120px * var(--ui-scale)) auto 0;
}

.p-kinds-choose-infra__content {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(48px * var(--ui-scale));
  padding: calc(46px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #F8F8F8;
}

.p-kinds-choose-infra__link a {
  color: #005638;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  transition: opacity .5s;
}

.p-kinds-choose-infra__link a:hover {
  opacity: .6;
}

.p-kinds-choose-infra__link:after {
  display: inline-block;
  width: calc(20px * var(--ui-scale));
  height: calc(20px * var(--ui-scale));
  margin-left: calc(14px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.675%2010L7.6%2013.075L9%2014.5L13.5%2010L9%205.5L7.6%206.925L10.675%2010ZM10%2020C8.61667%2020%207.31667%2019.7375%206.1%2019.2125C4.88333%2018.6875%203.825%2017.975%202.925%2017.075C2.025%2016.175%201.3125%2015.1167%200.7875%2013.9C0.2625%2012.6833%200%2011.3833%200%2010C0%208.61667%200.2625%207.31667%200.7875%206.1C1.3125%204.88333%202.025%203.825%202.925%202.925C3.825%202.025%204.88333%201.3125%206.1%200.7875C7.31667%200.2625%208.61667%200%2010%200C11.3833%200%2012.6833%200.2625%2013.9%200.7875C15.1167%201.3125%2016.175%202.025%2017.075%202.925C17.975%203.825%2018.6875%204.88333%2019.2125%206.1C19.7375%207.31667%2020%208.61667%2020%2010C20%2011.3833%2019.7375%2012.6833%2019.2125%2013.9C18.6875%2015.1167%2017.975%2016.175%2017.075%2017.075C16.175%2017.975%2015.1167%2018.6875%2013.9%2019.2125C12.6833%2019.7375%2011.3833%2020%2010%2020ZM10%2018C12.2333%2018%2014.125%2017.225%2015.675%2015.675C17.225%2014.125%2018%2012.2333%2018%2010C18%207.76667%2017.225%205.875%2015.675%204.325C14.125%202.775%2012.2333%202%2010%202C7.76667%202%205.875%202.775%204.325%204.325C2.775%205.875%202%207.76667%202%2010C2%2012.2333%202.775%2014.125%204.325%2015.675C5.875%2017.225%207.76667%2018%2010%2018Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  vertical-align: calc(-3px * var(--ui-scale));
  content: "";
}

.p-kinds-choose-gas .c-block-table table {
  table-layout: fixed;
}

.p-kinds-choose-gas .c-block-table--type tr > *:first-child {
  width: calc(103px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
}

.p-kinds-choose-gas .c-block-table--type tr > *:nth-child(2) {
  width: calc(342px * var(--ui-scale));
}

.p-kinds-choose-gas .c-block-table--type tr > *:nth-child(3) {
  width: calc(308px * var(--ui-scale));
}

.p-kinds-choose-gas .c-block-table--ecojozu tr > *:first-child {
  width: calc(100px * var(--ui-scale));
}

.p-kinds-choose-gas .c-block-table th,
.p-kinds-choose-gas .c-block-table td {
  width: auto;
}

.p-kinds-choose-gas .c-block-table--type td {
  padding-block: calc(10px * var(--ui-scale));
}

.p-kinds-choose-gas .c-block-table--ecojozu td {
  padding-block: calc(13px * var(--ui-scale));
}

.p-kinds-choose-gas-type__columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(64px * var(--ui-scale));
}

.p-kinds-choose-gas-type__list {
  margin-top: calc(32px * var(--ui-scale));
}

.p-kinds-choose-gas-type__item {
  display: grid;
  gap: calc(16px * var(--ui-scale)) 0;
}

.p-kinds-choose-gas-type__item dt {
  color: #005638;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-kinds-choose-gas-location__columns {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 calc(64px * var(--ui-scale));
}

.p-kinds-choose-gas-location__label {
  padding: calc(8px * var(--ui-scale));
  background: #EDF5F9;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-kinds-choose-gas-location__list {
  display: grid;
  gap: calc(32px * var(--ui-scale)) 0;
  margin-top: calc(48px * var(--ui-scale));
}

.p-kinds-choose-gas-location__item {
  display: grid;
  grid-template-columns: calc(112px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(32px * var(--ui-scale));
}

.p-kinds-choose-gas-location__image img {
  width: 100%;
}

.p-kinds-choose-gas-location__heading {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-kinds-choose-gas-location__text {
  margin-top: calc(12px * var(--ui-scale));
}

.p-kinds-choose .p-fee-reason {
  margin-top: calc(160px * var(--ui-scale));
  padding-bottom: 0;
}

.p-kinds-choose .p-fee-reason .p-fee-reason__lead {
  font-size: calc(24px * var(--ui-scale));
  line-height: 1.5;
}

.p-kinds-choose .p-fee-reason .c-advice__block {
  margin-top: calc(50px * var(--ui-scale));
  margin-bottom: calc(-20px * var(--ui-scale));
}

.p-kinds-choose .c-advice__block--sp-only {
  display: none;
}

.p-kinds-choose .p-fee-reason .p-fee-reason__item:before {
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75555%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75555%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75555%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75555%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
}

.p-kinds-choose .p-fee-reason .c-advice__content {
  background: #fff;
}

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

  .p-kinds-choose .p-fee-reason {
    margin-top: 80px;
    margin-bottom: 48px;
    padding-bottom: 0;
  }

  .p-kinds-choose .p-fee-reason .p-fee-reason__wrapper {
    padding: 86px 0;
  }

  .p-kinds-choose .p-fee-reason .p-fee-reason__lead {
    font-size: 16px;
    line-height: 1.7;
  }

  .p-kinds-choose .p-fee-reason .p-fee-reason__list {
    margin: 30px 0 0;
  }

  .p-kinds-choose .p-fee-reason .p-fee-reason__item:nth-child(n + 2) {
    margin-top: 16px;
  }

  .p-kinds-choose .p-fee-reason .c-advice__block--pc-only {
    display: none;
  }

  .p-kinds-choose .c-advice__block--sp-only {
    display: flex;
  }

  .p-kinds-intro .c-block-lead {
    text-align: left;
  }

  .p-kinds-feature {
    margin-top: 80px;
  }

  .p-kinds-feature .c-block-table {
    margin-top: 48px;
  }

  .p-kinds-feature .c-block-table--pc-only {
    display: none;
  }

  .p-kinds-feature .c-block-table--sp-only {
    display: block;
  }

  .p-kinds-feature .c-block-table tr > *:first-child {
    width: 120px;
  }

  .p-kinds-feature .c-block-table th,
  .p-kinds-feature .c-block-table td {
    padding: 4px;
    font-size: 14px;
  }

  .p-kinds-feature .c-block-table td span {
    display: inline;
    margin-right: 3px;
    font-size: 20px;
    vertical-align: -2px;
  }

  .p-kinds-feature .c-block-table td span.is-accent {
    font-size: 20px;
  }

  .p-kinds-feature .c-block-table figcaption {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 8px;
    margin-bottom: 16px;
  }

  .p-kinds-feature .c-block-table figcaption p {
    padding-bottom: 6px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
  }

  .p-kinds-feature .c-block-table figcaption span {
    display: block;
    font-size: 14px;
    line-height: 1;
  }

  .p-kinds-feature .c-block-table figcaption img {
    width: 80px;
  }

  .p-kinds .c-advice {
    margin-top: 32px;
  }

  .p-kinds-choose {
    margin-top: 80px;
  }

  .p-kinds-choose .c-anchor {
    max-width: none;
    margin-top: 48px;
  }

  .p-kinds .c-block-heading {
    margin-top: 64px;
  }

  .p-kinds-choose .c-anchor__buttons {
    gap: 16px 0;
  }

  .p-kinds-choose__text {
    margin-bottom: 48px;
  }

  .p-kinds-choose-ecocute {
    margin-bottom: 0;
    padding-bottom: 40px;
  }

  .p-kinds-choose-ecocute__cards {
    grid-template-columns: none;
    gap: 32px 0;
  }

  .p-kinds-choose-ecocute-card__image {
    margin-top: 16px;
  }

  .p-kinds-choose-ecocute-card__text {
    margin-top: 16px;
  }

  .p-kinds-volume__cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 16px;
  }

  .p-kinds-volume-card__heading {
    font-size: 18px;
  }

  .p-kinds-volume-card__image {
    width: 100px;
    margin: 18px auto 0;
  }

  .p-kinds-volume-card__label {
    margin-top: 16px;
    font-size: 14px;
  }

  .p-kinds-volume-card__capacity {
    font-size: 24px;
  }

  .p-kinds-volume-card__description {
    margin-top: 12px;
  }

  .p-kinds-choose-infra {
    max-width: none;
    margin-top: 64px;
  }

  .p-kinds-choose-infra__content {
    flex-direction: column;
    gap: 16px 0;
    padding: 24px;
    border-radius: 8px;
  }

  .p-kinds-choose-infra__link a {
    font-size: 16px;
  }

  .p-kinds-choose-infra__link:after {
    vertical-align: -4px;
  }

  .p-block-wave__lead {
    font-size: 16px;
    font-weight: 400;
    text-align: left;
  }

  .p-kinds-choose-gas-type__columns {
    grid-template-columns: none;
    gap: 32px 0;
  }

  .p-kinds-choose-gas-type__list {
    margin-top: 16px;
  }

  .p-kinds-choose-gas-type__item {
    gap: 8px 0;
  }

  .p-kinds-choose-gas-type__item dt {
    font-size: 16px;
  }

  .p-kinds-choose-gas-location__columns {
    grid-template-columns: none;
    gap: 48px 0;
  }

  .p-kinds-choose-gas-location__label {
    font-size: 16px;
  }

  .p-kinds-choose-gas-location__list {
    gap: 16px 0;
    margin-top: 24px;
  }

  .p-kinds-choose-gas-location__item {
    grid-template-columns: 80px 1fr;
    gap: 0 8px;
  }

  .p-kinds-choose-gas-location__heading {
    font-size: 16px;
  }

  .p-kinds-choose-gas-location__text {
    margin-top: 4px;
    font-size: 14px;
  }

  .p-kinds-choose-ecocute .c-block-table tr > *:first-child {
    width: 48px;
    padding: 9px 4px;
    font-size: 14px;
    font-weight: 400;
  }

  .p-kinds-choose-ecocute .c-block-table th,
  .p-kinds-choose-ecocute .c-block-table td {
    padding: 4px;
    font-size: 14px;
  }

  .p-kinds-choose-ecocute .c-block-table tr > *:nth-child(2) {
    width: auto;
  }

  .p-kinds-choose-gas .c-block-table--type tr > *:first-child,
  .p-kinds-choose-gas .c-block-table--ecojozu tr > *:first-child {
    width: 66px;
    font-size: 14px;
    font-weight: 400;
  }

  .p-kinds-choose-gas .c-block-table--type tr > *:nth-child(2),
  .p-kinds-choose-gas .c-block-table--type tr > *:nth-child(3) {
    width: auto;
  }

  .p-kinds-choose-gas .c-block-table--type th,
  .p-kinds-choose-gas .c-block-table--type td {
    padding: 4px 2px;
    font-size: 14px;
  }

  .p-kinds-choose-gas .c-block-table--ecojozu th,
  .p-kinds-choose-gas .c-block-table--ecojozu td {
    padding: 10px 2px;
    font-size: 14px;
  }

  .p-kinds-choose-gas .c-block-table--type td {
    vertical-align: top;
  }

}

/* 料金・費用 */
.p-fee-template {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.p-fee-template .p-top-lineup {
  margin-bottom: calc(80px * var(--ui-scale));
}

.p-fee-sheet {
  margin-top: calc(84px * var(--ui-scale));
}

.p-fee-sheet__inner {
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: 0 auto;
}

.p-fee-sheet-sum {

}

.p-fee-sheet-sum__block {
  padding: calc(44px * var(--ui-scale));
  border: calc(4px * var(--ui-scale)) solid #399273;
  border-radius: calc(16px * var(--ui-scale));
}

.p-fee-sheet-sum__list {
  display: grid;
  gap: 0 calc(34px * var(--ui-scale));
}

.p-fee-sheet-sum__list--exchange {
  grid-template-columns: calc(144px * var(--ui-scale)) calc(144px * var(--ui-scale)) 1fr 1fr;
  grid-template-columns: repeat(3, 1fr);
}

.p-fee-sheet-sum__list--repair {
  grid-template-columns: repeat(3, 1fr);
}

.p-fee-sheet-sum__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}

.p-fee-sheet-sum__item:nth-child(n + 2):before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -1em;
  font-family: "Roboto", sans-serif;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 500;
  content: "+";
}

.p-fee-sheet-sum__item:last-child:before {
  content: "=";
}

.p-fee-sheet-sum__cover {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  background: #F3F3F3;
  text-align: center;
  padding: calc(8px * var(--ui-scale)) 0;
}

.p-fee-sheet-sum__item:last-child .p-fee-sheet-sum__cover {
  background: #EDF5F9;
  font-size: calc(24px * var(--ui-scale));
}

/* .p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:nth-child(3) .p-fee-sheet-sum__cover, */
/* .p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:last-child .p-fee-sheet-sum__cover, */
.p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__cover{
  min-height: calc(114px * var(--ui-scale));
}

.p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:nth-child(1) .p-fee-sheet-sum__cover,
.p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:nth-child(2) .p-fee-sheet-sum__cover,
.p-fee-sheet-sum__list--repair .p-fee-sheet-sum__item:nth-child(1) .p-fee-sheet-sum__cover,
.p-fee-sheet-sum__list--repair .p-fee-sheet-sum__item:nth-child(2) .p-fee-sheet-sum__cover {
  font-size: calc(20px * var(--ui-scale));
}

.p-fee-sheet-sum__list--repair .p-fee-sheet-sum__cover {
  min-height: calc(114px * var(--ui-scale));
}

.p-fee-sheet-sum__cover > span {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-fee-sheet-sum__cover > span span {
  color: #D92E2E;
}

.p-fee-sheet-sum__price {
  margin-top: calc(16px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-fee-sheet-sum__price span {
  color: #D92E2E;
}

.p-fee-sheet-content {
  margin-top: calc(80px * var(--ui-scale));
}

.p-fee-sheet-content__list {
  display: grid;
  gap: calc(24px * var(--ui-scale)) 0;
}

.p-fee-sheet-content__item {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 0 calc(32px * var(--ui-scale));
}

.p-fee-sheet-content__item dt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: calc(4px * var(--ui-scale)) 0;
  min-width: calc(336px * var(--ui-scale));
  min-height: calc(109px * var(--ui-scale));
  padding: 0 calc(32px * var(--ui-scale));
  background: #F3F3F3;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-fee-sheet-content__item dt span {
  font-size: calc(12px * var(--ui-scale));
  font-weight: 400;
}

.p-fee-sheet-content__item ul {
  display: grid;
  gap: calc(4px * var(--ui-scale)) 0;
}

.p-fee-sheet-content__item ul li {
  position: relative;
  padding-left: calc(20px * var(--ui-scale));
  font-size: calc(16px * var(--ui-scale));
}

.p-fee-sheet-content__item--grid ul li {
  display: grid;
  grid-template-columns: calc(120px * var(--ui-scale)) 1fr;
  gap: 0 calc(10px * var(--ui-scale));
}

.p-fee-sheet-content__item ul li:before {
  position: absolute;
  top: calc(8px * var(--ui-scale));
  left: 0;
  width: calc(12px * var(--ui-scale));
  height: calc(12px * var(--ui-scale));
  background: #399273;
  content: "";
}

.p-fee-guide {
  margin-top: calc(128px * var(--ui-scale));
  margin-bottom: calc(120px * var(--ui-scale));
}

.p-fee-guide__inner {
  width: 100%;
  max-width: calc(864px * var(--ui-scale));
  margin: 0 auto;
}

.p-fee-guide__header {
  position: relative;
  z-index: 1;
}

.p-fee-guide__heading {
  width: fit-content;
  margin: 0 auto;
  padding: 0 calc(16px * var(--ui-scale));
  background: #fff;
  font-size: calc(24px * var(--ui-scale));
  text-align: center;
}

.p-fee-guide__body {
  position: relative;
  margin-top: calc(-20px * var(--ui-scale));
  padding: calc(76px * var(--ui-scale)) calc(78px * var(--ui-scale)) calc(48px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #399273;*/
  border: 1px solid #399273;
  border-radius: calc(16px * var(--ui-scale));
}

.p-fee-guide__list {
  display: grid;
  gap: calc(32px * var(--ui-scale)) 0;
  width: fit-content;
  margin: 0 auto;
}

.p-fee-guide__item {
  display: grid;
  grid-template-columns: calc(240px * var(--ui-scale)) auto;
  gap: 0 calc(44px * var(--ui-scale));
  position: relative;
  padding-left: calc(28px * var(--ui-scale));
  font-size: calc(16px * var(--ui-scale));
}

.p-fee-guide__item:before {
  position: absolute;
  top: calc(8px * var(--ui-scale));
  left: 0;
  width: calc(12px * var(--ui-scale));
  height: calc(12px * var(--ui-scale));
  background: #399273;
  content: "";
}

.p-fee-guide__item dt {
  font-weight: 700;
}

.p-fee-guide__item dd {
  transform: translateY(calc(-2px * var(--ui-scale)));
}

.p-fee-guide__note {
  position: relative;
  margin-top: calc(50px * var(--ui-scale));
  padding-left: calc(1em + 16px);
}

.p-fee-guide__note:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}

.p-fee-guide__text {
  display: inline;
}

.p-fee-guide__text span {
  display: block;
  margin-bottom: calc(12px * var(--ui-scale));
  color: #D92E2E;
}

.p-fee-reason {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding-bottom: calc(76px * var(--ui-scale));
}

.p-fee-reason__wrapper {
  width: 100%;
  max-width: calc(1312px * var(--ui-scale));
  margin: 0 auto;
  padding: calc(80px * var(--ui-scale)) 0 calc(80px * var(--ui-scale));
  background: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)),
              url("lib/images/bg_fee.png") no-repeat center / cover;
}

.p-fee-reason__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-fee-reason__heading {
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-fee-reason__heading > span {
  display: block;
  padding: calc(14px * var(--ui-scale)) calc(30px * var(--ui-scale)) calc(16px * var(--ui-scale));
  /*border: calc(1px * var(--ui-scale)) solid #46CC9D;*/
  border: 1px solid #46CC9D;
}

.p-fee-reason__lead {
  margin-top: calc(48px * var(--ui-scale));
  color: #fff;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-fee-reason__list {
  width: fit-content;
  margin: calc(46px * var(--ui-scale)) auto 0;
}

.p-fee-reason__item {
  display: flex;
  align-items: center;
  gap: 0 calc(18px * var(--ui-scale));
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-fee-reason__item:nth-child(n + 2) {
  margin-top: calc(22px * var(--ui-scale));
}

.p-fee-reason__item:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M11.4667%2019.4667L20.8667%2010.0667L19%208.2L11.4667%2015.7333L7.66667%2011.9333L5.8%2013.8L11.4667%2019.4667ZM13.3333%2026.6667C11.4889%2026.6667%209.75555%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75555%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75555%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75555%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22white%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-fee-sokuto {
  margin-top: calc(80px * var(--ui-scale));
}

.p-fee-sokuto__blocks {
  display: grid;
  grid-template-columns: calc(416px * var(--ui-scale)) 1fr;
  gap: calc(32px * var(--ui-scale)) calc(80px * var(--ui-scale));
}

.p-fee-sokuto__block {
  padding: calc(44px * var(--ui-scale));
  border: calc(4px * var(--ui-scale)) solid #399273;
  border-radius: calc(16px * var(--ui-scale));
}

.p-fee-sokuto__block:nth-child(2),
.p-fee-sokuto__block:nth-child(3) {
  padding: calc(40px * var(--ui-scale)) calc(38px * var(--ui-scale)) calc(42px * var(--ui-scale)) calc(44px * var(--ui-scale));
}

.p-fee-sokuto__block:nth-child(1) {
  grid-area: 1 / 1 / 3 / 2;
  position: relative;
}

.p-fee-sokuto__block:nth-child(1):before {
  position: absolute;
  top: calc(50% + calc(30px * var(--ui-scale)));
  right: calc(-64px * var(--ui-scale));
  transform: translateY(-50%);
  width: calc(32px * var(--ui-scale));
  height: calc(110px * var(--ui-scale));
  background: #399273;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  content: "";
}

.p-fee-sokuto__block:nth-child(2) {
  grid-area: 1 / 2 / 2 / 3;
}

.p-fee-sokuto__block:nth-child(3) {
  grid-area: 2 / 2 / 3 / 3;
}

.p-fee-sokuto__head {
  display: flex;
  align-items: center;
  gap: calc(12px * var(--ui-scale)) calc(16px * var(--ui-scale));
}

.p-fee-sokuto__block:nth-child(1) .p-fee-sokuto__head {
  flex-direction: column;
}

.p-fee-sokuto__label {
  padding: calc(8px * var(--ui-scale));
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  color: #FFE762;
  font-weight: 700;
  text-align: center;
}

.p-fee-sokuto__block:nth-child(1) .p-fee-sokuto__label {
  width: 100%;
  font-size: calc(20px * var(--ui-scale));
  line-height: 1.5;
}

.p-fee-sokuto__heading {
  color: #005638;
  font-size: calc(32px * var(--ui-scale));
  font-weight: 700;
}

.p-fee-sokuto__block:nth-child(1) .p-fee-sokuto__heading {
  text-align: center;
}

.p-fee-sokuto__block:nth-child(3) .p-fee-sokuto__heading {
  font-size: calc(24px * var(--ui-scale));
}

.p-fee-sokuto-just {
  margin-top: calc(30px * var(--ui-scale));
}

.p-fee-sokuto-just__list {
  display: grid;
  gap: calc(5px * var(--ui-scale)) 0;
}

.p-fee-sokuto-just__item {
  display: grid;
  gap: calc(5px * var(--ui-scale)) 0;
}

.p-fee-sokuto-just__item:nth-child(n + 2):before {
  display: block;
  margin-bottom: calc(5px * var(--ui-scale));
  font-size: calc(40px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1;
  content: "+";
}

.p-fee-sokuto-just__item dt {
  background: #F3F3F3;
  font-size: calc(18px * var(--ui-scale));
  text-align: center;
}

.p-fee-sokuto-just__item dd {
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-fee-sokuto-just__price {
  margin-top: calc(26px * var(--ui-scale));
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-fee-sokuto-just__price span {
  color: #399273;
  font-size: calc(40px * var(--ui-scale));
}

.p-fee-sokuto-exchange {
  margin-top: calc(30px * var(--ui-scale));
}

.p-fee-sokuto-exchange__blocks {
  display: flex;
}

.p-fee-sokuto-exchange__block {
  display: flex;
  flex-grow: 1;
  align-items: center;
  gap: 0 calc(8px * var(--ui-scale));
}

.p-fee-sokuto-exchange__block:nth-child(n + 2):before {
  display: block;
  transform: translateY(calc(-3px * var(--ui-scale)));
  font-size: calc(40px * var(--ui-scale));
  font-weight: 700;
  line-height: 1;
  content: "+";
}

.p-fee-sokuto-exchange__label {
  padding: 0 calc(8px * var(--ui-scale));
  background: #F3F3F3;
  text-align: center;
}

.p-fee-sokuto-exchange__block:nth-child(3) .p-fee-sokuto-exchange__label {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(114px * var(--ui-scale));
  width: calc(96px * var(--ui-scale));
}

.p-fee-sokuto-exchange__price {
  margin-top: calc(20px * var(--ui-scale));
  text-align: center;
  line-height: 1.25;
}

.p-fee-sokuto-exchange__price > span:first-child {
  display: inline-block;
  position: relative;
}

.p-fee-sokuto-exchange__price > span:first-child:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + calc(12px * var(--ui-scale)));
  height: calc(2px * var(--ui-scale));
  background: #D92E2E;
  content: "";
}

.p-fee-sokuto-exchange__price > span:nth-child(2) {
  display: block;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
}

.p-fee-sokuto-exchange__price > span:nth-child(2) span {
  color: #D92E2E;
  font-size: calc(40px * var(--ui-scale));
}

.p-fee-sokuto-repair {
  margin-top: calc(22px * var(--ui-scale));
}

.p-fee-sokuto-repair__list {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.p-fee-sokuto-repair__item:first-child,
.p-fee-sokuto-repair__item:nth-child(3),
.p-fee-sokuto-repair__item:last-child {
  flex: 1;
  padding: calc(8px * var(--ui-scale));
  background: #F8F8F8;
  text-align: center;
}

.p-fee-sokuto-repair__item:nth-child(2),
.p-fee-sokuto-repair__item:nth-child(4) {
  margin: 0 calc(8px * var(--ui-scale));
}

.p-fee-sokuto-repair__none {
  margin-top: calc(6px * var(--ui-scale));
}

.p-fee-sokuto__note {
  width: fit-content;
  margin: calc(62px * var(--ui-scale)) auto 0;
  font-weight: 700;
  padding-left: calc(1em + calc(8px * var(--ui-scale)));
  text-indent: calc(-1em + calc(-8px * var(--ui-scale)));
}

.p-fee-sokuto__note:before {
  margin-right: calc(8px * var(--ui-scale));
  content: "※";
}

.p-fee-payment {
  margin-top: calc(160px * var(--ui-scale));
}

.p-fee-payment__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(32px * var(--ui-scale)) calc(64px * var(--ui-scale));
  margin-top: calc(80px * var(--ui-scale));
}

.p-fee-payment__card {

}

.p-fee-payment-card__heading {
  color: #666666;
  font-size: calc(20px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-fee-payment-card__image {
  width: calc(140px * var(--ui-scale));
  margin: calc(20px * var(--ui-scale)) auto 0;
}

.p-fee-payment-card__image img {
  width: 100%;
}

.p-fee-payment-card__text {
  margin-top: calc(32px * var(--ui-scale));
}

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

  .p-fee-sheet {
    margin-top: 66px;
  }

  .p-fee-sheet-sum__block {
    padding: 22px;
    border: 2px solid #399273;
    border-radius: 8px;
  }

  .p-fee-sheet-sum__list {
    grid-template-columns: none;
    gap: 32px 0;
  }

  .p-fee-sheet-sum__item:nth-child(n + 2):before {
    top: -36px;
    transform: translate(-50%, 0);
    left: 50%;
  }

  .p-fee-sheet-sum__cover {
    gap: 2px 0;
    font-size: 14px;
  }

  .p-fee-sheet-sum__item:last-child .p-fee-sheet-sum__cover {
    font-size: 18px;
  }

  .p-fee-sheet-sum__cover > span {
    font-size: 16px;
  }

  .p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__cover,
  /*.p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:nth-child(3) .p-fee-sheet-sum__cover,*/
  /*.p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:last-child .p-fee-sheet-sum__cover,*/
  .p-fee-sheet-sum__list--repair .p-fee-sheet-sum__cover {
    min-height: 0;
  }

  .p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:nth-child(1) .p-fee-sheet-sum__cover,
  .p-fee-sheet-sum__list--exchange .p-fee-sheet-sum__item:nth-child(2) .p-fee-sheet-sum__cover,
  .p-fee-sheet-sum__list--repair .p-fee-sheet-sum__item:nth-child(1) .p-fee-sheet-sum__cover,
.p-fee-sheet-sum__list--repair .p-fee-sheet-sum__item:nth-child(2) .p-fee-sheet-sum__cover {
    font-size: 14px;
  }

  .p-fee-sheet-sum__price {
    margin-top: 8px;
    font-size: 16px;
  }

  .p-fee-sheet-content {
    margin-top: 48px;
  }

  .p-fee-sheet-content__list {
    gap: 32px 0;
  }

  .p-fee-sheet-content__item {
    grid-template-columns: none;
    gap: 28px 0;
  }

  .p-fee-sheet-content__item dt {
    gap: 10px 0;
    min-height: 0;
    padding: 8px 0;
    font-size: 16px;
    text-align: center;
  }

  .p-fee-sheet-content__item--grid dt {
    padding: 16px 0;
  }

  .p-fee-sheet-content__item ul li {
    font-size: 14px;
  }

  .p-fee-sheet-content__item--grid ul li {
    grid-template-columns: 130px 1fr;
  }

  .p-fee-sheet-content__item ul li:before {
    top: 6px;
  }

  .p-fee-template .p-top-lineup {
    margin-top: 94px;
    padding-bottom: 0;
  }

  .p-fee-guide {
    margin-top: 90px;
    margin-bottom: 80px;
  }

  .p-fee-guide__inner {
    max-width: none;
  }

  .p-fee-guide__header {
    padding: 24px 24px 0;
    border-radius: 16px 16px 0 0;
    background: #F8F8F8;
  }

  .p-fee-guide__heading {
    width: auto;
    margin: 0;
    padding: 0;
    background: transparent;
    font-size: 18px;
    text-align: left;
  }

  .p-fee-guide__body {
    margin-top: 0;
    padding: 0;
    border-radius: 0;
    border: none;
  }

  .p-fee-guide__list {
    gap: 13px 0;
    width: auto;
    margin: 0;
    padding: 24px;
    border-radius: 0 0 16px 16px;
    background: #F8F8F8;
  }

  .p-fee-guide__item {
    grid-template-columns: none;
    gap: 10px 0;
    padding-left: 20px;
  }

  .p-fee-guide__note {
    margin-top: 22px;
    padding-left: calc(1em + 8px);
  }

  .p-fee-reason {
    padding-bottom: 0;
  }

  .p-fee-reason__wrapper {
    padding: 48px 0 40px;
  }

  .p-fee-reason__heading {
    font-size: 20px;
  }

  .p-fee-reason__lead {
    margin-top: 32px;
    font-size: 16px;
    text-align: left;
  }

  .p-fee-reason__list {
    width: auto;
    margin: 24px 0 0;
  }

  .p-fee-reason__item {
    align-items: normal;
    gap: 0 10px;
    padding-left: 2px;
    font-size: 16px;
  }

  .p-fee-reason__item:nth-child(n + 2) {
    margin-top: 8px;
  }

  .p-fee-reason__item:before {
    transform: translateY(3px);
    width: 22px;
    height: 22px;
  }

  .p-fee-sokuto {
    margin-top: 64px;
  }

  .p-fee-sokuto__blocks {
    display: flex;
    flex-direction: column;
    gap: 32px 0;
  }

  .p-fee-sokuto__block,
  .p-fee-sokuto__block:nth-child(2),
  .p-fee-sokuto__block:nth-child(3) {
    padding: 20px;
  }

  .p-fee-sokuto__block:first-child {
    margin-bottom: 32px;
  }

  .p-fee-sokuto__block:nth-child(1):before {
    top: auto;
    bottom: -54px;
    right: auto;
    left: 50%;
    transform: translate(-50%, 0);
    width: 112px;
    height: 32px;
    clip-path: polygon(50% 100%, 0 0, 100% 0);
  }

  .p-fee-sokuto__head {
    flex-direction: column;
    align-items: normal;
  }

  .p-fee-sokuto__label,
  .p-fee-sokuto__block:nth-child(1) .p-fee-sokuto__label {
    font-size: 18px;
    line-height: 1.7;
  }

  .p-fee-sokuto__heading {
    margin-top: 0;
    font-size: 24px;
    text-align: center;
  }

  .p-fee-sokuto-just {
    margin-top: 22px;
  }

  .p-fee-sokuto-just__list,
  .p-fee-sokuto-just__item {
    gap: 0;
  }

  .p-fee-sokuto-just__price {
    margin-top: 14px;
  }

  .p-fee-sokuto-exchange {
    margin-top: 20px;
  }

  .p-fee-sokuto-exchange__blocks {
    flex-direction: column;
    align-items: center;
    gap: 2px 0;
  }

  .p-fee-sokuto-exchange__block {
    flex-direction: column;
    align-items: center;
  }

  .p-fee-sokuto-exchange__price {
    margin-top: 10px;
  }

  .p-fee-sokuto-exchange__block:nth-child(3) .p-fee-sokuto-exchange__label {
    min-width: 160px;
    min-height: 0;
  }

  .p-fee-sokuto-repair__list {
    flex-direction: column;
    align-items: normal;
    gap: 6px 0;
  }

  .p-fee-sokuto-repair__item:first-child,
  .p-fee-sokuto-repair__item:nth-child(3),
  .p-fee-sokuto-repair__item:last-child {
    padding: 6px;
  }

  .p-fee-sokuto-repair__item:nth-child(2),
  .p-fee-sokuto-repair__item:nth-child(4) {
    margin: 0;
    text-align: center;
  }

  .p-fee-sokuto-repair__none {
    margin-top: 8px;
  }

  .p-fee-sokuto__note {
    width: auto;
    margin: 32px 0 0;
    font-size: 14px;
  }

  .p-fee-payment {
    margin-top: 80px;
  }

  .p-fee-payment .c-block-lead {
    text-align: left;
  }

  .p-fee-payment__cards {
    grid-template-columns: none;
    gap: 32px 0;
    margin-top: 48px;
  }

  .p-fee-payment__card {
    display: grid;
    grid-template-columns: 80px 1fr;
    align-items: center;
    gap: 16px;
  }

  .p-fee-payment-card__image {
    grid-area: 1 / 1 / 2 / 2;
    width: auto;
    margin: 0;
  }

  .p-fee-payment-card__heading {
    grid-area: 1 / 2 / 2 / 3;
    font-size: 16px;
    text-align: left;
  }

  .p-fee-payment-card__text {
    grid-area: 2 / 1 / 3 / 3;
    margin-top: 0;
  }

}

/* 給湯器のコト - 給湯器Q＆A */
.p-kyutoki-faq .c-block-heading {
  margin-top: calc(120px * var(--ui-scale));
}

.p-kyutoki-faq .p-acc__item:nth-child(n + 2) {
  margin-top: calc(34px * var(--ui-scale));
}

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

  .p-kyutoki-faq .c-block-heading {
    margin-top: 80px;
  }

  .p-kyutoki-faq * + .c-block-heading {
    margin-top: 64px;
  }

  .p-kyutoki-faq .p-acc__item:nth-child(n + 2) {
    margin-top: 18px;
  }

}

/*  */

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



}

/* 仙台給湯器レスキューとは */
.p-about-intro .c-block-heading-2 {
  font-size: calc(36px * var(--ui-scale));
}

.p-about-intro .c-block-trouble {
  margin-top: calc(64px * var(--ui-scale));
}

.p-about-intro .c-block-trouble__item {
  border-radius: calc(9999px * var(--ui-scale));
}

.p-about-trouble {
  width: 100vw;
  margin: calc(254px * var(--ui-scale)) calc(50% - 50vw) 0;
}

.p-about-trouble__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-about-trouble__container {
  position: relative;
  z-index: 1;
  margin-bottom: calc(80px * var(--ui-scale));
}

.p-about-trouble__header {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.p-about-trouble__back {
  position: relative;
}

.p-about-trouble__back:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .4);
  content: "";
}

.p-about-trouble__back img {
  width: 100%;
}

.p-about-trouble__outer {
  position: relative;
  z-index: 1;
  padding: calc(80px * var(--ui-scale)) calc(112px * var(--ui-scale)) 0;
  /*background: linear-gradient(rgba(0, 0, 0, .4), rgba(0, 0, 0, .4)),
              url("lib/images/bg_about.png") no-repeat center / cover;*/
}

.p-about-trouble__image {
  position: absolute;
  top: calc(-206px * var(--ui-scale));
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(504px * var(--ui-scale));
}

.p-about-trouble__image img {
  width: 100%;
}

.p-about-trouble__block {

}

.p-about-trouble__heading {
  padding: calc(13px * var(--ui-scale));
  background: rgba(51, 51, 51, .5);
  color: #fff;
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
}

.p-about-trouble__list {
  display: grid;
  grid-template-columns: auto auto auto;
  gap: calc(32px * var(--ui-scale)) calc(48px * var(--ui-scale));
  margin-top: calc(46px * var(--ui-scale));
}

.p-about-trouble__item {
  display: flex;
  align-items: center;
  gap: 0 calc(18px * var(--ui-scale));
  padding-left: calc(2px * var(--ui-scale));
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-about-trouble__item:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75555%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75555%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75555%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75555%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22%2346CC9D%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-about-trouble__content {
  display: grid;
  grid-template-columns: calc(260px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(48px * var(--ui-scale));
  margin-top: calc(46px * var(--ui-scale));
}

.p-about-trouble__illust img {
  width: 100%;
}

.p-about-trouble__desc {
  color: #fff;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
}

.p-about-trouble__desc span {
  display: block;
  font-size: calc(36px * var(--ui-scale));
}

.p-about-block {
  width: 100vw;
  margin: calc(160px * var(--ui-scale)) calc(50% - 50vw) 0;
  padding: 0 calc(64px * var(--ui-scale));
}

.p-about-block__wrapper {
  position: relative;
  z-index: 1;
  padding: 0 0 calc(406px * var(--ui-scale));
  /*border-radius: 0 0 calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale));*/
  /*background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top calc(80px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;*/
}

.p-about-block__wrapper:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: 100%;
  border-radius: calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale)) 0 0;
  background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(80px * var(--ui-scale))) bottom / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              url(lib/images/bg_dot_01.png) repeat-x center bottom calc(126px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              #EDF5F9;
  content: "";
}

.p-about-block__wrapper:after {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: calc(1028px * var(--ui-scale));
  border-radius: calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale)) 0 0;
  background: linear-gradient(180deg, #EDF5F9 17.31%, #DDF4FF 49.04%, #EDF5F9 100%);
  content: "";
}

.p-about-block__inner {
  width: 100%;
  max-width: calc(1088px * var(--ui-scale));
  max-width: calc(1312px * var(--ui-scale));
  margin: 0 auto;
}

.p-about-service {
  padding-top: calc(136px * var(--ui-scale));
  background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top calc(76px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale));
}

.p-about-service__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(32px * var(--ui-scale));
  margin-top: calc(58px * var(--ui-scale));
}

.p-about-service__card {
  display: flex;
  flex-direction: column;
  padding: calc(32px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #fff;
}

.p-about-service-card__block {
  display: grid;
  grid-template-columns: calc(112px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(24px * var(--ui-scale));
}

.p-about-service-card__image img {
  width: 100%;
}

.p-about-service-card__number {
  display: inline-block;
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;

  font-family: "Roboto", sans-serif;
  font-size: calc(32px * var(--ui-scale));
  font-weight: 500;
  line-height: 1;
}

.p-about-service-card__heading {
  font-size: calc(32px * var(--ui-scale));
  line-height: 1.5;
}

.p-about-service-card__text {
  margin: calc(32px * var(--ui-scale)) 0;
}

.p-about-service__card .c-button {
  width: 100%;
  margin-top: auto;
}

.p-about-feature {
  padding-top: calc(160px * var(--ui-scale));
  background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top calc(96px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale));
}

.p-about-feature__inner {
  width: 100%;
  max-width: calc(1088px * var(--ui-scale));
  margin: 0 auto;
}

.p-about-feature__cards {
  display: grid;
  gap: calc(64px * var(--ui-scale)) 0;
  margin-top: calc(70px * var(--ui-scale));
}

.p-about-feature__card {
  padding: calc(80px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #fff;
}

.p-about-feature-card__blocks {
  display: grid;
  gap: calc(32px * var(--ui-scale)) 0;
  padding-top: calc(30px * var(--ui-scale));
}

.p-about-feature-card__block {
  display: grid;
  grid-template-columns: calc(178px * var(--ui-scale)) 1fr;
  align-items: center;
  gap: 0 calc(66px * var(--ui-scale));
}

.p-about-feature-card__block--reverse {
  grid-template-columns: 1fr calc(160px * var(--ui-scale));
}

.p-about-feature-card__block--reverse .p-about-feature-card__image {
  order: 1;
}

.p-about-feature__card:nth-child(3) .p-about-feature-card__block {
  grid-template-columns: calc(140px * var(--ui-scale)) 1fr;
}

.p-about-feature__card:nth-child(3) .p-about-feature-card__block--reverse {
  grid-template-columns: 1fr calc(152px * var(--ui-scale));
}

.p-about-feature-card__image img {
  width: 100%;
}

.p-about-feature-card__head {

}

.p-about-feature-card__heading {
  margin-bottom: calc(34px * var(--ui-scale));
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
  line-height: 1.5;
}

.p-about-feature-card__text {

}

.p-about-feature-card__micro {
  margin-top: calc(58px * var(--ui-scale));
  color: #005638;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-about-feature-card__micro > span {
  display: flex;
  justify-content: center;
  gap: 0 calc(38px * var(--ui-scale));
}

.p-about-feature-card__micro > span:before,
.p-about-feature-card__micro > span:after {
  width: calc(6px * var(--ui-scale));
  height: calc(45px * var(--ui-scale));
  background: #46CC9D;
  content: "";
}

.p-about-feature-card__micro > span:before {
  transform: translateY(calc(16px * var(--ui-scale))) rotate(-15deg);
}

.p-about-feature-card__micro > span:after {
  transform: translateY(calc(16px * var(--ui-scale))) rotate(15deg);
}

.p-about-feature-card__micro > span span span {
  display: block;
  font-size: calc(24px * var(--ui-scale));
}

.p-about-feature__card .c-button {
  width: calc(480px * var(--ui-scale));
  margin-top: calc(28px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
}

.p-about-template {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.p-about-template .p-top-voice {
  margin-bottom: calc(160px * var(--ui-scale));
}

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

  .p-about-intro .c-block-heading-2 {
    font-size: 20px;
  }

  .p-about-intro .c-block-trouble {
    margin-top: 30px;
  }

  .p-about-intro .c-block-trouble__item {
    border-radius: 4px;
  }

  .p-about-trouble__image {
    top: -156px;
    width: 267px;
  }

  .p-about-trouble {
    margin: 190px calc(50% - 50vw) 0;
  }

  .p-about-trouble__inner {

  }

  .p-about-trouble__container {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 48px;
  }

  .p-about-trouble__header {
    position: static;
  }

  .p-about-trouble__outer {
    padding: 32px 24px;
    background: #f8f8f8;
  }

  .p-about-trouble__heading {
    padding: 16px;
    background: #666666;
    color: #FFE762;
    font-size: 18px;
  }

  .p-about-trouble__list {
    grid-template-columns: none;
    gap: 10px 0;
    margin-top: 34px;
    padding: 0 14px;
  }

  .p-about-trouble__item {
    gap: 0 7px;
    color: #666666;
    font-size: 16px;
  }

  .p-about-trouble__item:before {
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M6.66667%2010C6.85556%2010%207.01389%209.93611%207.14167%209.80833C7.26944%209.68056%207.33333%209.52222%207.33333%209.33333C7.33333%209.14444%207.26944%208.98611%207.14167%208.85833C7.01389%208.73056%206.85556%208.66667%206.66667%208.66667C6.47778%208.66667%206.31944%208.73056%206.19167%208.85833C6.06389%208.98611%206%209.14444%206%209.33333C6%209.52222%206.06389%209.68056%206.19167%209.80833C6.31944%209.93611%206.47778%2010%206.66667%2010ZM6%207.33333H7.33333V3.33333H6V7.33333ZM6.66667%2013.3333C5.74444%2013.3333%204.87778%2013.1583%204.06667%2012.8083C3.25556%2012.4583%202.55%2011.9833%201.95%2011.3833C1.35%2010.7833%200.875%2010.0778%200.525%209.26667C0.175%208.45556%200%207.58889%200%206.66667C0%205.74444%200.175%204.87778%200.525%204.06667C0.875%203.25556%201.35%202.55%201.95%201.95C2.55%201.35%203.25556%200.875%204.06667%200.525C4.87778%200.175%205.74444%200%206.66667%200C7.58889%200%208.45556%200.175%209.26667%200.525C10.0778%200.875%2010.7833%201.35%2011.3833%201.95C11.9833%202.55%2012.4583%203.25556%2012.8083%204.06667C13.1583%204.87778%2013.3333%205.74444%2013.3333%206.66667C13.3333%207.58889%2013.1583%208.45556%2012.8083%209.26667C12.4583%2010.0778%2011.9833%2010.7833%2011.3833%2011.3833C10.7833%2011.9833%2010.0778%2012.4583%209.26667%2012.8083C8.45556%2013.1583%207.58889%2013.3333%206.66667%2013.3333ZM6.66667%2012C8.15556%2012%209.41667%2011.4833%2010.45%2010.45C11.4833%209.41667%2012%208.15556%2012%206.66667C12%205.17778%2011.4833%203.91667%2010.45%202.88333C9.41667%201.85%208.15556%201.33333%206.66667%201.33333C5.17778%201.33333%203.91667%201.85%202.88333%202.88333C1.85%203.91667%201.33333%205.17778%201.33333%206.66667C1.33333%208.15556%201.85%209.41667%202.88333%2010.45C3.91667%2011.4833%205.17778%2012%206.66667%2012Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  }

  .p-about-trouble__content {
    display: flex;
    flex-direction: column;
    gap: 20px 0;
    margin-top: 34px;
  }

  .p-about-trouble__illust {
    width: 168px;
    margin: 0 auto;
  }

  .p-about-trouble__desc {
    color: #005638;
    font-size: 14px;
    text-align: center;
  }

  .p-about-trouble__desc span {
    color: #333333;
    font-size: 20px;
  }

  .p-about-trouble__back img {
    aspect-ratio: 400 / 240;
    object-fit: cover;
  }

  .p-about-block {
    margin: 120px calc(50% - 50vw) 0;
    padding: 0 24px;
  }

  .p-about-block__wrapper {
    padding: 0 0 208px;
  }

  .p-about-block__wrapper:before {
    left: -24px;
    transform: translateX(0);
    width: calc(100% + (24px * 2));
    background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + 80px) bottom 0px / calc(1408px * .568) calc(247px * .568),
                url(lib/images/bg_dot_01.png) repeat-x center bottom 50px / calc(491px / 2) calc(506px / 2),
                linear-gradient(180deg, #EDF5F9 17.31%, #DDF4FF 49.04%, #EDF5F9 100%);
  }

  .p-about-block__wrapper:after {
    content: none;
  }

  .p-about-service {
    padding-top: 64px;
    background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top 96px / calc(491px / 2) calc(506px / 2);
  }

  .p-about-service__cards {
    grid-template-columns: none;
    gap: 32px 0;
    margin-top: 44px;
  }

  .p-about-service__card {
    padding: 24px;
  }

  .p-about-service-card__block {
    grid-template-columns: 80px 1fr;
  }

  .p-about-service-card__number {
    font-size: 24px;
  }

  .p-about-service-card__heading {
    font-size: 20px;
  }

  .p-about-service-card__text {
    margin: 14px 0 24px;
  }

  .p-about-feature {
    padding-top: 66px;
    background: url(lib/images/bg_dot_01_reverse.png) no-repeat center top 96px / calc(491px / 2) calc(506px / 2);
  }

  .p-about-feature__cards {
    gap: 32px 0;
    margin-top: 48px;
  }

  .p-about-feature__card {
    padding: 24px;
  }

  .p-about-feature-card__blocks {
    padding-top: 0;
  }

  .p-about-feature-card__block {
    display: flex;
    flex-direction: column;
    gap: 24px 0;
  }

  .p-about-feature-card__blocks .p-about-feature-card__block--reverse {
    flex-direction: column-reverse;
  }

  .p-about-feature-card__image {
    width: 100px;
    margin: 0 auto;
  }

  .p-about-feature__card:first-child .p-about-feature-card__image {
    width: 112px;
  }

  .p-about-feature-card__heading {
    margin-bottom: 24px;
    font-size: 20px;
    text-align: center;
  }

  .p-about-feature-card__micro {
    margin-top: 32px;
    font-size: 14px;
  }

  .p-about-feature-card__micro > span {
    gap: 0 22px;
  }

  .p-about-feature-card__micro > span:before,
  .p-about-feature-card__micro > span:after {
    width: 2.5px;
    height: 36px;
  }

  .p-about-feature-card__micro > span:before {
    transform: translateY(14px) rotate(-15deg);
  }

  .p-about-feature-card__micro > span:after {
    transform: translateY(14px) rotate(15deg);
  }

  .p-about-feature-card__micro > span span span {
    margin-top: 2px;
    font-size: 16px;
  }

  .p-about-feature__card .c-button {
    width: 100%;
    margin-top: 20px;
    font-size: 16px;
  }

  .p-about-template .p-top-voice {
    margin-bottom: 120px;
  }

  .p-about-template .p-area--wide .p-area__column:nth-child(2) {
    /*padding-bottom: 0;*/
    background: transparent;
  }

}

/*  */

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



}

/* 即湯サービス */
.page-sokuto .l-header-phone__number a,
.page-sokuto .l-header-phone__number span {
  color: #fff;
}

.p-sokuto {
  padding-bottom: calc(200px * var(--ui-scale));
}

.p-sokuto-hero {
  position: relative;
  z-index: 1;
  padding: calc(200px * var(--ui-scale)) 0 calc(136px * var(--ui-scale));
    padding: calc(280px * var(--ui-scale)) 0 calc(136px * var(--ui-scale));
  /*padding: 200px 0 108px;*/
  background: linear-gradient(rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)),
              url("lib/images/bg_sokuto.png") no-repeat center / cover;
  /*background: linear-gradient(rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)),
              url("lib/images/bg_sokuto.png") no-repeat center top / cover;*/
}

.p-sokuto-hero:before {
  position: absolute;
  bottom: calc(-328px * var(--ui-scale));
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(600px * var(--ui-scale));
  background: url(lib/images/bg_dot_01.png) repeat-x center bottom calc(-12px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale)),
              url(lib/images/bg_wave_08.png) repeat-x left calc(50% + calc(194px * var(--ui-scale))) bottom / calc(3840px * var(--ui-scale)) calc(600px * var(--ui-scale));
  content: "";
}

.p-sokuto-hero__inner {
  padding: 0 calc(24px * var(--ui-scale));
}

.p-sokuto-hero__block {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}

.p-sokuto-hero__label {
  position: absolute;
  top: calc(-10px * var(--ui-scale));
  left: calc(-82px * var(--ui-scale));
  width: calc(336px * var(--ui-scale));
}

.p-sokuto-hero__label img {
  width: 100%;
}

.p-sokuto-hero__heading {
  width: calc(815px * var(--ui-scale));
  margin: 0 auto;
}

.p-sokuto-hero__heading img {
  width: 100%;
}

.p-sokuto-hero__micro {
  margin-top: calc(28px * var(--ui-scale));
  margin-top: calc(64px * var(--ui-scale));
    margin-top: calc(44px * var(--ui-scale));
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-sokuto-hero__micro > span {
  display: flex;
  justify-content: center;
  gap: 0 calc(38px * var(--ui-scale));
}

.p-sokuto-hero__micro > span:before,
.p-sokuto-hero__micro > span:after {
  width: calc(6px * var(--ui-scale));
  height: calc(45px * var(--ui-scale));
  background: #fff;
  content: "";
}

.p-sokuto-hero__micro > span:before {
  transform: translateY(calc(16px * var(--ui-scale))) rotate(-15deg);
}

.p-sokuto-hero__micro > span:after {
  transform: translateY(calc(16px * var(--ui-scale))) rotate(15deg);
}

.p-sokuto-hero__micro > span span span {
  display: block;
  font-size: calc(24px * var(--ui-scale));
}

.p-sokuto-hero .c-button {
  width: calc(480px * var(--ui-scale));
  margin-top: calc(28px * var(--ui-scale));
  font-size: calc(20px * var(--ui-scale));
}

.p-sokuto-hero__list {
  display: flex;
  justify-content: center;
  gap: 0 calc(32px * var(--ui-scale));
  margin-top: calc(64px * var(--ui-scale));
  margin-top: calc(48px * var(--ui-scale));
}

.p-sokuto-hero__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(232px * var(--ui-scale));
  height: calc(232px * var(--ui-scale));
  background: url("lib/images/bg_badge_01.png") no-repeat center / contain;
  color: #fff;
  font-size: calc(26px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-sokuto-lead {
  position: relative;
  z-index: 1;
  margin-top: calc(-68px * var(--ui-scale));
}

.p-sokuto-lead__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-lead__list {
  display: flex;
  justify-content: center;
  gap: 0 calc(24px * var(--ui-scale));
}

.p-sokuto-lead__item {
  min-width: calc(280px * var(--ui-scale));
  padding: calc(13px * var(--ui-scale)) calc(32px * var(--ui-scale));
  border-radius: calc(4px * var(--ui-scale));
  background: #FFFFFF;
  color: #399273;
  font-size: calc(24px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
}

.p-sokuto-lead__heading {
  margin-top: calc(22px * var(--ui-scale));
  font-size: calc(32px * var(--ui-scale));
  text-align: center;
}

.p-sokuto-lead__heading > span {
  display: block;
  font-size: calc(48px * var(--ui-scale));
}

.p-sokuto-lead__heading > span span {
  color: #399273;
}

.p-sokuto-worries {
  position: relative;
  z-index: 1;
  padding: calc(52px * var(--ui-scale)) 0 calc(35px * var(--ui-scale));
}

.p-sokuto-worries__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-worries__block {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: calc(45px * var(--ui-scale));
}

.p-sokuto-worries__image {
  position: relative;
  width: calc(298px * var(--ui-scale));
  height: calc(298px * var(--ui-scale));
  border-radius: 50%;
  background: #F3F3F3;
}

.p-sokuto-worries__image img {
  position: absolute;
  bottom: calc(-35px * var(--ui-scale));
  left: calc(-45px * var(--ui-scale));
  width: calc(236px * var(--ui-scale));
}

.p-sokuto-worries__list {
  position: relative;
  z-index: 1;
  display: grid;
  gap: calc(23px * var(--ui-scale)) 0;
  margin-left: calc(-60px * var(--ui-scale));
}

.p-sokuto-worries__item span {
  display: inline-flex;
  align-items: center;
  gap: 0 calc(18px * var(--ui-scale));
  padding-left: calc(2px * var(--ui-scale));
  padding-bottom: calc(6px * var(--ui-scale));
  border-bottom: 1px dashed #399273;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
}

.p-sokuto-worries__item span:before {
  width: calc(27px * var(--ui-scale));
  height: calc(27px * var(--ui-scale));
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2227%22%20height%3D%2227%22%20viewBox%3D%220%200%2027%2027%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M13.3333%2020C13.7111%2020%2014.0278%2019.8722%2014.2833%2019.6167C14.5389%2019.3611%2014.6667%2019.0444%2014.6667%2018.6667C14.6667%2018.2889%2014.5389%2017.9722%2014.2833%2017.7167C14.0278%2017.4611%2013.7111%2017.3333%2013.3333%2017.3333C12.9556%2017.3333%2012.6389%2017.4611%2012.3833%2017.7167C12.1278%2017.9722%2012%2018.2889%2012%2018.6667C12%2019.0444%2012.1278%2019.3611%2012.3833%2019.6167C12.6389%2019.8722%2012.9556%2020%2013.3333%2020ZM12%2014.6667H14.6667V6.66667H12V14.6667ZM13.3333%2026.6667C11.4889%2026.6667%209.75555%2026.3167%208.13333%2025.6167C6.51111%2024.9167%205.1%2023.9667%203.9%2022.7667C2.7%2021.5667%201.75%2020.1556%201.05%2018.5333C0.35%2016.9111%200%2015.1778%200%2013.3333C0%2011.4889%200.35%209.75555%201.05%208.13333C1.75%206.51111%202.7%205.1%203.9%203.9C5.1%202.7%206.51111%201.75%208.13333%201.05C9.75555%200.35%2011.4889%200%2013.3333%200C15.1778%200%2016.9111%200.35%2018.5333%201.05C20.1556%201.75%2021.5667%202.7%2022.7667%203.9C23.9667%205.1%2024.9167%206.51111%2025.6167%208.13333C26.3167%209.75555%2026.6667%2011.4889%2026.6667%2013.3333C26.6667%2015.1778%2026.3167%2016.9111%2025.6167%2018.5333C24.9167%2020.1556%2023.9667%2021.5667%2022.7667%2022.7667C21.5667%2023.9667%2020.1556%2024.9167%2018.5333%2025.6167C16.9111%2026.3167%2015.1778%2026.6667%2013.3333%2026.6667ZM13.3333%2024C16.3111%2024%2018.8333%2022.9667%2020.9%2020.9C22.9667%2018.8333%2024%2016.3111%2024%2013.3333C24%2010.3556%2022.9667%207.83333%2020.9%205.76667C18.8333%203.7%2016.3111%202.66667%2013.3333%202.66667C10.3556%202.66667%207.83333%203.7%205.76667%205.76667C3.7%207.83333%202.66667%2010.3556%202.66667%2013.3333C2.66667%2016.3111%203.7%2018.8333%205.76667%2020.9C7.83333%2022.9667%2010.3556%2024%2013.3333%2024Z%22%20fill%3D%22%23399273%22%2F%3E%0A%3C%2Fsvg%3E%0A") no-repeat center / contain;
  content: "";
}

.p-sokuto-finding {
  position: relative;
  padding: calc(134px * var(--ui-scale)) 0 calc(78px * var(--ui-scale));
}

.p-sokuto-finding__body {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
}

.p-sokuto-finding__image img {
  width: 100%;
  height: calc(480px * var(--ui-scale));
  object-fit: cover;
}

.p-sokuto-finding__heading {
  color: #fff;
  font-size: calc(36px * var(--ui-scale));
  text-align: center;
  line-height: 1.5;
}

.p-sokuto-finding__heading span {
  color: #FFE762;
  font-size: calc(48px * var(--ui-scale));
}

.p-sokuto-finding__list {
  display: flex;
  justify-content: center;
  gap: 0 calc(48px * var(--ui-scale));
  margin-top: calc(64px * var(--ui-scale));
}

.p-sokuto-finding__item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(290px * var(--ui-scale));
  height: calc(290px * var(--ui-scale));
  padding-top: calc(10px * var(--ui-scale));
  background: url("lib/images/bg_badge_01.png") no-repeat center / contain;
  color: #fff;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
}

.p-sokuto-wrapper {
  position: relative;
  z-index: 1;
  margin-top: calc(20px * var(--ui-scale));
  padding: calc(180px * var(--ui-scale)) 0 calc(210px * var(--ui-scale));
  background: url(lib/images/bg_wave_09_.png) repeat-x left calc(50% + calc(960px * var(--ui-scale))) top / calc(3840px * var(--ui-scale)) calc(353px * var(--ui-scale)),
              url(lib/images/bg_dot_02.png) repeat-x left calc(50% + calc(410px * var(--ui-scale))) top / calc(486px * var(--ui-scale)) calc(506px * var(--ui-scale));
}

.p-sokuto-wrapper:before {
  position: absolute;
  top: calc(353px * var(--ui-scale));
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - calc(353px * var(--ui-scale)));
  background: linear-gradient(180deg, #EDF5F9 17.31%, #DDF4FF 49.04%, #EDF5F9 100%);
  content: "";
}

.p-sokuto-wrapper:after {
  position: absolute;
  top: calc(553px * var(--ui-scale));
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - calc(353px * var(--ui-scale)));
  background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + calc(80px * var(--ui-scale))) bottom / calc(1408px * var(--ui-scale)) calc(247px * var(--ui-scale)),
              url(lib/images/bg_dot_01.png) repeat-x center bottom calc(126px * var(--ui-scale)) / calc(491px * var(--ui-scale)) calc(506px * var(--ui-scale));
  content: "";
}

.p-sokuto-about__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-about__block {
  display: grid;
  grid-template-columns: 1fr calc(416px * var(--ui-scale));
  gap: 0 calc(32px * var(--ui-scale));
}

.p-sokuto-about__content {
  padding-top: calc(94px * var(--ui-scale));
}

.p-sokuto-about__heading {
  display: flex;
  flex-direction: column;
  gap: calc(16px * var(--ui-scale)) 0;
  align-items: flex-start;
  margin-bottom: calc(34px * var(--ui-scale));
  margin-left: calc(-26px * var(--ui-scale));
  font-weight: 700;
}

.p-sokuto-about__heading > span:first-child {
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  color: #FFE762;
  font-size: calc(48px * var(--ui-scale));
  line-height: 1.5;
}

.p-sokuto-about__heading > span:nth-child(2) {
  padding: calc(2px * var(--ui-scale)) calc(24px * var(--ui-scale));
  background: #fff;
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
}

.p-sokuto-about__text {
  display: inline;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  padding-bottom: calc(8px * var(--ui-scale));
  /*border-bottom: calc(1px * var(--ui-scale)) dashed #399273;*/
  border-bottom: 1px dashed #399273;
  font-size: calc(20px * var(--ui-scale));
  font-weight: 700;
  line-height: 2.4;
}

.p-sokuto-about__image {
  position: relative;
  width: calc(416px * var(--ui-scale));
  height: calc(416px * var(--ui-scale));
  border-radius: 50%;
  background: #CCE0EA;
}

.p-sokuto-about__image img {
  position: absolute;
  bottom: calc(-48px * var(--ui-scale));
  right: calc(-66px * var(--ui-scale));
  width: calc(400px * var(--ui-scale));
}

.p-sokuto-feature {
  padding-top: calc(160px * var(--ui-scale));
}

.p-sokuto-feature__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-feature .c-block-heading-2 {
  font-size: calc(36px * var(--ui-scale));
}

.p-sokuto-feature .c-block-heading-2 span {
  color: #399273;
}

.p-sokuto-feature__cards {
  display: grid;
  gap: calc(32px * var(--ui-scale)) 0;
  margin-top: calc(64px * var(--ui-scale));
}

.p-sokuto-feature__card {
  display: grid;
  gap: calc(44px * var(--ui-scale)) 0;
  padding: calc(76px * var(--ui-scale)) calc(80px * var(--ui-scale)) calc(80px * var(--ui-scale));
  border-radius: calc(16px * var(--ui-scale));
  background: #fff;
}

.p-sokuto-feature-card__head {
  display: flex;
  align-items: center;
  gap: 0 calc(50px * var(--ui-scale));
}

.p-sokuto-feature-card__number {
  color: #399273;
  font-family: "Roboto", sans-serif;
  font-size: calc(80px * var(--ui-scale));
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.02em;
}

.p-sokuto-feature-card__number:after {
  display: block;
  margin-top: calc(12px * var(--ui-scale));
  width: 100%;
  height: calc(4px * var(--ui-scale));
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  content: "";
}

.p-sokuto-feature-card__heading {
  padding-bottom: calc(6px * var(--ui-scale));
  font-size: calc(24px * var(--ui-scale));
}

.p-sokuto-feature-card__heading span {
  margin-bottom: calc(3px * var(--ui-scale));
  display: block;
  color: #399273;
  font-size: calc(32px * var(--ui-scale));
}

.p-sokuto-feature-card__foot {
  display: grid;
  grid-template-columns: calc(224px * var(--ui-scale)) 1fr;
  gap: 0 calc(66px * var(--ui-scale));
}

.p-sokuto-feature__card:nth-child(2n) .p-sokuto-feature-card__foot {
  grid-template-columns: 1fr calc(224px * var(--ui-scale));
}

.p-sokuto-feature__card:nth-child(2n) .p-sokuto-feature-card__image {
  order: 1;
}

.p-sokuto-feature-card__image img {
  width: 100%;
}

.p-sokuto-feature-card__text {

}

.p-sokuto-plan {
  position: relative;
  z-index: 1;
  padding-top: calc(160px * var(--ui-scale));
}

.p-sokuto-plan__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-plan .c-heading {
  margin-bottom: calc(72px * var(--ui-scale));
}

.p-sokuto-flow {
  padding: calc(160px * var(--ui-scale)) 0 calc(82px * var(--ui-scale));
}

.p-sokuto-flow__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-flow .c-heading {
  margin-bottom: calc(72px * var(--ui-scale));
}

.p-sokuto-flow .p-flow__item dt {
  color: #005638;
}

.p-sokuto-flow .p-flow__item dd .p-flow__item--contact {
  margin: 0;
  font-size: calc(18px * var(--ui-scale));
  font-weight: 700;
}

.p-sokuto-flow .p-flow__item dd .c-subheading {
  margin: calc(34px * var(--ui-scale)) 0 calc(18px * var(--ui-scale));
  padding-left: calc(20px * var(--ui-scale));
  font-size: calc(18px * var(--ui-scale));
}

.p-sokuto-flow .p-flow__item dd .c-subheading:before {
  top: calc(8px * var(--ui-scale));
}

.p-sokuto-flow .p-flow__item {
  min-height: 0;
}

.p-sokuto-flow .p-flow__item dd {
  margin-bottom: calc(83px * var(--ui-scale));
}

.p-sokuto-template {
  padding-top: calc(144px * var(--ui-scale));
}

.p-sokuto-faq {
  padding-top: calc(160px * var(--ui-scale));
}

.p-sokuto-faq__inner {
  width: 100%;
  max-width: calc((1088px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-faq .c-heading {
  margin-bottom: calc(64px * var(--ui-scale));
}

.p-sokuto-contact--secondary {
  position: relative;
  z-index: 1;
  padding-top: calc(64px * var(--ui-scale));
}

.p-sokuto-contact--secondary:before {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: calc(1792px * var(--ui-scale));
  height: calc(328px * var(--ui-scale));
  background: linear-gradient(91.74deg, #29BC88 5.03%, #399273 94.9%);
  border-radius: calc(32px * var(--ui-scale));
  content: "";
}

.p-sokuto-contact__inner {
  width: 100%;
  max-width: calc((1312px + (24px * 2)) * var(--ui-scale));
  margin: 0 auto;
  padding: 0 24px;
}

.p-sokuto-contact__heading {
  margin-bottom: calc(22px * var(--ui-scale));
}

.p-sokuto-contact__heading > span {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(32px * var(--ui-scale));
}

.p-sokuto-contact__heading > span:before,
.p-sokuto-contact__heading > span:after {
  width: calc(6px * var(--ui-scale));
  height: calc(45px * var(--ui-scale));
  background: #FFE762;
  content: "";
}

.p-sokuto-contact__heading > span:before {
  transform: translateY(calc(-4px * var(--ui-scale))) rotate(-15deg);
  margin-right: calc(6px * var(--ui-scale));
}

.p-sokuto-contact__heading > span:after {
  transform: translateY(calc(-4px * var(--ui-scale))) rotate(15deg);
  margin-left: calc(6px * var(--ui-scale));
}

.p-sokuto-contact__heading > span img {
  width: calc(120px * var(--ui-scale));
}

.p-sokuto-contact__heading > span span {
  color: #399273;
  font-size: calc(36px * var(--ui-scale));
  line-height: 1.5;
}

.p-sokuto-contact--secondary .p-sokuto-contact__heading > span span {
  color: #fff;
}

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

  .p-sokuto {
    padding-bottom: 80px;
  }

  .p-sokuto-hero {
    padding: 116px 0 94px;
    background: linear-gradient(rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)),
                url("lib/images/bg_sokuto_sp.png") no-repeat center / cover;
  }

  .p-sokuto-hero:before {
    bottom: -74px;
    height: 600px;
    background: url(lib/images/bg_dot_01.png) repeat-x center bottom -72px / calc(491px / 2) calc(506px / 2),
                url(lib/images/bg_wave_08.png) repeat-x left calc(50% + 120px) bottom / 1600px auto;
  }

  .p-sokuto-hero__label {
    position: static;
    transform: translateX(-16px);
    width: 321px;
    margin: 0 auto;
  }

  .p-sokuto-hero__heading {
    width: 332px;
    margin: 16px auto 0;
  }

  .p-sokuto-hero__micro {
    margin-top: 16px;
    margin-top: 40px;
    font-size: 14px;
  }

  .p-sokuto-hero__micro > span {
    gap: 0 22px;
  }

  .p-sokuto-hero__micro > span:before,
  .p-sokuto-hero__micro > span:after {
    width: 2.5px;
    height: 36px;
  }

  .p-sokuto-hero__micro > span:before {
    transform: translateY(14px) rotate(-15deg);
  }

  .p-sokuto-hero__micro > span:after {
    transform: translateY(14px) rotate(15deg);
  }

  .p-sokuto-hero__micro > span span span {
    margin-top: 2px;
    font-size: 16px;
  }

  .p-sokuto-hero .c-button {
    width: 288px;
    margin-top: 20px;
    font-size: 16px;
  }

  .p-sokuto-hero__list {
    gap: 0 4px;
    margin-top: 48px;
  }

  .p-sokuto-hero__item {
    width: 115px;
    height: 115px;
    font-size: 14px;
  }

  .p-sokuto-lead {
    margin-top: -60px;
  }

  .p-sokuto-lead__list {
    gap: 0 12px;
  }

  .p-sokuto-lead__item {
    padding: 8px 16px;
    min-width: 150px;
    border-radius: 9999px;
    font-size: 12px;
  }

  .p-sokuto-lead__heading {
    margin-top: 14px;
    font-size: 16px;
  }

  .p-sokuto-lead__heading span {
    font-size: 24px;
  }

  .p-sokuto-worries {
    padding: 30px 0 32px;
  }

  .p-sokuto-worries__block {
    flex-direction: column;
    gap: 20px 0;
    padding-left: 0;
  }

  .p-sokuto-worries__list {
    gap: 7px 0;
    margin-left: 0;
  }

  .p-sokuto-worries__item span {
    align-items: flex-start;
    gap: 0 10px;
    padding-bottom: 0;
    border-bottom: none;
    font-size: 16px;
  }

  .p-sokuto-worries__item span:before {
    transform: translateY(4px);
    flex-shrink: 0;
    width: 20px;
    height: 20px;
  }

  .p-sokuto-worries__image {
    transform: translateX(6px);
    width: 155px;
    height: 155px;
  }

  .p-sokuto-worries__image img {
    width: 153px;
    bottom: -4px;
    left: -12px;
  }

  .p-sokuto-finding {
    padding: 20px 0 56px;
  }

  .p-sokuto-finding__image img {
    height: auto;
    height: 108px;
  }

  .p-sokuto-finding__heading {
    font-size: 14px;
  }

  .p-sokuto-finding__heading span {
    font-size: 18px;
  }

  .p-sokuto-finding__list {
    gap: 0 4px;
    margin-top: 16px;
  }

  .p-sokuto-finding__item {
    width: 115px;
    height: 115px;
    padding-top: 2px;
    font-size: 10px;
  }

  .p-sokuto-feature .c-block-heading-2 {
    font-size: 20px;
  }

  .p-sokuto-feature__cards {
    margin-top: 32px;
  }

  .p-sokuto-feature__card {
    gap: 24px 0;
    padding: 24px;
  }

  .p-sokuto-feature-card__head {
    flex-direction: column;
    gap: 22px 0;
  }

  .p-sokuto-feature-card__number {
    font-size: 40px;
  }

  .p-sokuto-feature-card__heading {
    padding-bottom: 0;
    font-size: 18px;
    text-align: center;
  }

  .p-sokuto-feature-card__heading span {
    margin-bottom: 6px;
    font-size: 20px;
  }

  .p-sokuto-feature-card__foot {
    grid-template-columns: none;
    gap: 24px 0;
  }

  .p-sokuto-feature__card:nth-child(2n) .p-sokuto-feature-card__foot {
    grid-template-columns: none;
  }

  .p-sokuto-feature-card__image {
    width: 160px;
    margin: 0 auto;
  }

  .p-sokuto-feature__card:nth-child(2n) .p-sokuto-feature-card__image {
    order: 0;
  }

  .p-sokuto-contact--secondary {
    padding-top: 32px;
  }

  .p-sokuto-contact--secondary:before {
    left: 0;
    width: 100%;
    height: calc(100% - 50px);
    transform: translateX(0);
    border-radius: 32px 32px 0 0;
  }

  .p-sokuto-contact__heading {
    margin-bottom: 22px;
  }

  .p-sokuto-contact__heading > span {
    gap: 0 8px;
  }

  .p-sokuto-contact__heading > span:before,
  .p-sokuto-contact__heading > span:after {
    width: 3px;
    height: 20px;
  }

  .p-sokuto-contact__heading > span:before {
    transform: translateY(-1px) rotate(-15deg);
  }

  .p-sokuto-contact__heading > span:after {
    transform: translateY(-1px) rotate(15deg);
  }

  .p-sokuto-contact__heading > span img {
    width: 50px;
  }

  .p-sokuto-contact__heading > span span {
    font-size: 16px;
  }

  .p-sokuto-flow {
    position: relative;
    z-index: 1;
    padding-top: 120px;
  }

  .p-sokuto-flow:before {
    position: absolute;
    top: 48px;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 250px;
    background: url(lib/images/bg_wave_02.png) repeat-x left calc(50% + 110px) top 0px / 1600px auto,
                linear-gradient(0deg, #FFFFFF 25.96%, #EDF5F9 61.54%, #DDF4FF 100%);
    content: "";
  }

  .p-sokuto-flow .c-heading {
    margin-bottom: 44px;
  }

  .p-sokuto-flow .p-flow__list {
    padding-left: 4px;
  }

  .p-sokuto-flow .p-flow__item {
    grid-template-columns: none;
    gap: 20px 0;
  }

  .p-sokuto-flow .p-flow__item:nth-last-child(n + 2):before {
    top: 15px;
    left: 7px;
  }

  .p-sokuto-flow .p-flow__item dt {
    padding-left: 32px;
    font-size: 16px;
  }

  .p-sokuto-flow .p-flow__item dt:before {
    width: 16px;
    height: 16px;
  }

  .p-sokuto-flow .p-flow__item dd {
    margin-bottom: 22px;
    padding-left: 32px;
  }

  .p-sokuto-flow .p-flow__item dd .p-flow__item--contact {
    font-size: 16px;
  }

  .p-sokuto-flow .p-flow__item dd .c-subheading {
    margin: 32px 0 18px;
    font-size: 16px;
  }

  .p-sokuto-flow .p-flow__item dd .c-subheading:before {
    top: 7px;
  }

  .p-sokuto-template {
    padding-top: 120px;
  }

  .p-sokuto-plan {
    padding-top: 0;
  }

  .p-sokuto-plan .c-heading {
    margin-bottom: 44px;
  }

  .p-sokuto-faq {
    padding-top: 80px;
  }

  .p-sokuto-wrapper {
    margin-top: 0;
    padding: 100px 0 196px;

    /*background: url(lib/images/bg_wave_09_.png) repeat-x left calc(50% + calc(960px * var(--ui-scale))) top / calc(3840px * var(--ui-scale)) calc(353px * var(--ui-scale)),
                url(lib/images/bg_dot_02.png) repeat-x left calc(50% + calc(410px * var(--ui-scale))) top / calc(486px * var(--ui-scale)) calc(506px * var(--ui-scale));*/

    background: url(lib/images/bg_wave_09_.png) repeat-x left calc(50% + 198px) top 160px / calc(1920px * 2 * .28) calc(353px * .28),
                url(lib/images/bg_dot_02.png) repeat-x center top 72px / 241px 203px;
  }

  .p-sokuto-wrapper:before {
    top: 258px;
    height: calc(100% - 258px);
  }

  .p-sokuto-wrapper:after {
    position: absolute;
    top: 363px;
    left: 0;
    width: 100%;
    height: calc(100% - 353px);
    background: url(lib/images/bg_wave_01.png) repeat-x left calc(50% + 80px) bottom -16px / calc(1408px * .568) calc(247px * .568),
                url(lib/images/bg_dot_01.png) repeat-x center bottom 34px / calc(491px / 2) calc(506px / 2);
  }

  .p-sokuto-about__block {
    display: inline-flex;
    flex-direction: column-reverse;
    gap: 0;
  }

  .p-sokuto-about__image {
    transform: translateX(-14px);
    width: 155px;
    height: 155px;
    margin: 22px auto 0;
  }

  .p-sokuto-about__image img {
    bottom: -18px;
    right: -24px;
    width: 150px;
  }

  .p-sokuto-about__content {
    display: contents;
  }

  .p-sokuto-about__heading {
    order: 1;
    align-items: center;
    gap: 5px 0;
    margin-left: 0;
    margin-bottom: 0;
    text-align: center;
  }

  .p-sokuto-about__heading > span:first-child {
    font-size: 32px;
  }

  .p-sokuto-about__heading > span:nth-child(2) {
    padding: 2px 17px;
    font-size: 24px;
  }

  .p-sokuto-about__textarea {
    margin-top: 30px;
  }

  .p-sokuto-about__text {
    padding-bottom: 6px;
    font-size: 16px;
    line-height: 2;
  }

  .p-sokuto-feature {
    padding-top: 80px;
  }

  .p-sokuto-faq .c-heading {
    margin-bottom: 44px;
  }

}

/*  */

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



}

/*  */


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



}

/*-------------------------------------------
Utility
-------------------------------------------*/
/*
ComponentとProjectレイヤーのObjectの
モディファイアで解決することが難しい・適切では無い、
わずかなスタイルの調整のための便利クラスなどを定義します。
*/

.u-sp {
  display: none!important;
}

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

  .u-pc {
    display: none!important;
  }

  .u-sp {
    display: block!important;
  }

}

.u-clearfix:after {
  display: block;
  clear: both;
  content: "";
}

#autozip {
  top: -9999%!important;
  left: -9999%!important;
}