@charset "UTF-8";
/* Scss Document */
@import url("https://fonts.googleapis.com/css2?family=Great+Vibes&family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800&family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&family=Noto+Serif:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:wght@300;400&display=swap");
body {
  font-family: "M PLUS Rounded 1c", sans-serif;
  background: #FFF;
  font-size: clamp(13px, 1.3vw, 16px); }

.br-sp {
  display: none; }
  @media (max-width: 679px) {
    .br-sp {
      display: block; } }

.mb {
  margin-bottom: clamp(30px, 8%, 150px); }

.w100 {
  width: 100%;
  height: auto; }

@media (max-width: 679px) {
  .show-pc {
    display: none; } }

.show-sp {
  display: none; }
  @media (max-width: 679px) {
    .show-sp {
      display: block; } }

.scale {
  transition: all linear 0.3s; }
  .scale:hover {
    transform: scale(1.03, 1.03); }

#main_img01 {
  width: 100%;
  padding: 55px 0 45px 0;
  background: url(../../images/main_img_bg.jpg) no-repeat;
  background-size: cover;
  background-position: bottom right; }
  #main_img01 h2 {
    font-size: clamp(25px, 8vw, 55px);
    font-weight: normal;
    line-height: 1.2;
    text-align: center;
    color: #57b597;
    font-family: "Great Vibes", cursive;
    text-shadow: 0px 0px 10px white, 0px 0px 10px white, 0px 0px 10px white, 0px 0px 10px white; }
    #main_img01 h2 span {
      display: inline-block;
      font-size: 40%;
      font-family: "M PLUS Rounded 1c", sans-serif; }
  @media (max-width: 679px) {
    #main_img01 {
      height: auto;
      padding: 25px 0 10px 0;
      margin-bottom: 30px; }
      #main_img01 h2 {
        line-height: 1; }
        #main_img01 h2 span {
          display: block; } }

.btn01 a {
  display: block;
  margin: 45px 40px 40px;
  padding: 15px 10px;
  border: 1px solid #fff;
  background: rgba(0, 0, 0, 0.9);
  color: #FFF;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  transition: .3s;
  position: relative;
  z-index: 2;
  overflow: hidden;
  width: 250px;
  margin: 0 auto; }
  .btn01 a:after {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    margin: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transition: .3s; }
  .btn01 a:hover:after {
    width: 250px;
    height: 250px;
    margin: -125px 0 0 -125px; }
  .btn01 a.w-350 {
    width: 350px; }
    .btn01 a.w-350:hover:after {
      width: 350px;
      height: 350px;
      margin: -175px 0 0 -175px; }
    @media (max-width: 679px) {
      .btn01 a.w-350 {
        width: 300px; }
        .btn01 a.w-350:hover:after {
          width: 300px;
          height: 300px;
          margin: -150px 0 0 -150px; } }

#header {
  background: #57b597;
  padding: 10px 10px 0 10px; }
  #header .wrap {
    max-width: 1920px;
    margin: 0 auto; }
  #header h1 {
    display: block;
    font-size: 10px;
    padding: 5px 10px; }
    @media (max-width: 679px) {
      #header h1 {
        display: none; } }
  #header .header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px; }
    #header .header-top .logo {
      width: 65%; }
      #header .header-top .logo a {
        color: #FFF;
        text-decoration: none;
        display: flex;
        align-items: flex-end; }
        #header .header-top .logo a h1 {
          width: 120px; }
          #header .header-top .logo a h1 img {
            width: 100%;
            height: auto; }
        #header .header-top .logo a p {
          color: #FFF;
          margin-bottom: 7px;
          font-family: "M PLUS Rounded 1c", sans-serif;
          font-size: 15px; }
    #header .header-top .tel {
      width: 35%;
      text-align: right;
      padding-right: 10px;
      vertical-align: middle; }
      #header .header-top .tel strong {
        display: block;
        font-family: "Roboto", sans-serif;
        font-size: 2em;
        font-weight: 300;
        color: #fff; }
        #header .header-top .tel strong i {
          font-size: 1.2em;
          margin-right: 5px; }
      #header .header-top .tel b {
        display: block;
        line-height: 1; }
      #header .header-top .tel p {
        display: block;
        font-size: 80%; }
    @media (max-width: 679px) {
      #header .header-top {
        display: none; } }
  #header .header-top-sp {
    display: none; }
    #header .header-top-sp .logo a {
      display: flex;
      align-items: flex-end;
      text-decoration: none; }
      #header .header-top-sp .logo a img {
        height: 40px;
        width: auto;
        margin-right: 5px; }
      #header .header-top-sp .logo a p {
        color: #FFF;
        font-size: 12px;
        line-height: 1;
        margin-bottom: 0; }
        #header .header-top-sp .logo a p br {
          display: none; }
        @media (max-width: 360px) {
          #header .header-top-sp .logo a p {
            line-height: 1.3;
            display: block;
            margin-bottom: -3px; }
            #header .header-top-sp .logo a p br {
              display: block; } }
    @media (max-width: 679px) {
      #header .header-top-sp {
        display: block;
        position: relative;
        height: 50px;
        width: 100%;
        padding-top: 0; }
        #header .header-top-sp ul {
          position: absolute;
          display: flex;
          top: 0;
          right: 0; }
          #header .header-top-sp ul li {
            width: 60px; }
            #header .header-top-sp ul li:nth-child(1) {
              margin-right: 5px; }
            #header .header-top-sp ul li img {
              width: 100%;
              height: auto; }
            #header .header-top-sp ul li a.menu_icn img.close {
              display: none; } }
    @media (max-width: 400px) {
      #header .header-top-sp ul li {
        padding-top: 3px;
        width: 55px; } }

