@charset "UTF-8";
/* ===================================================================
CSS information
 file name  :  page.css
 style info :  ページ固有css
=================================================================== */
/* fontsize YUI
10px = 77% 11px = 85% 12px = 93% 13px = 100%
14px = 108% 15px = 116% 16px = 123.1% 17px = 131%
18px = 138.5% 19px = 146.5% 20px = 153.9% 21px = 161.6%
22px = 167% 23px = 174% 24px = 182% 25px = 189% 26px = 197%  */
/*-----index------*/
/*----------------------------------------------------------------------------------
		 								common
------------------------------------------------------------------------------------*/
.animated {
  animation-duration: 2s;
  animation-fill-mode: both; }

.fadeIn {
  animation-name: fadeIn; }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.button {
  background-color: #4BA743;
  border-radius: 31px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  position: relative; }
  @media only screen and (max-width: 769px) {
    .button {
      font-size: 18px;
      height: 48px; } }
  .button:after {
    content: url(../images/pages/more-arrow.svg);
    position: absolute; }

.button--more {
  width: 274px;
  height: 62px;
  font-size: 24px; }
  @media only screen and (max-width: 769px) {
    .button--more {
      width: 171px;
      height: 48px;
      font-size: 18px; } }
  .button--more:after {
    right: 31px;
    top: 5px; }
    @media only screen and (max-width: 769px) {
      .button--more:after {
        right: 20px;
        top: 7px; } }

.button--session {
  width: 420px;
  height: 62px;
  font-size: 24px; }
  @media only screen and (max-width: 769px) {
    .button--session {
      width: 301px;
      font-size: 21px;
      height: 54px; } }
  @media only screen and (max-width: 339px) {
    .button--session {
      width: 260px; } }
  .button--session:after {
    right: 31px;
    top: 5px; }
    @media only screen and (max-width: 769px) {
      .button--session:after {
        right: 20px;
        top: 7px; } }

.button--news-column {
  width: 239px;
  height: 54px;
  font-size: 20px; }
  @media only screen and (max-width: 769px) {
    .button--news-column {
      width: 171px;
      height: 48px;
      font-size: 18px; } }
  .button--news-column:after {
    right: 20px;
    top: 7px; }
    @media only screen and (max-width: 769px) {
      .button--news-column:after {
        right: 27px;
        top: 7px; } }

.link-button {
  background-color: #4BA743;
  border-radius: 31px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  position: relative;
  padding-right: 15px;
  box-sizing: border-box;
  margin-top: 28px; }
  @media only screen and (max-width: 769px) {
    .link-button {
      margin: 20px auto 0; } }

.pankuzuList {
  color: #8D6E63;
  font-size: 12px; }
  @media only screen and (max-width: 769px) {
    .pankuzuList {
      font-size: 11px;
      background-color: #A1887F;
      color: #fff;
      padding: 5px 0; } }
  .pankuzuList a {
    color: #8D6E63; }
    @media only screen and (max-width: 769px) {
      .pankuzuList a {
        color: #fff; } }

.pankuzuList__inner {
  width: 1080px;
  margin: 0 auto; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    .pankuzuList__inner {
      width: 90%; } }
  @media only screen and (max-width: 769px) {
    .pankuzuList__inner {
      width: 90%; } }

.page__pankuzu {
  padding-top: 5px; }
  @media only screen and (max-width: 769px) {
    .page__pankuzu {
      padding-top: 0; } }

.page-top {
  height: 398px;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media only screen and (max-width: 769px) {
    .page-top {
      height: 218px; } }
  .page-top h2 {
    font-size: 34px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    line-height: 1.4;
    color: #4E342E;
    margin-bottom: 30px;
    color: #fff; }

.dotted {
  margin: 0 auto;
  position: relative; }
  .dotted:after {
    display: block;
    content: "";
    width: 100%;
    height: 10px; }
  .dotted .shop {
    width: 120px;
    padding: 0 50px; }
    @media only screen and (max-width: 769px) {
      .dotted .shop {
        width: 88px;
        padding: 0 8px; } }
  .dotted .project {
    width: 300px;
    padding: 0 18px; }
    @media only screen and (max-width: 769px) {
      .dotted .project {
        width: 220px;
        padding: 0 8px; } }
  .dotted .activity {
    width: 180px;
    padding: 0 18px; }
    @media only screen and (max-width: 769px) {
      .dotted .activity {
        width: 132px;
        padding: 0 8px; } }
  .dotted .media {
    width: 255px;
    padding: 0 18px; }
    @media only screen and (max-width: 769px) {
      .dotted .media {
        width: 176px;
        padding: 0 8px; } }
  .dotted .history {
    width: 60px;
    padding: 0 18px; }
    @media only screen and (max-width: 769px) {
      .dotted .history {
        width: 44px;
        padding: 0 8px; } }
  .dotted .detail {
    width: 124px;
    padding: 0 18px; }
    @media only screen and (max-width: 769px) {
      .dotted .detail {
        width: 88px;
        padding: 0 8px; } }

.dotted--white h4 {
  background-color: #fff; }
.dotted--white:after {
  background: radial-gradient(circle farthest-side, #BDBDBD, #BDBDBD 30%, #fff 50%, #fff);
  background-size: 10px 10px; }

.dotted--color h4 {
  background-color: #F7F5E9; }
.dotted--color:after {
  background: radial-gradient(circle farthest-side, #BDBDBD, #BDBDBD 30%, #F7F5E9 50%, #F7F5E9);
  background-size: 10px 10px; }

@media only screen and (max-width: 769px) {
  .page__copy {
    font-size: 16px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    line-height: 2.0;
    text-align: center;
    color: #8D6E63;
    margin-top: 20px; } }

/*----------------------------------------------------------------------------------
		 							  indexSlideArea
------------------------------------------------------------------------------------*/
body.home main {
    padding-top: 125px;
}

#indexSlideArea {
  position: relative; }

.top-slider img {
  width: 100%; }

.top-slider .box-mv {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    text-align: center;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
}
.top-slider .box-mv img {
    margin-bottom: 32px;
    vertical-align: top;
    margin-top: 9%;
}
@media only screen and (max-width: 1032px) {
    .top-slider .box-mv img {
        margin-top: 8%;
    }
}
.top-slider .box-mv .line-mv {
    display: block;
    width: 500px;
    height: 2px;
    position: relative;
    background-color: #ffffff;
    margin-bottom: 20px;
}
.top-slider .box-mv .line-mv::before,
.top-slider .box-mv .line-mv::after {
    content: "";
    width: 2px;
    height: 2px;
    border-radius: 3px;
    background-color: #ffffff;
    position: absolute;
    top: 0;
}
.top-slider .box-mv .line-mv::before {
    left: -5px;
}
.top-slider .box-mv .line-mv::after {
    right: -5px;
}
.top-slider .box-mv .txt-mv {
    font-size: 26px;
    letter-spacing: .26em;
    line-height: 1.57;
    color: #ffffff;
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.top-slider .box-mv .txt-mv.mv01 {
    font-size: 28px;
}
.top-slider .box-mv .txt-mv.mv02 {
    font-size: 23px;
}
.top-slider .box-mv .txt-mv em {
    font-size: 26px;
}
.top-slider .box-mv .link-mv-bnr {
    width: 44.46%;
    height: auto;
    transition: all .3s ease-in-out;
    margin: 0 auto;
    position: absolute;
    bottom: 11%;
}
.top-slider .box-mv .link-mv-bnr img {
    width: 100% !important;
    margin: 0 !important;
}

.top-slider .box-mv .link-mv-bnr-2 {
    width: 17%;
    height: auto;
    transition: all .3s ease-in-out;
    margin: 0 auto;
    position: absolute;
    bottom: 6%;
    right: 30%;
}
.top-slider .box-mv .link-mv-bnr-2 img {
    width: 100% !important;
    margin: 0 !important;
}

.top-slider .box-mv .link-mv-bnr.left {
    width: 24.92%;
    height: auto;
    transition: all .3s ease-in-out;
    margin: 0 auto;
    position: absolute;
    bottom: 11%;
    left: 10%;
}

.top-slider .box-mv .link-mv {
    width: 253px;
    height: 45px;
    box-sizing: border-box;
    margin: 30px auto 0;
    display: block;
    border: 1px solid #ffffff;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, .4);
    color: #ffffff;
    transition: all .3s ease-in-out;
}
.top-slider .box-mv .link-mv:hover {
    opacity: .6;
}
.top-slider .box-mv .link-mv span {
    line-height: 42px;
    letter-spacing: .14em;
    font-size: 19px;
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: transparent url(../images/index/icon_arrow.svg) right 8px / 9px 12px no-repeat;
    padding-right: 30px;
}
@media (min-width: 1366px) {
    .top-slider .box-mv img {
        margin-top: 10% !important;
        width: 12vw;
        height: auto;
    }
    .top-slider .box-mv .txt-mv {
        font-size: 2vw !important;
    }
    .top-slider .box-mv .txt-mv.mv01 {
        font-size: 2.5vw !important;
    }
    .top-slider .box-mv .txt-mv em {
        font-size: 2.2vw !important;
    }
}


.slideArea__catch {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  font-size: 50px;
  color: #fff;
  line-height: 1.8;
  position: absolute;
  top: 12vw;
  left: 25vw;
  z-index: 10; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    .slideArea__catch {
      left: 15vw;
      font-size: 46px; } }
@media only screen and (max-width: 769px) {
    body.home main {
        padding-top: 50px;
    }

    .slideArea__catch {
      top: 20vw;
      left: 6vw;
      font-size: 26px;
    }

    .top-slider .box-mv img {
        margin-bottom: 20px;
        vertical-align: top;
        margin-top: 19%;
    }
    .top-slider .box-mv .line-mv {
        display: block;
        width: 200px;
        height: 2px;
        position: relative;
        background-color: #ffffff;
        margin-bottom: 30px;
    }
    .top-slider .box-mv .txt-mv {
        font-size: 20px;
        letter-spacing: .13em;
        line-height: 1.45;
    }
    .top-slider .box-mv .txt-mv.mv01 {
        font-size: 18px;
    }
    .top-slider .box-mv .txt-mv.mv02 {
        font-size: 16px;
    }
    .top-slider .box-mv .txt-mv em {
        font-size: 20px;
    }
    .top-slider .box-mv .link-mv {
        width: 223px;
        height: 35px;
        margin: 20px auto 0;
        border-radius: 5px;
        transition: none;
    }
    .top-slider .box-mv .link-mv:hover {
        opacity: 1;
    }
    .top-slider .box-mv .link-mv span {
        line-height: 32px;
        letter-spacing: .07em;
        font-size: 16px;
        padding-right: 20px;
    }
    /* 202212 調整 */
    .top-slider .box-mv .link-mv-bnr {
        width: 66%;
        bottom: 24%;
    }
    .top-slider .box-mv .link-mv-bnr img {
        width: 100% !important;
        margin: 0 !important;
    }
    .top-slider .box-mv .link-mv-bnr.left {
        width: 52%;
        bottom: 16%;
        left: 50%;
        transform: translateX(-50%);
    }
    .top-slider .box-mv .link-mv-bnr-2 {
        width: 34%;
        bottom: 3%;
        right: 2%;
    }
}

/*----------------------------------------------------------------------------------
		 							  indexAboutArea
------------------------------------------------------------------------------------*/
#indexAboutArea {
  padding: 76px 0 128px;
  background-color: #fff; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexAboutArea {
      padding: 76px 0; } }
  @media only screen and (max-width: 769px) {
    #indexAboutArea {
      padding: 30px 0 0; } }
  #indexAboutArea .logo {
    width: 106px;
    margin: 0 auto 30px; }
    #indexAboutArea .logo img {
      width: 100%; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .logo {
        display: none; } }
  #indexAboutArea h2 {
    font-size: 44px;
    font-weight: bold;
    text-align: center;
    color: #4E342E;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea h2 {
        font-size: 28px; } }
    @media only screen and (max-width: 339px) {
      #indexAboutArea h2 {
        font-size: 20px; } }
  #indexAboutArea .subTtl {
    font-size: 12px;
    text-align: center;
    color: #4E342E;
    font-family: "Poppins", sans-serif;
    margin-bottom: 45px; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .subTtl {
        margin-bottom: 30px; } }
  #indexAboutArea .lead {
    font-size: 20px;
    line-height: 2.0;
    width: 806px;
    margin: 0 auto 56px; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .lead {
        color: #4E342E;
        font-family: fot-tsukuardgothic-std, sans-serif;
        font-weight: bold;
        font-size: 18px;
        width: 90%;
        line-height: 1.7; } }
  #indexAboutArea ul {
    display: flex;
    width: 1000px;
    margin: 0 auto 50px;
    font-size: 14px;
    font-weight: bold; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexAboutArea ul {
        width: 90%; } }
    @media only screen and (max-width: 769px) {
      #indexAboutArea ul {
        width: 95%;
        flex-wrap: wrap;
        margin: 0 auto 30px; } }
  #indexAboutArea li {
    background-color: #EDCF32;
    margin-right: 8px;
    width: 328px;
    border-radius: 8px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexAboutArea li {
        width: 31%;
        margin-right: 1.5%; } }
    @media only screen and (max-width: 769px) {
      #indexAboutArea li {
        width: 100%;
        margin-bottom: 20px;
        margin-right: 0;
        display: flex; } }
    #indexAboutArea li:last-child {
      margin-right: 0; }
  #indexAboutArea .box {
    background-color: #EDCF32;
    padding: 15px 36px 23px;
    border-radius: 8px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexAboutArea .box {
        padding: 15px; } }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .box {
        width: 67%;
        padding: 0 0 0 5%;
        box-sizing: border-box;
        border-radius: 0; } }
  #indexAboutArea .box__ttl {
    display: flex;
    align-items: center;
    margin-bottom: 10px; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .box__ttl {
        margin-bottom: 3px; } }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexAboutArea .box__icon--01 {
      width: 29px; }
      #indexAboutArea .box__icon--01 img {
        width: 100%; } }
  @media only screen and (max-width: 769px) {
    #indexAboutArea .box__icon--01 {
      width: 39px; }
      #indexAboutArea .box__icon--01 img {
        width: 100%; } }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexAboutArea .box__icon--02 {
      width: 44px; }
      #indexAboutArea .box__icon--02 img {
        width: 100%; } }
  @media only screen and (max-width: 769px) {
    #indexAboutArea .box__icon--02 {
      width: 54px; }
      #indexAboutArea .box__icon--02 img {
        width: 100%; } }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexAboutArea .box__icon--03 {
      width: 32px; }
      #indexAboutArea .box__icon--03 img {
        width: 100%; } }
  @media only screen and (max-width: 769px) {
    #indexAboutArea .box__icon--03 {
      width: 69px; }
      #indexAboutArea .box__icon--03 img {
        width: 100%; } }
  #indexAboutArea .copy {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.8;
    position: relative;
    letter-spacing: 0.1em;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexAboutArea .copy {
        font-size: 2vw; } }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .copy {
        font-size: 4.5vw; } }
  #indexAboutArea .copy--01 {
    padding-left: 22px; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .copy--01 {
        padding-left: 15px; } }
  #indexAboutArea .copy--02 {
    padding-left: 10px; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .copy--02 {
        padding-left: 10px; } }
    #indexAboutArea .copy--02 span {
      letter-spacing: -1.0em; }
  #indexAboutArea .copy--03 {
    padding-left: 20px; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .copy--03 {
        padding-left: 15px; } }
  #indexAboutArea .txt {
    font-size: 15px;
    line-height: 2.0; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexAboutArea .txt {
        font-size: 1.5vw; } }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .txt {
        font-size: 3.5vw; } }
  #indexAboutArea .img {
    width: 100%; }
    @media only screen and (max-width: 769px) {
      #indexAboutArea .img {
        width: 33%; } }
    #indexAboutArea .img img {
      width: 100%;
      border-radius: 8px; }

