@charset "utf-8";

html {
  font-size: 30px;
}
body {
  font-family: '秀英丸ゴシック L', 'Shuei MaruGo L', sans-serif;
  color: #1e1d1d;
}
@media screen and (max-width: 2000px) {
  html {
    font-size: 1.5vw;
  }
}


header {
  background: #fffdf8;
  padding: .83rem 0;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 100;
}
.header_content {
  width: 94.35%;
  max-width: 1887px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.logo_h {
  max-width: 7.6vw;
}
.g_navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  font-size: .67rem;
  letter-spacing: .3em;
  width: 61.3%;
}
.g_navi > * {
  display: flex;
  align-items: center;
}
.g_navi > *::before {
  content: '●';
  display: inline-block;
  font-size: .5rem;
  color: #eadecd;
}

.btn01 {
  background: #1e1d1d;
  color: #FFF;
  font-size: .67rem;
  padding: .57rem 1.73rem .57rem 1.5rem;
  border-radius: 10rem;
  letter-spacing: .1em;
  display: flex;
  align-items: center;
  font-family: 'リュウミン L-KL', 'Ryumin Light KL', serif;
}
.btn01::before {
  content: '';
  display: inline-block;
  background: url(../images/bg_mail.webp) no-repeat center/cover;
  width: .7rem;
  height: .57rem;
  margin-right: .63rem;
}

.mv {
  height: 50.85vw;
  max-height: 1017px;
  position: relative;
}
.mv img {
    margin-top: 5.7%;
}
.txt02 img {
    width: 7px;
    margin-bottom: 1rem;
}
/*
.mv .title {
  position: absolute;
  width: 39.1%;
  max-width: 782px;
  left: 50%;
  top: 11.03rem;
  transform: translateX(-50%);
  z-index: 99;
}
.mv .bg > * {
  left: 0;
  top: 0;
  transform: scale(1.1);
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
.mv .bg .active {
  animation: zoomUp 4s;
}
*/

.concept {
    z-index: 99;
    position: relative;
}
.concept .container {
    padding: 6rem 0;
    margin: -7.9vw auto 5vw; 
    border-top-left-radius: 1000px 150px;
    border-top-right-radius: 1000px 150px;
    background: url(../images/bg_concept.webp) no-repeat top / cover;
}
.ttl01 {
  font-family: 'リュウミン L-KL', 'Ryumin Light KL', serif;
  font-size: 1.17rem;
  margin-bottom: 1rem;
  letter-spacing: .5em;
  margin-right: -.5em;
  color: #fff;
}
.ttl01::before {
  content: '';
  display: block;
  margin: 0 auto .1rem;
  transform: translateX(-.25em);
}
.concept .ttl01::before {
  width: 7.5rem;
  height: 1.07rem;
  background: url(../images/ttl_concept.webp) no-repeat center/contain;
}
.concept .txt01 {
  max-width: 41.77%;
  margin: 0 auto 3.47rem;
  color: #494a4e;
}
.concept .txt02 {
  font-size: 1.2rem;
  line-height: 1.8;
  letter-spacing: .1em;
  font-family: 'リュウミン L-KL', 'Ryumin Light KL', serif;
  color: #fff;
}

.cta01 {
  display: flex;
  justify-content: center;
  align-items: center;
}
.cta01 > * {
  width: 14.33rem;
  margin: 0 .6rem;
}
.cta01 a {
    display: block;
    color: #fff;
    font-size: 140%;
    position: relative;
    padding: 1.5vw 0 1.5vw 5.5vw;
    border: 1px solid #000;
    border-radius: 120px;
    box-sizing: border-box;
}
.cta01 a:first-child {
    background: #d4553b;
}
.cta01 a:last-child {
    background: #7aadd4;
}
.cta01 a:first-child:before,
.cta01 a:last-child:before {
    position: absolute;
    display: block;
    content: "";
    width: 5vw;
    height: 5vw;
    top: 50%;
    left: 8px;
    transform: translateY(-50%);
}
.cta01 a:first-child:before {
    background: url(../images/btn_web.webp) center center / contain no-repeat;
}
.cta01 a:last-child:before {
    background: url(../images/btn_tel.webp) center center / contain no-repeat;
}

