@charset "UTF-8";
/******************************************************
.item
******************************************************/
.item {
  background: #ffffff; }
  .item .inner {
    max-width: 1100px;
    margin: 0 auto;
    padding-bottom: 0px; }
    @media screen and (min-width: 1281px) {
      .item .inner {
        max-width: 90% !important; } }
  @media screen and (max-width: 960px) {
    .item h3.sectionText {
      margin-bottom: 50px;
      padding-bottom: 50px;
      position: relative; }
      .item h3.sectionText::before {
        position: absolute;
        bottom: -10px;
        left: calc(50% - 30px);
        width: 60px;
        height: 1px;
        content: '';
        background: #eb6100; } }
  .item__block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 100px;
    position: relative; }
    @media screen and (max-width: 960px) {
      .item__block {
        display: block;
        margin-bottom: 60px;
        text-align: center; } }
  .item__text {
    width: 48%;
    z-index: 2; }
    @media screen and (max-width: 960px) {
      .item__text {
        width: 100%;
        margin-bottom: 20px; } }
    @media screen and (min-width: 1281px) {
      .item__text {
        width: 45%; } }
  .item__image {
    width: 50%;
    position: relative; }
    .item__image img {
      width: 100%;
      height: auto;
      display: block; }
    .item__image--right {
      width: 50vw;
      margin-right: calc(50% - 50vw); }
    @media screen and (max-width: 960px) {
      .item__image {
        width: 100%;
        margin: 0; } }
  .item__title {
    font-size: clamp(3rem, 5vw, 5.5rem);
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    color: #D1B28F;
    margin-bottom: 10px;
    font-weight: 500; }
    @media screen and (min-width: 1281px) {
      .item__title {
        margin-bottom: 20px; } }
  .item__catch {
    font-size: clamp(2.2rem, 4vw, 3rem);
    margin-bottom: 30px;
    font-weight: bold;
    color: #8C6239;
    line-height: 1.3; }
  .item__desc {
    margin-bottom: 30px;
    line-height: 1.8; }
    @media screen and (max-width: 960px) {
      .item__desc {
        margin-bottom: 50px; } }

@media screen and (max-width: 960px) {
  #ldk ul.ldk_booth {
    max-width: 800px;
    margin: 0px auto; } }
@media screen and (min-width: 961px) {
  #ldk ul.ldk_booth {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; } }
@media screen and (max-width: 960px) {
  #ldk ul.ldk_booth li {
    margin-bottom: 15px; } }
@media screen and (min-width: 961px) {
  #ldk ul.ldk_booth li {
    width: 32%; } }
#ldk ul.ldk_booth li img {
  width: 100%; }

@media screen and (max-width: 960px) {
  #insulation .soon {
    margin-bottom: 50px; } }

/******************************************************
.lead
******************************************************/
.lead {
  background: #ffffff; }
  .lead .inner {
    max-width: 1100px;
    margin: 0 auto;
    padding-bottom: 0px; }
    @media screen and (min-width: 1281px) {
      .lead .inner {
        max-width: 90% !important; } }
  .lead__block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 100px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .lead__block {
        display: block;
        margin-bottom: 60px; } }
  .lead__text {
    width: 48%;
    z-index: 2; }
    @media screen and (max-width: 767px) {
      .lead__text {
        width: 100%;
        margin-bottom: 20px; } }
    @media screen and (min-width: 1281px) {
      .lead__text {
        width: 45%; } }
  .lead__image {
    width: 50%;
    position: relative; }
    .lead__image img {
      width: 100%;
      height: auto;
      display: block; }
    .lead__image--right {
      width: 50vw;
      margin-right: calc(50% - 50vw); }
    .lead__image--left {
      width: 50vw;
      margin-left: calc(50% - 50vw); }
    @media screen and (max-width: 767px) {
      .lead__image {
        width: 100%;
        margin: 0; } }
  .lead__title {
    font-size: clamp(3rem, 5vw, 5.5rem);
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    color: #D1B28F;
    margin-bottom: 10px;
    font-weight: 500; }
    @media screen and (min-width: 1281px) {
      .lead__title {
        margin-bottom: 20px; } }
  .lead__catch {
    font-size: clamp(2.2rem, 4vw, 3rem);
    margin-bottom: 30px;
    font-weight: bold;
    color: #8C6239;
    line-height: 1.3; }
  .lead__desc {
    margin-bottom: 30px;
    line-height: 1.8; }
  .lead__btn {
    margin-bottom: 20px;
    max-width: 400px;
    width: 100%; }
    .lead__btn a {
      display: block;
      background: #7a4b14;
      color: #fff;
      padding: 12px 30px;
      border-radius: 30px;
      position: relative;
      text-align: center; }
      .lead__btn a:after {
        content: url("../images/common/arrow_w.svg");
        width: 23px;
        position: absolute;
        right: 10px;
        top: 15%; }