@media only screen and (max-width: 769px) {
  .indexAboutArea__bg {
    background-color: #EDCF32;
    padding: 38px 0 50px; } }

/*----------------------------------------------------------------------------------
		 								indexCaseArea
------------------------------------------------------------------------------------*/
#indexCaseArea {
  padding: 113px 0 90px;
  background-color: #F7F5E9;
  position: relative; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexCaseArea {
      padding: 90px 0 70px; } }
  @media only screen and (max-width: 769px) {
    #indexCaseArea {
      padding: 75px 0 54px; } }
  #indexCaseArea .dotted {
    margin-bottom: 97px;
    width: 510px; }
    @media only screen and (max-width: 769px) {
      #indexCaseArea .dotted {
        width: 95%;
        margin-bottom: 75px; } }
  #indexCaseArea ul {
    width: 1087px;
    margin: 0 auto 20px;
    display: flex;
    flex-wrap: wrap; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexCaseArea ul {
        width: 90%; } }
    @media only screen and (max-width: 769px) {
      #indexCaseArea ul {
        width: 95%;
        display: block; } }
    #indexCaseArea ul a {
      display: flex;
      background-color: #fff;
      width: 530px;
      border-radius: 8px;
      box-sizing: border-box;
      padding: 31px 45px 34px 27px;
      margin-right: 27px;
      margin-bottom: 27px;
      box-shadow: 6px 6px 9px -6px #929292;
      position: relative; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #indexCaseArea ul a {
          width: 48%;
          margin-right: 4%;
          padding: 15px; } }
      @media only screen and (max-width: 769px) {
        #indexCaseArea ul a {
          width: 100%;
          padding: 10px 10px;
          margin-bottom: 8px; } }
      #indexCaseArea ul a:nth-child(2n) {
        margin-right: 0; }
      #indexCaseArea ul a:after {
        content: url(../images/index/arrow-case.svg);
        position: absolute;
        right: 20px;
        bottom: 13px; }
  #indexCaseArea .thumb {
    width: 185px;
    height: 159px;
    overflow: hidden; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexCaseArea .thumb {
        width: 44%; } }
    @media only screen and (max-width: 769px) {
      #indexCaseArea .thumb {
        width: 42%;
        height: 116px; } }
    @media only screen and (max-width: 339px) {
      #indexCaseArea .thumb {
        height: 90px; } }
    #indexCaseArea .thumb img {
      width: 100%;
      margin-top: -12px; }
      @media only screen and (max-width: 769px) {
        #indexCaseArea .thumb img {
          margin-top: -5vw; } }
      @media only screen and (max-width: 339px) {
        #indexCaseArea .thumb img {
          margin-top: -4vw; } }
  #indexCaseArea .description {
    width: 283px;
    padding-left: 15px;
    box-sizing: border-box; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexCaseArea .description {
        width: 56%; } }
    @media only screen and (max-width: 769px) {
      #indexCaseArea .description {
        width: 58%; } }
  #indexCaseArea .ttl {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    font-size: 21px;
    line-height: 1.3;
    margin-bottom: 10px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexCaseArea .ttl {
        font-size: 1.8vw;
        margin-bottom: 5px; } }
    @media only screen and (max-width: 769px) {
      #indexCaseArea .ttl {
        font-size: 5vw;
        margin-bottom: 7px; } }
  #indexCaseArea .shop__info {
    font-size: 16px;
    padding-bottom: 10px;
    border-bottom: solid 1px #424242;
    margin-bottom: 5px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexCaseArea .shop__info {
        font-size: 1.5vw;
        padding-bottom: 5px; } }
    @media only screen and (max-width: 769px) {
      #indexCaseArea .shop__info {
        font-size: 15px;
        line-height: 1.8;
        border: none;
        margin-bottom: 0;
        padding-bottom: 0; } }
    #indexCaseArea .shop__info span {
      font-size: 13px;
      margin-left: 20px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #indexCaseArea .shop__info span {
          font-size: 1vw; } }
      @media only screen and (max-width: 769px) {
        #indexCaseArea .shop__info span {
          font-size: 12px;
          display: block;
          margin-left: 0; } }
  #indexCaseArea .txt {
    font-size: 13px;
    line-height: 2.3; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexCaseArea .txt {
        font-size: 1.3vw;
        line-height: 2.0; } }


#indexCaseArea.cases {
    background-color: #ffffff;
}
#indexCaseArea.cases .index__loop__ttl--white,
#indexCaseArea.cases ul a {
    background-color: #F7F5E9;
}
#indexCaseArea.cases .dotted--color:after {
    background: radial-gradient(circle farthest-side, #BDBDBD, #BDBDBD 30%, #fff 50%, #fff);
    background-size: 10px 10px;
}


.index__loop__ttl {
  text-align: center;
  width: 134px;
  height: 134px;
  border-radius: 50%;
  position: absolute;
  top: -63px;
  left: 0;
  right: 0;
  margin: auto;
  color: #4E342E;
  box-sizing: border-box;
  padding-top: 40px; }
  @media only screen and (max-width: 769px) {
    .index__loop__ttl {
      width: 96px;
      height: 96px;
      padding-top: 25px;
      top: -40px; } }
  .index__loop__ttl h3 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.5; }
    @media only screen and (max-width: 769px) {
      .index__loop__ttl h3 {
        font-size: 16px; } }
  .index__loop__ttl p {
    font-size: 12px;
    font-family: "Poppins", sans-serif; }
    @media only screen and (max-width: 769px) {
      .index__loop__ttl p {
        font-size: 10px; } }

.index__loop__ttl--white {
  background-color: #fff; }

.index__loop__ttl--gray {
  background-color: #F5F5F5; }

/*----------------------------------------------------------------------------------
		 								indexSessionArea
------------------------------------------------------------------------------------*/
#indexSessionArea {
  padding-top: 130px;
  position: relative;
  height: 491px;
  box-sizing: border-box;
  background: url(../images/index/index-session-bg.jpg) no-repeat center;
  background-size: cover;
  color: #fff;
  text-align: center; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexSessionArea {
      padding-top: 80px;
      height: 390px; } }
  @media only screen and (max-width: 769px) {
    #indexSessionArea {
      padding: 35px 0;
      /* height: 318px; */
      height: auto;
      background: url(../images/index/index-session-bg-sp.jpg) no-repeat center; } }
  #indexSessionArea .lead {
    font-size: 38px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.8;
    margin-bottom: 35px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexSessionArea .lead {
        font-size: 3.5vw; } }
    @media only screen and (max-width: 769px) {
      #indexSessionArea .lead {
        font-size: 26px;
        margin-bottom: 40px; } }
    @media only screen and (max-width: 339px) {
      #indexSessionArea .lead {
        font-size: 22px; } }

/*----------------------------------------------------------------------------------
		 								indexNewsArea
------------------------------------------------------------------------------------*/
#indexNewsArea {
  padding: 113px 0 38px;
  background-color: #fff;
  position: relative; }
  @media only screen and (max-width: 769px) {
    #indexNewsArea {
      padding: 75px 0 54px; } }
  #indexNewsArea .dotted {
    margin-bottom: 85px;
    width: 510px; }
    @media only screen and (max-width: 769px) {
      #indexNewsArea .dotted {
        width: 95%;
        margin-bottom: 75px; } }
  #indexNewsArea .board {
    width: 904px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 40px 0 37px;
    background-color: #F5F5F5;
    border-radius: 8px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexNewsArea .board {
        width: 100%; } }
    @media only screen and (max-width: 769px) {
      #indexNewsArea .board {
        width: 95%; } }
  #indexNewsArea ul {
    width: 734px;
    margin: 0 auto 42px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexNewsArea ul {
        width: 90%; } }
    @media only screen and (max-width: 769px) {
      #indexNewsArea ul {
        width: 90%; } }
  #indexNewsArea li {
    display: flex;
    margin-bottom: 25px;
    display: block; }
  #indexNewsArea .date {
    font-size: 14px;
    font-weight: 500;
    font-family: "Poppins", sans-serif;
    width: 94px;
    margin-top: 5px;
    color: #A1887F; }
    @media only screen and (max-width: 769px) {
      #indexNewsArea .date {
        width: 100%; } }
  #indexNewsArea .ttl {
    font-size: 15px;
    font-weight: 500;
    line-height: 2.0;
    width: 640px; }
    @media only screen and (max-width: 769px) {
      #indexNewsArea .ttl {
        width: 100%;
        font-size: 16px; } }

/*----------------------------------------------------------------------------------
		 								indexcolumnArea
------------------------------------------------------------------------------------*/
#indexcolumnArea {
  padding: 100px 0 132px;
  background-color: #fff;
  position: relative; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #indexcolumnArea {
      padding: 70px 0; } }
  @media only screen and (max-width: 769px) {
    #indexcolumnArea {
      padding: 54px 0; } }
  #indexcolumnArea .dotted {
    margin-bottom: 85px;
    width: 510px; }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea .dotted {
        width: 95%; } }
  @media only screen and (max-width: 769px) {
    #indexcolumnArea ul {
      margin-bottom: 30px; } }
  #indexcolumnArea ul a {
    display: flex;
    width: 904px;
    margin: 0 auto 55px;
    background-color: #F7F5E9;
    border-radius: 8px;
    box-shadow: 6px 6px 9px -6px #929292; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexcolumnArea ul a {
        width: 95%;
        margin: 0 auto 35px; } }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea ul a {
        display: block;
        width: 95%;
        margin: 0 auto 20px; } }
  #indexcolumnArea .thumb {
    width: 368px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexcolumnArea .thumb {
        width: 40%; } }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea .thumb {
        width: 100%; } }
    #indexcolumnArea .thumb img {
      width: 100%;
      border-radius: 8px; }
  #indexcolumnArea .txt {
    width: 536px;
    padding: 25px 45px 0 37px;
    position: relative;
    box-sizing: border-box; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexcolumnArea .txt {
        padding: 20px 25px;
        width: 60%; } }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea .txt {
        width: 100%;
        padding: 15px 5% 20px; } }
  #indexcolumnArea .ttl {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    font-size: 20px;
    margin-bottom: 15px;
    line-height: 1.3; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexcolumnArea .ttl {
        font-size: 2.2vw;
        margin-bottom: 5px; } }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea .ttl {
        font-size: 5.2vw;
        margin-bottom: 6px;
        line-height: 1.5; } }
  #indexcolumnArea p {
    font-size: 14px;
    line-height: 2.0; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexcolumnArea p {
        font-size: 1.8vw;
        line-height: 1.8; } }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea p {
        margin-bottom: 30px;
        font-size: 3.7vw;
        line-height: 2.2; } }
  #indexcolumnArea .loop__categroy {
    left: 37px;
    bottom: 17px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #indexcolumnArea .loop__categroy {
        left: 15px;
        bottom: 20px; } }
    @media only screen and (max-width: 769px) {
      #indexcolumnArea .loop__categroy {
        left: 15px;
        bottom: 10px;
        position: static; } }
    @media only screen and (max-width: 339px) {
      #indexcolumnArea .loop__categroy {
        left: 15px;
        bottom: 5px;
        font-size: 11px; } }