/* ブログ */
#blog {
  max-width: 1520px;
  margin: 0 auto 4% auto;
  /*detail*/ }
  @media (max-width: 1520px) {
    #blog {
      padding-left: 10px;
      padding-right: 10px; } }
  #blog h3.title02 {
    text-align: center; }
  #blog .blog_cate {
    display: block;
    background: #EEE;
    padding: 2% 3%;
    margin-bottom: 3%; }
    #blog .blog_cate li {
      display: inline; }
      #blog .blog_cate li:before {
        font-family: "Font Awesome 5 Free";
        content: "\f138";
        font-weight: bold; }
      #blog .blog_cate li a {
        font-weight: bold; }
  #blog .pager-upper {
    border-bottom: #CCC 1px dotted;
    padding-bottom: 10px;
    margin-bottom: 10px; }
  #blog .pager-lower {
    border-top: #CCC 1px dotted;
    padding-top: 10px;
    margin-bottom: 10px; }
  #blog .galleryList .gallery {
    display: flex;
    flex-wrap: wrap;
    border-bottom: #CCC 1px solid;
    padding: 2% 0; }
    @media (max-width: 679px) {
      #blog .galleryList .gallery {
        padding: 5% 0; } }
    #blog .galleryList .gallery:last-child {
      border-bottom: none; }
    #blog .galleryList .gallery .image {
      width: 300px;
      margin: 0 20px 0 0; }
      @media (max-width: 679px) {
        #blog .galleryList .gallery .image {
          width: 100%;
          text-align: center;
          margin: 0 0 15px 0; } }
      #blog .galleryList .gallery .image img {
        width: 100%;
        height: auto;
        max-width: 300px; }
    #blog .galleryList .gallery .galleryInner {
      width: calc(100% - 320px); }
      @media (max-width: 679px) {
        #blog .galleryList .gallery .galleryInner {
          width: 100%; } }
      #blog .galleryList .gallery .galleryInner h3 {
        display: block;
        background: #EEE;
        padding: 7px 10px;
        font-size: 1.2em;
        margin-bottom: 15px; }
        #blog .galleryList .gallery .galleryInner h3 a {
          text-decoration: none; }
      #blog .galleryList .gallery .galleryInner .comment {
        margin-bottom: 15px; }
  #blog .galleryList .detailLink a {
    display: block;
    float: right;
    border: #CCC 1px solid;
    padding: 5px 20px;
    text-decoration: none;
    max-width: 150px;
    color: #000; }
    #blog .galleryList .detailLink a:hover {
      background: #EEE; }
  #blog .galleryDetail .title {
    display: none; }
  #blog .galleryDetail .main {
    margin-bottom: 3%;
    padding-bottom: 3%;
    border-bottom: #CCC 1px dotted; }
    #blog .galleryDetail .main .image {
      display: block;
      text-align: center;
      margin-bottom: 30px; }
      #blog .galleryDetail .main .image img {
        width: 100%;
        height: auto;
        max-width: 600px; }
    #blog .galleryDetail .main .comment {
      display: block;
      max-width: 600px;
      margin: 0 auto;
      font-size: 1.2em; }
  #blog .DetailList {
    display: flex;
    flex-wrap: wrap;
    max-width: 600px;
    margin: 0 auto; }
    #blog .DetailList .detail {
      width: 100%;
      padding: 2%;
      box-sizing: border-box; }
      @media (max-width: 679px) {
        #blog .DetailList .detail {
          width: 100%; } }
      #blog .DetailList .detail img {
        width: 100%;
        height: auto; }
      #blog .DetailList .detail p {
        font-size: 1.2em; }
  #blog .btn a {
    display: block;
    margin: 0 auto;
    border: #CCC 1px solid;
    padding: 5px 20px;
    text-align: center;
    text-decoration: none;
    max-width: 100px;
    color: #000; }
    #blog .btn a:hover {
      background: #EEE; }

.gallery_reform .wp-block-columns .wp-block-column {
  background: #F1F3F2;
  padding: 10px;
  margin-bottom: 20px; }
  .gallery_reform .wp-block-columns .wp-block-column .bgcolor {
    display: block;
    background: #51443A;
    font-weight: bold;
    color: #FFF;
    text-align: center;
    padding: 7px;
    text-decoration: none; }

.title01 {
  padding: 10px 20px;
  font-size: 18px;
  color: rgba(0, 0, 0, 0.9);
  text-shadow: 1px 1px 2px rgba(143, 34, 76, 0.4);
  border-top: 1px solid rgba(0, 0, 0, 0.9);
  border-bottom: 1px solid rgba(0, 0, 0, 0.9); }

.t-02 {
  display: block;
  text-align: center;
  font-family: "Great Vibes", cursive;
  font-size: clamp(50px, 5vw, 65px);
  color: #57b597;
  line-height: 1.2;
  margin-bottom: clamp(20px, 3%, 50px); }
  .t-02 span {
    display: block;
    font-size: clamp(12px, 1vw, 14px); }
    .t-02 span.mt--3 {
      margin-top: -0.3em; }
  .t-02.w-line {
    position: relative;
    padding-bottom: 20px; }
    .t-02.w-line:after {
      display: block;
      content: "";
      height: 1px;
      width: 120px;
      background: #57b597;
      position: absolute;
      bottom: 0;
      left: calc(50% - 60px); }
  .t-02.mincho {
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: clamp(20px, 3vw, 35px); }

.px-5 {
  padding-top: 2rem;
  padding-bottom: 2rem; }

.flexBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }
  .flexBox.no-wrap {
    flex-wrap: nowrap; }
  .flexBox .col2 {
    width: 50%;
    padding: 2%;
    margin-bottom: 3%; }
    @media (max-width: 679px) {
      .flexBox .col2 {
        width: 100%;
        margin-bottom: 5%; } }
  .flexBox .col3 {
    width: 33.3%;
    padding: 2%;
    margin-bottom: 3%;
    border: 000 1px solid; }
    @media (max-width: 679px) {
      .flexBox .col3 {
        width: 100%;
        margin-bottom: 5%; } }
  .flexBox .col4 {
    width: 25%;
    padding: 2%;
    margin-bottom: 3%; }
    @media (max-width: 679px) {
      .flexBox .col4 {
        width: 50%; } }
  .flexBox .col5 {
    width: 20%;
    padding: 2%;
    margin-bottom: 3%; }
    @media (max-width: 679px) {
      .flexBox .col5 {
        width: 33.3%; } }

.freedial {
  display: block;
  position: fixed;
  width: 150px;
  height: 130px;
  top: 20px;
  right: -40px;
  z-index: 5; }
  .freedial a {
    pointer-events: none; }
    .freedial a img {
      width: 100%;
      height: auto; }
  @media (max-width: 679px) {
    .freedial {
      width: 100px;
      height: 60px;
      right: -25px; }
      .freedial a {
        pointer-events: all; } }

.side-open .freedial {
  z-index: 1; }