.shop {
  padding: 4.6rem 0 3.4rem;
}
.shop .ttl01::before {
  width: 4.3rem;
  height: 1.03rem;
  background: url(../images/ttl_shop.webp) no-repeat center/contain;
}
.shop .container {
  background: #f9f3ec;
  display: flex;
  flex-wrap: wrap;
}
.shop .container > * {
  width: 50%;
  box-sizing: border-box;
}
.shop .content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #494a4e;
  padding: 0 4.8rem;
  font-family: 'リュウミン L-KL', 'Ryumin Light KL', serif;
}
.shop .txt01 {
  font-size: 1.8rem;
  letter-spacing: .1em;
  margin-bottom: 2.7rem;
}
.shop .ttl02 {
  background: #bca992;
  padding: .3rem .8rem;
  border-radius: 10rem;
  align-self: flex-start;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.73rem;
}
.shop .ttl02 span {
  display: inline-block;
  font-size: 1.17rem;
  letter-spacing: .5em;
  color: #FFF;
  font-family: 'DNP 秀英丸ゴシック Std', sans-serif;
  margin-right: -.5em;
  line-height: 1;
}
.shop .txt02 {
  font-size: 1.17rem;
  letter-spacing: .1em;
  font-family: 'DNP 秀英丸ゴシック Std', sans-serif;
  text-align: left;
  width: 100%;
}
.shop .txt02 span {
  font-size: .83rem;
  letter-spacing: .1em;
}

.cta01.p02 {
  margin-bottom: 3.5rem;
}

.menu {
  background: url(../images/bg_menu.webp) no-repeat top center/cover;
  padding: 2.97rem 0 2.23rem;
}
.menu .ttl01 {
  margin-bottom: 1.18rem;
}
.menu .ttl01::before {
  background: url(../images/ttl_menu.webp) no-repeat center/contain;
  width: 11rem;
  height: 1.07rem;
}
.menu .txt01 {
  font-size: 1.33rem;
  letter-spacing: .1em;
  line-height: 1.25;
  margin-bottom: 5%;
}
.menu .list_menu {
  width: 72.65%;
  max-width: 1453px;
  margin: 0 auto 2.2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}
.menu .list_menu > * {
  width: 24%;
  margin-bottom: 1.5%;
  position: relative;
}

.menu .list_menu img.menu_icon {
    position: absolute;
    width: 30%;
    height: 37%;
    top: -10%;
    right: -8%;
    z-index: 9;
}

.berthday_gift {
    padding: 2.23rem 0 0;
    width: 50%;
    margin: 0 auto;
}
.berthday_gift div:nth-child(2) {
    margin-top: 30px;
}

.studio {
  background: url(../images/bg_studio.webp) no-repeat top center/cover;
  padding: 2rem 0 1.17rem;
}
.studio .ttl01 {
  margin-bottom: .97rem;
}
.studio .ttl01::before {
  width: 6.1rem;
  height: 1.07rem;
  background: url(../images/ttl_studio.webp) no-repeat center/contain;
}
.studio .txt01 {
  font-size: 1.33rem;
  letter-spacing: .1em;
  margin-bottom: 2.63rem;
}
.studio .img01 {
  max-width: 46.4%;
  margin-bottom: 2.73rem;
}
.studio .txt02 {
  font-family: 'リュウミン L-KL', 'Ryumin Light KL', serif;
  font-size: 1.6rem;
  letter-spacing: .1em;
  margin-bottom: 4.43rem;
  line-height: 1.33;
}
.studio .container {
  width: 90%;
  max-width: 1800px;
  margin: 0 auto 4.5rem;
}
.studio .box_studio01 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.studio .box_studio01:nth-of-type(2n) {
  flex-direction: row-reverse;
}
.studio .box_studio01:not(:last-of-type) {
  margin-bottom: 1.57rem;
}
.studio .box_studio01 > * {
  width: 50%;
}
.studio .box_studio01 .content {
  padding: 0 1.87rem 0;
  text-align: left;
  letter-spacing: .1em;
  box-sizing: border-box;
}
.studio .box_studio01 .content.img_box {
    padding: 0;
    letter-spacing: 0;
}
.studio .box_studio01 .ttl02 {
  font-family: 'リュウミン L-KL', 'Ryumin Light KL', serif;
  font-size: 1.5rem;
  margin-bottom: .96rem;
}
.studio .box_studio01 .txt03 {
  font-size: 1rem;
  line-height: 1.71;
}
.gallery_box ul {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
}
.gallery_box ul li {
    margin: 0 1% 1% 0;
    position: relative;
    width: 23%;
}
.gallery_box ul li img:hover {
  opacity: 0.7;
}
.gallery_box ul li a:after {
    position: absolute;
    right: 5px;
    bottom: 5px;
    width: 15%;
    height: 29px;
    content: "";
    background: url(../images/gallery/zoom_icon.png) no-repeat right bottom;
    background-size: contain;
}
.gallery_box {
    margin-top: 10px;
}