/*----------------------------------------------------------------------------------
		 								columnCasesArea
------------------------------------------------------------------------------------*/
#columnCasesArea {
  padding: 40px 0 143px; }
  @media only screen and (max-width: 769px) {
    #columnCasesArea {
      padding: 0; } }
  #columnCasesArea .inner {
    width: 906px;
    margin: 0 auto;
    display: flex;
    padding-top: 50px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #columnCasesArea .inner {
        width: 95%; } }
    @media only screen and (max-width: 769px) {
      #columnCasesArea .inner {
        width: 95%;
        display: block;
        padding-top: 30px; } }
  #columnCasesArea .article {
    width: 590px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #columnCasesArea .article {
        width: 65%; } }
    @media only screen and (max-width: 769px) {
      #columnCasesArea .article {
        width: 100%;
        margin-top: 45px;
      }
    }
  @media only screen and (max-width: 769px) {
    #companyArea {
      margin-top: 80px;
    }
  }
  #columnCasesArea .date {
    font-size: 12px;
    font-weight: "Poppins", sans-serif;
    font-weight: 500;
    color: #9E9E9E; }
    @media only screen and (max-width: 769px) {
      #columnCasesArea .date {
        margin-bottom: 5px; } }
  #columnCasesArea h2 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    font-size: 34px;
    margin-bottom: 35px;
    color: #4E342E;
    line-height: 1.5; }
    @media only screen and (max-width: 769px) {
      #columnCasesArea h2 {
        font-size: 23px; }
        #columnCasesArea .article iframe {
            width: 100%;
        }

    }
    #columnCasesArea h2 br {
      display: none; }
  #columnCasesArea .case__info {
    background-color: #F7F5E9;
    border-radius: 8px;
    margin-bottom: 50px; }
    #columnCasesArea .case__info img {
      width: 100%;
      border-radius: 8px; }
    #columnCasesArea .case__info .detail {
      padding: 20px 25px 25px; }
      @media only screen and (max-width: 769px) {
        #columnCasesArea .case__info .detail {
          padding: 15px 5% 20px; } }
    #columnCasesArea .case__info .name {
      font-size: 20px;
      margin-bottom: 5px; }
    #columnCasesArea .case__info .txt {
      font-size: 14px;
      line-height: 2.0; }
      #columnCasesArea .case__info .txt span {
        color: #4BA743; }
  #columnCasesArea article {
    padding-bottom: 50px; }
    #columnCasesArea article img {
      width: 100%;
      height: auto;
      border-radius: 8px; }
    #columnCasesArea article .wp-caption-text {
      text-align: center;
      font-size: 13px;
      border-bottom: dotted 1px #707070;
      padding: 5px 0; }
      @media only screen and (max-width: 769px) {
        #columnCasesArea article .wp-caption-text {
          font-size: 10px;
          text-align: left; } }
    #columnCasesArea article p {
      font-size: 15px;
      line-height: 2.5;
      margin-bottom: 30px;
      letter-spacing: 0.02em; }
/*
    #columnCasesArea article h3 {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 30px;
      color: #4E342E;
      line-height: 1.8;
      letter-spacing: 0.02em; }
*/
  #columnCasesArea article h3 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    font-size: 24px;
    margin-bottom: 2.4rem;
    color: #4E342E;
    line-height: 1.5;
    margin: 38px 0 22px;
    border-bottom: 1px solid #4E342E;
    padding-bottom: 6px;
  }
    @media only screen and (max-width: 769px) {
      #columnCasesArea article h3 {
        font-size: 18px; } }

  #columnCasesArea article h4 {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 2.4rem;
    color: #4E342E;
    line-height: 1.5;
    margin: 38px 0 22px;
    border-left: 6px solid #4E342E;
    padding-left: 6px;
  }
    @media only screen and (max-width: 769px) {
      #columnCasesArea article h4 {
        font-size: 16px; } }


    #columnCasesArea article .share {
      background-color: #F5F5F5;
      border-radius: 8px;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 12px;
      font-weight: 500;
      font-family: "Poppins", sans-serif;
      color: #A1887F;
      height: 54px; }
      #columnCasesArea article .share span {
        margin-right: 20px; }
      #columnCasesArea article .share .twitter {
        margin-right: 20px; }
  #columnCasesArea .session {
    background-color: #4BA743;
    border-radius: 12px;
    padding: 50px 52px 30px;
    text-align: center;
    position: relative; }
    @media only screen and (max-width: 769px) {
      #columnCasesArea .session {
        border-radius: 0;
        padding: 48px 0 23px;
        margin: 50px -2.5% 0; } }
    #columnCasesArea .session .logo {
      position: absolute;
      top: 20px;
      left: 0;
      right: 0;
      margin: auto;
      width: 85px;
      height: 44px; }
      #columnCasesArea .session .logo img {
        width: 100%; }
    #columnCasesArea .session .session__ttl {
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: bold;
      font-size: 28px;
      border-top: solid 2px #fff;
      border-bottom: solid 2px #fff;
      padding: 10px 0;
      color: #fff;
      margin-bottom: 10px; }
      @media only screen and (max-width: 769px) {
        #columnCasesArea .session .session__ttl {
          font-size: 20px;
          width: 85%;
          margin: 0 auto 10px; } }
    #columnCasesArea .session .txt {
      font-size: 16px;
      font-weight: bold;
      line-height: 1.8;
      margin-bottom: 20px;
      color: #fff; }
    #columnCasesArea .session .session__button {
      background-color: #fff;
      border-radius: 31px;
      width: 245px;
      height: 51px;
      margin: 0 auto;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 19px;
      color: #4BA743;
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: bold;
      position: relative; }
      @media only screen and (max-width: 769px) {
        #columnCasesArea .session .session__button {
          font-size: 18px;
          height: 48px; } }
      #columnCasesArea .session .session__button:after {
        content: url(../images/pages/session-arrow.svg);
        position: absolute;
        right: 20px;
        top: 5px; }
        @media only screen and (max-width: 769px) {
          #columnCasesArea .session .session__button:after {
            right: 25px;
            top: 7px; } }
  #columnCasesArea .sidebar {
    width: 316px;
    box-sizing: border-box;
    padding-left: 56px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #columnCasesArea .sidebar {
        width: 35%;
        padding-left: 40px; } }
    @media only screen and (max-width: 769px) {
      #columnCasesArea .sidebar {
        width: 100%;
        padding: 0;
        text-align: center; } }
    #columnCasesArea .sidebar .sidebar__ttl {
      font-size: 18px;
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: bold;
      color: #4E342E;
      line-height: 1.5;
      position: relative;
      margin-bottom: 20px; }
      @media only screen and (max-width: 769px) {
        #columnCasesArea .sidebar .sidebar__ttl {
          font-size: 22px;
          display: inline-block;
          margin-bottom: 55px; }
          #columnCasesArea .sidebar .sidebar__ttl br {
            display: none; } }
  #columnCasesArea .search {
    padding-left: 18px; }
    #columnCasesArea .search:before {
      content: url(../images/pages/search.svg);
      position: absolute;
      left: -10px;
      top: 5px; }
  #columnCasesArea .popular {
    padding-left: 25px; }
    #columnCasesArea .popular:before {
      content: url(../images/pages/popular.svg);
      position: absolute;
      left: -10px;
      top: 3px; }

.category-button {
  margin-bottom: 11px; }
  @media only screen and (max-width: 769px) {
    .category-button {
      margin-bottom: 5px; } }
  .category-button a {
    border-radius: 14px;
    font-size: 14px;
    background-color: #F7F5E9;
    color: #8D6E63;
    width: 103px;
    line-height: 1.3;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    padding: 5px 10px;
    box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-right: 14px;
    margin-bottom: 14px; }
    @media only screen and (max-width: 769px) {
      .category-button a {
        width: 102px; } }

.pagenavi {
  display: flex;
  font-size: 14px;
  width: 382px;
  margin: 0 auto 60px; }
  @media only screen and (max-width: 769px) {
    .pagenavi {
      margin: 0 auto 40px;
      width: 100%; } }
  .pagenavi a, .pagenavi span {
    background-color: #A1887F;
    width: 103px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    margin: 0 auto; }
    @media only screen and (max-width: 339px) {
      .pagenavi a, .pagenavi span {
        width: 80px; } }

@media only screen and (max-width: 769px) {
  .nav-side {
    width: 33.3%; } }
.nav-side a {
  border-radius: 23px; }

.nav-center {
  width: 176px; }
  @media only screen and (max-width: 769px) {
    .nav-center {
      width: 33.3%; } }
  .nav-center a {
    border-radius: 9px; }

.prev {
  position: relative;
  border-radius: 23px; }
  .prev:before {
    content: url(../images/pages/prev.svg);
    position: absolute;
    left: 23px;
    top: 10px; }
    @media only screen and (max-width: 339px) {
      .prev:before {
        left: 13px; } }

.next {
  position: relative;
  border-radius: 23px; }
  .next:before {
    content: url(../images/pages/next.svg);
    position: absolute;
    right: 23px;
    top: 10px; }
    @media only screen and (max-width: 339px) {
      .next:before {
        right: 13px; } }

/*----------------------------------------------------------------------------------
		 								columnCasesArchiveArea
------------------------------------------------------------------------------------*/
#columnCasesArchiveArea h2 {
  color: #fff;
  font-size: 40px;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  letter-spacing: 0.05em; }
  @media only screen and (max-width: 769px) {
    #columnCasesArchiveArea h2 {
      font-size: 30px; } }
#columnCasesArchiveArea .seach__categroy {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  font-size: 18px;
  color: #8D6E63;
  background-color: #F7F5E9;
  border-radius: 14px;
  padding: 3px 15px;
  box-sizing: border-box;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 1.5;
  margin-bottom: 60px;
  min-width: 120px; }
  @media only screen and (max-width: 339px) {
    #columnCasesArchiveArea .seach__categroy {
      font-size: 11px; } }
#columnCasesArchiveArea .search {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  font-size: 22px;
  text-align: center;
  color: #4E342E;
  margin: 25px 0 22px; }
  @media only screen and (max-width: 769px) {
    #columnCasesArchiveArea .search {
      font-size: 22px;
      margin: 25px 0 55px; } }
#columnCasesArchiveArea .inner {
  width: 1088px;
  margin: 0 auto;
  padding: 10px 0 140px; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #columnCasesArchiveArea .inner {
      width: 95%;
      padding: 0 0 23px; } }
  @media only screen and (max-width: 769px) {
    #columnCasesArchiveArea .inner {
      width: 95%;
      padding: 0 0 23px; } }
