@charset "UTF-8";
/******************************************************
.service-index
******************************************************/
.service-index {
  background: #ffffff; }
  .service-index h2 {
    line-height: 1.2;
    margin-bottom: 10px; }
  .service-index h3 {
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif; }
  .service-index__grid {
    margin: 0px auto;
    width: 100%; }
  .service-index__item {
    position: relative;
    overflow: hidden;
    margin-bottom: 50px;
    border: 1px solid #D1B28F;
    background: #FEF9F3; }
    @media screen and (max-width: 960px) {
      .service-index__item {
        max-width: 600px;
        margin: 0px auto;
        margin-bottom: 30px; } }
    .service-index__item:hover {
      background: #FBF7EE;
      border: 1px solid #eb6100; }
      .service-index__item:hover .service-index__title {
        color: #eb6100; }
      .service-index__item:hover .service-index__link {
        background: #eb6100; }
    .service-index__item a {
      display: block;
      position: relative;
      display: flex;
      justify-content: space-between;
      padding: 25px 25px; }
      @media screen and (max-width: 960px) {
        .service-index__item a {
          flex-direction: column-reverse; } }
      @media screen and (min-width: 961px) {
        .service-index__item a {
          padding: 30px 30px; } }
      @media screen and (min-width: 1281px) {
        .service-index__item a a .reverse {
          flex-direction: row-reverse; } }
  @media screen and (max-width: 960px) {
    .service-index__img {
      margin-bottom: 10px; } }
  @media screen and (min-width: 961px) {
    .service-index__img {
      width: 43%; } }
  .service-index__img img {
    width: 100%;
    display: block;
    transition: 0.4s; }
    @media screen and (max-width: 960px) {
      .service-index__img img {
        object-fit: cover;
        width: 100%;
        height: 250px; } }
    @media screen and (max-width: 480px) {
      .service-index__img img {
        height: 200px; } }
  .service-index__overlay {
    width: 100%; }
    @media screen and (max-width: 960px) {
      .service-index__overlay {
        text-align: center; } }
    @media screen and (min-width: 961px) {
      .service-index__overlay {
        width: 55%;
        padding: 15px 30px; } }
  .service-index__title {
    font-size: clamp(2.4rem, 4vw, 3.3rem);
    margin-bottom: 7px;
    font-weight: bold; }
    @media screen and (min-width: 961px) {
      .service-index__title {
        margin-bottom: 15px; } }
  .service-index__catch {
    font-size: clamp(2rem, 4vw, 2.2rem);
    font-weight: 600;
    color: #8C6239;
    line-height: 1.4;
    margin-bottom: 10px; }
    @media screen and (min-width: 961px) {
      .service-index__catch {
        margin-bottom: 15px; } }
  .service-index__text {
    line-height: 1.7;
    margin-bottom: 20px; }
    @media screen and (min-width: 961px) {
      .service-index__text {
        margin-bottom: 30px; } }
  .service-index__link {
    display: inline-block;
    position: relative;
    width: 300px;
    margin: 0px auto;
    border-radius: 50px;
    position: relative;
    color: #ffffff;
    background: #8C6239;
    padding: 13px 10px;
    border-radius: 50px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .service-index__link {
        margin: 0px auto; } }
    .service-index__link:after {
      content: url("../images/common/arrow_w.svg");
      width: 23px;
      position: absolute;
      right: 10px;
      top: 15%; }

/******************************************************
各ページ共通
******************************************************/
/**service_menuname****************/
h2.servicesubTit {
  text-align: center;
  font-weight: bold;
  font-size: clamp(2.2rem, 5vw, 3.5rem);
  color: #8C6239;
  margin-bottom: 60px;
  position: relative; }
  @media screen and (min-width: 768px) {
    h2.servicesubTit {
      margin-bottom: 70px; } }
  h2.servicesubTit::before {
    position: absolute;
    bottom: -10px;
    left: calc(50% - 30px);
    width: 60px;
    height: 1px;
    content: '';
    background: #8C6239; }
    @media screen and (min-width: 768px) {
      h2.servicesubTit::before {
        bottom: -20px; } }

.service_menuname .inner {
  padding: 40px 5%; }
  @media screen and (min-width: 768px) and (max-width: 960px) {
    .service_menuname .inner {
      padding: 40px 10%; } }
  @media screen and (min-width: 961px) and (max-width: 1280px) {
    .service_menuname .inner {
      padding: 60px 5%; } }
  @media screen and (min-width: 1281px) {
    .service_menuname .inner {
      padding: 80px 30px; } }
.service_menuname h2.sectionTitle {
  font-size: clamp(2.8rem, 5vw, 4rem); }
.service_menuname h3.sectionsubTitle {
  position: relative; }
  @media screen and (max-width: 1280px) {
    .service_menuname h3.sectionsubTitle {
      margin-bottom: 10px; } }
  .service_menuname h3.sectionsubTitle::before {
    position: absolute;
    bottom: -20px;
    left: calc(50% - 30px);
    width: 60px;
    height: 1px;
    content: '';
    background: #eb6100; }

/**service_intro****************/
.service_intro .inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: auto 20px;
  padding-top: 0px;
  padding-bottom: 0px; }
  @media screen and (min-width: 1281px) {
    .service_intro .inner {
      max-width: 90% !important; } }
.service_intro__block {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 100px;
  position: relative; }
  @media screen and (max-width: 1280px) {
    .service_intro__block {
      flex-direction: column-reverse;
      margin-bottom: 60px; } }
@media screen and (min-width: 1281px) {
  .service_intro .service_intro.reverse {
    flex-direction: row-reverse; } }
.service_intro__text {
  width: 48%;
  z-index: 2; }
  @media screen and (max-width: 1280px) {
    .service_intro__text {
      width: 100%;
      margin-bottom: 20px; } }
  @media screen and (min-width: 1281px) {
    .service_intro__text {
      width: 45%; } }
.service_intro__image {
  width: 50%;
  position: relative; }
  .service_intro__image img {
    width: 100%;
    height: auto;
    display: block; }
    @media screen and (min-width: 961px) and (max-width: 1280px) {
      .service_intro__image img {
        object-fit: cover;
        height: 450px; } }
  .service_intro__image--right {
    width: 50vw;
    margin-right: calc(50% - 50vw); }
  @media screen and (max-width: 1280px) {
    .service_intro__image {
      width: 100%;
      margin: 0; } }
  @media screen and (max-width: 767px) {
    .service_intro__image {
      margin-bottom: 40px; } }
  @media screen and (min-width: 768px) and (max-width: 1280px) {
    .service_intro__image {
      margin-bottom: 60px; } }
.service_intro__catch {
  font-size: clamp(2.2rem, 4vw, 3rem);
  margin-bottom: 30px;
  font-weight: 400;
  color: #8C6239;
  line-height: 1.3; }
  @media screen and (max-width: 1280px) {
    .service_intro__catch {
      text-align: center;
      margin-bottom: 40px; } }
.service_intro__desc {
  margin-bottom: 30px;
  line-height: 1.8; }
  @media screen and (max-width: 1280px) {
    .service_intro__desc {
      margin-bottom: 0px;
      text-align: center; } }
  @media screen and (min-width: 1281px) {
    .service_intro__desc {
      line-height: 2.0; } }

/**osusume****************/
.osusume {
  background: #F8F5F0; }
  .osusume .inner {
    padding-bottom: 0px;
    text-align: center; }
  .osusume h2.osusumeTit {
    /*text-align: center;
    font-weight: bold;
    font-size: clamp(2.2rem, 5vw, 3.5rem);
    color:#eb6100;
    margin-bottom: 30px;
    padding: 15px 5px;
    border-top: 6px double $orange;
    border-bottom: 6px double $orange;
    @include minTab{
        margin-bottom: 70px;
        padding: 25px 5px;
    }*/
    position: relative;
    padding: 15px 20px;
    text-align: center;
    display: inline-block;
    font-weight: bold;
    font-size: clamp(2.2rem, 5vw, 3.5rem);
    color: #eb6100;
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      .osusume h2.osusumeTit {
        margin-bottom: 60px;
        padding: 20px 30px; } }
  .osusume h2.osusumeTit:before,
  .osusume h2.osusumeTit:after {
    position: absolute;
    content: ''; }
  .osusume h2.osusumeTit:after {
    top: 0;
    left: 0;
    width: 30px;
    height: 30px;
    border-top: 2px solid #eb6100;
    border-left: 2px solid #eb6100; }
  .osusume h2.osusumeTit:before {
    right: 0;
    bottom: 0;
    width: 30px;
    height: 30px;
    border-right: 2px solid #eb6100;
    border-bottom: 2px solid #eb6100; }
  .osusume__list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
  .osusume__item {
    width: 48%;
    position: relative;
    padding: 15px 15px;
    border-radius: 10px;
    background-color: #ffffff;
    border: 3px solid #D1B28F;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      .osusume__item {
        font-size: 2.0rem;
        padding: 20px 20px; } }
    .osusume__item::before {
      position: absolute;
      top: 100%;
      left: 10%;
      height: 20px;
      width: 3px;
      transform: rotate(-20deg);
      background-color: #D1B28F;
      content: ''; }
  .osusume__imgArea {
    max-width: 800px;
    width: 90%;
    margin: 0px auto;
    margin-top: 10px; }

/**plan************/
.plan__lead {
  text-align: center;
  margin-bottom: 50px; }
  @media screen and (min-width: 961px) {
    .plan__lead {
      margin-bottom: 80px; } }
.plan ul.guide {
  max-width: 800px;
  margin: 0px auto; }
  @media screen and (min-width: 481px) {
    .plan ul.guide {
      display: flex;
      justify-content: space-between; } }
  .plan ul.guide li {
    color: #ffffff;
    font-weight: 400;
    line-height: 1.0;
    padding: 10px 10px;
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      .plan ul.guide li {
        margin-bottom: 5px; } }
    @media screen and (min-width: 481px) {
      .plan ul.guide li {
        width: 49%;
        padding: 15px 10px; } }
    .plan ul.guide li:nth-of-type(1) {
      background: #eb6100; }
    .plan ul.guide li:nth-of-type(2) {
      background: #8C6239; }

/**slide****************/
.slide {
  background: url("../images/service/bg.jpg?1") top center no-repeat;
  background-size: cover;
  /* 余白リセット＋はみ出し表示 */
  /* ★ スライド（基準800px） */
  /* ★ 中央ドーン */
  /* ★ 画像（チラ見せ用にトリミング） */
  /* 高さズレ防止 */ }
  .slide ul.slick_service {
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      .slide ul.slick_service {
        margin-bottom: 50px; } }
    .slide ul.slick_service li {
      padding-left: 4px;
      padding-right: 4px;
      position: relative; }
    .slide ul.slick_service .slick-prev, .slide ul.slick_service .slick-next {
      width: 68px !important;
      height: 70px !important; }
      @media screen and (max-width: 480px) {
        .slide ul.slick_service .slick-prev, .slide ul.slick_service .slick-next {
          width: 48px !important;
          height: 50px !important; } }
    @media screen and (max-width: 480px) {
      .slide ul.slick_service .slick-prev {
        left: 0px; } }
    @media screen and (max-width: 480px) {
      .slide ul.slick_service .slick-next {
        right: 0px; } }
  .slide .slick_service .slick-list {
    padding: 0 !important;
    overflow: visible; }
  .slide .slick_service .slick-slide {
    width: 800px;
    opacity: 0.4;
    transform: scale(0.85);
    transition: all 0.5s ease;
    z-index: 1; }
  .slide .slick_service .slick-center {
    opacity: 1;
    transform: scale(1);
    z-index: 2; }
  .slide .slick_service .slick-slide img {
    width: 100%;
    height: 400px;
    /* ← 好みで調整OK */
    object-fit: cover;
    display: block; }
    @media screen and (max-width: 480px) {
      .slide .slick_service .slick-slide img {
        height: 220px; } }
  .slide .slick_service .slick-track {
    display: flex;
    align-items: center; }
  .slide .slick_service .slick-track {
    display: flex;
    align-items: center; }

/******************************************************
#ldk
******************************************************/
#ldk .plan p {
  margin-bottom: 30px; }
#ldk .plan__item {
  margin-bottom: 50px;
  padding: 20px 20px 20px 20px;
  background: #fbfaf5;
  text-align: center;
  border: 1px solid #D1B28F;
  border-top: 5px solid #D1B28F; }
  @media screen and (min-width: 961px) {
    #ldk .plan__item {
      padding: 30px 50px 50px 40px;
      margin-bottom: 80px; } }
  #ldk .plan__item .number {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #8C6239;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    font-weight: bold;
    line-height: 1;
    font-size: 1.8rem;
    margin: 0px auto;
    margin-bottom: 20px; }
    @media screen and (min-width: 1281px) {
      #ldk .plan__item .number {
        width: 150px;
        height: 150px;
        font-size: 2.2rem; } }
    #ldk .plan__item .number span {
      display: block;
      font-size: 4.0rem;
      margin-top: 4px; }
      @media screen and (min-width: 1281px) {
        #ldk .plan__item .number span {
          font-size: 4.5rem; } }
  #ldk .plan__item h3 {
    font-weight: bold;
    font-size: clamp(2.2rem, 5vw, 3rem);
    margin-bottom: 25px;
    color: #8C6239;
    line-height: 1.0;
    display: inline-block;
    border-bottom: 1px solid #8C6239;
    padding-bottom: 20px; }
    @media screen and (min-width: 961px) {
      #ldk .plan__item h3 {
        margin-bottom: 40px;
        padding-bottom: 30px; } }
  #ldk .plan__item .madori {
    background: #ffffff;
    padding: 10px 10px;
    text-align: center;
    margin-bottom: 20px;
    border: 1px solid #ebebeb; }
    @media screen and (min-width: 768px) {
      #ldk .plan__item .madori {
        padding: 30px 30px;
        margin-bottom: 30px; } }
    #ldk .plan__item .madori img {
      display: inline-block; }
  #ldk .plan__item .plan__ol {
    margin-bottom: 20px; }
    @media screen and (min-width: 961px) {
      #ldk .plan__item .plan__ol {
        display: flex;
        justify-content: space-between;
        margin-bottom: 30px; } }
    @media screen and (max-width: 960px) {
      #ldk .plan__item .plan__ol .photo {
        margin-bottom: 20px; } }
    #ldk .plan__item .plan__ol .photo img {
      width: 100%; }
    @media screen and (min-width: 961px) {
      #ldk .plan__item .plan__ol .photo ul {
        display: flex;
        justify-content: space-between; } }
    @media screen and (min-width: 961px) {
      #ldk .plan__item .plan__ol .photo ul li {
        width: 49%; } }
  #ldk .plan__item .priceArea {
    margin-bottom: 20px; }
    @media screen and (min-width: 768px) {
      #ldk .plan__item .priceArea {
        margin-bottom: 40px; } }
    #ldk .plan__item .priceArea .price_about {
      font-weight: bold;
      line-height: 1.0;
      margin-bottom: 10px; }
      @media screen and (min-width: 768px) {
        #ldk .plan__item .priceArea .price_about {
          margin-bottom: 15px; } }
    #ldk .plan__item .priceArea .price {
      color: #eb6100;
      font-weight: bold;
      font-size: clamp(2.2rem, 5vw, 3.5rem);
      line-height: 1.0; }
      #ldk .plan__item .priceArea .price span {
        font-size: clamp(3rem, 5vw, 5rem);
        font-family: "Jost", sans-serif;
        font-weight: bold; }