#gallery {
  max-width: 1220px;
  margin: 0 auto; }
  #gallery ul.flexBox {
    padding-left: 0;
    flex-wrap: wrap; }
    #gallery ul.flexBox li {
      width: 30%;
      margin: 1.5%;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      background: #FFF; }
      @media (max-width: 679px) {
        #gallery ul.flexBox li {
          margin: 3% 5%;
          width: 90%; } }
      #gallery ul.flexBox li.p-1 {
        padding: 1%; }
      #gallery ul.flexBox li .photo {
        font-size: 0;
        overflow: hidden;
        font-size: 0; }
        #gallery ul.flexBox li .photo a {
          position: relative;
          display: block;
          transition: all linear 0.3s; }
          #gallery ul.flexBox li .photo a img {
            width: 100%;
            height: auto;
            transition: all linear 0.3s; }
          #gallery ul.flexBox li .photo a span {
            display: block;
            background: rgba(47, 20, 0, 0.8);
            color: #FFF;
            padding: 3px 10px;
            bottom: 0;
            left: 0;
            position: absolute;
            z-index: 1;
            font-size: 12px; }
          #gallery ul.flexBox li .photo a:hover img {
            transform: scale(1.03, 1.03);
            box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
            filter: grayscale(0%); }
      #gallery ul.flexBox li .text {
        display: block;
        width: 100%;
        padding: 10px;
        font-family: "M PLUS Rounded 1c", sans-serif; }
        #gallery ul.flexBox li .text a {
          text-decoration: none; }
        #gallery ul.flexBox li .text strong.subtitle {
          display: block;
          color: #57b597;
          font-family: "M PLUS Rounded 1c", sans-serif;
          font-weight: 500;
          font-size: 1.2em;
          margin-bottom: 8px; }
          @media (max-width: 679px) {
            #gallery ul.flexBox li .text strong.subtitle {
              font-size: 1.5em; } }
        #gallery ul.flexBox li .text .comment p {
          display: block;
          font-size: 15px;
          line-height: 1.4; }
  #gallery ul.planwrap {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0; }
    #gallery ul.planwrap li {
      width: 30.3%;
      margin: 1.5%;
      border-radius: 3px; }
      #gallery ul.planwrap li a {
        display: block;
        position: relative;
        cursor: pointer;
        transition: all linear 0.3s;
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
        text-decoration: none; }
        #gallery ul.planwrap li a .photo {
          display: block;
          font-size: 0;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: -1; }
          #gallery ul.planwrap li a .photo:after {
            display: block;
            content: "";
            height: 100%;
            width: 100%;
            background: linear-gradient(to left, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.9) 100%);
            position: absolute;
            top: 0;
            left: 0; }
          #gallery ul.planwrap li a .photo img {
            width: 150%;
            height: auto;
            object-fit: cover;
            object-position: center center; }
        #gallery ul.planwrap li a .text {
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 15px;
          min-height: 230px; }
          @media (max-width: 679px) {
            #gallery ul.planwrap li a .text {
              min-height: 180px; } }
          #gallery ul.planwrap li a .text .plan_name {
            margin-bottom: 15px; }
            @media (max-width: 679px) {
              #gallery ul.planwrap li a .text .plan_name {
                margin-bottom: 5px; } }
            #gallery ul.planwrap li a .text .plan_name .cate_wrap {
              display: block;
              margin-bottom: 5px; }
              #gallery ul.planwrap li a .text .plan_name .cate_wrap .cate {
                display: inline-block;
                margin-right: 3px;
                border: #57b597 1px solid;
                border-radius: 2px;
                font-size: 11px;
                padding: 3px 5px;
                line-height: 1.2;
                width: fit-content;
                background: rgba(255, 255, 255, 0.5); }
            #gallery ul.planwrap li a .text .plan_name h3 {
              display: block;
              text-align: center;
              font-family: "M PLUS Rounded 1c", sans-serif;
              font-size: clamp(22px, 2vw, 28px);
              margin-bottom: 5px;
              line-height: 1;
              text-decoration: none;
              text-shadow: 0px 0px 3px white, 0px 0px 3px white, 0px 0px 3px white, 0px 0px 3px white; }
              @media (max-width: 679px) {
                #gallery ul.planwrap li a .text .plan_name h3 {
                  font-size: clamp(25px, 3vw, 30px); } }
            #gallery ul.planwrap li a .text .plan_name .priceWrap > :not(.pricearea) {
              display: none; }
            #gallery ul.planwrap li a .text .plan_name .priceWrap .pricearea {
              display: block;
              text-align: center;
              font-size: 18px;
              line-height: 1.2;
              margin-bottom: 0; }
              #gallery ul.planwrap li a .text .plan_name .priceWrap .pricearea strong {
                text-align: center;
                font-size: 18px;
                font-family: "M PLUS Rounded 1c", sans-serif;
                line-height: 1.2;
                font-weight: 600;
                color: #D06D61;
                text-shadow: 0px 0px 3px white, 0px 0px 3px white, 0px 0px 3px white, 0px 0px 3px white; }
              #gallery ul.planwrap li a .text .plan_name .priceWrap .pricearea:after {
                display: block;
                width: calc(100% - 40px);
                height: 2px;
                content: "";
                background: #D06D61;
                margin-top: 5px;
                margin-left: auto;
                margin-right: auto; }
              #gallery ul.planwrap li a .text .plan_name .priceWrap .pricearea:last-of-type:after {
                display: none; }
        #gallery ul.planwrap li a:hover {
          transform: scale(1.05, 1.05); }
      @media (max-width: 679px) {
        #gallery ul.planwrap li {
          width: 90%;
          margin: 0 5% 8% 5%; } }
  #gallery .detail {
    display: block;
    margin-bottom: 5%;
    padding: 0 20px; }
    #gallery .detail h3 {
      display: block;
      text-align: center;
      font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
      font-size: clamp(22px, 2.8vw, 35px);
      margin-bottom: clamp(15px, 3%, 30px); }
      #gallery .detail h3.voice {
        font-family: "M PLUS Rounded 1c", sans-serif;
        font-size: 18px;
        margin-bottom: 15px;
        text-align: left; }
    #gallery .detail h4 {
      display: block;
      text-align: center;
      color: #57b597; }
    #gallery .detail strong.subtitle {
      display: block;
      color: #57b597;
      font-family: "M PLUS Rounded 1c", sans-serif;
      font-weight: 500;
      font-size: 1.5em;
      line-height: 1.4;
      margin-bottom: 20px; }
    #gallery .detail .pricearea {
      display: block;
      padding: 20px 80px;
      border: #AF9D57 2px double;
      font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
      margin-left: auto;
      margin-right: auto;
      width: fit-content;
      background: url("../../images/bg_price.png") no-repeat;
      background-size: cover;
      text-shadow: 0px 0px 3px white, 0px 0px 3px white, 0px 0px 3px white, 0px 0px 3px white; }
      @media (max-width: 679px) {
        #gallery .detail .pricearea {
          padding: 20px; } }
      #gallery .detail .pricearea strong {
        display: inline-block;
        color: #D06D61;
        font-size: clamp(22px, 5vw, 32px);
        line-height: 1.3;
        text-align: center; }
    #gallery .detail .wp-block-table table {
      border-collapse: collapse; }
      #gallery .detail .wp-block-table table td {
        width: 50%;
        background: rgba(177, 158, 87, 0.1);
        padding: 10px;
        border: #FAF8F5 15px solid;
        color: #57b597;
        font-size: 16px; }
        #gallery .detail .wp-block-table table td img {
          width: 100%;
          max-width: 100px;
          height: auto;
          margin-right: 10px; }
        @media (max-width: 679px) {
          #gallery .detail .wp-block-table table td {
            text-align: center;
            vertical-align: top;
            line-height: 1.3;
            border: #FAF8F5 8px solid; }
            #gallery .detail .wp-block-table table td img {
              margin-left: auto;
              margin-right: auto;
              display: block;
              margin-bottom: 10px; } }
    #gallery .detail.voice {
      max-width: 1000px;
      margin-left: auto;
      margin-right: auto;
      padding: 30px;
      background: #FFF;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); }
      @media (max-width: 1000px) {
        #gallery .detail.voice {
          margin-left: 20px;
          margin-right: 20px; } }
      @media (max-width: 679px) {
        #gallery .detail.voice {
          box-shadow: none;
          padding: 0; } }

.back_btn {
  padding: 3%; }
  .back_btn a {
    display: block;
    color: #57b597;
    border: #57b597 1px solid;
    padding: 7px;
    max-width: 150px;
    margin: 0 auto;
    text-align: center;
    font-size: 15px; }

/*wp-pagenavi base*/
.wp-pagenavi {
  display: block;
  margin-bottom: 8%;
  clear: both;
  text-align: center; }

.wp-pagenavi a, .wp-pagenavi span {
  color: #999;
  background-color: #FFF;
  border: solid 1px #FFF;
  padding: 8px 15px;
  margin: 0 2px;
  white-space: nowrap;
  -moz-border-radius: 1px;
  -webkit-border-radius: 1px;
  border-radius: 1px;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out; }