#columnCasesArchiveArea .loop {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px; }
  #columnCasesArchiveArea .loop a {
    width: 352px;
    margin-right: 16px;
    background-color: #F7F5E9;
    margin-bottom: 18px;
    box-shadow: 6px 6px 9px -6px #929292;
    border-radius: 8px;
    position: relative; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #columnCasesArchiveArea .loop a {
        width: 31%;
        margin-right: 2.33%; } }
    @media only screen and (max-width: 769px) {
      #columnCasesArchiveArea .loop a {
        width: 100%;
        margin-right: 0;
        box-shadow: 3px 3px 6px -3px #929292;
        display: flex; } }
    #columnCasesArchiveArea .loop a:nth-child(3n) {
      margin-right: 0; }
    @media only screen and (max-width: 769px) {
      #columnCasesArchiveArea .loop a .thumb {
        width: 30%; } }
    #columnCasesArchiveArea .loop a img {
      width: 100%;
      border-radius: 8px; }
    #columnCasesArchiveArea .loop a h3 {
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: bold;
      font-size: 18px;
      color: #4E342E;
      line-height: 1.5;
      margin-bottom: 10px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #columnCasesArchiveArea .loop a h3 {
          font-size: 2vw;
          margin-bottom: 5px; } }
      @media only screen and (max-width: 769px) {
        #columnCasesArchiveArea .loop a h3 {
          font-size: 3.5vw;
          margin-bottom: 3px; } }
      @media only screen and (max-width: 339px) {
        #columnCasesArchiveArea .loop a h3 {
          margin-bottom: 0; } }
      #columnCasesArchiveArea .loop a h3 br {
        display: none; }
    #columnCasesArchiveArea .loop a h4 {
      font-size: 15px;
      padding-bottom: 10px;
      border-bottom: solid 1px #424242;
      margin-bottom: 3px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #columnCasesArchiveArea .loop a h4 {
          font-size: 1.5vw;
          padding-bottom: 5px; } }
      @media only screen and (max-width: 769px) {
        #columnCasesArchiveArea .loop a h4 {
          font-size: 3vw;
          padding-bottom: 5px;
          line-height: 1.5; } }
      @media only screen and (max-width: 339px) {
        #columnCasesArchiveArea .loop a h4 {
          padding-bottom: 3px; } }
      #columnCasesArchiveArea .loop a h4 span {
        font-size: 13px; }
        @media only screen and (min-width: 770px) and (max-width: 1119px) {
          #columnCasesArchiveArea .loop a h4 span {
            font-size: 1.3vw; } }
        @media only screen and (max-width: 769px) {
          #columnCasesArchiveArea .loop a h4 span {
            font-size: 2.8vw; } }
    #columnCasesArchiveArea .loop a p {
      font-size: 14px;
      line-height: 2.0;
      margin-bottom: 15px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #columnCasesArchiveArea .loop a p {
          font-size: 1.5vw; } }
  #columnCasesArchiveArea .loop .txt {
    padding: 15px 20px 20px;
    box-sizing: border-box;
    position: relative; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #columnCasesArchiveArea .loop .txt {
        height: auto; } }
    @media only screen and (max-width: 769px) {
      #columnCasesArchiveArea .loop .txt {
        width: 70%;
        padding: 10px 12px 10px 13px; } }
    @media only screen and (max-width: 339px) {
      #columnCasesArchiveArea .loop .txt {
        padding: 10px 10px 20px; } }
    #columnCasesArchiveArea .loop .txt:after {
      content: url(../images/pages/archive-arrow.svg);
      position: absolute;
      right: 20px;
      bottom: 10px; }
      @media only screen and (max-width: 769px) {
        #columnCasesArchiveArea .loop .txt:after {
          bottom: 7px; } }
      @media only screen and (max-width: 339px) {
        #columnCasesArchiveArea .loop .txt:after {
          bottom: 5px; } }
#columnCasesArchiveArea .loop__categroy {
  left: 20px;
  bottom: 23px; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #columnCasesArchiveArea .loop__categroy {
      position: static; } }
  @media only screen and (max-width: 769px) {
    #columnCasesArchiveArea .loop__categroy {
      left: 15px;
      bottom: 7px; } }
  @media only screen and (max-width: 339px) {
    #columnCasesArchiveArea .loop__categroy {
      left: 10px;
      bottom: 5px; } }

.txt--column {
  height: 200px; }
  @media only screen and (max-width: 769px) {
    .txt--column {
      height: auto; } }

.txt--cases {
  height: 230px; }
  @media only screen and (max-width: 769px) {
    .txt--cases {
      height: auto; } }

.loop__categroy {
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  font-size: 14px;
  color: #8D6E63;
  border: solid 1px #8D6E63;
  border-radius: 14px;
  padding: 2px 10px;
  box-sizing: border-box;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 102px;
  line-height: 1.5;
  position: absolute; }
  @media only screen and (max-width: 769px) {
    .loop__categroy {
      font-size: 3vw;
      min-width: 16vw; } }

.top--column {
  background: url(../images/pages/top-column.jpg) no-repeat center;
  background-size: cover; }
  @media only screen and (max-width: 769px) {
    .top--column {
      background: url(../images/pages/top-column-sp.jpg) no-repeat center;
      background-size: cover;
      margin-top: 80px;
    }
  }

.top--cases {
  background: url(../images/pages/top-cases.jpg) no-repeat center;
  background-size: cover; }
  @media only screen and (max-width: 769px) {
    .top--cases {
      background: url(../images/pages/top-cases-sp.jpg) no-repeat center;
      background-size: cover;
      margin-top: 80px;
    }
  }

.columnCasesArchiveArea__pankuzu {
  padding-left: 92px; }
  @media only screen and (max-width: 769px) {
    .columnCasesArchiveArea__pankuzu {
      padding-left: 0;
      margin: 0 -5%; } }

.category-button--archive {
  width: 702px;
  margin: 0 auto 58px;
  text-align: center; }
  @media only screen and (max-width: 769px) {
    .category-button--archive {
      width: 336px;
      margin: 0 auto 66px; } }
  @media only screen and (max-width: 339px) {
    .category-button--archive {
      width: 90%; } }
  .category-button--archive a {
    margin: 0 7px 14px; }
    @media only screen and (max-width: 769px) {
      .category-button--archive a {
        margin: 0 5px 10px; } }

.wp-pagenavi {
  text-align: center;
  margin-bottom: 110px; }
  .wp-pagenavi span, .wp-pagenavi a {
    font-size: 14px;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 35px;
    border-radius: 10px;
    display: inline-block;
    margin: 0 6px;
    border: none;
    box-sizing: border-box; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi span, .wp-pagenavi a {
        font-size: 10px;
        width: 23px;
        height: 23px;
        line-height: 23px;
        padding: 0;
        margin: 0 2px;
        border-radius: 3px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi span, .wp-pagenavi a {
        width: 20px;
        height: 20px;
        line-height: 20px; } }
  .wp-pagenavi .current {
    background-color: #A1887F;
    color: #fff; }
  .wp-pagenavi .page {
    background-color: #fff;
    color: #A1887F; }
  .wp-pagenavi .nextpostslink, .wp-pagenavi .previouspostslink {
    background-color: #A1887F;
    width: 103px;
    height: 40px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    margin: 0 auto; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi .nextpostslink, .wp-pagenavi .previouspostslink {
        width: 50px;
        height: 23px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi .nextpostslink, .wp-pagenavi .previouspostslink {
        width: 40px;
        height: 20px; } }
  .wp-pagenavi .nextpostslink {
    position: relative;
    border-radius: 23px;
    padding-right: 10px; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi .nextpostslink {
        padding-right: 2px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi .nextpostslink {
        padding: 0; } }
    .wp-pagenavi .nextpostslink:before {
      content: url(../images/pages/next.svg);
      position: absolute;
      right: 23px;
      top: 3px; }
      @media only screen and (max-width: 769px) {
        .wp-pagenavi .nextpostslink:before {
          content: url(../images/pages/next-sp.svg);
          right: 6px;
          top: 1px; } }
      @media only screen and (max-width: 339px) {
        .wp-pagenavi .nextpostslink:before {
          content: none; } }
  .wp-pagenavi .previouspostslink {
    position: relative;
    border-radius: 23px;
    padding-left: 10px; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi .previouspostslink {
        padding-left: 2px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi .previouspostslink {
        padding: 0; } }
    .wp-pagenavi .previouspostslink:before {
      content: url(../images/pages/prev.svg);
      position: absolute;
      left: 23px;
      top: 3px; }
      @media only screen and (max-width: 769px) {
        .wp-pagenavi .previouspostslink:before {
          content: url(../images/pages/prev-sp.svg);
          left: 6px;
          top: 1px; } }
      @media only screen and (max-width: 339px) {
        .wp-pagenavi .previouspostslink:before {
          content: none; } }
  .wp-pagenavi .first, .wp-pagenavi .last {
    background-color: #A1887F;
    width: 103px;
    height: 40px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    margin: 0 auto;
    border-radius: 23px;
    position: relative; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi .first, .wp-pagenavi .last {
        width: 55px;
        height: 23px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi .first, .wp-pagenavi .last {
        width: 40px;
        height: 20px; } }
  .wp-pagenavi .first {
    margin-right: 40px;
    padding-left: 30px; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi .first {
        margin-right: 5px;
        padding-left: 8px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi .first {
        padding: 0; } }
    .wp-pagenavi .first:before {
      content: url(../images/pages/first.svg);
      position: absolute;
      left: 25px;
      top: 3px; }
      @media only screen and (max-width: 769px) {
        .wp-pagenavi .first:before {
          content: url(../images/pages/first-sp.svg);
          left: 7px;
          top: 1px; } }
      @media only screen and (max-width: 339px) {
        .wp-pagenavi .first:before {
          content: none; } }
  .wp-pagenavi .last {
    margin-left: 40px;
    padding-right: 25px; }
    @media only screen and (max-width: 769px) {
      .wp-pagenavi .last {
        margin-left: 5px;
        padding-right: 8px; } }
    @media only screen and (max-width: 339px) {
      .wp-pagenavi .last {
        padding: 0; } }
    .wp-pagenavi .last:before {
      content: url(../images/pages/last.svg);
      position: absolute;
      right: 20px;
      top: 3px; }
      @media only screen and (max-width: 769px) {
        .wp-pagenavi .last:before {
          content: url(../images/pages/last-sp.svg);
          right: 7px;
          top: 1px; } }
      @media only screen and (max-width: 339px) {
        .wp-pagenavi .last:before {
          content: none; } }

@media only screen and (min-width: 770px) and (max-width: 1119px) {
  .banner {
    width: 95%; } }
@media only screen and (max-width: 769px) {
  .banner {
    display: block;
    width: 100%; } }
.banner a {
  background-color: #EFD6CD;
  border-radius: 8px;
  font-weight: bold;
  color: #A1887F;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 6px 6px 9px -6px #929292;
  position: relative;
  box-sizing: border-box; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    .banner a {
      width: 31%;
      margin-right: 2.33%;
      font-size: 1.5vw; } }
  @media only screen and (max-width: 769px) {
    .banner a {
      width: 100%;
      margin-right: 0;
      margin-bottom: 22px; } }
  .banner a:last-child {
    margin-right: 0; }

.banner-bottom {
  width: 1086px;
  margin: 0 auto;
  display: flex;
   }
  @media only screen and (max-width: 769px) {
        .banner-bottom {
          flex-wrap: wrap;
          width: auto; } }
  .banner-bottom a {
    width: 336px;
    height: 77px;
    margin-right: 39px;
    font-size: 15px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-bottom a {
        margin-right: 2.33%; } }
  .banner-bottom .banner01 {
    padding-left: 20px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-bottom .banner01 {
        padding-left: 0; } }
    .banner-bottom .banner01:before {
      content: url(../images/pages/bottom-icon01.svg);
      position: absolute;
      left: 20px;
      top: 25px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        .banner-bottom .banner01:before {
          content: none; } }
      @media only screen and (max-width: 769px) {
        .banner-bottom .banner01:before {
          left: 30px; } }
      @media only screen and (max-width: 339px) {
        .banner-bottom .banner01:before {
          left: 10px; } }
  .banner-bottom .banner02:before {
    content: url(../images/pages/bottom-icon02.svg);
    position: absolute;
    left: 36px;
    top: 28px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-bottom .banner02:before {
        content: none; } }
    @media only screen and (max-width: 769px) {
      .banner-bottom .banner02:before {
        left: 40px; } }
    @media only screen and (max-width: 339px) {
      .banner-bottom .banner02:before {
        left: 20px; } }
  .banner-bottom .banner03:before {
    content: url(../images/pages/bottom-icon03.svg);
    position: absolute;
    left: 25px;
    top: 26px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-bottom .banner03:before {
        content: none; } }
    @media only screen and (max-width: 769px) {
      .banner-bottom .banner03:before {
        left: 30px; } }
    @media only screen and (max-width: 339px) {
      .banner-bottom .banner03:before {
        left: 15px; } }
  .banner-bottom a:after {
    content: url(../images/pages/bottom-button-arrow.svg);
    position: absolute;
    right: 15px;
    top: 28px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-bottom a:after {
        right: 10px;
        top: 28px; } }

.banner-side {
  margin-top: 30px;
  width: 100%; }
  .banner-side a {
    margin-bottom: 25px;
    font-size: 11px;
    height: 65px;
    width: 100%; }
  .banner-side .banner01 {
    padding-left: 20px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-side .banner01 {
        padding-left: 0; } }
    .banner-side .banner01:before {
      content: url(../images/pages/bottom-icon01.svg);
      position: absolute;
      left: 13px;
      top: 18px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        .banner-side .banner01:before {
          content: none; } }
      @media only screen and (max-width: 769px) {
        .banner-side .banner01:before {
          left: 30px; } }
      @media only screen and (max-width: 339px) {
        .banner-side .banner01:before {
          left: 10px; } }
  .banner-side .banner02:before {
    content: url(../images/pages/bottom-icon02.svg);
    position: absolute;
    left: 25px;
    top: 20px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-side .banner02:before {
        content: none; } }
    @media only screen and (max-width: 769px) {
      .banner-side .banner02:before {
        left: 40px; } }
    @media only screen and (max-width: 339px) {
      .banner-side .banner02:before {
        left: 20px; } }
  .banner-side .banner03:before {
    content: url(../images/pages/bottom-icon03.svg);
    position: absolute;
    left: 20px;
    top: 20px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-side .banner03:before {
        content: none; } }
    @media only screen and (max-width: 769px) {
      .banner-side .banner03:before {
        left: 30px; } }
    @media only screen and (max-width: 339px) {
      .banner-side .banner03:before {
        left: 15px; } }
  .banner-side a:after {
    content: url(../images/pages/bottom-button-arrow.svg);
    position: absolute;
    right: 10px;
    top: 25px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      .banner-side a:after {
        right: 10px;
        top: 28px; } }

.not-found {
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  width: 100%;
  margin-top: 20px; }
  @media only screen and (max-width: 769px) {
    .not-found {
      margin-top: 40px; } }
  .not-found br {
    display: none; }
    @media only screen and (max-width: 769px) {
      .not-found br {
        display: block; } }
  .not-found a {
    color: #8D6E63;
    text-decoration: underline; }

/*----------------------------------------------------------------------------------
		 								newsArea
------------------------------------------------------------------------------------*/
#newsArea .inner {
  width: 724px;
  margin: 0 auto; }
  @media only screen and (max-width: 769px) {
    #newsArea .inner {
      width: 90%; } }
#newsArea .date {
  font-size: 16px;
  font-weight: 500;
  font-family: "Poppins", sans-serif;
  text-align: center;
  margin-bottom: 40px;
  color: #A1887F;
  letter-spacing: 0.03em; }
  @media only screen and (max-width: 769px) {
    #newsArea .date {
      font-size: 13px; } }
#newsArea h3 {
  font-size: 20px;
  font-weight: 500;
  line-height: 2.0;
  margin-bottom: 93px; }
  @media only screen and (max-width: 769px) {
    #newsArea h3 {
      font-size: 18px; } }
#newsArea article {
  margin-bottom: 250px; }
  #newsArea article p {
    font-size: 16px;
    line-height: 2.0;
    margin-bottom: 15px; }