.plan {
  background: url(../images/bg_plan.webp) no-repeat top center/cover;
  padding: 4.8rem 0 2.37rem;
}
.plan .ttl01::before {
  background: url(../images/ttl_plan.webp) no-repeat center/contain;
  width: 4.27rem;
  height: 1.1rem;
}
.plan .list_tabs01 {
  display: flex;
  justify-content: center;
  margin-bottom: 4.13rem;
}
.plan .list_tabs01 button {
  border: .07rem solid #8c7e6c;
  color: #8c7e6c;
  background: #FFF;
  font-size: 1.17rem;
  padding: .63rem;
  width: 9.77rem;
  border-radius: .37rem;
  margin: 0 1.73rem;
  cursor: pointer;
}
.plan .list_tabs01 button.active,
.plan .list_tabs01 button:hover {
  color: #FFF;
  background: #8c7e6c;
}
.plan .tab01 {
  display: none;
}
.plan .tab01.active {
  display: block;
}
.plan .list_plan01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 2.8rem;
}
.plan .list_plan01 > * {
    width: 32%;
    margin: 0 10px 2%;
}
.plan .tab01 .cta01:not(:last-of-type) {
  margin-bottom: 2.8rem;
}

.plan .container {
    width: 81.25%;
    max-width: 1620px;
    margin: auto;
}

.wood_panel_banner {
    margin: 4% auto 5%;
}

.news {
  padding: 5.33rem 0 0;
}
.news .ttl01::before {
  background: url(../images/ttl_news.webp) no-repeat center/contain;
  width: 6rem;
  height: 1.1rem;
}
.news .inner {
    margin: 0 auto;
    width: 90%;
    max-width: 1800px;
}
.news .column_link {
    font-size: 80%;
    display: block;
    text-align: center;
    border: 1px solid #aaa9aa;
    margin: 0 auto 0;
    padding: 20px 0;
}
.news .column_link:hover {
    opacity: 0.7;
}
.news .column_link span {
	position: relative;
	padding: 0 0 2px 16px;
	color: #000;
	text-decoration: none;
}
.news .column_link span:before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: -105%;
	left: 3px;
	margin: auto;
	width: 10px;
	height: 10px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform: rotate(45deg);
}
.news .news_box ul {
    display: flex;
    flex-wrap: wrap;
    margin: 20px auto 0;
    padding: 0 0 0 1%;
}
.news .news_box li {
    width: 24%;
    padding: 15px;
    margin: 0 1% 0 0;
    box-sizing: border-box;
    text-align: left;
}
.news .news_box li:nth-child(4n) {
    margin: 0;
}
.news .news_box li.pickup {
  background: #fbf4e2;
}
.news .news_box li .wp_ph {
    width: 100%;
    height: 14vw;
    overflow: hidden;
    margin: 0 auto 25px;
    position: relative;
}
.news .news_box li .wp_ph img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.news .news_box .minbox .data {
    text-align: left;
    margin: 0 auto 12px;
    color: #ab8429;
    font-size: 60%;
}
.news .news_box .minbox span {
    background: #ab8429;
    margin-right: 5px;
    padding: 3px 8px;
    color: #fff;
    width: 40px;
    text-align: center;
}
.news .news_box h3 {
    font-size: 80%;
}