/*************************************
.shop
*************************************/
.shop {
  /****************/
  /* 余白リセット＋はみ出し表示 */
  /* ★ スライド（基準800px） */
  /* ★ 中央ドーン */
  /* ★ 画像（チラ見せ用にトリミング） */
  /* 高さズレ防止 */ }
  .shop__shopName {
    font-size: clamp(1.8rem, 3vw, 3rem);
    line-height: 1.0;
    font-weight: 500;
    margin-bottom: 15px;
    background: #8C6239;
    color: #ffffff;
    padding: 12px 10px; }
    @media screen and (min-width: 768px) {
      .shop__shopName {
        margin-bottom: 20px;
        padding: 20px 15px; } }
    .shop__shopName span.city {
      background: #D1B28F;
      padding: 3px 10px;
      margin-right: 10px;
      font-size: clamp(1.8rem, 3vw, 3rem); }
  @media screen and (min-width: 961px) {
    .shop__ol {
      display: flex;
      justify-content: space-between;
      margin-bottom: 30px; } }
  @media screen and (min-width: 961px) {
    .shop__imgArea {
      width: 50%; } }
  @media screen and (min-width: 961px) {
    .shop__infoArea {
      width: 48%; } }
  .shop__infoArea table.infoTable {
    width: 100%;
    border-collapse: collapse; }
    .shop__infoArea table.infoTable th, .shop__infoArea table.infoTable td {
      padding: 12px 0;
      text-align: left;
      vertical-align: top;
      border-bottom: 1px solid #ccc; }
    .shop__infoArea table.infoTable th {
      width: 30%;
      font-weight: 700; }
    .shop__infoArea table.infoTable td {
      width: 70%; }
  .shop__googleMap {
    margin-bottom: 50px; }
    .shop__googleMap iframe {
      display: block;
      width: 100%;
      height: 300px; }
      @media screen and (min-width: 768px) {
        .shop__googleMap iframe {
          height: 500px; } }
  .shop ul.slick_shop {
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      .shop ul.slick_shop {
        margin-bottom: 50px; } }
    .shop ul.slick_shop li {
      padding-left: 4px;
      padding-right: 4px;
      position: relative; }
    .shop ul.slick_shop .slick-prev, .shop ul.slick_shop .slick-next {
      width: 68px !important;
      height: 70px !important; }
      @media screen and (max-width: 480px) {
        .shop ul.slick_shop .slick-prev, .shop ul.slick_shop .slick-next {
          width: 48px !important;
          height: 50px !important; } }
    @media screen and (max-width: 480px) {
      .shop ul.slick_shop .slick-prev {
        left: 0px; } }
    @media screen and (max-width: 480px) {
      .shop ul.slick_shop .slick-next {
        right: 0px; } }
  .shop .slick_shop .slick-list {
    padding: 0 !important;
    overflow: visible; }
  .shop .slick_shop .slick-slide {
    width: 800px;
    opacity: 0.4;
    transform: scale(0.85);
    transition: all 0.5s ease;
    z-index: 1; }
  .shop .slick_shop .slick-center {
    opacity: 1;
    transform: scale(1);
    z-index: 2; }
  .shop .slick_shop .slick-slide img {
    width: 100%;
    height: 400px;
    /* ← 好みで調整OK */
    object-fit: cover;
    display: block; }
    @media screen and (max-width: 480px) {
      .shop .slick_shop .slick-slide img {
        height: 220px; } }
  .shop .slick_shop .slick-track {
    display: flex;
    align-items: center; }
  .shop .slick_shop .slick-track {
    display: flex;
    align-items: center; }

.contact {
  background: #FBF7EE; }
  .contact ul {
    display: flex;
    justify-content: space-between; }
    @media screen and (min-width: 768px) {
      .contact ul li {
        width: 48%; } }
    .contact ul li:nth-child(1) {
      background: #D1B28F; }
    .contact ul li:nth-child(2) {
      background: #8C6239; }
    .contact ul li a {
      display: block;
      padding: 15px;
      text-align: center;
      color: #ffffff; }

/*************************************
#about_sanbrain
*************************************/
#about_sanbrain .inner {
  text-align: center; }
#about_sanbrain h2.Title {
  font-weight: 600;
  font-family: "Jost", sans-serif;
  font-style: italic;
  color: #005fb7;
  line-height: 1.3;
  font-size: clamp(3.5rem, 9vw, 8rem);
  text-align: center;
  margin-bottom: 5%; }
  #about_sanbrain h2.Title span {
    font-size: clamp(3.5rem, 9vw, 8rem);
    font-weight: 300;
    font-family: "Jost", sans-serif; }
  #about_sanbrain h2.Title span.jp {
    font-size: clamp(2rem, 5vw, 4.5rem);
    font-weight: 400;
    font-family: "Jost", sans-serif; }
#about_sanbrain .origin_ol {
  text-align: center;
  margin-bottom: 8%;
  display: flex;
  justify-content: space-between; }
  #about_sanbrain .origin_ol .name_ol {
    background: #f7f7f7;
    padding: 20px 30px;
    width: 48%; }
    @media screen and (max-width: 480px) {
      #about_sanbrain .origin_ol .name_ol {
        padding: 15px 15px; } }
    #about_sanbrain .origin_ol .name_ol .name {
      font-size: clamp(3rem, 2vw, 4rem);
      font-weight: 500;
      font-family: "Jost", sans-serif;
      font-style: italic; }