.top--news {
  background: url(../images/pages/top-news.jpg) no-repeat center;
  background-size: cover; }
  @media only screen and (max-width: 769px) {
    .top--news {
      background: url(../images/pages/top-news-sp.jpg) no-repeat center; } }

.newsArea__pankuzu {
  width: 930px;
  margin: 0 auto;
  padding-top: 10px;
  margin-bottom: 78px; }
  @media only screen and (max-width: 769px) {
    .newsArea__pankuzu {
      width: auto;
      padding-top: 0;
      margin-bottom: 20px; } }

/*----------------------------------------------------------------------------------
		 								newsArchiveArea
------------------------------------------------------------------------------------*/
#newsArchiveArea .inner {
  width: 904px;
  margin: 0 auto; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #newsArchiveArea .inner {
      width: 95%; } }
  @media only screen and (max-width: 769px) {
    #newsArchiveArea .inner {
      width: 95%; } }
#newsArchiveArea .loop {
  margin-bottom: 144px; }
  #newsArchiveArea .loop a {
    display: block;
    padding: 20px 40px;
    background-color: #F5F5F5;
    border-radius: 8px;
    margin-bottom: 12px; }
    @media only screen and (max-width: 769px) {
      #newsArchiveArea .loop a {
        margin-bottom: 8px;
        padding: 18px 15px; } }
#newsArchiveArea .date {
  font-size: 13px;
  font-weight: 500;
  font-family: "Poppins", sans-serif;
  margin-bottom: 0;
  color: #A1887F;
  letter-spacing: 0.03em; }
  @media only screen and (max-width: 769px) {
    #newsArchiveArea .date {
      font-size: 13px; } }
#newsArchiveArea h3 {
  font-size: 20px;
  font-weight: 500;
  line-height: 2.0; }
  @media only screen and (max-width: 769px) {
    #newsArchiveArea h3 {
      font-size: 16px; } }

/*----------------------------------------------------------------------------------
		 								aboutArea
------------------------------------------------------------------------------------*/
#aboutArea .inner {
  width: 904px;
  margin: 0 auto; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #aboutArea .inner {
      width: 90%; } }
  @media only screen and (max-width: 769px) {
    #aboutArea .inner {
      width: 95%; } }
#aboutArea .about__ttl {
  background-color: #EDCF32;
  border-radius: 50%;
  width: 193px;
  height: 193px;
  position: relative;
  position: absolute;
  top: -96.5px;
  left: 0;
  right: 0;
  margin: auto;
  padding-top: 75px;
  box-sizing: border-box; }
  @media only screen and (max-width: 769px) {
    #aboutArea .about__ttl {
      width: 128px;
      height: 128px;
      padding-top: 50px;
      top: -64px; } }
  #aboutArea .about__ttl h3 {
    font-size: 28px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    text-align: center;
    line-height: 1.5; }
    @media only screen and (max-width: 769px) {
      #aboutArea .about__ttl h3 {
        font-size: 18px; } }
#aboutArea .icon {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto; }
  #aboutArea .icon img {
    width: 100%; }
#aboutArea .icon01 {
  width: 46px;
  top: 35px; }
  @media only screen and (max-width: 769px) {
    #aboutArea .icon01 {
      width: 30px;
      top: 15px; } }
#aboutArea .icon02 {
  width: 47px;
  top: 30px; }
  @media only screen and (max-width: 769px) {
    #aboutArea .icon02 {
      width: 31px;
      top: 12px; } }
#aboutArea .icon03 {
  width: 50px;
  top: 40px; }
  @media only screen and (max-width: 769px) {
    #aboutArea .icon03 {
      width: 32px;
      top: 18px; } }
#aboutArea .board {
  background-color: #F5F5F5;
  border-radius: 8px;
  padding: 125px 50px 50px;
  position: relative;
  display: flex; }
  @media only screen and (max-width: 769px) {
    #aboutArea .board {
      display: block;
      padding: 82px 30px 30px; } }
  @media only screen and (max-width: 339px) {
    #aboutArea .board {
      display: block;
      padding: 82px 5% 30px; } }

.top--about {
  background: url(../images/pages/top-about.jpg) no-repeat center;
  background-size: cover; }
  @media only screen and (max-width: 769px) {
    .top--about {
      background: url(../images/pages/top-about-sp.jpg) no-repeat center;
      background-size: cover; } }

#aboutIntroArea {
  padding: 60px 0; }
  @media only screen and (max-width: 769px) {
    #aboutIntroArea {
      padding: 60px 0 0; } }
  #aboutIntroArea .lead {
    font-size: 36px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    margin-bottom: 40px;
    text-align: center;
    line-height: 1.4; }
    @media only screen and (max-width: 769px) {
      #aboutIntroArea .lead {
        font-size: 28px; } }
  #aboutIntroArea .lead-sub {
    font-size: 20px;
    text-align: center;
    margin-bottom: 60px;
    line-height: 2.0; }
    @media only screen and (max-width: 769px) {
      #aboutIntroArea .lead-sub {
        font-size: 18px; } }
  #aboutIntroArea .movieWraper {
    position: relative;
    width: 100%;
    margin: 0 auto 18px; }
  #aboutIntroArea .iframeWrap {
    height: 0;
    padding-bottom: 56.25%; }
  #aboutIntroArea iframe {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 8px;
    width: 100%; }
    @media only screen and (max-width: 769px) {
      #aboutIntroArea iframe {
        width: 106%;
        margin-left: -2.8%;
        border-radius: 0; } }
  #aboutIntroArea ul {
    display: flex;
    width: 100%; }
    @media only screen and (max-width: 769px) {
      #aboutIntroArea ul {
        display: block; } }
  #aboutIntroArea li {
    width: 289px;
    margin-right: 18.5px;
    box-sizing: border-box;
    padding: 22px 16px;
    background-color: #EFEBD3;
    border-radius: 8px;
    position: relative; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutIntroArea li {
        width: 32%;
        margin-right: 2%;
        padding: 20px 14px; } }
    @media only screen and (max-width: 769px) {
      #aboutIntroArea li {
        width: 100%;
        margin-bottom: 12px;
        padding: 15px; } }
    #aboutIntroArea li:last-child {
      margin-right: 0; }
  @media only screen and (max-width: 769px) {
    #aboutIntroArea .question__sp {
      text-align: center; } }
  #aboutIntroArea .question {
    font-size: 22px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    margin-bottom: 20px;
    padding-left: 55px;
    position: relative;
    line-height: 1.5; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutIntroArea .question {
        font-size: 17px;
        padding-left: 40px; } }
    @media only screen and (max-width: 769px) {
      #aboutIntroArea .question {
        text-align: left;
        display: inline-block;
        margin-bottom: 10px; } }
    #aboutIntroArea .question:before {
      content: url(../images/pages/hatena.svg);
      position: absolute;
      left: -5px;
      top: 0; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #aboutIntroArea .question:before {
          left: -15px;
          top: -7px; } }
  #aboutIntroArea .answer {
    font-size: 15px;
    line-height: 2.0; }

#aboutFlowArea {
  padding-top: 160px; }
  @media only screen and (max-width: 769px) {
    #aboutFlowArea {
      padding-top: 125px; } }
  #aboutFlowArea .bg {
    background-color: #F7F5E9;
    padding: 165px 0 94px;
    position: relative; }
    @media only screen and (max-width: 769px) {
      #aboutFlowArea .bg {
        padding: 100px 0 53px; } }
  @media only screen and (max-width: 769px) {
    #aboutFlowArea ul {
      margin-bottom: 45px; } }
  #aboutFlowArea ul li {
    margin-bottom: 32px; }
    @media only screen and (max-width: 769px) {
      #aboutFlowArea ul li {
        margin-bottom: 15px; } }
    #aboutFlowArea ul li .flow__list {
      display: flex; }
    #aboutFlowArea ul li .left {
      width: 316px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #aboutFlowArea ul li .left {
          width: 35%; } }
      @media only screen and (max-width: 769px) {
        #aboutFlowArea ul li .left {
          width: 35%; } }
      #aboutFlowArea ul li .left img {
        width: 100%; }
        @media only screen and (max-width: 769px) {
          #aboutFlowArea ul li .left img {
            width: 130%;
            margin-left: -15%; } }
    @media only screen and (max-width: 769px) {
      #aboutFlowArea ul li .img {
        width: 100%;
        border-radius: 8px;
        overflow: hidden; } }
    #aboutFlowArea ul li .right {
      width: 588px;
      box-sizing: border-box;
      padding-left: 34px; }
      @media only screen and (min-width: 770px) and (max-width: 1119px) {
        #aboutFlowArea ul li .right {
          width: 65%; } }
      @media only screen and (max-width: 769px) {
        #aboutFlowArea ul li .right {
          width: 65%;
          padding-left: 10px; } }
  #aboutFlowArea h4 {
    background-color: #EDCF32;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
    border-radius: 8px;
    position: relative;
    margin-bottom: 20px; }
    @media only screen and (max-width: 769px) {
      #aboutFlowArea h4 {
        font-size: 15px;
        padding: 9px 0; } }
    #aboutFlowArea h4 span {
      background-color: #fff;
      font-size: 17px;
      font-weight: 500;
      font-family: "Poppins", sans-serif;
      width: 37px;
      height: 37px;
      position: absolute;
      left: 33px;
      top: 11px;
      line-height: 37px;
      border-radius: 50%; }
      @media only screen and (max-width: 769px) {
        #aboutFlowArea h4 span {
          width: 30px;
          height: 30px;
          line-height: 30px;
          font-size: 10px;
          top: 5px;
          left: 10px; } }
  #aboutFlowArea p {
    font-size: 18px;
    line-height: 2.0; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutFlowArea p {
        font-size: 16px; } }
    @media only screen and (max-width: 769px) {
      #aboutFlowArea p {
        font-size: 3.6vw;
        margin-top: -6px; } }

#aboutSessionArea {
  padding-top: 165px; }
  @media only screen and (max-width: 769px) {
    #aboutSessionArea {
      padding-top: 115px; } }
  #aboutSessionArea .left {
    width: 352px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutSessionArea .left {
        width: 40%; } }
    @media only screen and (max-width: 769px) {
      #aboutSessionArea .left {
        width: 100%;
        margin-bottom: 20px; } }
    #aboutSessionArea .left img {
      width: 100%; }
  #aboutSessionArea .right {
    width: 452px;
    box-sizing: border-box;
    padding-left: 35px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutSessionArea .right {
        width: 60%; } }
    @media only screen and (max-width: 769px) {
      #aboutSessionArea .right {
        width: 100%;
        padding-left: 0; } }
  #aboutSessionArea .list {
    font-size: 20px;
    font-weight: 500;
    line-height: 2.0;
    margin-bottom: 17px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutSessionArea .list {
        font-size: 19px; } }
    @media only screen and (max-width: 769px) {
      #aboutSessionArea .list {
        font-size: 18px;
        margin-bottom: 12px; } }
    @media only screen and (max-width: 339px) {
      #aboutSessionArea .list {
        font-size: 16px; } }
  #aboutSessionArea .caution {
    font-size: 14px; }
    @media only screen and (max-width: 339px) {
      #aboutSessionArea .caution {
        font-size: 12px; } }

