.nav-image ul li {
  height: 10.5rem;
  margin: 0 .2rem; }
  @media only screen and (max-width: 767px) {
    .nav-image ul li {
      height: 4.8rem; } }
  .nav-image ul li img {
    width: auto;
    height: 10.5rem;
    border: .3rem solid transparent; }
    @media only screen and (max-width: 767px) {
      .nav-image ul li img {
        height: 4.8rem; } }
  .nav-image ul li.slick-active img {
    box-sizing: border-box;
    border-color: #74b400; }

.div-image {
  margin-bottom: 1rem; }
  .div-image .slick-arrow {
    position: absolute;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(34, 51, 34, 0.5);
    top: 50%;
    margin-top: -2rem;
    z-index: 5;
    color: #fff; }
    @media only screen and (max-width: 767px) {
      .div-image .slick-arrow {
        width: 2.4rem;
        height: 2.4rem;
        font-size: 1rem; } }
    .div-image .slick-arrow.slick-prev {
      left: 1rem; }
      @media only screen and (max-width: 767px) {
        .div-image .slick-arrow.slick-prev {
          left: .5rem; } }
    .div-image .slick-arrow.slick-next {
      right: 1rem; }
      @media only screen and (max-width: 767px) {
        .div-image .slick-arrow.slick-next {
          right: .5rem; } }

.dl-outline {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee; }
  .dl-outline > div {
    padding: 2.5rem 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    position: relative;
    border-bottom: 1px solid rgba(238, 238, 238, 0.5); }
    .dl-outline > div:nth-last-of-type(1) {
      border: none; }
    @media only screen and (max-width: 767px) {
      .dl-outline > div {
        padding: 1.2rem 0; } }
  .dl-outline dd {
    width: 100%;
    padding: 0 3rem;
    text-align: left;
    font-size: 1.6rem; }
    @media only screen and (max-width: 767px) {
      .dl-outline dd {
        font-size: 1.4rem;
        line-height: 1.4;
        padding: 0 1.5rem; } }
    @media only screen and (max-width: 767px) {
      .dl-outline dd {
        font-size: 1.2rem;
        padding: 0 1.5rem; } }
  .dl-outline dt {
    width: 15rem;
    font-family: "Bodoni Moda", serif;
    border-right: 1px solid rgba(238, 238, 238, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    flex-shrink: 0;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.2;
    color: #0b861f;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .dl-outline dt {
        width: 8rem;
        font-size: 1.1rem; } }

.fig-plan {
  width: 100%;
  text-align: center; }

.table-price table {
  width: 100%;
  border-top: 1px solid #eee; }
  .table-price table th, .table-price table td {
    padding: 2rem 0;
    border-bottom: 1px solid #eee;
    text-align: center;
    font-size: 1.6rem;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .table-price table th, .table-price table td {
        font-size: 1.3rem;
        padding: 1.5rem .5rem; }
        .table-price table th p, .table-price table td p {
          line-height: 1.3; } }
    .table-price table th small, .table-price table td small {
      font-size: 1.1rem; }
      @media only screen and (max-width: 767px) {
        .table-price table th small, .table-price table td small {
          font-size: .9rem; } }
  .table-price table tr:nth-of-type(2n) td, .table-price table tr:nth-of-type(2n) th {
    background: rgba(238, 238, 238, 0.25); }
  .table-price table tr.soldout td, .table-price table tr.soldout th {
    background: #666;
    color: #555; }

.container-insta-ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 2.8rem;
  font-weight: 400;
  padding-bottom: 4rem; }
  @media only screen and (max-width: 767px) {
    .container-insta-ttl {
      font-size: 2.1rem;
      line-height: 1.3;
      text-align: center;
      padding-bottom: 2rem; } }
  .container-insta-ttl span {
    color: #74b400;
    font-size: 1.6rem; }
    @media only screen and (max-width: 767px) {
      .container-insta-ttl span {
        font-size: 1.4rem;
        margin-bottom: .8rem; } }
.container-insta .slick-arrow {
  position: absolute;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: rgba(34, 51, 34, 0.5);
  top: 50%;
  margin-top: -2rem;
  z-index: 5;
  color: #fff; }
  @media only screen and (max-width: 767px) {
    .container-insta .slick-arrow {
      width: 2.4rem;
      height: 2.4rem;
      font-size: 1rem; } }
  .container-insta .slick-arrow.slick-prev {
    left: 1rem; }
    @media only screen and (max-width: 767px) {
      .container-insta .slick-arrow.slick-prev {
        left: .5rem; } }
  .container-insta .slick-arrow.slick-next {
    right: 1rem; }
    @media only screen and (max-width: 767px) {
      .container-insta .slick-arrow.slick-next {
        right: .5rem; } }
.container-insta .div-insta {
  max-width: 106.8rem;
  margin: 0 auto; }
  .container-insta .div-insta-item {
    max-width: 32.6rem;
    margin: 0 1.5rem; }
    @media only screen and (max-width: 767px) {
      .container-insta .div-insta-item {
        margin: 0 1rem; } }
.container-insta-box {
  max-width: 100rem;
  margin: 0 auto;
  border: 1px solid rgba(34, 51, 34, 0.15);
  border-radius: .3rem;
  padding: 4rem 3rem 0 3rem; }
  @media only screen and (max-width: 1024px) {
    .container-insta-box {
      margin: 0 1.5rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .container-insta-box {
      padding: 1.5rem; } }

  .container-insta-box-inner {
    padding-right: 35rem;
    position: relative;
    overflow: hidden; }
    @media only screen and (max-width: 1024px) {
      .container-insta-box-inner {
        padding-right: 28rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .container-insta-box-inner {
      padding: 0;
      display: flex;
      flex-direction: column-reverse; } }

  .container-insta-box-ttl {
    font-size: 2.2rem;
    line-height: 1.4;
    font-weight: 400;
    text-align: center;
    padding-bottom: 3rem;
    color: #0b861f;
    letter-spacing: .3rem; }
    @media only screen and (max-width: 767px) {
      .container-insta-box-ttl {
        font-size: 1.6rem;
        letter-spacing: .1rem;
        padding-bottom: 1.5rem; } }
  .container-insta-box-fig {
    width: 34.6rem;
    position: absolute;
    right: 0;
    top: 0;
    padding: 1rem; }
    @media only screen and (max-width: 1024px) {
      .container-insta-box-fig {
        width: 28rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .container-insta-box-fig {
      width: 18rem;
      height: 16rem;
      position: relative;
      margin: 0 auto;
      top: auto;
      right: auto; } }

    .container-insta-box-fig:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      background: url("../../img/yumachi/cover_phone.png") no-repeat 0% 0%;
      background-size: 100% auto; }
  .container-insta-box-com {
    font-family: "Poppins", "Noto Sans JP", sans-serif;
    padding-bottom: 3rem; }
    @media only screen and (max-width: 767px) {
      .container-insta-box-com {
        padding-bottom: 0; } }
    .container-insta-box-com-txt {
      background: #E9F5DD;
      border-radius: 1rem;
      font-size: 1.5rem;
      text-align: left;
      padding: 1.8rem;
      margin-right: 2.5rem;
      position: relative; }
      @media only screen and (max-width: 1024px) {
        .container-insta-box-com-txt {
          font-size: 1.4rem;
          line-height: 1.4; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .container-insta-box-com-txt {
      font-size: 1.3rem;
      margin: 0;
      z-index: 2; } }

      .container-insta-box-com-txt:after {
        content: "";
        border-width: 1.3rem;
        border-style: solid;
        border-color: transparent transparent transparent #E9F5DD;
        position: absolute;
        right: -2.5rem;
        top: 50%;
        margin-top: -1.3rem; }
        @media only screen and (max-width: 767px) {
          .container-insta-box-com-txt:after {
            border-color: transparent transparent #E9F5DD;
            font-size: 1rem;
            margin-top: 0;
            right: 50%;
            margin-right: -1rem;
            top: -1.9rem; } }
    .container-insta-box-com-btn {
      padding-top: 2rem; }
      @media only screen and (max-width: 767px) {
        .container-insta-box-com-btn {
          padding-top: 1.5rem; } }
      .container-insta-box-com-btn a {
        width: 28rem;
        height: 4rem;
        font-size: 1.4rem;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 5rem;
        background: #74b400;
        color: #fff;
        margin: 0 auto; }
        @media only screen and (max-width: 767px) {
          .container-insta-box-com-btn a {
            width: 24rem;
            height: 3.6rem;
            font-size: 1.1rem; } }

#map {
  height: 48rem;
  margin-bottom: 1rem; }
  @media only screen and (max-width: 767px) {
    #map {
      height: 30rem; } }

.popup-bubble {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-50%, -100%);
  background-color: #fff;
  padding: 1.5rem;
  border-radius: .5rem;
  font-family: sans-serif;
  overflow-y: auto;
  box-shadow: 0px 2px 10px 1px rgba(0, 0, 0, 0.5); }
  @media only screen and (max-width: 767px) {
    .popup-bubble {
      padding: 1rem; } }
  .popup-bubble p {
    font-size: 1.6rem;
    margin-bottom: .5rem; }
    @media only screen and (max-width: 767px) {
      .popup-bubble p {
        font-size: 1.2rem; } }
  .popup-bubble a {
    color: #fff;
    background: #74b400;
    border-radius: .3rem;
    padding: .3rem 1rem;
    display: flex;
    justify-content: center;
    align-items: center; }
    .popup-bubble a:hover {
      background: #026212; }

.popup-bubble-anchor {
  position: absolute;
  width: 100%;
  bottom: 5rem;
  left: 0; }
  @media only screen and (max-width: 767px) {
    .popup-bubble-anchor {
      bottom: 4rem; } }

.popup-bubble-anchor::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-50%, 0);
  width: 0;
  height: 0;
  border-left: .6rem solid transparent;
  border-right: .6rem solid transparent;
  border-top: .6rem solid #fff; }

.popup-container {
  cursor: auto;
  height: 0;
  position: absolute;
  width: 200px; }

.dl-image {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap; }
  .dl-image div {
    width: 33.333%;
    padding: 1.5rem; }
    @media only screen and (max-width: 767px) {
      .dl-image div {
        width: 100%;
        padding: 0 0 3rem; } }
    .dl-image div dt {
      text-align: center;
      font-size: 2.2rem;
      color: #026212;
      font-weight: 400;
      padding-bottom: 1.5rem; }
      .dl-image div dt figure {
        margin-bottom: 1.5rem; }
    .dl-image div dd {
      font-family: "Poppins", "Noto Sans JP", sans-serif;
      font-size: 1.4rem;
      line-height: 1.8;
      text-align: left;
      padding: 0 .5rem; }

.container-inner-txt iframe {
  width: 100%;
  height: 48rem;
  margin-bottom: 1rem; }
  @media only screen and (max-width: 767px) {
    .container-inner-txt iframe {
      height: 20rem; } }

@media only screen and (max-width: 767px) {
  .yumachi .header-logo {
    height: 6rem; } }
.yumachi .header-logo-img {
  width: 67%;
  margin-top: 1rem; }
  @media only screen and (max-width: 767px) {
    .yumachi .header-logo-img {
      margin-top: .3rem; } }
.yumachi .header-home {
  position: fixed;
  right: 1rem;
  top: -1px;
  z-index: 10; }
  @media only screen and (max-width: 1024px) {
    .yumachi .header-home {
      right: 8rem; } }
  @media only screen and (max-width: 1024px) and (max-width: 767px) {
    .yumachi .header-home {
      display: none; } }

  .yumachi .header-home a {
    width: 25rem;
    height: 3rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #fff;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 0 0 .5rem .5rem;
    color: #0b861f;
    font-size: 1.5rem;
    box-shadow: 0 0 1.5rem 0 rgba(34, 51, 34, 0.05); }
.yumachi .header-tab:after {
  background-image: url("../../img/yumachi/bg_footer_yumachi.jpg");
  background-position: 50% 50%; }