.wp-pagenavi a:hover {
  color: #FFF;
  background-color: #CCC;
  border-color: #CCC; }

.wp-pagenavi span.current {
  color: #FFF;
  border-radius: 5px;
  background-color: #57b597;
  border-color: #57b597;
  font-weight: bold; }

/*comming soon*/
.comming_soon {
  display: block;
  border: #CCC 2px solid;
  padding: 6% 3%;
  text-align: center;
  border-radius: 14px; }
  .comming_soon p {
    color: rgba(188, 164, 102, 0.5);
    font-size: 1.3em;
    text-align: center; }

/* 記事エディタ内の調整:start */
#editArea .sub_kiji_wrap table th {
  display: table-cell;
  font-weight: bold !important; }

#editArea .sub_kiji_wrap table td {
  display: table-cell; }

#editArea .sub_kiji_wrap iframe {
  max-width: 100%; }
  @media (max-width: 679px) {
    #editArea .sub_kiji_wrap iframe {
      width: 100%; } }

/* 記事エディタ内の調整:end */
#editArea {
  display: block;
  line-height: 1.8; }
  #editArea .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-bottom: 1em; }
    #editArea .youtube iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100% !important;
      height: 100% !important; }
  #editArea img {
    max-width: 100%;
    height: auto; }
    #editArea img.aligncenter {
      display: block;
      margin: 0 auto 10px auto; }
    #editArea img.alignright {
      float: right;
      margin: 0 10px 10px 0; }
    #editArea img.alignleft {
      float: left;
      margin: 0 10px 10px 0; }
    #editArea img.size-large {
      max-width: 724px; }
    #editArea img.size-medium {
      max-width: 212px; }
  #editArea p {
    display: block;
    clear: both;
    margin-bottom: 2em; }
  #editArea .wp-block-gallery img {
    width: 100%;
    height: auto; }
  #editArea .blocks-gallery-grid,
  #editArea .wp-block-gallery {
    align-items: flex-start; }