#about_sanbrain p.result {
  font-size: clamp(2rem, 2vw, 3rem);
  margin-bottom: 8%; }
  #about_sanbrain p.result strong {
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
    display: inline-block;
    width: 100%;
    font-size: clamp(3rem, 2vw, 4rem);
    color: #005fb7; }
#about_sanbrain p.achievements {
  font-size: clamp(1.6rem, 1.2vw, 2.2rem);
  margin-bottom: 50px; }
  @media screen and (min-width: 961px) {
    #about_sanbrain p.achievements {
      margin-bottom: 80px; } }

/*************************************
#groupe_nobase
*************************************/
#groupe_nobase {
  background: #dde7e9;
  background-size: cover; }
  #groupe_nobase h2 {
    font-weight: 500;
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    margin-bottom: 30px;
    text-align: center; }
    #groupe_nobase h2 span.en {
      display: inline-block;
      font-size: clamp(3.5rem, 6vw, 6.5rem);
      font-family: "Jost", sans-serif;
      font-style: italic;
      color: #00233f;
      line-height: 1.0;
      margin-bottom: 10px;
      width: 100%; }
  #groupe_nobase h3.name {
    font-weight: bold;
    text-align: center;
    margin-bottom: 8%; }
    @media screen and (max-width: 767px) {
      #groupe_nobase h3.name {
        margin-bottom: 40px; } }
    #groupe_nobase h3.name .logo {
      max-width: 200px;
      margin: 0px auto;
      margin-bottom: 15px;
      display: inline-block;
      padding-top: 25px; }
      @media screen and (min-width: 961px) {
        #groupe_nobase h3.name .logo {
          max-width: 300px; } }
  #groupe_nobase .about_nobase {
    font-size: clamp(1.8rem, 0.4vw, 2rem);
    margin-bottom: 8%;
    text-align: center; }
    #groupe_nobase .about_nobase span {
      font-weight: bold;
      font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
      font-size: clamp(2rem, 2vw, 3rem);
      display: inline-block;
      width: 100%;
      margin-bottom: 3%; }
  #groupe_nobase .text {
    font-size: clamp(1.6rem, 1.2vw, 2.2rem);
    line-height: 2.0; }
  #groupe_nobase .ol {
    margin-bottom: 8%;
    padding-top: 8%;
    border-top: 1px solid #00233f; }
    @media screen and (min-width: 768px) {
      #groupe_nobase .ol {
        display: flex;
        justify-content: space-between; } }
    @media screen and (min-width: 768px) {
      #groupe_nobase .ol .titArea {
        width: 250px; } }
    @media screen and (min-width: 768px) {
      #groupe_nobase .ol .textArea {
        width: -webkit-calc(100% -300px);
        width: calc(100% - 300px); } }
  #groupe_nobase h3 {
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    line-height: 1.0;
    font-weight: 500;
    margin-bottom: 3%; }
    #groupe_nobase h3 span.en {
      font-family: "Jost", sans-serif;
      font-style: italic;
      font-size: clamp(4rem, 8vw, 8rem);
      display: inline-block;
      width: 100%;
      line-height: 1.0;
      color: #00233f; }
  #groupe_nobase .catch {
    font-size: clamp(2.5rem, 1vw, 3rem);
    font-weight: 400;
    margin-bottom: 3%; }
  #groupe_nobase p {
    font-size: clamp(1.6rem, 0.8vw, 2rem); }