.access {
  padding: 5.33rem 0 4.4rem;
}
.access .ttl01::before {
  background: url(../images/ttl_access.webp) no-repeat center/contain;
  width: 6rem;
  height: 1.1rem;
}
.access .container {
  width: 90%;
  max-width: 1800px;
  display: flex;
  justify-content: space-between;
  margin: auto;
}
.access .map {
  width: 45.72%;
}
.access .map iframe {
  width: 100%;
  height: 100%;
}
.access .content {
  width: 50%;
}
.access .tbl01 {
  width: 88.89%;
  margin: auto;
  line-height: 1.5;
  border-collapse: collapse;
}
.access .tbl01 th {
  vertical-align: top;
}
.access .tbl01 th span {
  display: block;
  width: 4.83rem;
  padding: .27rem;
  white-space: nowrap;
  background: #dfd4cc;
  border-radius: .33rem;
  text-align: center;
}
.access .tbl01 td {
  text-align: left;
  padding-left: .87rem;
}
.access .tbl01 tr:not(:last-of-type) > * {
  padding-bottom: .87rem;
}

footer {
  background: #1e1d1d;
  padding: 2.4rem 0;
}
.footer_content {
  width: 90%;
  max-width: 1800px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer_content .logo_f {
  margin-left: 6.03rem;
  max-width: 8.2rem;
}
.list_sns {
  display: flex;
  flex-direction: column;
}
.list_sns > * {
  width: 9.67rem;
}
.list_sns > *:not(:last-of-type) {
  margin-bottom: .7rem;
}
.list_sns a {
  display: flex;
  align-items: center;
  width: 100%;
  height: 1.57rem;
  background: #fcf5e9;
  border-radius: 10rem;
  text-align: center;
  font-size: .6rem;
  color: #1e1d1d;
  padding-left: 2.27rem;
  box-sizing: border-box;
}
.list_sns a::before {
  content: '';
  display: inline-block;
}
.list_sns .mail::before {
  width: .83rem;
  height: .63rem;
  background: url(../images/icn_mail.webp) no-repeat center/contain;
  margin-right: .77rem;
}
.list_sns .insta::before {
  width: .8rem;
  height: .8rem;
  background: url(../images/icn_insta.webp) no-repeat center/contain;
  margin-right: .77rem;
}
.list_sns .fb::before {
  width: .7rem;
  height: .7rem;
  background: url(../images/icn_fb.webp) no-repeat center/contain;
  margin-right: .87rem;
}

.special-campaign .campaign_btn {
    margin: 5% auto 15%;
    max-width: 50%;
}

@media screen and (min-width: 641px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .pc {
    display: none;
  }
  html {
    font-size: 3.75vw;
  }

  header {
    background: none;
    padding: 4.75vw 0 0;
  }
  .header_content {
    width: 93.38%;
  }
  .logo_h {
    max-width: 16.5vw;
  }

  .hamburger {
    width: 12.38vw;
    height: 11.13vw;
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background: #1e1d1d;
    border-radius: 0 0 0 5.13vw;
    padding-top: 2.5vw;
    box-sizing: border-box;
  }
  .hamburger span {
    display: block;
    width: 6.13vw;
    height: .38vw;
    background-color: #FFF;
  }
  .hamburger span:not(:last-child) {
    margin-bottom: 2.25vw;
  }

  .g_navi {
    display: none;
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    background: #FFF;
    padding: 24.5vw 8.75vw 12.13vw;
    flex-direction: column;
    align-items: flex-start;
    font-size: 1.33rem;
    box-sizing: border-box;
  }
  .g_navi::before {
    content: '';
    display: block;
    width: 100%;
    height: 14.5vw;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/sp/logo_hamburger.webp) no-repeat 3.13vw 4.88vw/16.5vw 6.63vw #1e1d1d;
    border-radius: 0 0 4vw 4vw;
  }
  .g_navi > *::before {
    display: none;
  }
  .g_navi > *:not(:last-of-type) {
    border-bottom: 1px solid #ddc8b3;
    padding: 4.63vw 0 2.5vw;
    width: 100%;
  }
  .g_navi > *:last-of-type {
    padding: 9.63vw 0 0;
    width: 100%;
  }
  .g_navi .list_sns {
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }
  .g_navi .list_sns > * {
    width: 39vw;
    margin: 0 !important;
  }
  .g_navi .list_sns a {
    height: 1.67rem;
    font-size: .63rem;
    padding: 0;
    justify-content: center;
    letter-spacing: 0;
  }
  .g_navi .list_sns .mail::before {
    margin-right: .33rem;
  }
  .g_navi .list_sns .insta::before {
    margin-right: .87rem;
  }
  .g_navi a[href^='#']::after {
    content: '';
    display: block;
    margin-top: .37rem;
  }
  .g_navi a[href*='top']::after {
    background: url(../images/sp/navi_top.webp) no-repeat center/contain;
    width: 4.88vw;
    height: 1.38vw;
  }
  .g_navi a[href*='concept']::after {
    background: url(../images/sp/navi_concept.webp) no-repeat center/contain;
    width: 11.63vw;
    height: 1.38vw;
  }
  .g_navi a[href*='shop']::after {
    background: url(../images/sp/navi_shop.webp) no-repeat center/contain;
    width: 6.75vw;
    height: 1.38vw;
  }
  .g_navi a[href*='menu']::after {
    background: url(../images/sp/navi_menu.webp) no-repeat center/contain;
    width: 17.38vw;
    height: 1.38vw;
  }
  .g_navi a[href*='studio']::after {
    background: url(../images/sp/navi_studio.webp) no-repeat center/contain;
    width: 9.75vw;
    height: 1.38vw;
  }
  .g_navi a[href*='plan']::after {
    background: url(../images/sp/navi_plan.webp) no-repeat center/contain;
    width: 6.5vw;
    height: 1.38vw;
  }
  .g_navi a[href*='access']::after {
    background: url(../images/sp/navi_access.webp) no-repeat center/contain;
    width: 9.63vw;
    height: 1.38vw;
  }

  .mv {
    height: auto;
  }
  .mv img {
    margin-top: 0;
  }

  .concept {
      margin: 0 auto 10vw;
  }
  .concept .container {
    background-image: url(../images/sp/bg_concept.webp);
    padding: 16vw 0 25vw;
  }

  /*
  .mv .title {
    position: absolute;
    width: 65%;
    left: 50%;
    top: 16rem;
    transform: translateX(-50%);
    z-index: 100;
  }*/

  .ttl01 {
    font-size: .83rem;
  }

  .txt02 img {
    width: 7px;
    margin-bottom: 2.5rem;
  }
  .concept .ttl01::before {
    width: 5.87rem;
    height: .83rem;
  }
  .concept .txt01 {
    max-width: 48.5vw;
    margin-bottom: 10vw;
  }
  .concept .txt02 {
    font-size: 1rem;
    line-height: 1.57;
  }

  .cta01 > * {
    width: 44vw;
    margin: 0 1.44vw;
  }
  .cta01 a {
      font-size: 110%;
      padding: 2.5vw 0 2.5vw 9.5vw;
  }
  .cta01 a:first-child:before,
  .cta01 a:last-child:before {
        left: 4px;
        width: 9vw;
        height: 9vw;
  }


  .shop {
    padding: 12.75vw 0 9.13vw;
  }
  .shop .ttl01 {
    margin-bottom: 3.5vw;
  }
  .shop .ttl01::before {
    width: 12.63vw;
    height: 3vw;
  }
  .shop .container > * {
    width: 100%;
  }
  .shop .content {
    background: #FFF;
    padding: 4.75vw 15vw 0;
  }
  .shop .txt01 {
    font-size: 1.17rem;
    margin-bottom: 1rem;
  }
  .shop .ttl02 {
    margin-bottom: .57rem;
  }
  .shop .ttl02 span {
    font-size: .83rem;
  }
  .shop .txt02 {
    font-size: 1rem;
  }
  .shop .txt02 span {
    font-size: .67rem;
  }

  .cta01.p02 {
    margin-bottom: 7.75vw;
  }

  .menu {
    padding: 12.13vw 0 0;
  }
  .menu .ttl01 {
    margin-bottom: 6.88vw;
  }
  .menu .ttl01::before {
    width: 32.13vw;
    height: 3vw;
  }
  .menu .txt01 {
    font-size: 1.17rem;
    line-height: 1.14;
    margin-bottom: 8%;
  }
  .menu .list_menu {
    width: 93.38%;
    margin-bottom: 9.25vw;
  }
  .menu .list_menu > * {
    width: 48.73%;
  }

  .studio {
    padding: 11.5vw 0 8.13vw;
    background-image: url(../images/sp/bg_menu.webp);
  }
  .studio .ttl01 {
    margin-bottom: 5.38vw;
  }
  .studio .ttl01::before {
    width: 18vw;
    height: 3vw;
  }
  .studio .txt01 {
    font-size: 1.07rem;
    margin-bottom: 1.9rem;
  }
  .studio .img01 {
    max-width: 72.63%;
    margin-bottom: 1.93rem;
  }
  .studio .txt02 {
    font-size: 1.1rem;
    line-height: 1.5;
    margin-bottom: 4rem;
  }
  .studio .container {
    margin-bottom: 11vw;
  }
  .studio .container,
  .studio .box_studio01 > * {
    width: 100%;
  }
  .studio .box_studio01:not(:last-of-type) {
    margin-bottom: 0;
  }
  .studio .box_studio01 .content {
    padding: 1.23rem 2.77rem 2rem 3.67rem;
  }
  .studio .box_studio01 .ttl02 {
    font-size: 1.33rem;
    margin-bottom: 1.67rem;
  }
  .studio .box_studio01 .txt03 {
    font-size: 1rem;
    line-height: 1.5;
  }

  .cta01.p04 {
    display: none;
  }

  .plan {
    padding: 4.5vw 0 9.13vw;
  }
  .plan .ttl01 {
    margin-bottom: 1.9rem;
  }
  .plan .ttl01::before {
    width: 12.5vw;
    height: 3.13vw;
  }
  .plan .list_tabs01 button {
    font-size: 1rem;
    width: 7.4rem;
    margin: 0 .1rem;
    padding: .87rem 0;
  }
  .plan .list_tabs01 {
    margin-bottom: 2.07rem;
    justify-content: space-between;
    width: 60%;
    flex-wrap: wrap;
    margin: 0 auto 4.6rem;
  }
  .plan .list_tabs01 li {
    margin-bottom: 5%;
  }
  .plan .list_plan01 {
    flex-wrap: wrap;
    margin: 0;
  }
  .plan .list_plan01 > * {
    max-width: none;
    width: 100%;
    margin: 0;
  }
  .plan .list_plan01 li > img {
    max-width: 76.63vw;
    margin-bottom: 1.13rem;
  }
  .plan .tab01 .cta01,
  .plan .tab01 .cta01:not(:last-of-type) {
    margin-bottom: 1.13rem;
  }
  .plan .tab01 > .cta01:last-of-type {
    margin-bottom: 0;
  }

  .news {
      padding: 40px 0 20px;
  }
  .news .column_link {
      padding: 12px 0;
  }
  .news .column_link span:before {
      width: 7px;
      height: 7px;
  }
  .news .news_box li {
      width: 49%;
      padding: 6px;
  }
  .news .news_box li:nth-child(3),
  .news .news_box li:nth-child(4) {
      margin: 15px auto 0;
  }
  .news .news_box li .wp_ph {
      height: 28vw;
      margin: 0 auto 13px;
  }
  .berthday_gift {
    width: 80%;
  }

  .access {
    padding: 6.75vw 0 8.25vw;
  }
  .access .ttl01 {
    margin-bottom: 1.43rem;
  }
  .access .ttl01::before {
    width: 17.5vw;
    height: 3.25vw;
  }
  .access .container {
    width: 100%;
    flex-wrap: wrap;
  }
  .access .map,
  .access .content {
    width: 100%;
  }
  .access .map {
    height: 46vw;
  }
  .access .tbl01 {
    width: 93.25%;
    margin-top: 1.33rem;
  }

  footer {
    padding: 8vw 0 10.13vw;
  }
  .footer_content {
    flex-direction: column;
  }
  .footer_content .logo_f {
    margin: 0 0 1.33rem;
    max-width: 27.75vw;
  }
  .footer_content .list_sns {
    flex-direction: row;
  }
  .footer_content .list_sns a {
    font-size: 0;
    padding-left: 0;
    justify-content: center;
    border-radius: 50%;
    width: 1.57rem;
    height: 1.57rem;
  }
  .footer_content .list_sns > *:not(:last-of-type) {
  }
  .footer_content .list_sns > * {
    margin: 0 .95rem 0;
    width: auto;
  }
  .list_sns .mail::before {
    width: .93rem;
    height: .73rem;
    margin-right: 0;
  }
  .list_sns .insta::before {
    width: .9rem;
    height: .9rem;
    margin-right: 0;
  }
  .list_sns .fb::before {
    background-image: url(../images/sp/icn_fb.webp);
    width: .5rem;
    height: 1rem;
    margin-right: 0;
  }

  .gallery_box {
    margin-top: 5vw;
}
.gallery_box ul li {
    width: 31%;
}
.plan .container {
    width: 100%;
}
}