/* 固定ページ */
.subpage {
  display: block;
  max-width: 1220px;
  box-sizing: border-box;
  margin: 0 auto 5% auto; }
  @media (max-width: 1520px) {
    .subpage {
      padding: 0 15px; } }
  .subpage p {
    display: block;
    line-height: 1.8;
    margin-bottom: 3%; }
  .subpage .contact .error-message {
    display: block;
    background: #F5E6E6;
    padding: 2% 3%;
    border: #D29697 1px solid;
    color: #B06869;
    display: none; }
  .subpage .contact table {
    border-collapse: collapse;
    width: 100%; }
    .subpage .contact table th {
      border: #CCC 1px solid;
      width: 16em;
      background: #EEE;
      padding: 1.5%; }
      .subpage .contact table th span {
        font-size: 80%;
        color: #D30003; }
    .subpage .contact table td {
      border: #CCC 1px solid;
      padding: 1.5%; }
      .subpage .contact table td input[type="text"],
      .subpage .contact table td input[type="tel"],
      .subpage .contact table td input[type="email"] {
        width: 100%;
        font-size: 1.3;
        padding: 5px; }
        .subpage .contact table td input[type="text"]::placeholder,
        .subpage .contact table td input[type="tel"]::placeholder,
        .subpage .contact table td input[type="email"]::placeholder {
          color: #CCC; }
      .subpage .contact table td p {
        font-size: 80%;
        margin: 0; }
      .subpage .contact table td textarea {
        width: 100%;
        font-size: 1.3;
        padding: 5px;
        min-height: 150px; }
        .subpage .contact table td textarea::placeholder {
          color: #CCC; }
    @media (max-width: 679px) {
      .subpage .contact table {
        border-bottom: #CCC 1px solid; }
        .subpage .contact table th, .subpage .contact table td {
          display: block;
          width: 100%;
          padding: 3%;
          border-bottom: none; } }
  .subpage .contact .btn input {
    cursor: pointer; }
  .subpage iframe {
    max-width: 100%; }
    @media (max-width: 679px) {
      .subpage iframe {
        width: 100%; } }

.right-photo-box {
  max-width: 1520px;
  margin: 0 auto; }
  @media (max-width: 1520px) {
    .right-photo-box {
      padding: 0 20px; } }
  .right-photo-box .wrap {
    display: flex;
    flex-direction: row-reverse;
    margin-bottom: 3%; }
    .right-photo-box .wrap .photo {
      width: 30%; }
      .right-photo-box .wrap .photo img {
        width: 100%;
        height: auto; }
    .right-photo-box .wrap .txt {
      padding-right: 5%;
      width: 70%;
      font-size: clamp(12px, 2.3vw, 15px); }
      .right-photo-box .wrap .txt p {
        display: block;
        margin-bottom: 1.5em; }
      .right-photo-box .wrap .txt h3 {
        display: block;
        font-size: 150%;
        font-family: Helvetica, メイリオ, Arial, sans-serif;
        font-weight: bold;
        margin-bottom: 2em;
        color: #254400; }
    @media (max-width: 679px) {
      .right-photo-box .wrap {
        flex-wrap: wrap; }
        .right-photo-box .wrap .photo {
          width: 100%;
          margin-bottom: 20px; }
        .right-photo-box .wrap .txt {
          width: 100%;
          padding: 0; } }
  .right-photo-box.promise .wrap {
    background: url("../../images/promise/promise_bg01.jpg") repeat-x;
    background-position: bottom;
    padding: 0 20px 3em 20px; }
  .right-photo-box.house .wrap .photo {
    width: 20%; }
  .right-photo-box.house .wrap .txt {
    padding-right: 5%;
    width: 80%;
    font-size: clamp(12px, 2.23vw, 15px); }
    .right-photo-box.house .wrap .txt p {
      display: block;
      margin-bottom: 1.5em;
      padding: 0 15px;
      line-height: 1.2; }
    .right-photo-box.house .wrap .txt h3 {
      padding: 10px 20px;
      font-size: 18px;
      color: #4B4B4B;
      text-shadow: 2px 2px 0 #D9D9D9;
      border-top: 1px solid #666;
      border-bottom: 1px dotted #D0D0D0; }
  @media (max-width: 679px) {
    .right-photo-box.house .wrap {
      flex-wrap: wrap; }
      .right-photo-box.house .wrap .photo {
        width: 100%;
        text-align: center;
        margin-bottom: 20px; }
        .right-photo-box.house .wrap .photo img {
          max-width: 200px; }
      .right-photo-box.house .wrap .txt {
        width: 100%;
        padding: 0; } }
  .right-photo-box.house .wrap.no-img .txt {
    width: 100%; }

.houdse_top {
  display: block;
  background: url("../../images/promise/promise_bg01.jpg") repeat-x;
  background-position: bottom;
  padding: 0 20px 3em 20px;
  margin-bottom: 3%; }
  .houdse_top h3 {
    display: block;
    font-size: 180%;
    font-family: Helvetica, メイリオ, Arial, sans-serif;
    font-weight: bold;
    margin-bottom: 0.5em;
    color: #254400; }
  .houdse_top p {
    display: block;
    margin-bottom: 1.5em;
    font-size: clamp(12px, 2.3vw, 15px); }

.flow_gallery_cate {
  clear: both;
  width: 100%;
  margin: 30px 0 0 0;
  padding-bottom: 15px;
  background: #252525; }
  .flow_gallery_cate h4 {
    width: 100%;
    height: 38px;
    text-indent: -9999px;
    display: block;
    background: url(../../images/flow_gallery/title01.jpg) no-repeat top left; }
  .flow_gallery_cate ul {
    width: 100%;
    padding: 0 15px 0 15px;
    color: #FFF;
    font-size: 14px; }
    .flow_gallery_cate ul li {
      white-space: nowrap;
      display: inline-block;
      float: left;
      margin: 0 1px;
      padding: 0 10px 0 15px;
      font-weight: bold;
      background: url(../../images/flow_gallery_icon01.jpg) no-repeat left; }
      .flow_gallery_cate ul li a {
        color: #FFF;
        font-weight: normal; }

.comming_soon {
  display: block;
  border: #EEE 5px solid;
  padding: 4%;
  text-align: center; }
  .comming_soon p {
    color: #CCC;
    font-size: 1.8em;
    text-align: center;
    font-weight: bold; }

/*送信完了*/
.mw_wp_form .otoiawase_confirmTxt {
  display: none; }
.mw_wp_form.mw_wp_form_confirm .otoiawase_box01,
.mw_wp_form.mw_wp_form_confirm tr.style_field5 {
  display: none; }
.mw_wp_form.mw_wp_form_confirm .otoiawase_confirmTxt {
  display: block;
  margin-bottom: 20px; }
.mw_wp_form .sent_msg {
  display: block;
  padding: 5% 3%;
  border: #CCC 2px dashed;
  border-radius: 15px;
  text-align: center; }
  .mw_wp_form .sent_msg strong {
    font-size: 1.2em; }

.soudan01 {
  max-width: 1520px;
  margin: 0 auto 5% auto; }
  @media (max-width: 1520px) {
    .soudan01 {
      padding-left: 10px;
      padding-right: 10px; } }
  .soudan01 .banner {
    max-width: 1520px;
    margin: 0 auto; }
    .soudan01 .banner a img {
      width: 100%;
      height: auto;
      transition: all linear 0.3s; }
    .soudan01 .banner a:hover img {
      opacity: 0.8; }

#top-main {
  display: block;
  position: relative; }
  #top-main .logoarea {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: rgba(86, 181, 151, 0.6);
    padding: 15px; }
    @media (max-width: 679px) {
      #top-main .logoarea {
        padding: 10px; } }
    #top-main .logoarea h1 {
      line-height: 1;
      color: #FFF;
      font-family: "M PLUS Rounded 1c", sans-serif;
      font-size: clamp(18px, 3vw, 30px);
      font-weight: lighter; }
      #top-main .logoarea h1 img {
        width: 100%;
        height: auto;
        max-width: 150px;
        filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3)); }
        @media (max-width: 679px) {
          #top-main .logoarea h1 img {
            max-width: 100px; } }
    #top-main .logoarea p {
      display: block;
      color: #FFF;
      font-family: "M PLUS Rounded 1c", sans-serif;
      font-size: 16px;
      filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.3));
      margin-bottom: 0;
      border-top: #fff 1px solid;
      padding-top: 5px; }
      @media (max-width: 679px) {
        #top-main .logoarea p {
          text-align: center;
          line-height: 1.4;
          font-size: 14px; } }
  #top-main .telarea {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    position: absolute;
    top: 25px;
    right: 25px;
    z-index: 1;
    color: #FFF; }
    #top-main .telarea i {
      font-weight: bold;
      color: #FFF;
      font-size: 30px;
      margin-right: 8px; }
    #top-main .telarea span {
      font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
      font-size: 25px; }
    #top-main .telarea p {
      width: 100%;
      text-align: right; }
    #top-main .telarea u {
      width: 100%;
      text-decoration: none;
      font-size: 80%;
      text-align: right; }
    #top-main .telarea a {
      display: none; }
    @media (max-width: 480px) {
      #top-main .telarea {
        top: 15px;
        right: 10px; }
        #top-main .telarea i, #top-main .telarea span, #top-main .telarea p, #top-main .telarea u {
          display: none; }
        #top-main .telarea a {
          display: block;
          text-decoration: none; }
          #top-main .telarea a i {
            display: block;
            font-weight: bold;
            color: #FFF;
            font-size: 35px;
            margin-right: 8px; } }
  #top-main .main_slider_wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative; }
    #top-main .main_slider_wrap .catch {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      text-align: center;
      z-index: 1; }
      #top-main .main_slider_wrap .catch strong {
        font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
        font-size: clamp(32px, 6vw, 50px);
        color: #fff;
        font-weight: 400;
        text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3); }
        #top-main .main_slider_wrap .catch strong br {
          display: none; }
          @media (max-width: 679px) {
            #top-main .main_slider_wrap .catch strong br {
              display: block; } }
  #top-main .main_index_full {
    display: block;
    width: 100%;
    height: 100%; }
    #top-main .main_index_full div {
      display: block;
      width: 100%;
      height: 100%; }
      #top-main .main_index_full div.slide1 {
        background: url("../../images/index/slide1.jpg?v1") no-repeat; }
      #top-main .main_index_full div.slide2 {
        background: url("../../images/index/slide2.jpg?v2") no-repeat; }
      #top-main .main_index_full div.slide3 {
        background: url("../../images/index/slide3.jpg?v1") no-repeat; }
      #top-main .main_index_full div.slide4 {
        background: url("../../images/index/slide4.jpg") no-repeat; }
      #top-main .main_index_full div.slide5 {
        background: url("../../images/index/slide5.jpg") no-repeat; }
      #top-main .main_index_full div.slide1, #top-main .main_index_full div.slide2, #top-main .main_index_full div.slide3, #top-main .main_index_full div.slide4, #top-main .main_index_full div.slide5 {
        background-position: center center;
        background-size: cover; }
  #top-main #navi-top {
    display: block;
    width: 100%;
    z-index: 1;
    position: absolute;
    bottom: 0;
    right: 0; }
    #top-main #navi-top ul.menu-top {
      display: flex;
      background: rgba(87, 181, 171, 0.9);
      width: 100%;
      max-width: 1520px;
      margin: 0 auto; }
      #top-main #navi-top ul.menu-top li {
        width: 12.5%;
        height: 50px; }
        #top-main #navi-top ul.menu-top li.narrow {
          width: 10.5%; }
        #top-main #navi-top ul.menu-top li.wide {
          width: 14.5%; }
        #top-main #navi-top ul.menu-top li a {
          display: flex;
          font-family: "M PLUS Rounded 1c", sans-serif;
          align-items: center;
          width: 100%;
          height: 100%;
          font-size: 120%;
          text-align: center;
          justify-content: center;
          color: #FFF;
          text-decoration: none;
          text-align: center; }
          #top-main #navi-top ul.menu-top li a:hover {
            color: rgba(255, 255, 255, 0.7); }
          #top-main #navi-top ul.menu-top li a span {
            display: none; }
            @media (max-width: 679px) {
              #top-main #navi-top ul.menu-top li a span {
                display: inline-block;
                font-size: 80%; } }
        #top-main #navi-top ul.menu-top li.menu__single {
          position: relative; }
          #top-main #navi-top ul.menu-top li.menu__single ul {
            display: none; }
        #top-main #navi-top ul.menu-top li.close {
          display: none; }
        #top-main #navi-top ul.menu-top li:hover.menu__single ul {
          display: block;
          width: calc(100% + 70px);
          position: absolute;
          bottom: 50px;
          left: -35px;
          background: rgba(0, 0, 0, 0.8);
          padding: 10px; }
          #top-main #navi-top ul.menu-top li:hover.menu__single ul li {
            width: 100%;
            height: auto;
            font-size: 100%;
            padding: 8px 0;
            border-bottom: rgba(255, 255, 255, 0.2) 1px solid; }
            #top-main #navi-top ul.menu-top li:hover.menu__single ul li a {
              display: block; }
  @media (max-width: 1024px) {
    #top-main #navi-top {
      display: block;
      width: 300px;
      height: 100%;
      z-index: 3;
      position: fixed;
      top: 0;
      right: -300px;
      background: rgba(87, 181, 171, 0.8);
      padding: 20px; }
      #top-main #navi-top ul.menu-top {
        display: block;
        background: none; }
        #top-main #navi-top ul.menu-top li {
          width: 100%;
          height: auto;
          margin-bottom: 15px; }
          #top-main #navi-top ul.menu-top li.narrow, #top-main #navi-top ul.menu-top li.wide {
            width: 100%; }
          #top-main #navi-top ul.menu-top li a {
            display: block;
            text-align: left; }
          #top-main #navi-top ul.menu-top li.menu__single {
            position: relative; }
            #top-main #navi-top ul.menu-top li.menu__single a {
              display: flex;
              justify-content: flex-start; }
              #top-main #navi-top ul.menu-top li.menu__single a:after {
                content: "+";
                color: #FFF;
                margin-left: 7px; }
            #top-main #navi-top ul.menu-top li.menu__single ul {
              display: none;
              position: relative;
              bottom: auto;
              left: auto;
              width: 100%;
              margin-left: 30px;
              padding: 10px 0 15px 0; }
              #top-main #navi-top ul.menu-top li.menu__single ul li {
                margin-bottom: 5px; }
                #top-main #navi-top ul.menu-top li.menu__single ul li a:after {
                  content: ""; }
            #top-main #navi-top ul.menu-top li.menu__single.active > a:after {
              content: "-"; }
          #top-main #navi-top ul.menu-top li:hover.menu__single ul {
            display: none;
            position: relative;
            bottom: auto;
            left: auto;
            width: 100%;
            background: none;
            padding: 10px 0 15px 0; }
            #top-main #navi-top ul.menu-top li:hover.menu__single ul li {
              border-bottom: none;
              margin-bottom: 7px;
              padding: 0; }
              #top-main #navi-top ul.menu-top li:hover.menu__single ul li a {
                padding: 0; } }