/******************************************************
#full
******************************************************/
#full .plan {
  text-align: center; }
  #full .plan .priceArea {
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      #full .plan .priceArea {
        margin-bottom: 50px; } }
    #full .plan .priceArea .price_about {
      font-weight: bold;
      line-height: 1.2;
      margin-bottom: 15px; }
      @media screen and (min-width: 768px) {
        #full .plan .priceArea .price_about {
          margin-bottom: 15px; } }
    #full .plan .priceArea .price {
      color: #eb6100;
      font-weight: bold;
      font-size: clamp(2.2rem, 5vw, 3.5rem);
      line-height: 1.0; }
      #full .plan .priceArea .price span {
        font-size: clamp(3rem, 5vw, 5rem);
        font-family: "Jost", sans-serif;
        font-weight: bold; }
      #full .plan .priceArea .price span.tubo {
        color: #8C6239;
        margin-right: 7px;
        font-size: clamp(2.2rem, 5vw, 3.5rem); }
  #full .plan__itemList {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
  #full .plan__item {
    border: 1px solid #D1B28F;
    margin-bottom: 15px;
    text-align: center;
    position: relative;
    margin-right: 30px;
    background: #8C6239; }
    @media screen and (max-width: 480px) {
      #full .plan__item {
        margin-bottom: 15px;
        width: 40%; } }
    @media screen and (min-width: 481px) and (max-width: 767px) {
      #full .plan__item {
        width: 26%; } }
    @media screen and (min-width: 768px) {
      #full .plan__item {
        width: 28%; } }
    #full .plan__item::after {
      content: "+";
      position: absolute;
      top: 50%;
      right: -24px;
      transform: translateY(-50%);
      font-size: 3.0rem;
      font-weight: bold;
      color: #8C6239; }
    #full .plan__item:last-child::after {
      display: none; }
  #full .plan__iconArea {
    padding: 10px 10px;
    background: #ffffff; }
    #full .plan__iconArea img {
      width: 80px; }
  #full .plan__nameArea {
    padding: 10px 5px;
    line-height: 1.4;
    background: #8C6239;
    color: #ffffff;
    font-weight: bold;
    font-size: 1.5rem; }
    @media screen and (min-width: 768px) {
      #full .plan__nameArea {
        padding: 10px 10px; } }