#about_sanbrain .overview, #groupe_nobase .overview {
  padding: 20px 20px; }
  @media screen and (min-width: 768px) {
    #about_sanbrain .overview, #groupe_nobase .overview {
      padding: 30px 80px; } }
  #about_sanbrain .overview h4.overview_tit, #groupe_nobase .overview h4.overview_tit {
    font-weight: 500;
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    margin-bottom: 30px;
    text-align: center; }
    #about_sanbrain .overview h4.overview_tit span.en, #groupe_nobase .overview h4.overview_tit span.en {
      display: inline-block;
      font-size: clamp(3.5rem, 6vw, 6.5rem);
      font-family: "Jost", sans-serif;
      font-style: italic;
      line-height: 1.0;
      margin-bottom: 10px;
      width: 100%; }
  #about_sanbrain .overview .table_overview, #groupe_nobase .overview .table_overview {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    /* table幅を100%に指定 */
    border: none; }
  #about_sanbrain .overview .table_overview th,
  #about_sanbrain .overview .table_overview td, #groupe_nobase .overview .table_overview th,
  #groupe_nobase .overview .table_overview td {
    display: block;
    /* セルをブロック要素に指定 */
    width: 100%;
    /* セルを親要素いっぱいの幅に指定 */
    border: none;
    padding: 15px 10px;
    vertical-align: top;
    text-align: left;
    box-sizing: border-box; }
  #about_sanbrain .overview .table_overview th, #groupe_nobase .overview .table_overview th {
    font-weight: 700;
    color: #fff; }
    @media screen and (max-width: 767px) {
      #about_sanbrain .overview .table_overview th, #groupe_nobase .overview .table_overview th {
        background: #00233f; } }
  @media screen and (min-width: 768px) {
    #about_sanbrain .overview .table_overview th,
    #about_sanbrain .overview .table_overview td, #groupe_nobase .overview .table_overview th,
    #groupe_nobase .overview .table_overview td {
      display: table-cell;
      /* デフォルト値に指定 */
      border-bottom: 1px solid #ccc;
      color: #000;
      padding: 25px 10px;
      font-size: 1.8rem; }
    #about_sanbrain .overview .table_overview th, #groupe_nobase .overview .table_overview th {
      color: #00233f; }
    #about_sanbrain .overview .table_overview tr th:first-child, #groupe_nobase .overview .table_overview tr th:first-child {
      width: 150px;
      /* thの固定幅 */ }
    #about_sanbrain .overview tbody, #groupe_nobase .overview tbody {
      border-top: 1px solid #cccccc; } }