.sp-menu-show,
.sp-arrow-close {
  display: none; }

@media (max-width: 1024px) {
  .sp-menu-show {
    display: block;
    position: absolute;
    bottom: 85px;
    right: 10px;
    z-index: 4;
    /*
    i{
    	color: #FFF;
    	font-style: normal;
    	font-weight: bold;
    	font-size: 1.7em;
    }
    */ }
    .sp-menu-show img {
      width: 100px;
      height: auto; }

  .sp-arrow-close {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 4;
    /*
    i{
    	color: #FFF;
    	font-style: normal;
    	font-weight: bold;
    	font-size: 1.7em;
    }
    */ }
    .sp-arrow-close img {
      width: 100px;
      height: auto; }

  .overlay {
    display: none;
    background: rgba(255, 255, 255, 0.5);
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2; } }
.side-open {
  overflow: hidden; }
  .side-open .overlay {
    display: block; }
  .side-open .sp-menu-show {
    display: none; }
  .side-open .sp-arrow-close {
    display: block; }

#index {
  padding-top: 4%; }
  #index .box01 {
    display: block;
    max-width: 1200px;
    margin: 0 auto clamp(40px, 8%, 120px) auto; }
    #index .box01 .photo {
      display: block;
      width: 300px;
      margin: 0 auto 15px auto; }
      #index .box01 .photo img {
        width: 100%;
        height: auto; }
    #index .box01 .box {
      display: block;
      text-align: center; }
      #index .box01 .box p {
        font-size: 1.2rem;
        font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
        line-height: 1.8; }
    @media (max-width: 1200px) {
      #index .box01 {
        margin-left: 15px;
        margin-right: 15px; }
        #index .box01 .photo {
          width: 23vw; } }
    @media (max-width: 679px) {
      #index .box01 .photo {
        width: 200px; }
      #index .box01 .box p {
        font-size: clamp(16px, 3vw, 202px); } }
  #index .box02 {
    display: block;
    max-width: 1520px;
    margin: 0 auto 5% auto; }
    #index .box02 .photo {
      display: block;
      margin-bottom: 20px; }
      #index .box02 .photo img {
        width: 100%;
        height: auto; }
    #index .box02 .box {
      display: block;
      text-align: center; }
      @media (max-width: 1520px) {
        #index .box02 .box {
          padding-left: 15px;
          padding-right: 15px; } }
      #index .box02 .box p {
        font-size: 1.2rem;
        font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
        line-height: 1.8; }
        @media (max-width: 679px) {
          #index .box02 .box p {
            font-size: clamp(16px, 3vw, 22px);
            line-height: 1.6;
            text-align: left; } }
  #index .box03 {
    display: block;
    max-width: 1520px;
    margin: 0 auto 5% auto; }
    @media (max-width: 1520px) {
      #index .box03 {
        padding-left: 15px;
        padding-right: 15px; } }
    #index .box03 h3 {
      display: block;
      text-align: center;
      margin-bottom: 25px; }
      #index .box03 h3 img {
        width: 100%;
        height: auto;
        max-width: 350px; }
    #index .box03 ul li {
      display: flex;
      margin-bottom: 4%; }
      #index .box03 ul li .photo {
        width: 40%; }
        #index .box03 ul li .photo img {
          width: 100%;
          height: auto; }
      #index .box03 ul li .text {
        width: 60%;
        padding-left: 30px; }
        #index .box03 ul li .text .ttl {
          display: flex;
          align-items: center;
          background: linear-gradient(to left, #fff 0%, #b17088 40%, #b17088 100%);
          padding: 10px;
          margin-bottom: 1.5rem; }
          #index .box03 ul li .text .ttl .point {
            width: 80px;
            margin-right: 20px; }
            #index .box03 ul li .text .ttl .point img {
              width: 100%;
              height: auto; }
          #index .box03 ul li .text .ttl h4 {
            width: calc(100% - 100px);
            color: #FFF;
            font-weight: bold;
            font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
            font-size: clamp(15px, 4vw, 25px);
            line-height: 1.2; }
        #index .box03 ul li .text p {
          display: block;
          font-size: clamp(14px, 2vw, 18px);
          margin-left: 30px; }
      #index .box03 ul li.reverse {
        flex-direction: row-reverse; }
        #index .box03 ul li.reverse .text {
          padding-left: 0;
          padding-right: 30px; }
      @media (max-width: 679px) {
        #index .box03 ul li {
          flex-wrap: wrap;
          padding-left: 15px;
          padding-right: 15px; }
          #index .box03 ul li .photo {
            width: 100%; }
          #index .box03 ul li .text {
            width: 100%;
            padding: 0; }
            #index .box03 ul li .text p {
              margin-left: 0; } }
  #index .box04 {
    padding-left: 10px;
    padding-right: 10px;
    background: url("../../images/bg01.png") repeat-x;
    background-position: top 100px; }
    #index .box04 ul {
      display: flex;
      flex-wrap: wrap;
      max-width: 1220px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 0; }
      #index .box04 ul li {
        width: 25%;
        padding: 2%; }
        #index .box04 ul li a img {
          width: 100%;
          height: auto;
          transition: all linear 0.3s; }
        #index .box04 ul li a:hover img {
          transform: scale(1.02, 1.02);
          filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3)); }
      @media (max-width: 679px) {
        #index .box04 ul li {
          width: 50%; } }
  #index .box05 {
    max-width: 1520px;
    margin: 0 auto 4% auto; }
    #index .box05 img {
      width: 100%;
      height: auto; }
    #index .box05 p {
      font-size: 1.2rem;
      font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
      line-height: 1.8;
      text-align: center;
      padding-top: clamp(15px, 3%, 40px); }
      @media (max-width: 679px) {
        #index .box05 p {
          font-size: clamp(16px, 3vw, 202px);
          padding: 0 15px;
          text-align: left; }
          #index .box05 p br {
            display: none; }
            #index .box05 p br.br-all {
              display: block; } }
  #index #index03 .center {
    display: block;
    text-align: center; }
    #index #index03 .center img {
      width: 250px;
      height: auto;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
      margin-bottom: 20px; }