#aboutLearningArea {
  padding: 155px 0 40px; }
  @media only screen and (max-width: 769px) {
    #aboutLearningArea {
      padding: 96px 0 20px; } }
  #aboutLearningArea .learning {
    margin-top: 10px; }
  #aboutLearningArea .learning__board {
    margin-bottom: 50px; }
  #aboutLearningArea ul {
    display: flex; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutLearningArea ul {
        width: 100%;
        box-sizing: border-box; } }
    @media only screen and (max-width: 769px) {
      #aboutLearningArea ul {
        display: block; } }
  #aboutLearningArea li {
    width: 386px;
    margin-right: 32px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutLearningArea li {
        width: 48%;
        margin-right: 4%; } }
    @media only screen and (max-width: 769px) {
      #aboutLearningArea li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 23px; }
        #aboutLearningArea li:last-child {
          margin-bottom: 0; } }
    #aboutLearningArea li:last-child {
      margin-right: 0; }
    #aboutLearningArea li img {
      width: 100%;
      margin-bottom: 20px; }
  #aboutLearningArea .name {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 5px;
    margin-left: -13px; }
  #aboutLearningArea .info {
    font-size: 15px;
    line-height: 2.0;
    margin-bottom: 10px; }
  #aboutLearningArea .map {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4BA743;
    border-bottom: solid 1px #4BA743;
    font-size: 14px;
    padding-bottom: 3px;
    width: 144px;
    display: block;
    position: relative; }
    @media only screen and (max-width: 769px) {
      #aboutLearningArea .map {
        border: none; } }
    #aboutLearningArea .map:after {
      content: url(../images/pages/arrow-map.svg);
      position: absolute;
      right: 0;
      top: -1px; }

#aboutTrainerArea {
  padding: 100px 0 160px; }
  @media only screen and (max-width: 769px) {
    #aboutTrainerArea {
      padding: 70px 0 122px; } }
  #aboutTrainerArea h5 {
    text-align: center;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    margin-bottom: 5px;
    font-size: 30px; }
    @media only screen and (max-width: 769px) {
      #aboutTrainerArea h5 {
        font-size: 5.9vw; } }
  #aboutTrainerArea .lead {
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    line-height: 2.0;
    margin-bottom: 40px; }
    @media only screen and (max-width: 769px) {
      #aboutTrainerArea .lead {
        font-size: 18px;
        text-align: left; }
        #aboutTrainerArea .lead br {
          display: none; } }
  #aboutTrainerArea ul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 95px; }
    @media only screen and (max-width: 769px) {
      #aboutTrainerArea ul {
        margin-bottom: 53px; } }
  #aboutTrainerArea li {
    width: 208px;
    margin-bottom: 24px;
    background-color: #F7F5E9;
    border-radius: 8px;
    margin-right: 24px;
    text-align: center;
    padding: 25px 0 20px; }
    @media only screen and (min-width: 770px) and (max-width: 1119px) {
      #aboutTrainerArea li {
        width: 23%;
        margin-right: 2.66%; } }
    @media only screen and (max-width: 769px) {
      #aboutTrainerArea li {
        margin-bottom: 15px;
        width: 48%;
        margin-right: 4%; }
        #aboutTrainerArea li:nth-child(2n) {
          margin-right: 0; } }
    #aboutTrainerArea li:nth-child(4n) {
      margin-right: 0; }
    #aboutTrainerArea li .img {
      width: 148px;
      height: 148px;
      border-radius: 50%;
      margin: 0 auto 20px;
      overflow: hidden; }
      #aboutTrainerArea li .img img {
        width: 100%; }
    #aboutTrainerArea li .name {
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: bold;
      color: #8D6E63;
      font-size: 18px; }
    #aboutTrainerArea li .area {
      font-family: fot-tsukuardgothic-std, sans-serif;
      font-weight: bold;
      color: #8D6E63;
      font-size: 14px;
      display: inline-block;
      position: relative; }
      #aboutTrainerArea li .area:before {
        content: url(../images/pages/bar.svg);
        position: absolute;
        left: -30px;
        top: -5px; }
      #aboutTrainerArea li .area:after {
        content: url(../images/pages/bar.svg);
        position: absolute;
        right: -30px;
        top: -5px; }
  #aboutTrainerArea .faq-link {
    display: block;
    border: solid 1px #9E9E9E;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    font-size: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 114px;
    border-radius: 8px;
    position: relative; }
    @media only screen and (max-width: 769px) {
      #aboutTrainerArea .faq-link {
        font-size: 26px;
        height: 88px; } }
    #aboutTrainerArea .faq-link:after {
      content: url(../images/pages/arrow-faq.svg);
      position: absolute;
      right: 47px;
      top: 25px; }
      @media only screen and (max-width: 769px) {
        #aboutTrainerArea .faq-link:after {
          top: 18px; } }

/*----------------------------------------------------------------------------------
		 								companyArea
------------------------------------------------------------------------------------*/
#companyArea .inner {
  width: 900px;
  margin: 0 auto; }
  @media only screen and (max-width: 769px) {
    #companyArea .inner {
      width: 95%; } }
#companyArea .logo {
  width: 187px;
  margin: 0 auto; }
  @media only screen and (max-width: 769px) {
    #companyArea .logo {
      width: 127px; } }
  #companyArea .logo img {
    width: 100%; }
#companyArea h3 {
  font-size: 40px;
  text-align: center;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  color: #4E342E;
  margin-bottom: 60px; }
  @media only screen and (max-width: 769px) {
    #companyArea h3 {
      font-size: 28px; } }
#companyArea h4 {
  font-size: 30px;
  text-align: center;
  font-family: fot-tsukuardgothic-std, sans-serif;
  font-weight: bold;
  color: #4E342E;
  margin-bottom: 65px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  height: 30px;
  display: inline-block;
  line-height: 1.0; }
  @media only screen and (max-width: 769px) {
    #companyArea h4 {
      font-size: 22px;
      height: 22px; } }

.top--company {
  background: url(../images/pages/top-company.jpg) no-repeat center;
  background-size: cover; }
  @media only screen and (max-width: 769px) {
    .top--company {
      background: url(../images/pages/top-company-sp.jpg) no-repeat center;
      background-size: cover; } }

#companyShopArea {
  padding-bottom: 100px; }
  @media only screen and (max-width: 769px) {
    #companyShopArea {
      padding-bottom: 15px; } }
  #companyShopArea .dotted {
    margin-bottom: 79px;
    width: 578px; }
    @media only screen and (max-width: 769px) {
      #companyShopArea .dotted {
        margin-bottom: 55px;
        width: 258px; } }

.shop-project__list {
  display: flex;
  margin-bottom: 70px;
  width: 100%; }
  @media only screen and (max-width: 769px) {
    .shop-project__list {
      display: block;
      margin-bottom: 55px; } }
  .shop-project__list .shop__img {
    width: 536px; }
    @media only screen and (max-width: 769px) {
      .shop-project__list .shop__img {
        width: 100%;
        margin-bottom: 22px; } }
    .shop-project__list .shop__img img {
      width: 100%; }
  .shop-project__list .shop__info {
    width: 364px;
    box-sizing: border-box;
    padding-left: 33px; }
    @media only screen and (max-width: 769px) {
      .shop-project__list .shop__info {
        width: 100%;
        padding-left: 0; } }
  .shop-project__list .shop__name {
    font-size: 26px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    border-bottom: solid 1px #4E342E;
    margin-bottom: 8px;
    padding-bottom: 7px;
    margin-top: -7px;
    line-height: 1.5; }
    @media only screen and (max-width: 769px) {
      .shop-project__list .shop__name {
        font-size: 20px;
        text-align: center;
        padding-bottom: 15px; } }
  .shop-project__list .shop__txt {
    font-size: 15px;
    line-height: 1.9;
    color: #4E342E; }
  .shop-project__list .shop__detail {
    color: #757575;
    font-size: 13px;
    font-weight: 500;
    line-height: 2.0;
    margin-top: 35px; }
    @media only screen and (max-width: 769px) {
      .shop-project__list .shop__detail {
        margin-top: 20px; } }

#companyProjectArea {
  padding-bottom: 40px; }
  @media only screen and (max-width: 769px) {
    #companyProjectArea {
      padding-bottom: 5px; } }
  #companyProjectArea .dotted {
    margin-bottom: 79px;
    width: 678px; }
    @media only screen and (max-width: 769px) {
      #companyProjectArea .dotted {
        width: 95%;
        margin-bottom: 40px; } }

.link-button--s a {
  height: 50px;
  width: 183px;
  font-size: 18px; }
  .link-button--s.hp a {
    height: 50px;
    width: 250px;
    font-size: 18px; }
  .link-button--s a:after {
    content: url(../images/pages/link.svg);
    position: absolute;
    right: 20px;
    top: 7px; }

#companyActivityArea {
  padding: 80px 0 14px;
  background-color: #F7F5E9; }
  @media only screen and (max-width: 769px) {
    #companyActivityArea {
      padding: 50px 0 14px; } }
  #companyActivityArea .dotted {
    margin-bottom: 95px;
    width: 580px; }
    @media only screen and (max-width: 769px) {
      #companyActivityArea .dotted {
        width: 95%;
        margin-bottom: 63px; } }

.activity__list {
  margin-bottom: 113px;
  width: 100%; }
  @media only screen and (max-width: 769px) {
    .activity__list {
      display: block;
      margin-bottom: 55px; } }
  .activity__list .activity__list__sp {
    display: flex; }
    @media only screen and (max-width: 769px) {
      .activity__list .activity__list__sp {
        align-items: center;
        margin-bottom: 10px; } }
  .activity__list .activity__list__sp__ttl {
    width: 45%; }
  .activity__list .activity__img {
    width: 368px; }
    @media only screen and (max-width: 769px) {
      .activity__list .activity__img {
        width: 55%;
        height: 117px;
        overflow: hidden;
        border-radius: 8px; } }
    .activity__list .activity__img img {
      width: 100%; }
      @media only screen and (max-width: 769px) {
        .activity__list .activity__img img {
          margin-top: -3vw; } }
  .activity__list .activity__info {
    width: 532px;
    box-sizing: border-box;
    padding-left: 20px;
    position: relative; }
  .activity__list .activity__ttl {
    font-size: 30px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    color: #4E342E;
    margin-bottom: 25px;
    line-height: 1.0; }
    @media only screen and (max-width: 769px) {
      .activity__list .activity__ttl {
        font-size: 20px;
        line-height: 1.6;
        margin-bottom: 0; } }
  .activity__list .activity__txt {
    font-size: 15px;
    line-height: 1.9; }
  .activity__list .link-button__movie {
    position: absolute;
    left: 20px;
    bottom: -30px; }
    @media only screen and (max-width: 769px) {
      .activity__list .link-button__movie {
        position: static;
        margin: 0 auto; } }

#companyMediaArea {
  padding-top: 100px; }
  @media only screen and (max-width: 769px) {
    #companyMediaArea {
      padding-top: 60px; } }
  #companyMediaArea .dotted {
    margin-bottom: 70px;
    width: 633px; }
    @media only screen and (max-width: 769px) {
      #companyMediaArea .dotted {
        width: 95%;
        margin-bottom: 60px; } }

.media__board {
  width: 904px;
  margin: 0 auto;
  box-sizing: border-box;
  border: solid 1px #BDBDBD;
  border-radius: 12px;
  padding: 77px 47px 60px; }
  @media only screen and (max-width: 769px) {
    .media__board {
      width: 95%;
      border: none;
      padding: 0; } }
  .media__board h5 {
    background-color: #F5F5F5;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 25px;
    padding: 8px 0;
    text-align: center; }
    @media only screen and (max-width: 769px) {
      .media__board h5 {
        font-size: 15px;
        padding: 10px 0;
        margin-bottom: 10px; } }