/******************************************************
#insulation
******************************************************/
#insulation .plan__item {
  padding: 25px 25px 25px 25px;
  background: #fbfaf5;
  text-align: center;
  border: 1px solid #D1B28F;
  border-top: 5px solid #D1B28F;
  max-width: 1000px;
  margin: 0px auto; }
  @media screen and (max-width: 960px) {
    #insulation .plan__item {
      margin-bottom: 40px; } }
  @media screen and (min-width: 961px) {
    #insulation .plan__item {
      padding: 30px 50px 50px 40px;
      margin-bottom: 80px; } }
  #insulation .plan__item .number {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #8C6239;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    font-weight: bold;
    line-height: 1;
    font-size: 1.8rem;
    margin: 0px auto;
    margin-bottom: 20px; }
    @media screen and (min-width: 1281px) {
      #insulation .plan__item .number {
        width: 150px;
        height: 150px;
        font-size: 2.2rem; } }
    #insulation .plan__item .number span {
      display: block;
      font-size: 4.0rem;
      margin-top: 4px; }
      @media screen and (min-width: 1281px) {
        #insulation .plan__item .number span {
          font-size: 4.5rem; } }
  #insulation .plan__item h3 {
    font-weight: bold;
    font-size: clamp(2.2rem, 5vw, 3rem);
    margin-bottom: 25px;
    color: #8C6239;
    line-height: 1.0;
    display: inline-block;
    border-bottom: 1px solid #8C6239;
    padding-bottom: 20px; }
    @media screen and (min-width: 961px) {
      #insulation .plan__item h3 {
        margin-bottom: 40px;
        padding-bottom: 30px; } }
  #insulation .plan__item .madori {
    background: #ffffff;
    padding: 10px 10px;
    text-align: center;
    margin-bottom: 20px;
    border: 1px solid #ebebeb; }
    @media screen and (min-width: 768px) {
      #insulation .plan__item .madori {
        padding: 30px 30px;
        margin-bottom: 30px; } }
    #insulation .plan__item .madori img {
      display: inline-block; }
  #insulation .plan__item .plan__ol {
    margin-bottom: 20px; }
    @media screen and (min-width: 961px) {
      #insulation .plan__item .plan__ol {
        display: flex;
        justify-content: space-between;
        margin-bottom: 30px; } }
    @media screen and (max-width: 960px) {
      #insulation .plan__item .plan__ol .photo {
        margin-bottom: 20px; } }
    @media screen and (min-width: 961px) {
      #insulation .plan__item .plan__ol .photo {
        width: 55%; } }
    #insulation .plan__item .plan__ol .icon {
      text-align: center; }
      @media screen and (min-width: 961px) {
        #insulation .plan__item .plan__ol .icon {
          width: 50%; } }
      #insulation .plan__item .plan__ol .icon img {
        display: inline-block; }
  #insulation .plan__item .imgArea {
    max-width: 400px;
    margin: 0px auto;
    width: 80%;
    margin-bottom: 30px; }
  #insulation .plan__item .priceArea {
    margin-bottom: 20px; }
    @media screen and (min-width: 768px) {
      #insulation .plan__item .priceArea {
        margin-bottom: 40px; } }
    #insulation .plan__item .priceArea .price_about {
      font-weight: bold;
      line-height: 1.0;
      margin-bottom: 10px; }
      @media screen and (min-width: 768px) {
        #insulation .plan__item .priceArea .price_about {
          margin-bottom: 15px; } }
    #insulation .plan__item .priceArea .price {
      color: #eb6100;
      font-weight: bold;
      font-size: clamp(2rem, 5vw, 3rem);
      line-height: 1.0; }
      #insulation .plan__item .priceArea .price span {
        font-size: clamp(3.6rem, 5vw, 5.5rem);
        font-family: "Jost", sans-serif;
        font-weight: bold; }
    #insulation .plan__item .priceArea .tax {
      font-weight: bold; }
  #insulation .plan__item:last-child {
    margin-bottom: 0px; }
#insulation .energy-saving {
  background: #FBF7EE; }
  #insulation .energy-saving h2.servicesubTit {
    color: #eb6100; }
  #insulation .energy-saving__textArea {
    text-align: center;
    margin-bottom: 50px; }
    @media screen and (min-width: 961px) {
      #insulation .energy-saving__textArea {
        margin-bottom: 80px; } }
  #insulation .energy-saving__illustArea {
    text-align: center;
    background: #ffffff;
    padding: 20px 20px;
    border: 1px solid #ebebeb; }
    @media screen and (min-width: 961px) {
      #insulation .energy-saving__illustArea {
        padding: 40px 30px; } }