#index01 {
  padding: 4% 15px;
  margin-bottom: 4%; }
  #index01 ul.max1000 {
    max-width: 1000px;
    margin: 0 auto; }
  #index01 ul li {
    display: flex;
    flex-wrap: wrap; }
    #index01 ul li span {
      width: 140px; }
    #index01 ul li b {
      width: calc(100% - 140px);
      display: block;
      font-size: 120%;
      font-weight: bold;
      color: rgba(0, 0, 0, 0.9); }
    #index01 ul li p {
      width: 100%;
      padding-left: 140px; }
    @media (max-width: 679px) {
      #index01 ul li span {
        width: 100%;
        font-size: 80%; }
      #index01 ul li b {
        width: 100%; }
      #index01 ul li p {
        padding-left: 0; } }

.profile {
  display: block;
  max-width: 1000px;
  margin: 0 auto 6% auto; }
  .profile .wrap {
    display: flex;
    justify-content: center; }
    .profile .wrap .photo {
      width: 200px; }
      .profile .wrap .photo img {
        width: 100%;
        height: auto; }
    .profile .wrap .txt {
      padding-left: 30px; }
      .profile .wrap .txt strong {
        display: flex;
        font-weight: normal;
        font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
        font-size: 1.8rem;
        align-items: baseline;
        margin-bottom: 20px; }
        .profile .wrap .txt strong span {
          font-size: 12px;
          font-weight: normal;
          margin-left: 10px; }
      .profile .wrap .txt b {
        display: block;
        font-size: 1.2rem;
        margin-bottom: 15px; }
    @media (max-width: 679px) {
      .profile .wrap {
        flex-wrap: wrap;
        justify-content: center; }
        .profile .wrap .txt {
          width: 100%;
          padding-left: 0; }
          .profile .wrap .txt strong {
            display: block;
            text-align: center;
            line-height: 1.2; }
            .profile .wrap .txt strong span {
              display: block; }
          .profile .wrap .txt b {
            text-align: center;
            font-size: 1.2em; } }

.box_syuttyo {
  display: block;
  max-width: 1520px;
  margin: 0 auto 4% auto;
  background: linear-gradient(#fcf0f5 0%, #fff 100%);
  padding: 20px; }
  @media (max-width: 679px) {
    .box_syuttyo {
      padding: 10px; } }
  .box_syuttyo .box {
    display: block;
    background: url("../../images/index/bg_syuttyou.png") no-repeat;
    background-size: 100%;
    background-position: top;
    text-align: center;
    padding-top: clamp(30px, 10vw, 80px); }
    .box_syuttyo .box:after {
      display: block;
      content: "";
      width: 100%;
      height: clamp(30px, 10vw, 80px);
      background: url("../../images/index/bg_syuttyou2.png") no-repeat;
      background-size: 100%;
      background-position: bottom; }
    @media (max-width: 679px) {
      .box_syuttyo .box {
        background: url("../../images/index/bg_syuttyou_sp.png") no-repeat;
        background-size: 100%;
        background-position: top; }
        .box_syuttyo .box:after {
          background: url("../../images/index/bg_syuttyou_sp2.png") no-repeat;
          background-size: 100%;
          background-position: bottom; } }
    .box_syuttyo .box .image {
      display: block;
      width: clamp(180px, 20vw, 350px);
      margin: 0 auto 15px auto; }
      .box_syuttyo .box .image img {
        width: 100%;
        height: auto; }
    .box_syuttyo .box strong {
      display: block;
      font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
      color: #7E334E;
      font-size: clamp(16px, 2vw, 25px);
      line-height: 2;
      padding: 0 1rem 1rem 1rem;
      text-shadow: 0px 0px 5px white, 0px 0px 5px white, 0px 0px 5px white; }
      @media (max-width: 679px) {
        .box_syuttyo .box strong {
          line-height: 1.6;
          margin-bottom: 0.5rem; } }
    .box_syuttyo .box p {
      display: block;
      margin-bottom: 1.5rem;
      font-size: clamp(11px, 1.2vw, 15px); }
    .box_syuttyo .box .btn {
      display: block; }
      .box_syuttyo .box .btn a {
        display: block;
        background: linear-gradient(#b88e9d 0%, #803651 72.41%, #7e334e 100%);
        border: 2px solid #fff;
        box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3);
        width: fit-content;
        color: #FFF;
        font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
        font-size: clamp(13px, 1.8vw, 23px);
        text-decoration: none;
        padding: 1%;
        text-align: center;
        width: 80%;
        max-width: 450px;
        border-radius: 50px;
        transition: all linear 0.3s;
        margin: auto; }
        .box_syuttyo .box .btn a:hover {
          opacity: 0.8; }
      @media (max-width: 679px) {
        .box_syuttyo .box .btn {
          margin: 0; }
          .box_syuttyo .box .btn a {
            padding: 8px;
            margin: auto; } }

.line-tel {
  display: flex;
  width: 100%;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: clamp(30px, 8%, 150px); }
  @media (max-width: 1520px) {
    .line-tel {
      padding-left: 15px;
      padding-right: 15px; } }
  .line-tel div {
    width: 50%; }
    .line-tel div a {
      display: block;
      width: 100%;
      transition: all linear 0.3s; }
      .line-tel div a img {
        width: 100%;
        height: auto; }
      .line-tel div a:hover {
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.3); }
    .line-tel div.tel {
      padding-right: 10px; }
    .line-tel div.line {
      padding-left: 10px; }
  @media (max-width: 679px) {
    .line-tel {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 0;
      margin-bottom: 0; }
      .line-tel div.tel {
        width: 70%;
        padding-right: 0; }
      .line-tel div.line {
        width: 30%;
        padding-left: 0; } }