#about_sanbrain .overview {
  background: #f7f7f7; }
#about_sanbrain h4 span.en {
  color: #005fb7; }

#groupe_nobase .overview {
  background: #ffffff; }
#groupe_nobase h4 span.en {
  color: #00233f; }

#profile h2 {
  font-weight: 500;
  font-size: clamp(1.6rem, 0.82vw, 2rem);
  margin-bottom: 8%; }
  #profile h2 span.en {
    display: inline-block;
    font-size: clamp(3.8rem, 5.54vw, 6.5rem);
    font-family: "Jost", sans-serif;
    font-style: italic;
    color: #005fb7;
    line-height: 1.0; }
    @media screen and (max-width: 960px) {
      #profile h2 span.en {
        padding-right: 15px; } }
    @media screen and (min-width: 961px) {
      #profile h2 span.en {
        width: 100%; } }
#profile .profile_ol {
  margin-bottom: 8%; }
  @media screen and (min-width: 961px) {
    #profile .profile_ol {
      display: flex;
      justify-content: space-between; } }
  @media screen and (min-width: 961px) {
    #profile .profile_ol .profArea {
      width: -webkit-calc(100% -480px);
      width: calc(100% - 480px); } }
  @media screen and (min-width: 961px) {
    #profile .profile_ol .photoArea {
      width: 450px; } }
#profile .todoketai {
  font-size: clamp(1.8rem, 0.4vw, 2rem);
  font-weight: bold;
  margin-bottom: 5px; }
#profile .point {
  font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
  font-size: clamp(2.2rem, 3.2vw, 3.8rem);
  margin-bottom: 8%; }
#profile .representative p {
  margin-bottom: 0px; }
#profile .representative .tit {
  margin-bottom: 10px; }
#profile .representative .zeirishi {
  font-size: 1.8rem;
  font-weight: bold; }
#profile .representative .name span {
  font-size: 3.0rem;
  font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif;
  font-weight: bold; }
#profile .messageArea {
  background-image: linear-gradient(90deg, #0bb8de, #0b5fb3);
  text-align: center;
  padding: 30px 30px; }
  #profile .messageArea h3 {
    font-weight: 500;
    color: #00233f;
    font-size: clamp(1.6rem, 0.82vw, 2rem);
    margin-bottom: 6%; }
    @media screen and (max-width: 960px) {
      #profile .messageArea h3 {
        text-align: center; } }
    #profile .messageArea h3 span.en {
      display: inline-block;
      width: 100%;
      color: #00233f;
      font-weight: 500;
      font-size: clamp(3.5rem, 5vw, 6rem);
      font-family: "Jost", sans-serif;
      font-style: italic;
      line-height: 1.0; }
  #profile .messageArea p, #profile .messageArea span, #profile .messageArea strong {
    font-size: clamp(1.4rem, 1.2vw, 2rem);
    line-height: 2.2;
    color: #ffffff;
    font-family: "Times New Roman", "游明朝", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "source-han-serif-japanese", serif; }
  @media screen and (min-width: 961px) {
    #profile .messageArea {
      padding: 50px 30px; } }
  #profile .messageArea p {
    margin-bottom: 5%; }
  #profile .messageArea strong {
    font-weight: bold; }