.media__list {
  margin-bottom: 30px; }
  .media__list li {
    display: flex;
    font-size: 16px;
    line-height: 2.3; }
    @media only screen and (max-width: 769px) {
      .media__list li {
        font-size: 3.5vw;
        line-height: 2.0; } }
  .media__list .year {
    width: 7.5%;
    color: #8D6E63; }
    @media only screen and (max-width: 769px) {
      .media__list .year {
        width: 12%; } }
  .media__list .date {
    width: 10%;
    color: #8D6E63;
    text-align: right; }
    @media only screen and (max-width: 769px) {
      .media__list .date {
        width: 16%; } }
  .media__list .txt {
    width: 82.5%;
    box-sizing: border-box;
    padding-left: 35px; }
    @media only screen and (max-width: 769px) {
      .media__list .txt {
        width: 72%;
        padding-left: 2.5%; } }

.media__img {
  display: flex;
  margin-bottom: 55px; }
  @media only screen and (max-width: 769px) {
    .media__img {
      margin-bottom: 35px; } }
  .media__img li:first-child {
    width: 301px;
    margin-right: 65px; }
    @media only screen and (max-width: 769px) {
      .media__img li:first-child {
        width: 42.5%;
        margin-right: 9%; } }
  .media__img li:last-child {
    width: 346px; }
    @media only screen and (max-width: 769px) {
      .media__img li:last-child {
        width: 48.5%; } }
  .media__img img {
    width: 100%;
    margin-bottom: 10px; }
  .media__img p {
    font-size: 15px;
    font-weight: 500;
    text-align: center; }
    @media only screen and (max-width: 769px) {
      .media__img p {
        font-size: 13px; } }

.media__img .link-blank {
    display: block;
    margin: 0 auto;
    text-align: center;
}
.media__img .link-blank a {
    font-size: 11px;
    color: #4d4d4d;
    padding: 0 3px 1px;
    line-height: 1;
    border-bottom: 1px solid #808080;
}
.media__img .link-blank a:hover {
    border-color: #ffffff;
}
.media__img .link-blank img {
    display: inline-block;
    margin: 0 auto 1px;
    width: auto;
}


.media__book {
  width: 580px;
  margin: 0 auto;
  display: flex; }
  @media only screen and (max-width: 769px) {
    .media__book {
      width: 100%;
      margin: 25px auto 0; } }
  .media__book li {
    width: 214px; }
    @media only screen and (max-width: 769px) {
      .media__book li {
        width: 48.5%;
        text-align: center; } }
    .media__book li:first-child {
      margin-right: 26%; }
      @media only screen and (max-width: 769px) {
        .media__book li:first-child {
          margin-right: 3%; } }
    .media__book li img {
      width: 100%;
      margin-bottom: 10px; }
      @media only screen and (max-width: 769px) {
        .media__book li img {
          width: 60%; } }
    .media__book li p {
      font-size: 15px;
      font-weight: 500;
      text-align: center;
      line-height: 2.0; }
      @media only screen and (max-width: 769px) {
        .media__book li p {
          font-size: 13px; } }

#companyHistoryArea {
  padding-top: 146px; }
  @media only screen and (max-width: 769px) {
    #companyHistoryArea {
      padding-top: 70px; } }
  #companyHistoryArea .dotted {
    margin-bottom: 50px;
    width: 451px; }
    @media only screen and (max-width: 769px) {
      #companyHistoryArea .dotted {
        width: 207px; } }

.history__list {
  width: 711px;
  margin: 0 auto; }
  @media only screen and (max-width: 769px) {
    .history__list {
      width: 95%; } }
  .history__list li {
    display: flex;
    font-size: 16px;
    line-height: 2.4;
    padding: 1px 0; }
    @media only screen and (max-width: 769px) {
      .history__list li {
        font-size: 3.5vw;
        line-height: 2.0; } }
    .history__list li:nth-child(2n) {
      background-color: #F5F5F5; }
  .history__list .year {
    width: 8.5%;
    color: #8D6E63; }
    @media only screen and (max-width: 769px) {
      .history__list .year {
        width: 13%; } }
  .history__list .month {
    width: 5%;
    color: #8D6E63;
    text-align: right; }
    @media only screen and (max-width: 769px) {
      .history__list .month {
        width: 8%; } }
  .history__list .txt {
    width: 85.5%;
    box-sizing: border-box;
    padding-left: 22px; }
    @media only screen and (max-width: 769px) {
      .history__list .txt {
        width: 79%;
        padding-left: 2.5%; } }

#companyDetailArea {
  padding: 145px 0 160px; }
  @media only screen and (max-width: 769px) {
    #companyDetailArea {
      padding: 130px 0 47px; } }
  #companyDetailArea .dotted {
    margin-bottom: 50px;
    width: 506px; }
    @media only screen and (max-width: 769px) {
      #companyDetailArea .dotted {
        width: 253px;
        margin-bottom: 45px; } }
  #companyDetailArea dl {
    display: flex;
    flex-wrap: wrap;
    width: 711px;
    margin: 0 auto 110px;
    font-size: 18px; }
    @media only screen and (max-width: 769px) {
      #companyDetailArea dl {
        width: 95%;
        font-size: 4vw;
        margin: 0 auto 40px; } }
  #companyDetailArea dt {
    width: 144px;
    color: #8D6E63;
    padding: 5px 0; }
    @media only screen and (max-width: 769px) {
      #companyDetailArea dt {
        width: 30%; } }
  #companyDetailArea dd {
    width: 567px;
    padding: 10px 0; }
    @media only screen and (max-width: 769px) {
      #companyDetailArea dd {
        width: 70%; } }

.link-button--m {
  height: 62px;
  width: 420px;
  font-size: 24px;
  margin: 0 auto; }
  @media only screen and (max-width: 769px) {
    .link-button--m {
      width: 90%;
      font-size: 18px;
      height: 48px; } }
  .link-button--m:after {
    content: url(../images/pages/more-arrow.svg);
    position: absolute;
    right: 25px;
    top: 7px; }

/*----------------------------------------------------------------------------------
		 								faqArea
------------------------------------------------------------------------------------*/
#faqArea .inner {
  width: 904px;
  margin: 0 auto;
  padding: 50px 0 140px; }
  @media only screen and (min-width: 770px) and (max-width: 1119px) {
    #faqArea .inner {
      width: 90%; } }
  @media only screen and (max-width: 769px) {
    #faqArea .inner {
      width: 95%;
      padding: 25px 0 110px; } }

.top--faq {
  background: url(../images/pages/top-faq.jpg) no-repeat center;
  background-size: cover; }
  @media only screen and (max-width: 769px) {
    .top--faq {
      background: url(../images/pages/top-faq-sp.jpg) no-repeat center;
      background-size: cover; } }

/*accordion*/
dl.accordion__faq {
  margin-bottom: 12px;
  position: relative;
  border-radius: 8px;
  background-color: #F7F5E9;
  color: #4E342E; }
  @media only screen and (max-width: 769px) {
    dl.accordion__faq {
      margin-bottom: 8px; } }

dl.accordion__faq dt {
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 36px 115px 36px 65px;
  font-size: 16px;
  font-weight: 500 !important;
  box-sizing: border-box;
  border-radius: 8px;
  position: relative;
  line-height: 1.8; }
  @media only screen and (max-width: 769px) {
    dl.accordion__faq dt {
      font-size: 15px;
      padding: 15px 70px 15px 45px; } }
  dl.accordion__faq dt:before {
    content: url(../images/pages/q.svg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 20px;
    height: 36px;
    left: 20px; }
    @media only screen and (max-width: 769px) {
      dl.accordion__faq dt:before {
        left: 12px; } }

dl.accordion__faq dt.open {
  border-radius: 12px 12px 0 0; }
  dl.accordion__faq dt.open::after {
    content: none; }

dl.accordion__faq dt::after {
  content: url(../images/pages/open.svg);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 17px;
  height: 10px;
  right: 30px;
  padding-bottom: 10px; }
  @media only screen and (max-width: 769px) {
    dl.accordion__faq dt::after {
      width: 10px;
      height: 6px;
      right: 18px;
      content: url(../images/pages/open-sp.svg);
      padding-bottom: 25px; } }

dl.accordion__faq dd {
  word-wrap: break-word;
  box-sizing: border-box;
  padding: 18px 25px 36px;
  border-radius: 0 0 12px 12px; }
  @media only screen and (max-width: 769px) {
    dl.accordion__faq dd {
      padding: 0 35px 30px 45px; } }
  dl.accordion__faq dd p {
    width: 768px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 2.0; }
    @media only screen and (max-width: 769px) {
      dl.accordion__faq dd p {
        font-size: 15px;
        width: 100%; } }

.close-button {
  cursor: pointer;
  position: relative;
  padding-bottom: 5px; }
  .close-button span {
    position: absolute;
    right: -43px;
    bottom: -20px;
    padding: 5px 5px 5px 20px;
    display: inline-block; }
    @media only screen and (max-width: 769px) {
      .close-button span {
        right: -18px;
        bottom: -25px; } }

/*----------------------------------------------------------------------------------
		 								contactArea
------------------------------------------------------------------------------------*/
#contactArea {
  width: 100%;
  margin: 0 auto;
  padding: 184px 0 196px; }
  @media only screen and (max-width: 769px) {
    #contactArea {
      padding: 79px 0 96px; } }
  #contactArea h2 {
    text-align: cener;
    font-size: 34px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: bold;
    line-height: 1.4;
    color: #4E342E;
    text-align: center; }
    @media only screen and (max-width: 769px) {
      #contactArea h2 {
        font-size: 24px; } }
  #contactArea .inner {
    width: 780px;
    margin: 0 auto; }
    @media only screen and (max-width: 769px) {
      #contactArea .inner {
        width: 90%; } }
    #contactArea .inner .contactTxt {
      font-size: 16px;
      text-align: center;
      line-height: 1.8;
      margin: 60px 0; }
      @media only screen and (max-width: 769px) {
        #contactArea .inner .contactTxt {
          text-align: left;
          margin: 30px 0; } }
    #contactArea .inner .contact-wrapper {
      padding-top: 30px; }
    #contactArea .inner .contactList {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 7px; }
      @media only screen and (max-width: 769px) {
        #contactArea .inner .contactList {
          font-size: 14px; } }
    #contactArea .inner .contactForm {
      margin-bottom: 50px; }
      #contactArea .inner .contactForm input {
        font-size: 20px;
        padding: 10px;
        box-sizing: border-box;
        border-radius: 8px; }
    #contactArea .inner .contactMust {
      color: #fff;
      background: #4BA743;
      font-size: 10px;
      padding: 3px 5px;
      margin-left: 10px;
      position: relative;
      top: -2px; }
    #contactArea .inner .contactTxtArea {
      width: 100%;
      padding: 10px;
      box-sizing: border-box;
      border: solid 1px #d6d6d6; }
    #contactArea .inner .btn-wrapper {
      text-align: center;
      position: relative; }
      #contactArea .inner .btn-wrapper:after {
        content: url(../images/pages/more-arrow.svg);
        position: absolute;
        right: 25px;
        top: 28px; }
      #contactArea .inner .btn-wrapper input {
        width: 100%;
        height: 80px;
        border: solid 2px #4BA743;
        background-color: #4BA743;
        box-sizing: border-box;
        color: #fff;
        -webkit-transition: all ease 0.3s;
        transition: all ease 0.3s;
        margin: 0 auto;
        font-size: 20px;
        font-family: fot-tsukuardgothic-std, sans-serif;
        font-weight: bold;
        border-radius: 8px; }
        #contactArea .inner .btn-wrapper input:hover {
          opacity: 0.65;
          transition: all 0.5s ease;
          cursor: pointer; }
        #contactArea .inner .btn-wrapper input.go-back {
          height: 60px;
          color: #4BA743;
          background: none;
          border: 0;
          margin-top: 25px; }
          #contactArea .inner .btn-wrapper input.go-back:hover {
            opacity: 0.65;
            transition: all 0.5s ease; }

input, textarea {
  -webkit-appearance: none;
  resize: none;
  border-radius: 8px; }










/* お問い合わせ */
.sec-contact.sec-mv {
    height: 262px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec-contact.sec-mv .ttl-mv {
    color: #ffffff;
    font-size: 32px;
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    letter-spacing: .04em;
    line-height: 1;
    font-weight: 500;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .8));
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .8));
    margin: 117px 0 0;
}

.sec-contact.sec-form {
    background: transparent url(/assets/images/contact/bg_form.png) center top / cover no-repeat;
    padding: 40px 20px 190px;
}

.sec-contact.sec-form .box-lead {
    text-align: center;
    margin-bottom: 60px;
}
.sec-contact.sec-form .box-lead p {
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: 500;
}
.sec-contact.sec-form .box-lead .txt-lead {
    color: #42210b;
    font-size: 15px;
    letter-spacing: .02em;
    line-height: 2.06;
    margin-bottom: 20px;
}
.sec-contact.sec-form .box-lead .txt-lead .txt-green {
    color: #37751f;
    font-size: 16px;
}
.sec-contact.sec-form .box-lead .txt-tel {
    color: #37751f;
    font-size: 18px;
    letter-spacing: .2em;
    line-height: 1;
    margin-bottom: 12px;
}