.commingsoon {
  display: block;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4%;
  margin-bottom: 4%;
  border: #bfb17a 5px double;
  padding: clamp(60px, 8%, 120px) 15px; }
  @media (max-width: 840px) {
    .commingsoon {
      margin-left: 20px;
      margin-right: 20px; } }
  .commingsoon h4 {
    display: block;
    font-family: "Great Vibes", cursive;
    font-size: clamp(40px, 4.5vw, 65px);
    color: #AF9D57;
    opacity: 0.5;
    text-align: center; }
  .commingsoon p {
    display: block;
    color: #AF9D57;
    text-align: center; }

/* not found */
#notfound {
  display: block;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4%;
  margin-bottom: 4%;
  border: #bfb17a 5px double;
  padding: clamp(60px, 8%, 120px) 15px; }
  @media (max-width: 840px) {
    #notfound {
      margin-left: 20px;
      margin-right: 20px; } }
  #notfound h2 {
    display: block;
    font-family: "Great Vibes", cursive;
    font-size: clamp(40px, 4.5vw, 65px);
    color: #AF9D57;
    opacity: 0.5;
    text-align: center; }
  #notfound p {
    display: block;
    color: #AF9D57;
    text-align: center; }

/*--------------------------------------------------------------------
(otoiawase.php)
--------------------------------------------------------------------*/
div#otoiawase {
  max-width: 1220px;
  margin: 0 auto 5% auto;
  box-sizing: border-box; }
  @media (max-width: 1520px) {
    div#otoiawase {
      padding-left: 15px;
      padding-right: 15px; } }
  div#otoiawase .otoiawase_top {
    display: block;
    border: #AF9D57 5px double;
    text-align: center;
    padding: clamp(30px, 5%, 60px) 20px;
    background: rgba(175, 157, 87, 0.1);
    font-weight: bold;
    color: #57b597;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif"; }
    div#otoiawase .otoiawase_top a {
      color: #57b597;
      text-decoration: none;
      margin-right: 15px; }
  div#otoiawase table {
    width: 100%;
    margin: 20px auto; }
    div#otoiawase table tr td {
      font-family: "Noto Sans JP", sans-serif;
      border: rgba(175, 157, 87, 0.5) 1px solid;
      padding: 15px; }
      div#otoiawase table tr td.form_index {
        background: rgba(175, 157, 87, 0.1);
        vertical-align: top; }
      div#otoiawase table tr td.list_value {
        background: rgba(255, 255, 255, 0.5); }
      div#otoiawase table tr td textarea {
        box-sizing: border-box;
        padding: 3px;
        width: 100%; }
      div#otoiawase table tr td input[type="text"], div#otoiawase table tr td input[type="tel"], div#otoiawase table tr td input[type="email"] {
        box-sizing: border-box;
        padding: 3px;
        width: 100%;
        box-sizing: border-box; }
      div#otoiawase table tr td input[type="submit"] {
        padding: 10px 30px;
        background: #AF9D57;
        border-radius: 30px;
        color: #FFF;
        font-weight: bold;
        border: none; }
    div#otoiawase table tr.style_tel td input[type="text"] {
      max-width: 80px; }
    div#otoiawase table tr.style_field6 td.form_index, div#otoiawase table tr.style_field27 td.form_index, div#otoiawase table tr.style_field3 td.form_index {
      background: none;
      border: none;
      font-weight: bold;
      color: #57b597;
      padding-top: 30px; }
      div#otoiawase table tr.style_field6 td.form_index:before, div#otoiawase table tr.style_field27 td.form_index:before, div#otoiawase table tr.style_field3 td.form_index:before {
        font-family: "Font Awesome 6 Free";
        content: "\f13a"; }
    div#otoiawase table tr.style_field5 td.form_index {
      background: none;
      border: none;
      text-align: center;
      padding-top: 30px; }
    div#otoiawase table tr.tr_submit td.td_submit {
      background: none;
      border: none;
      text-align: center; }
    @media (max-width: 679px) {
      div#otoiawase table tr td {
        display: block;
        width: 100%; } }

.facility01 {
  display: block;
  background: url("../../images/facility/bg1.png") no-repeat;
  background-size: cover;
  background-position: center center;
  padding: clamp(30px, 5%, 60px);
  text-align: center; }
  @media (max-width: 679px) {
    .facility01 {
      background-position: top right; } }
  .facility01 strong {
    display: block;
    color: #5D2469;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: clamp(22px, 3vw, 45px);
    line-height: 1.6;
    margin-bottom: clamp(15px, 5%, 30px); }
  .facility01 img {
    width: 100%;
    max-width: 500px;
    display: block;
    margin: auto; }

/*追加（特典）*/
.tokuten6 h3 {
  display: block;
  text-align: center;
  font-family: "Noto Serif", serif;
  font-size: clamp(20px, 2.8vw, 32px);
  font-weight: bold; }
  .tokuten6 h3 span {
    color: #57b597;
    font-family: "Noto Serif", serif;
    font-size: clamp(25px, 3.5vw, 40px);
    font-weight: bold; }
.tokuten6 p.center {
  display: block;
  font-size: 13px;
  text-align: center; }
.tokuten6 ul {
  display: flex;
  flex-wrap: wrap;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-top: 3%; }
  .tokuten6 ul li {
    width: 29.333%;
    margin: 2%;
    position: relative; }
    .tokuten6 ul li .cir {
      display: flex;
      background: #57b597;
      width: 70px;
      height: 70px;
      border-radius: 50px;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: -15px;
      left: -10px;
      z-index: 1; }
      .tokuten6 ul li .cir em {
        display: block;
        font-family: "Noto Serif", serif;
        color: #fff;
        font-size: 18px;
        font-weight: bold;
        font-style: normal;
        text-align: center;
        line-height: 1.2; }
        .tokuten6 ul li .cir em span {
          display: block;
          font-size: 25px; }
    .tokuten6 ul li .photo {
      display: block; }
      .tokuten6 ul li .photo img {
        width: 100%;
        height: auto; }
    .tokuten6 ul li strong {
      display: block;
      font-family: "Noto Serif", serif;
      font-size: clamp(15px, 2vw, 25px);
      text-align: center;
      padding: 8px 0;
      line-height: 1.4; }
  @media (max-width: 679px) {
    .tokuten6 ul {
      flex-wrap: wrap;
      padding-left: 5px; }
      .tokuten6 ul li {
        width: 46%; }
        .tokuten6 ul li .cir {
          width: 55px;
          height: 55px;
          top: -15px;
          left: -10px; }
          .tokuten6 ul li .cir em {
            font-size: 15px; }
            .tokuten6 ul li .cir em span {
              font-size: 20px; } }

.flex-image {
  display: flex;
  justify-content: center;
  margin-top: 20px; }
  @media (max-width: 679px) {
    .flex-image {
      margin-top: 10px; } }
  .flex-image > div {
    padding: 1px; }
  @media (max-width: 679px) {
    .flex-image > div:not(:first-of-type) {
      display: none; } }