.sec-contact.sec-form .list-join {
    display: flex;
    justify-content: center;
    margin-bottom: 80px;
}
.sec-contact.sec-form .list-join li {
}
.sec-contact.sec-form .list-join li:first-child {
    margin-right: 50px;
}
.sec-contact.sec-form .list-join a {
    display: block;
    background-color: #e5c851;
    padding: 15px 25px;
    border: 1px dashed #28469a;
    border-radius: 30px;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    transition: all .3s ease-in-out;
}
.sec-contact.sec-form .list-join a .txt {
    display: block;
    text-align: center;
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 18px;
    letter-spacing: .1em;
    line-height: 1.33;
    color: #22439b;
    font-weight: 500;
    margin-bottom: 6px;
}
.sec-contact.sec-form .list-join a img {
    display: block;
    margin: 0 auto;
}
.sec-contact.sec-form .list-join a:hover {
    opacity: .6;
}


.sec-contact.sec-form .inner {
    background-color: #ffffff;
    max-width: 936px;
    margin: 0 auto;
    -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, .6));
    filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, .6));
    padding: 90px 0 92px;
    border-radius: 10px;
}
.sec-contact.sec-form .inner .ttl-form {
    font-size: 22px;
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: 500;
    padding-bottom: 22px;
    text-align: center;
    position: relative;
    line-height: 1;
    color: #42210b;
    margin-bottom: 25px;
}
.sec-contact.sec-form .inner .ttl-form:after {
    content: "";
    width: 52px;
    height: 2px;
    background-color: #28469a;
    position: absolute;
    left: 50%;
    margin-left: -26px;
    bottom: 0;
}
.sec-contact.sec-form .inner .txt-form {
    font-family: 'Kiwi Maru', serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: 500;
    color: #42210b;
    font-size: 14px;
    letter-spacing: .02em;
    line-height: 1.92;
    margin-bottom: 50px;
    text-align: center;
}
/* お問い合わせフォーム */
.sec-contact.sec-form .inner form {
    max-width: 700px;
    margin: 0 auto;
}
.sec-contact.sec-form .inner form > p {
    margin: 0;
    padding: 0;
    line-height: 1;
    text-align: center;
    display: block;
}
.sec-contact.sec-form .inner form > p .ajax-loader {
    margin-top: 10px;
}
.sec-contact.sec-form .inner form dl dt,
.sec-contact.sec-form .inner form dl dd {
    font-family: 'Noto Sans JP', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-align: left;
    color: #333333;
}
.sec-contact.sec-form .inner form dl dt {
    letter-spacing: .06em;
}
.sec-contact.sec-form .inner form dl dd {
    letter-spacing: .08em;
}
.sec-contact.sec-form .inner form dl dt .req,
.sec-contact.sec-form .inner form dl dt .any {
    color: #ffffff;
    font-size: 9px;
    letter-spacing: .18em;
    background-color: #e4bc00;
    line-height: 1;
    padding: 3px 6px;
    border-radius: 3px;
    margin-left: 10px;
}
.sec-contact.sec-form .inner form dl dt .any {
    background-color: #999999;
}
.sec-contact.sec-form .inner form .dl-form-m {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 10px;
}
.sec-contact.sec-form .inner form .dl-form-m > dt {
    font-size: 13px;
    width: 142px;
    position: relative;
    margin-right: 30px;
}
.sec-contact.sec-form .inner form .dl-form-m > dt:after {
    content: "";
    width: 1px;
    height: 25px;
    background-color: #cacaca;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
}
.sec-contact.sec-form .inner form .dl-form-m > dd {
    width: 495px;
}

.sec-contact.sec-form .inner form .dl-form-prof {
    margin-bottom: 35px;
}
.sec-contact.sec-form .inner form .dl-form-prof dt {
    width: 100%;
    margin-bottom: 10px;
    font-size: 12px;
}
.sec-contact.sec-form .inner form .dl-form-prof dd {
    width: 100%;
}
.sec-contact.sec-form .inner form input[type="text"],
.sec-contact.sec-form .inner form input[type="password"],
.sec-contact.sec-form .inner form input[type="search"],
.sec-contact.sec-form .inner form input[type="url"],
.sec-contact.sec-form .inner form input[type="tel"],
.sec-contact.sec-form .inner form input[type="email"],
.sec-contact.sec-form .inner form input[type="date"],
.sec-contact.sec-form .inner form input[type="submit"],
.sec-contact.sec-form .inner form input[type="checkbox"],
.sec-contact.sec-form .inner form input[type="button"],
.sec-contact.sec-form .inner form textarea,
.sec-contact.sec-form .inner form select,
.sec-contact.sec-form .inner form .field-select {
    font-family: 'Noto Sans JP', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: 400;
    appearance:none;
    background-color: #f0f0f0;
    padding: 10px;
    font-size: 12px;
    text-align: left;
    border: none;
    line-height: 1;
    box-shadow: none;
    cursor: pointer;
    width: 100%;
    letter-spacing: .12em;
    border-radius: 5px;
    height: auto;
}
.sec-contact.sec-form .inner form input::placeholder,
.sec-contact.sec-form .inner form textarea::placeholder {
    font-family: 'Noto Sans JP', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-weight: 400;
    font-size: 12px;
    text-transform: lowercase;
}
.sec-contact.sec-form .inner form .box-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 55px auto 0;
}
.sec-contact.sec-form .inner form .box-btn  input[type="submit"] {
    margin: 0 15px;
}
.sec-contact.sec-form .inner form input[type="button"] {
    appearance:none;
    background: #666666 url(/assets/images/contact/icon_arrow-l.svg) center left 11px / 7px 14px no-repeat;
    color: #ffffff;
    font-size: 14px;
    letter-spacing: .22em;
    line-height: 1;
    padding: 10px 0;
    text-align: center;
    width: 188px;
    display: block;
    /* margin: 55px auto 0; */
    margin: 0 15px;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    font-weight: 600;
}
.sec-contact.sec-form .inner form input[type="submit"] {
    background: #054e99 url(/assets/images/products/icon_arrow-r.svg) center right 11px / 7px 14px no-repeat;
    color: #ffffff;
    font-size: 14px;
    letter-spacing: .22em;
    line-height: 1;
    padding: 10px 0;
    text-align: center;
    width: 188px;
    display: block;
    margin: 55px auto 0;
    -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
    font-weight: 600;
}


@media (max-width: 991px) {
    /* お問い合わせ */
    .sec-contact.sec-mv {
        height: 239px;
    }
    .sec-contact.sec-mv .ttl-mv {
        font-size: 25px;
        letter-spacing: .02em;
        margin: 20px 0 0;
    }

    .sec-contact.sec-form {
        background: transparent url(/assets/images/contact/bg_form.png) center top / cover no-repeat;
        padding: 30px 20px;
    }

    .sec-contact.sec-form .box-lead {
        margin-bottom: 30px;
    }
    .sec-contact.sec-form .box-lead .txt-lead {
        font-size: 13px;
        letter-spacing: 0;
        line-height: 1.45;
        margin-bottom: 20px;
        text-align: left;
    }
    .sec-contact.sec-form .box-lead .txt-lead .txt-green {
        font-size: 15px;
    }
    .sec-contact.sec-form .box-lead .txt-tel {
        font-size: 16px;
        letter-spacing: .01em;
        margin-bottom: 10px;
    }

    .sec-contact.sec-form .list-join {
        margin-bottom: 30px;
    }
    .sec-contact.sec-form .list-join li {
    }
    .sec-contact.sec-form .list-join li:first-child {
        margin-right: 20px;
    }
    .sec-contact.sec-form .list-join a {
        padding: 10px;
        border-radius: 20px;
        -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
        filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .4));
        transition: none;
    }
    .sec-contact.sec-form .list-join a .txt {
        font-size: 14px;
        margin-bottom: 6px;
        letter-spacing: 0;
    }
    .sec-contact.sec-form .list-join a:hover {
        opacity: 1;
    }

    .sec-contact.sec-form .inner {
        -webkit-filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .6));
        filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, .6));
        padding: 30px 10px;
        border-radius: 5px;
    }
    .sec-contact.sec-form .inner .ttl-form {
        font-size: 18px;
        padding-bottom: 20px;
        margin-bottom: 20px;
    }
    .sec-contact.sec-form .inner .txt-form {
        font-size: 13px;
        letter-spacing: .01em;
        line-height: 1.45;
        margin-bottom: 30px;
        text-align: left;
    }
    .sec-contact.sec-form .inner .txt-form br {
        display: none;
    }
    /* お問い合わせフォーム */
    .sec-contact.sec-form .inner form {
        max-width: 700px;
        margin: 0 auto;
    }
    .sec-contact.sec-form .inner form > p .ajax-loader {
        margin-top: 10px;
    }
    .sec-contact.sec-form .inner form dl dt {
        letter-spacing: .03em;
    }
    .sec-contact.sec-form .inner form dl dd {
        letter-spacing: .04em;
    }
    .sec-contact.sec-form .inner form dl dt .req {
        font-size: 11px;
        letter-spacing: .09em;
    }
    .sec-contact.sec-form .inner form .dl-form-m {
        flex-direction: column;
        margin-bottom: 10px;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dt {
        font-size: 13px;
        width: 100%;
        margin-bottom: 10px;
        margin-right: 0;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dt:after {
        display: none;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dd {
        width: 100%;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dd.form-check label {
        cursor: pointer;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dd.form-check label input[type="checkbox"] {
        display: none;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dd.form-check label span {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        cursor: pointer;
        font-size: 13px;
        font-weight: 500;
        margin: 0;
        letter-spacing: .08em;
        padding: 5px 0 5px 24px;
        position: relative;
        width: auto;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dd.form-check span.wpcf7-list-item.first {
        margin-right: 10px;
    }
    .sec-contact.sec-form .inner form .dl-form-m > dd.form-check.check-rec span.wpcf7-list-item.last {
        margin-top: 0;
    }

    .sec-contact.sec-form .inner form .dl-form-prof {
        margin-bottom: 35px;
    }
    .sec-contact.sec-form .inner form .dl-form-prof dt {
        width: 100%;
        margin-bottom: 10px;
    }
    .sec-contact.sec-form .inner form .dl-form-prof dt .req {
        margin-left: 20px;
    }
    .sec-contact.sec-form .inner form .dl-form-prof dd {
        width: 100%;
    }
    .sec-contact.sec-form .inner form input::placeholder {
        font-family: 'Noto Sans JP', sans-serif;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-weight: 400;
        font-size: 12px;
        text-transform: lowercase;
    }
    .sec-contact.sec-form .inner form input[type="text"],
    .sec-contact.sec-form .inner form input[type="email"],
    .sec-contact.sec-form .inner form textarea {
        width: calc(100% - 20px);
    }
    .sec-contact.sec-form .inner form input[type="submit"] {
        letter-spacing: .11em;
        width: 160px;
        margin: 30px auto 0;
    }
}



/* プライバシーポリシー */
.page-id-301 main {
    padding-top: 158px;
}

@media (max-width: 991px) {
    .page-id-301 main {
        padding-top: 50px;
    }
}



/* 20230307 翻訳対応 */
.country-selector {
    top: 145px !important;
    bottom: auto !important;
    right: 0 !important;
    margin-top: 55px;
    z-index: 1;
}
html[lang="en"] .country-selector {
    top: 134px !important;
}
.country-selector.weglot-dropdown.weglot-invert ul {
    top: 38px;
}
.country-selector.weglot-dropdown li {
    background: #ffffff;
}
.country-selector.weglot-dropdown.weglot-invert input:checked~.wgcurrent:after {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
}
@media (max-width: 769px) {
    .country-selector {
        top: 50px !important;
    }
    html[lang="en"] .country-selector {
        top: 50px !important;
    }
}
body.archive .country-selector,
body.single-cases .country-selector,
body.page-id-109 .country-selector,
body.page-id-102 .country-selector,
body.page-id-1228 .country-selector,
body.page-id-1712 .country-selector,
body.single-column .country-selector {
    display: none;
}
html:lang(en) .page-id-79 #aboutArea .about__ttl h3 {
    font-size: 22px;
}
html:lang(en) #indexSessionArea .lead {
    font-size: 28px;
}
html:lang(en) .index__loop__ttl h3 {
    font-size: 16px;
}
html:lang(en) #aboutLearningArea .link-button--m {
    font-size: 20px;
}
html:lang(en) #aboutLearningArea .link-button--m:after {
    top: 13px;
}
html:lang(en) .sec-contact.sec-form .inner form input[type="submit"] {
    width: 255px;
}
.media__list .txt-date span,
.history__list .txt-date span {
    display: inline-block;
    width: auto;
}
.media__list .txt-date span.date {
    width: 4.5em;
}
.history__list .txt-date span.month {
    width: 2.5em;
}
@media (max-width: 769px) {
    html:lang(en) .page-id-79 #aboutArea .about__ttl h3 {
        font-size: 15px;
    }
    html:lang(en) #indexSessionArea .lead {
        font-size: 16px;
    }
}
