@charset "utf-8";@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP&family=Oooh+Baby&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Oooh+Baby&display=swap");
@import url("https://use.fontawesome.com/releases/v5.15.4/css/all.css");
body {
  -webkit-text-size-adjust: 100%;
}

body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6,
pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, figure {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

img {
  line-height: 0;
}

figure {
  line-height: 1;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}

strong {
  font-weight: normal;
}

* {
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

/* cyrillic-ext */
body {
  -webkit-text-size-adjust: 100%;
  position: relative;
  font-family: 'Noto Sans JP', sans-serif;
}

@media screen and (max-width: 767px) {
  html {
    font-size: 3.3vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  html {
    font-size: 1.5vw;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1259px) {
  html {
    font-size: 14px;
  }
}

@media screen and (min-width: 1260px) {
  html {
    font-size: 14px;
  }
}

@media screen and (max-width: 767px) {
  body {
    padding-top: 14.779vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  body {
    padding-top: 10.111vw;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1259px) {
  body {
    padding-top: 86px;
  }
}

@media screen and (min-width: 1260px) {
  body {
    padding-top: 86px;
  }
}

div {
  box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p, li, dt, dd, th, td, a {
  line-height: 1.8;
  font-weight: normal;
  color: #888888;
  box-sizing: border-box;
  font-family: 'Noto Sans JP', sans-serif;
}

img {
  width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity .4s;
}

a:hover {
  opacity: .6;
}

.wrappar {
  overflow: hidden;
}

.bg {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.fadein {
  opacity: 0;
  transition: 1.3s;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .fadein {
    transform: translate(0, 40px);
  }
}

@media screen and (max-width: 767px) {
  .fadein {
    transform: translate(0, 2vw);
  }
}

.fadein.active {
  opacity: 1;
  transform: translate(0, 0);
}

/* external link */
.external_link {
  position: relative;
}

.external_link a::after {
  content: "";
  background-color: #d5a8a4;
  display: inline-block;
  height: 0.7rem;
  width: 0.7rem;
  -webkit-mask: url("../images/common/ex_links_icon.svg");
  mask: url("../images/common/ex_links_icon.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  margin-left: 0.5rem;
}

.external_link_w {
  position: relative;
}

.external_link_w a::after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 0.7rem;
  width: 0.7rem;
  -webkit-mask: url("../images/common/ex_links_icon.svg");
  mask: url("../images/common/ex_links_icon.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  margin-left: 0.5rem;
  position: absolute;
  right: 1em;
  top: 40%;
}

.link_arrow {
  position: relative;
}

.link_arrow:after {
  position: absolute;
  content: '';
  right: 0.5rem;
  top: 50%;
  width: 0.3em;
  height: 0.3em;
  border-top: solid 0.1em #aaaaaa;
  border-right: solid 0.1em #aaaaaa;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.link_arrow02 {
  position: relative;
}

.link_arrow02 a::after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 1rem;
  width: 1rem;
  background: url("../images/common/arw.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  right: 1em;
  top: 33%;
}

.page-top {
  position: fixed;
  right: 1.5rem;
  bottom: 1.5rem;
  z-index: 500;
  width: 3.5rem;
  height: auto;
}

@media screen and (max-width: 767px) {
  .page-top {
    right: 1.5rem;
    bottom: 10rem;
    width: 3.5rem;
  }
}

.btn {
  font-size: 1rem;
  display: block;
  text-align: center;
}

.btn a {
  color: #fff;
  display: block;
  padding: 1.4rem 0;
  background-color: #7d6f6e;
  letter-spacing: 0.2em;
  border-radius: 3rem;
}

.btn a:after {
  height: 1.5rem;
  width: 1.5rem;
  right: 1.5em;
}

@media screen and (max-width: 767px) {
  .btn a:after {
    height: 1.3rem;
    width: 1.3rem;
    right: 1em;
    top: 26%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .btn {
    padding: 0.5vw 0;
    font-size: 1.27389vw;
  }
}

.btn.btn_type01 {
  max-width: 440px;
  width: 70vw;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .btn.btn_type01 a {
    padding: 1.8vw;
  }
}

.btn.pink a {
  background-color: #d5a8a4;
}

.btn_type02 {
  text-align: center;
}

.btn_type02 p, .btn_type02 a {
  display: inline-block;
  padding: 0 2.5em 0.3em 1em;
  border-bottom: 1px solid #888888;
  font-size: 1.28571rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  position: relative;
  transition: opacity 0.4s;
  cursor: pointer;
  color: #888888;
}

.btn_type02 p:after, .btn_type02 a:after {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  border-top: 1px solid #888888;
  border-right: 1px solid #888888;
  position: absolute;
  right: 1em;
  top: 45%;
  transform: translateY(-50%) rotate(135deg);
}

.btn_type02 p:hover, .btn_type02 a:hover {
  opacity: 0.6;
}

div.chamo_chat_body_2018 {
  z-index: 999 !important;
}

@media screen and (max-width: 767px) {
  div.chamo_chat_body_2018.sp_chamo_body .d-hotline.h-btn {
    transform: scale(0.7);
    transform-origin: right;
    bottom: 13vw !important;
    right: 5vw;
  }
}

#breadcrumbs {
  padding-left: 3.35rem;
  margin: 2rem auto;
  font-size: 0.93rem;
}

@media screen and (max-width: 767px) {
  #breadcrumbs {
    padding: 0;
  }
}

#breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
}

#breadcrumbs ol li {
  color: #bbbbbb;
  padding: 0 0.4rem;
}

#breadcrumbs ol li a {
  color: #bbbbbb;
}

#breadcrumbs ol li:last-child {
  color: #888888;
}

.ttl_en {
  font-family: 'Oooh Baby', cursive;
  color: #7d6f6e;
  font-size: 2.8rem;
}

.line {
  position: relative;
}

.line:after {
  content: '';
  position: absolute;
  top: 2.2rem;
  left: 50%;
  width: 1px;
  height: 7rem;
  background: #bbbbbb;
}

.ttl_type01 {
  text-align: center;
  margin-bottom: 3rem;
  position: relative;
  padding-bottom: 10rem;
}

.ttl_type01 .ttl_en {
  font-family: 'Oooh Baby', cursive;
  color: #7d6f6e;
  font-size: 2.8rem;
}

.ttl_type01 .ttl_ja {
  letter-spacing: 0.2em;
  color: #7d6f6e;
}

.ttl_type01:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 7rem;
  background: #bbbbbb;
}

.ttl_type01._noborder {
  padding-bottom: 0;
}

.ttl_type01._noborder:after {
  display: none;
}

.chumoku {
  width: 90vw;
  max-width: 800px;
  margin: 0 auto;
}

.chumoku > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.5rem;
  background: #f5f2f2;
  border-radius: 1.42857rem;
}

@media screen and (max-width: 767px) {
  .chumoku > div {
    padding: 7vw 5vw;
  }
}

.chumoku > div > figure {
  width: 8%;
}

@media screen and (max-width: 767px) {
  .chumoku > div > figure {
    width: 10%;
  }
}

.chumoku > div > div {
  width: 87%;
}

@media screen and (max-width: 767px) {
  .chumoku > div > div {
    width: 85%;
  }
}

.chumoku > div > div h3 {
  margin-bottom: 2rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.5rem;
  color: #d5a8a4;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .chumoku > div > div h3 {
    font-size: 1.2rem;
    margin-bottom: 4vw;
  }
  .chumoku > div > div h3 br {
    display: none;
  }
}

.chumoku > div > div h3:last-child {
  margin-bottom: 0;
}

.chumoku > div > div p {
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .chumoku > div > div p {
    font-size: 1rem;
  }
}

/*料金の説明*/
.intro-wrapper {
  width: 90vw;
  max-width: 800px;
  padding: 4rem;
  background-color: #F5F2F2;
  border-radius: 1rem;
  margin: 0 auto;
}

.image-unit {
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.round-img {
  position: relative;
  max-width: 263px;
  min-width: 200px;
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.round-img::before {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.r-green {
  background-image: url("../images/price/r-green.svg");
}

.r-gray {
  background-image: url("../images/price/r-gray.svg");
}

.plus {
  width: 5%;
  margin: 0 2rem;
}

.plus img {
  min-width: 25px;
}

.txt-on-round {
  text-align: center;
}

.txt-on-round p {
  color: #FFF;
  font-family: 'Noto Serif JP', serif;
}

.txt-on-round p:first-child {
  font-size: 1.5rem;
  letter-spacing: 0.4rem;
  margin-bottom: 0.3rem;
}

.txt-on-round p:last-child {
  letter-spacing: 0.2rem;
}

.summary {
  width: 70%;
  margin: 3rem auto 0;
  text-align: center;
}

.summary p {
  line-height: 2.5rem;
  letter-spacing: 0.2rem;
  color: #888888;
}

@media screen and (max-width: 767px) {
  .intro-wrapper {
    width: 90vw;
    padding: 5vw 1rem;
  }
  .txt-on-round p:first-child {
    font-size: 1rem;
  }
  .txt-on-round p:last-child {
    font-size: 0.6rem;
  }
  .summary {
    width: 90%;
    text-align: left;
    margin: 5vw auto 0;
  }
  .summary p {
    line-height: 2rem;
    letter-spacing: 0.1rem;
    color: #888888;
    font-size: 0.9rem;
  }
  .round-img {
    min-width: 120px;
  }
  .plus {
    margin: 0px 1rem;
  }
  .plus img {
    min-width: 15px;
  }
}

/*料金ページへのバナー*/
.price-list-hero-wrapper {
  max-width: 1440px;
  margin: 0 auto;
}

.hero-img-anv {
  background-image: url("../images/price/price_half_anv.jpg");
}

.hero-img-anv.full {
  background-image: url("../images/common/anv_price_full_pc.jpg");
}

.hero-img-sml {
  background-image: url("../images/price/price_half_sml.jpg");
}

.hero-img-sml.full {
  background-image: url("../images/common/slm_price_full_pc.jpg");
}

.hero-img-bln {
  background-image: url("../images/price/price_half_bln.jpg");
}

div[class*="hero-img-"] {
  width: 48%;
  aspect-ratio: 16.18/10;
  height: auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  border-radius: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

div[class*="hero-img-"].full {
  max-width: calc(100% - 4.28rem);
  width: 100%;
  aspect-ratio: 1440/436;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  div[class*="hero-img-"].full {
    aspect-ratio: 16.18/10;
    width: 90vw;
  }
}

div[class*="hero-img-"].full .hero-txt-en {
  font-size: 2.85714rem;
}

@media screen and (max-width: 767px) {
  div[class*="hero-img-"].full .hero-txt-en {
    font-size: 2rem;
  }
}

div[class*="hero-img-"].full .hero-txt-ja {
  font-size: 1rem;
}

div[class*="hero-img-"].full .btn {
  margin-top: 1.3vw;
  width: 70vw;
  max-width: 440px;
}

@media screen and (max-width: 767px) {
  div[class*="hero-img-"].full .btn {
    margin-top: 5vw;
  }
  div[class*="hero-img-"].full .btn a {
    padding: 1.8vw;
  }
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, div[class*="hero-img-"] {
    height: 20.3571429rem;
  }
  *::-ms-backdrop.full, div[class*="hero-img-"].full {
    height: 31.1428571rem;
  }
}

.hero-txt {
  margin-bottom: 2rem;
}

.hero-top,
.hero-bottom {
  display: flex;
  justify-content: space-around;
  margin: 2rem auto;
}

.hero-txt div p {
  color: #7d6f6e;
}

.hero-txt-en {
  font-size: 2rem;
  font-family: 'Oooh Baby', cursive;
}

.hero-txt-ja {
  font-size: 0.9rem;
  text-align: center;
}

.price-list-hero-wrapper .brown-button {
  width: 70%;
  max-width: 350px;
}

@media screen and (max-width: 767px) {
  .hero-top {
    flex-direction: column;
    margin: 2rem auto 0px;
  }
  .hero-bottom {
    margin: 0px auto;
  }
  .hero-img-anv {
    background-image: url("../images/price/price_half_anv_sp.jpg");
  }
  .hero-img-anv.full {
    background-image: url("../images/price/price_half_anv_sp.jpg");
  }
  .hero-img-sml {
    background-image: url("../images/price/price_half_sml_sp.jpg");
  }
  .hero-img-sml.full {
    background-image: url("../images/price/price_half_sml_sp.jpg");
  }
  .hero-img-bln {
    background-image: url("../images/price/price_half_bln_sp.jpg");
  }
  div[class*="hero-img-"] {
    width: 90vw;
    margin: 1rem auto;
  }
  .hero-txt {
    margin-bottom: 0px;
  }
  .hero-txt-en {
    font-size: 2rem;
  }
  .hero-txt-ja {
    font-size: 0.95rem;
  }
}

/*関連ページバナー*/
.relationSec > div h2 {
  font-family: 'Oooh Baby', cursive;
  font-size: 3.5rem;
  margin-bottom: -3rem;
  position: relative;
  z-index: 10;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .relationSec > div h2 {
    font-size: 3rem;
    margin-bottom: -3rem;
  }
}

.relationSec > div > div {
  background: #f5f2f2;
  padding: 3rem 2rem;
  border-radius: 0.714rem;
}

@media screen and (max-width: 767px) {
  .relationSec > div > div {
    padding: 8vw 5vw 5vw;
  }
}

.relationSec > div > div ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .relationSec > div > div ul {
    justify-content: flex-start;
  }
}

.relationSec > div > div ul li {
  width: 31%;
  margin-right: 3.5%;
}

.relationSec > div > div ul li:nth-child(3n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .relationSec > div > div ul li {
    width: 48%;
    margin-right: 4%;
    margin-top: 5vw;
  }
  .relationSec > div > div ul li:nth-child(3n) {
    margin-right: 4%;
  }
  .relationSec > div > div ul li:nth-child(2n) {
    margin-right: 0;
  }
  .relationSec > div > div ul li:nth-child(-n+2) {
    margin-top: 0;
  }
}

.relationSec > div > div ul li a {
  display: block;
}

.relationSec > div > div ul li a figure {
  display: block;
  width: 100%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 54.672%;
  margin-bottom: 1.5rem;
}

@media screen and (max-width: 767px) {
  .relationSec > div > div ul li a figure {
    margin-bottom: 3vw;
  }
}

.relationSec > div > div ul li a p {
  font-size: 0.92857rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .relationSec > div > div ul li a p {
    font-size: 0.8rem;
  }
}

/*スマイリーの安心*/
.anshinSec {
  background: #ece8e0;
  padding: 7rem 0;
}

@media screen and (max-width: 767px) {
  .anshinSec {
    padding: 15vw 0;
  }
}

.anshinSec > div .anshinTop {
  display: flex;
  justify-content: space-between;
  margin-bottom: 7rem;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinTop {
    display: block;
    margin-bottom: 10vw;
  }
}

.anshinSec > div .anshinTop > div {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinTop > div {
    width: 100%;
  }
}

.anshinSec > div .anshinTop > div.ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinTop > div.ttl {
    display: block;
    width: 70vw;
    padding: 7vw 0;
    margin: 0 auto 10vw;
  }
}

.anshinSec > div .anshinTop > div.ttl:before, .anshinSec > div .anshinTop > div.ttl:after {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  border-top: 1px solid #7d6f6e;
  border-bottom: 1px solid #7d6f6e;
  position: absolute;
  left: 0;
}

.anshinSec > div .anshinTop > div.ttl:before {
  top: 0;
}

.anshinSec > div .anshinTop > div.ttl:after {
  bottom: 0;
}

.anshinSec > div .anshinTop > div.ttl h2 {
  color: #7d6f6e;
}

.anshinSec > div .anshinTop > div.ttl h2 > span {
  display: block;
}

.anshinSec > div .anshinTop > div.ttl h2 .ja {
  letter-spacing: 0.2em;
  font-size: 1.42857rem;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinTop > div.ttl h2 .ja {
    font-size: 1.3rem;
  }
}

.anshinSec > div .anshinTop > div.ttl h2 .en {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.42857rem;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinTop > div.ttl h2 .en {
    font-size: 1rem;
  }
}

.anshinSec > div .anshinTop > div.txt p {
  font-size: 0.92857rem;
  line-height: 2.1538;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinTop > div.txt p {
    font-size: 1rem;
    line-height: 1.5;
  }
}

.anshinSec > div .anshinBottom {
  display: flex;
  flex-wrap: wrap;
}

.anshinSec > div .anshinBottom li {
  height: 0;
  box-sizing: content-box;
  width: 23%;
  padding-bottom: 23%;
  margin-right: 2.66666%;
  margin-top: 2rem;
  background-image: url(../images/common/anshin_round.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .anshinSec > div .anshinBottom li {
    width: 24%;
    padding-bottom: 24%;
    margin-right: 1.3333%;
  }
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinBottom li {
    width: 49%;
    padding-bottom: 49%;
    margin-right: 2%;
    margin-top: 3vw;
  }
}

.anshinSec > div .anshinBottom li:nth-child(-n+4) {
  margin-top: 0;
}

.anshinSec > div .anshinBottom li:nth-child(4n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinBottom li:nth-child(-n+4) {
    margin-top: 3vw;
  }
  .anshinSec > div .anshinBottom li:nth-child(-n+2) {
    margin-top: 0;
  }
  .anshinSec > div .anshinBottom li:nth-child(4n) {
    margin-right: 2%;
  }
  .anshinSec > div .anshinBottom li:nth-child(2n) {
    margin-right: 0;
  }
}

.anshinSec > div .anshinBottom li p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
  color: #fff;
  letter-spacing: 0.05em;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.07143rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .anshinSec > div .anshinBottom li p {
    font-size: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .anshinSec > div .anshinBottom li p {
    font-size: 1rem;
    letter-spacing: 0;
  }
}

.storeList {
  margin-top: 7rem;
}

@media screen and (max-width: 767px) {
  .storeList {
    margin-top: 15vw;
  }
}

.storeList:first-child {
  margin-top: 0;
}

.storeList .slTtl {
  margin-bottom: 3rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .storeList .slTtl {
    margin-bottom: 3vw;
  }
}

.storeList .slTtl .ja {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 2.14286rem;
  letter-spacing: 0.1em;
  margin-bottom: 0.5rem;
}

@media screen and (max-width: 767px) {
  .storeList .slTtl .ja {
    font-size: 1.2rem;
  }
}

.storeList .slTtl .en {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.85714rem;
  letter-spacing: 0;
}

@media screen and (max-width: 767px) {
  .storeList .slTtl .en {
    font-size: 1rem;
  }
}

.studioSet .ttl {
  font-family: 'Oooh Baby', cursive;
  font-size: 3.5rem;
  margin-bottom: -3rem;
  position: relative;
  z-index: 10;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .studioSet .ttl {
    font-size: 1.7rem;
    margin-bottom: -1.7rem;
  }
}

.studioSet ul {
  background: #f5f2f2;
  padding: 3rem 2rem;
  border-radius: 0.714rem;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .studioSet ul {
    padding: 7vw 5vw;
  }
}

.studioSet ul li {
  width: 11.5%;
  margin-top: 0.5rem;
  margin-right: 1.142857%;
}

.studioSet ul li:nth-child(8n) {
  margin-right: 0;
}

.studioSet ul li:nth-child(-n+8) {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .studioSet ul li {
    width: 23%;
    margin-top: 1.5vw;
    margin-right: 2.6666%;
  }
  .studioSet ul li:nth-child(8n) {
    margin-right: 2.6666%;
  }
  .studioSet ul li:nth-child(-n+8) {
    margin-top: 2vw;
  }
  .studioSet ul li:nth-child(4n) {
    margin-right: 0;
  }
  .studioSet ul li:nth-child(-n+4) {
    margin-top: 0;
  }
}

.studioSet ul li a {
  display: block;
}

.studioSet ul li a img {
  display: block;
  vertical-align: bottom;
}

.shopInfo_list {
  position: relative;
  border-radius: 0.7rem;
  background-color: #f5f2f2;
  margin-bottom: 6.92rem;
  padding: 4rem 2.5rem 0;
}

@media screen and (max-width: 767px) {
  .shopInfo_list {
    border-radius: 0;
    padding: 4.4rem 2rem 1rem;
  }
}

.shopInfo_list .shop_logo {
  position: absolute;
  top: -2.7rem;
  left: 0;
  right: 0;
  margin: auto;
  width: 13%;
  max-width: 116px;
}

@media screen and (max-width: 767px) {
  .shopInfo_list .shop_logo {
    top: -1.9rem;
    width: 21%;
    max-width: none;
  }
}

.shopInfo_list .shop_logo.anv-bln {
  width: 26%;
  max-width: 230px;
}

@media screen and (max-width: 767px) {
  .shopInfo_list .shop_logo.anv-bln {
    width: 42%;
    max-width: none;
  }
}

.shopInfo_list .shop_logo.rhy_logo {
  width: 26%;
  max-width: 230px;
}

@media screen and (max-width: 767px) {
  .shopInfo_list .shop_logo.rhy_logo {
    width: 42%;
    max-width: none;
  }
}

.shopInfo_list ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1000px;
  margin: 2rem auto 0;
}

.shopInfo_list ul li {
  width: 30%;
  margin-bottom: 3.2rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .shopInfo_list ul li {
    position: relative;
    padding-bottom: 3.5rem;
  }
}

@media screen and (min-width: 1260px) {
  .shopInfo_list ul li {
    position: relative;
    padding-bottom: 3.5rem;
  }
}

@media screen and (max-width: 767px) {
  .shopInfo_list ul li {
    width: 90vw;
    margin: 0 auto 2.5rem;
  }
}

.shopInfo_list ul li .inner_top {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.shopInfo_list ul li .inner_top img {
  width: 36%;
  border-radius: 0.5rem;
  margin-right: 1.2rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_list ul li .inner_top img {
    width: 22%;
  }
}

.shopInfo_list ul li .inner_top h4 {
  font-size: 1.15rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #555;
}

.shopInfo_list ul li .inner_txt {
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_list ul li .inner_txt {
    font-size: 1vw;
  }
}

.shopInfo_list ul li .inner_txt p {
  font-size: 0.92857rem;
}

.shopInfo_list ul li .inner_bottom {
  display: flex;
  justify-content: space-between;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .shopInfo_list ul li .inner_bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

@media screen and (min-width: 1260px) {
  .shopInfo_list ul li .inner_bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

.shopInfo_list ul li .inner_bottom .btn {
  width: 46%;
}

.shopInfo_list ul li .inner_bottom .btn a {
  padding: 0.6rem 0;
  cursor: pointer;
}

.shopInfo_list ul li .inner_bottom .btn a:after {
  height: 0.9rem;
  width: 0.9rem;
  right: 0.9em;
  top: 35%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_list ul li .inner_bottom .btn a:after {
    height: 1.1vw;
    width: 1.1vw;
    right: 1vw;
  }
}

.shopInfo_list ul li .inner_bottom .btn:nth-of-type(1) a {
  background-color: #d5a8a4;
}

.shopInfo_list ul::after {
  content: "";
  display: block;
  width: 30%;
}

.shopInfo_list .shopInfo_list_wide {
  display: flex;
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 767px) {
  .shopInfo_list .shopInfo_list_wide {
    margin: 0 auto 2.5rem;
    display: block;
  }
  .shopInfo_list .shopInfo_list_wide:last-child {
    margin-bottom: 0;
  }
}

.shopInfo_list .shopInfo_list_wide .inner_top {
  width: 24%;
  margin: 0 2.2rem 0 0;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_list .shopInfo_list_wide .inner_top {
    width: 25vw;
  }
}

.shopInfo_list .shopInfo_list_wide .inner_top img {
  border-radius: 0.5rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_list .shopInfo_list_wide .inner_top {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
  }
  .shopInfo_list .shopInfo_list_wide .inner_top h4 {
    font-size: 1.15rem;
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    color: #555;
  }
  .shopInfo_list .shopInfo_list_wide .inner_top img {
    width: 22%;
    border-radius: 0.5rem;
    margin-right: 1.2rem;
  }
}

.shopInfo_list .shopInfo_list_wide .wide_left_wrap .wide_sp_ttl {
  font-size: 1.15rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #555;
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_list .shopInfo_list_wide .wide_left_wrap .inner_txt {
    font-size: 0.92857rem;
  }
}

.shopInfo_list .shopInfo_list_wide .inner_bottom {
  display: flex;
  width: 22rem;
}

.shopInfo_list .shopInfo_list_wide .inner_bottom .btn {
  width: 70%;
  margin: 1.5rem 1.3rem 0 0;
}

.shopInfo_list .shopInfo_list_wide .inner_bottom .btn a {
  padding: 0.6rem 0;
  cursor: pointer;
}

.shopInfo_list .shopInfo_list_wide .inner_bottom .btn a:after {
  height: 0.9rem;
  width: 0.9rem;
  right: 0.9em;
  top: 35%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_list .shopInfo_list_wide .inner_bottom .btn a:after {
    height: 1.1vw;
    width: 1.1vw;
    right: 1vw;
  }
}

.shopInfo_list .shopInfo_list_wide .inner_bottom .btn:nth-of-type(1) a {
  background-color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .shopInfo_list .shopInfo_list_wide .inner_bottom {
    width: 100%;
  }
}

.shopInfo_list.tpl_store {
  border-radius: 0;
  padding: 6rem 2.5rem 3rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_list.tpl_store {
    padding: 4.4rem 2rem;
  }
}

.shopInfo_list.tpl_store .inner_tel {
  color: #d5a8a4;
  font-size: 1.78571rem;
  letter-spacing: 0.05em;
}

.shopInfo_list.tpl_store .inner_bottom p a {
  font-size: 1rem;
}

.shopInfo_list.tpl_store > .btn {
  margin-top: 2rem;
}

.shopInfo_list.tpl_store .shopinfo_map {
  max-width: 1000px;
  margin: 3rem auto 0;
}

.shopInfo_list.tpl_store .shopinfo_map iframe {
  width: 100%;
  height: 300px;
}

@media screen and (max-width: 767px) {
  .shopInfo_list.tpl_store .shopinfo_map iframe {
    height: 50vw;
  }
}

.shopInfo_list.tpl_store .btnWrap {
  display: flex;
  justify-content: space-between;
  padding-left: 3rem;
  padding-right: 3rem;
  margin-top: 3rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_list.tpl_store .btnWrap {
    display: block;
    margin-top: 7vw;
  }
}

.shopInfo_list.tpl_store .btnWrap .btn {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .shopInfo_list.tpl_store .btnWrap .btn {
    width: 100%;
    margin-bottom: 5vw;
  }
}

@media screen and (max-width: 767px) {
  .shopInfo_list.tpl_store .btnWrap .btn a {
    padding: 1.8vw;
    font-size: 1rem;
  }
}

.flowParts ul {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .flowParts ul {
    display: block;
  }
}

.flowParts ul li {
  width: 18%;
  background: #f5f2f2;
  border-radius: 0.718rem;
  text-align: center;
  padding: 2rem 1rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .flowParts ul li {
    width: 100%;
    margin-bottom: 7vw;
    padding: 3vw 5vw;
  }
}

.flowParts ul li h3 {
  color: #d5a8a4;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.5rem;
  letter-spacing: 0.2em;
  margin-bottom: 0.7rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .flowParts ul li h3 {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 767px) {
  .flowParts ul li h3 {
    margin-bottom: 1vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .flowParts ul li p {
    font-size: 0.9rem;
  }
}

.flowParts ul li:after {
  content: "";
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border-right: 1px solid #ccc;
  border-top: 1px solid #ccc;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  top: 50%;
  right: -1rem;
}

@media screen and (max-width: 767px) {
  .flowParts ul li:after {
    top: auto;
    right: auto;
    left: 50%;
    bottom: -4vw;
    transform: translateX(-50%) rotate(135deg);
  }
}

.flowParts ul li:last-child:after {
  display: none;
}

.akamaru {
  padding-left: 1.2em;
  position: relative;
}

.akamaru:before {
  content: "●";
  font-size: 0.4em;
  display: inline-block;
  color: #d5a8a4;
  position: absolute;
  top: 0.6em;
  left: 0;
}

.scroll {
  position: absolute;
  font-size: 0.85rem;
  letter-spacing: 0.2rem;
  font-family: 'Noto Sans JP', sans-serif;
  bottom: -3%;
  left: 3%;
  z-index: 5;
  height: 7rem;
  line-height: 1;
  white-space: nowrap;
  writing-mode: tb-rl;
  animation: arrowmove 1.5s ease-in-out infinite;
  cursor: pointer;
  color: #888888;
  transition: .3s;
}

.scroll:before {
  content: "";
  position: absolute;
  bottom: 7%;
  left: -70%;
  width: 1px;
  height: 0.6rem;
  background: #7d6f6e;
  transform: skewX(-47deg);
}

.scroll:after {
  content: '';
  position: absolute;
  top: -7%;
  left: -100%;
  width: 1px;
  height: 7rem;
  background: #7d6f6e;
}

@keyframes arrowmove {
  0% {
    bottom: -8%;
  }
  50% {
    bottom: -11%;
  }
  100% {
    bottom: -8%;
  }
}

#newsBnr {
  width: 100vw;
  margin-bottom: 9.64rem;
}

.bnrSliderWrap .bnrSlider .bnr_item {
  padding: 0 2rem;
}

@media screen and (max-width: 767px) {
  .bnrSliderWrap .bnrSlider .bnr_item {
    padding: 0 5vw;
  }
}

.bnrSliderWrap .bnrSlider .bnr_item a {
  display: block;
  width: 20rem;
}

@media screen and (max-width: 767px) {
  .bnrSliderWrap .bnrSlider .bnr_item a {
    width: auto;
  }
}

.form-error {
  margin-top: 8px;
}

.form-error p {
  display: block;
  padding: 8px;
  border-radius: 3px;
  color: #fff;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
textarea {
  width: 100%;
  font-size: 0.9rem;
  padding: 18px;
  color: #666;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
input[type="date"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder {
  color: #BABABA;
}

input[type="text"]:input-placeholder,
input[type="email"]:input-placeholder,
input[type="tel"]:input-placeholder,
input[type="date"]:input-placeholder,
input[type="number"]:input-placeholder,
textarea:input-placeholder {
  color: #BABABA;
}

select {
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
  background-color: #fff;
  border: 1px solid #ddd;
  font-size: 100%;
  padding: 0.5em;
  border-radius: 4px;
}

._form-radio {
  display: flex;
}

._form-radio input[type="radio"] {
  display: none;
}

._form-radio label {
  width: 100%;
  display: flex;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  padding-left: 25px;
}

._form-radio label span {
  display: block;
  padding: 10px;
}

._form-radio label span:before, ._form-radio label span:after {
  content: "";
  position: absolute;
  border-radius: 50%;
  transition: 0.3s;
}

._form-radio label span:before {
  width: 16px;
  height: 16px;
  top: 10px;
  left: 10px;
}

._form-radio label span:after {
  width: 10px;
  height: 10px;
  top: 14px;
  left: 14px;
  transform: scale(0);
  transform-origin: 50%;
}

._form-radio input[type="radio"]:checked + span:after {
  transform: scale(1);
}

._form-checkbox {
  display: flex;
  justify-content: space-between;
}

._form-checkbox input[type="checkbox"] {
  display: none;
}

._form-checkbox label {
  width: 100%;
  padding-left: 25px;
  cursor: pointer;
  position: relative;
  display: block;
  border-radius: 3px;
  box-sizing: border-box;
}

._form-checkbox label:after {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  top: 12px;
  left: 12px;
}

._form-checkbox label span {
  display: flex;
  align-items: center;
  padding: 10px;
}

._form-checkbox label span:before, ._form-checkbox label span:after {
  content: "";
  position: absolute;
  z-index: 2;
  transition: 0.3s;
}

._form-checkbox label span:before {
  width: 18px;
  height: 2px;
  top: 20px;
  left: 18px;
  transform: rotate(-45deg) scaleX(0);
  transform-origin: 0 100%;
}

._form-checkbox label span:after {
  width: 8px;
  height: 2px;
  top: 19px;
  left: 9px;
  transform: rotate(35deg) scaleX(0);
  transform-origin: 100% 100%;
}

._form-checkbox input[type="checkbox"]:checked + span:before {
  transform: rotate(-45deg) scaleX(1);
}

._form-checkbox input[type="checkbox"]:checked + span:after {
  transform: rotate(35deg) scaleX(1);
}

._form-select {
  overflow: hidden;
  *display: inline;
  *zoom: 1;
  position: relative;
  border-radius: 5px;
}

._form-select > select {
  width: 100%;
  padding: 18px 25px;
}

._form-select:after {
  position: absolute;
  content: "";
  width: 25px;
  height: 25px;
  background-image: url("../images/prts/allow_01.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  right: 30px;
  top: calc(50% - 12px);
  transform: rotate(90deg);
}

.mw_wp_form_confirm ._form-select {
  box-shadow: none;
}

.mw_wp_form_confirm ._form-select:after {
  display: none;
}

input[type='button'],
input[type='submit'] {
  font-size: 1rem;
  background: none;
  text-align: center;
  color: #333;
  border: none;
}

.form-botton-back,
.form-botton-next {
  position: relative;
  overflow: hidden;
}

.form-botton-back:after,
.form-botton-next:after {
  position: absolute;
  content: "";
  width: 30px;
  height: 30px;
  background-image: url("../images/prts/allow_02_w.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  top: calc(50% - 15px);
}

.form-botton-back input[type='submit'],
.form-botton-next input[type='submit'] {
  width: 100%;
  position: relative;
  z-index: 1;
}

.form-botton-back {
  background: #666;
  position: relative;
}

.form-botton-back:after {
  left: 30px;
  transform: scaleX(-1);
}

.form-botton-back:before {
  transition: 0.5s;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #333;
  top: 0;
  left: 0;
  clip-path: circle(0% at 50% 50%);
}

.form-botton-back:hover:before {
  clip-path: circle(100% at 50% 50%);
}

.form-botton-back input[type='button'] {
  width: 100%;
  height: 50px;
  position: relative;
  z-index: 1;
}

.form-botton-next:after {
  right: 30px;
}

.form-botton-next:before {
  transition: 0.5s;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #333;
  top: 0;
  left: 0;
  clip-path: circle(0% at 50% 50%);
}

.form-botton-next:hover:before {
  clip-path: circle(100% at 50% 50%);
}

.form-botton-next input[type='submit'] {
  height: 70px;
}

/*
@include animation(animationSample 1.2s ease 0.15s);
*/
.anime1 {
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  opacity: 1;
}

.anime1.active {
  animation: animeTxt1 1.2s ease 0.2s;
  -moz-animation: animeTxt1 1.2s ease 0.2s;
  animation: animeTxt1 1.2s ease 0.2s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes animeTxt1 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    opacity: 1;
  }
  100% {
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    opacity: 1;
  }
}

@-moz-keyframes animeTxt1 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    opacity: 1;
  }
  100% {
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    opacity: 1;
  }
}

@keyframes animeTxt1 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    opacity: 1;
  }
  100% {
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    opacity: 1;
  }
}

.anime2 {
  clip-path: circle(0% at 50% 50%);
  opacity: 1;
}

.anime2.active {
  animation: animeTxt2 1.2s ease 0.2s;
  -moz-animation: animeTxt2 1.2s ease 0.2s;
  animation: animeTxt2 1.2s ease 0.2s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes animeTxt2 {
  0% {
    clip-path: circle(0% at 50% 50%);
    opacity: 1;
  }
  100% {
    clip-path: circle(70.7% at 50% 50%);
    opacity: 1;
  }
}

@-moz-keyframes animeTxt2 {
  0% {
    clip-path: circle(0% at 50% 50%);
    opacity: 1;
  }
  100% {
    clip-path: circle(70.7% at 50% 50%);
    opacity: 1;
  }
}

@keyframes animeTxt2 {
  0% {
    clip-path: circle(0% at 50% 50%);
    opacity: 1;
  }
  100% {
    clip-path: circle(70.7% at 50% 50%);
    opacity: 1;
  }
}

.box-anime1 img, .box-anime1:after {
  clip-path: polygon(54% 34%, 17% 43%, 31% 76%, 75% 61%);
  clip-path: circle(10.7% at 50% 50%);
  opacity: 0;
}

.box-anime1.active img {
  animation: anime1 1s ease 0.2s;
  -moz-animation: anime1 1s ease 0.2s;
  animation: anime1 1s ease 0.2s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

.box-anime1.active:after {
  animation: anime1 1s ease 0s;
  -moz-animation: anime1 1s ease 0s;
  animation: anime1 1s ease 0s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes anime1 {
  0% {
    transform: translateX(-30px);
    clip-path: polygon(54% 34%, 17% 43%, 31% 76%, 75% 61%);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    opacity: 1;
  }
}

@-moz-keyframes anime1 {
  0% {
    transform: translateX(-30px);
    clip-path: polygon(54% 34%, 17% 43%, 31% 76%, 75% 61%);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    opacity: 1;
  }
}

@keyframes anime1 {
  0% {
    transform: translateX(-30px);
    clip-path: polygon(54% 34%, 17% 43%, 31% 76%, 75% 61%);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    opacity: 1;
  }
}

.box-anime2 img, .box-anime2:after {
  clip-path: circle(0% at 50% 50%);
  opacity: 0;
}

.box-anime2.active img {
  animation: animeBox2 1s ease 0.2s;
  -moz-animation: animeBox2 1s ease 0.2s;
  animation: animeBox2 1s ease 0.2s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

.box-anime2.active:after {
  animation: animeBox2 1s ease 0s;
  -moz-animation: animeBox2 1s ease 0s;
  animation: animeBox2 1s ease 0s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes animeBox2 {
  0% {
    transform: translateX(50px);
    clip-path: circle(0% at 50% 50%);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    clip-path: circle(100% at 50% 50%);
    opacity: 1;
  }
}

@-moz-keyframes animeBox2 {
  0% {
    transform: translateX(50px);
    clip-path: circle(0% at 50% 50%);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    clip-path: circle(100% at 50% 50%);
    opacity: 1;
  }
}

@keyframes animeBox2 {
  0% {
    transform: translateX(50px);
    clip-path: circle(0% at 50% 50%);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    clip-path: circle(100% at 50% 50%);
    opacity: 1;
  }
}

.box-anime3 img, .box-anime3:after {
  clip-path: polygon(50% 31%, 51% 32%, 49% 32%, 50% 32%, 51% 32%);
  opacity: 0;
}

.box-anime3.active img {
  animation: animeBox3 1s ease 0.2s;
  -moz-animation: animeBox3 1s ease 0.2s;
  animation: animeBox3 1s ease 0.2s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

.box-anime3.active:after {
  animation: animeBox3 1s ease 0s;
  -moz-animation: animeBox3 1s ease 0s;
  animation: animeBox3 1s ease 0s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes animeBox3 {
  0% {
    transform: translateX(50px);
    clip-path: polygon(50% 31%, 51% 32%, 49% 32%, 50% 32%, 51% 32%);
    opacity: 0;
  }
  50% {
    transform: translateX(0px);
    clip-path: polygon(51% 17%, 82% 34%, 74% 76%, 30% 78%, 33% 46%);
    opacity: 1;
  }
  100% {
    transform: translateX(0px);
    clip-path: polygon(50% 0%, 100% 0, 100% 100%, 0 100%, 0 0);
    opacity: 1;
  }
}

@-moz-keyframes animeBox3 {
  0% {
    transform: translateX(50px);
    clip-path: polygon(50% 31%, 51% 32%, 49% 32%, 50% 32%, 51% 32%);
    opacity: 0;
  }
  50% {
    transform: translateX(0px);
    clip-path: polygon(51% 17%, 82% 34%, 74% 76%, 30% 78%, 33% 46%);
    opacity: 1;
  }
  100% {
    transform: translateX(0px);
    clip-path: polygon(50% 0%, 100% 0, 100% 100%, 0 100%, 0 0);
    opacity: 1;
  }
}

@keyframes animeBox3 {
  0% {
    transform: translateX(50px);
    clip-path: polygon(50% 31%, 51% 32%, 49% 32%, 50% 32%, 51% 32%);
    opacity: 0;
  }
  50% {
    transform: translateX(0px);
    clip-path: polygon(51% 17%, 82% 34%, 74% 76%, 30% 78%, 33% 46%);
    opacity: 1;
  }
  100% {
    transform: translateX(0px);
    clip-path: polygon(50% 0%, 100% 0, 100% 100%, 0 100%, 0 0);
    opacity: 1;
  }
}

.ml-slideIn {
  position: relative;
  display: inline-block;
}

.ml-slideIn span {
  z-index: 1;
  display: block;
  position: relative;
  padding: 5px 0px;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

.ml-slideIn i.front, .ml-slideIn i.back {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #f5f5f5;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

.ml-slideIn i.front {
  background: #69D3CB;
  z-index: 2;
}

.txt-anime4 {
  position: relative;
  display: inline-block;
}

.txt-anime4 span {
  z-index: 1;
  display: block;
  position: relative;
  padding: 5px 12px;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

.txt-anime4 i.front, .txt-anime4 i.back {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #f5f5f5;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}

.txt-anime4 i.front {
  background: #69D3CB;
  z-index: 2;
}

.txt-anime4.active span {
  animation: anime4 0.3s ease 0.8s;
  -moz-animation: anime4 0.3s ease 0.8s;
  animation: anime4 0.3s ease 0.8s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

.txt-anime4.active i.front {
  animation: anime41 0.8s ease 0.5s;
  -moz-animation: anime41 0.8s ease 0.5s;
  animation: anime41 0.8s ease 0.5s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

.txt-anime4.active i.back {
  animation: anime4 0.8s ease 0.2s;
  -moz-animation: anime4 0.8s ease 0.2s;
  animation: anime4 0.8s ease 0.2s;
  animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes anime4 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}

@-moz-keyframes anime4 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}

@keyframes anime4 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}

@-webkit-keyframes anime41 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  50% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  100% {
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
}

@-moz-keyframes anime41 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  50% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  100% {
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
}

@keyframes anime41 {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  50% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
  100% {
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
}

@media screen and (min-width: 1100px) and (max-width: 1259px) {
  .pc-non {
    display: none !important;
  }
}

@media screen and (min-width: 1260px) {
  .pc-non {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .pc-tb-non {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .sp-non {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .tb-non {
    display: none !important;
  }
}

.page {
  padding: 12rem 0 10rem;
}

@media screen and (max-width: 767px) {
  .page {
    padding: 0 0 10vw;
  }
}

#anniversary_page .page:not(.pt_l),
#smiley_page .page:not(.pt_l),
#technical_page .page:not(.pt_l) {
  padding: 7rem 0 10rem;
}

@media screen and (max-width: 767px) {
  #anniversary_page .page:not(.pt_l),
  #smiley_page .page:not(.pt_l),
  #technical_page .page:not(.pt_l) {
    padding: 0 0 10vw;
  }
}

.w750 {
  width: 90vw;
  max-width: 750px;
  margin: 0 auto;
}

.w775 {
  width: 90vw;
  max-width: 750px;
  margin: 0 auto;
}

.w800 {
  width: 90vw;
  max-width: 800px;
  margin: 0 auto;
}

.w950 {
  width: 90vw;
  max-width: 950px;
  margin: 0 auto;
}

.w1000 {
  width: 90vw;
  max-width: 1000px;
  margin: 0 auto;
}

.w1050 {
  width: 90vw;
  max-width: 1050px;
  margin: 0 auto;
}

.w1200 {
  width: 90vw;
  max-width: 1200px;
  margin: 0 auto;
}

.main-contents-wrapper {
  max-width: 1000px;
  margin: 0 auto;
}

/* ----------------- */
.title-wrapper {
  margin: 30px auto 90px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .title-wrapper {
    margin: 10vw auto 15vw;
  }
}

.title-wrapper h1, .title-wrapper p {
  font-size: 2rem;
  letter-spacing: 0.7rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #7d6f6e;
}

.title-wrapper span {
  font-size: 1.6rem;
  font-family: 'Oooh Baby', cursive;
  color: #7d6f6e;
}

/* ----------------- */
.brown-button {
  width: 45%;
  padding: 16px 40px;
  display: flex;
  justify-content: center;
  position: relative;
  color: #fff;
  text-decoration: none;
  align-items: center;
  background: #7d6f6e;
  border-radius: 30rem;
}

.brown-button span:first-child {
  letter-spacing: 0.2rem;
}

.arrow {
  display: flex;
  position: absolute;
  right: 8%;
}

.arrow::after {
  content: '';
  width: 1.5rem;
  height: 0.4rem;
  border-bottom: solid 1px;
  border-right: solid 1px;
  transform: skew(45deg);
}

@media screen and (max-width: 767px) {
  .brown-button {
    width: 100%;
    /*margin: 25px auto; */
    margin: 5vw auto;
  }
  .arrow {
    right: 1rem;
  }
}

.store-anv {
  background: #6e004a !important;
}

.store-sml {
  background: #dccebd !important;
}

.store-bln {
  background: #b2b5d8 !important;
}

.store-che {
  background: #9ca71d !important;
}

header, .mpHead {
  position: absolute;
  top: 2rem;
  left: 0;
  z-index: 50;
  width: 100%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  header, .mpHead {
    top: 2rem;
  }
}

@media screen and (max-width: 767px) {
  header, .mpHead {
    top: 0;
    right: 0;
    height: 14.779vw;
  }
}

@media screen and (max-width: 767px) {
  header {
    background: #fff;
    position: fixed;
    z-index: 53;
  }
}

.logo {
  width: 11.2rem;
  margin-left: 3.35rem;
  z-index: 52;
  position: relative;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .logo {
    width: 13.8vw;
  }
}

@media screen and (max-width: 767px) {
  .logo {
    width: 16.5vw;
    margin: 0 auto;
    padding: 3.8vw 0;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .logo {
    width: 12vw;
  }
}

.p_nav {
  margin: 1rem auto 0;
  z-index: 50;
  opacity: 0.9;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.p_nav .p_nav_top {
  padding: 1rem 22rem 3rem 2rem;
  width: 100%;
  margin-left: auto;
  align-items: center;
  justify-content: space-around;
  margin: 0 auto;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p_nav .p_nav_top {
    display: none;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .p_nav .p_nav_top {
    padding: 1rem 19rem 3rem 2rem;
  }
}

.p_nav .p_nav_top .top_inner {
  display: flex;
  justify-content: flex-end;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p_nav .p_nav_top .top_inner {
    font-size: 1.0919vw;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .p_nav .p_nav_top .top_inner {
    font-size: 1.0919vw;
  }
}

.p_nav .p_nav_top .top_inner li {
  margin-left: 2.187rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p_nav .p_nav_top .top_inner li {
    margin-left: 2vw;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .p_nav .p_nav_top .top_inner li {
    margin-left: 2vw;
  }
}

.p_nav .p_nav_bottom {
  max-width: 900px;
  width: 90vw;
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin: 0 auto;
  overflow: hidden;
  transition: 0.4s;
  opacity: 0;
  transform: translateY(10%);
  pointer-events: none;
}

.p_nav .p_nav_bottom.active {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p_nav .p_nav_bottom {
    width: 90vw;
    margin-top: 7vw;
  }
}

.p_nav .p_nav_bottom li {
  width: 18%;
}

.p_nav .p_nav_bottom li a {
  display: block;
  width: 100%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 100%;
  position: relative;
}

.p_nav .p_nav_bottom li a:before {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/common/maru_c1.svg);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 5;
}

.p_nav .p_nav_bottom li a:after {
  content: "";
  display: block;
  position: absolute;
  top: 78%;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  z-index: 6;
  width: 0.5rem;
  height: 0.5rem;
  z-index: 15;
}

.p_nav .p_nav_bottom li a p {
  width: 100%;
  text-align: center;
  position: absolute;
  top: 47%;
  left: 0;
  transform: translateY(-50%);
  color: #fff;
  font-size: 1.07143rem;
  letter-spacing: 0.2em;
  line-height: 1.4;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  z-index: 10;
  text-align: center;
}

.p_nav .p_nav_bottom li:nth-child(1) a:before {
  transform: rotate(20deg);
}

.p_nav .p_nav_bottom li:nth-child(2) a:before {
  transform: rotate(40deg);
}

.p_nav .p_nav_bottom li:nth-child(3) a:before {
  transform: rotate(60deg);
}

.p_nav .p_nav_bottom li:nth-child(4) a:before {
  transform: rotate(80deg);
}

.p_nav .p_nav_bottom li:nth-child(5) a:before {
  transform: rotate(100deg);
}

.t {
  height: 300vh;
  width: 100%;
  display: block;
  background-color: #fff;
}

.anv_head, .sml_head, .tec_head {
  display: flex;
}

@media screen and (max-width: 767px) {
  .anv_head, .sml_head, .tec_head {
    align-items: center;
  }
}

.anv_head .logo, .sml_head .logo, .tec_head .logo {
  width: 5rem;
  margin-top: 10px;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .anv_head .logo, .sml_head .logo, .tec_head .logo {
    width: 8vw;
    margin-top: 1vw;
  }
}

@media screen and (max-width: 767px) {
  .anv_head .logo, .sml_head .logo, .tec_head .logo {
    width: 15vw;
    margin: 0 0 0 5vw;
    padding: 1.9vw 0;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .anv_head .logo, .sml_head .logo, .tec_head .logo {
    width: 6vw;
  }
}

.anv_head .catLogo, .sml_head .catLogo, .tec_head .catLogo {
  z-index: 52;
  position: relative;
  margin-left: 1rem;
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .anv_head .catLogo, .sml_head .catLogo, .tec_head .catLogo {
    margin-left: 1vw;
  }
}

@media screen and (max-width: 767px) {
  .anv_head .catLogo, .sml_head .catLogo, .tec_head .catLogo {
    margin-left: 3vw;
  }
}

.anv_head .catLogo a, .sml_head .catLogo a, .tec_head .catLogo a {
  display: flex;
  align-items: center;
}

.anv_head .catLogo .img, .sml_head .catLogo .img, .tec_head .catLogo .img {
  width: 15vw;
  max-width: 72px;
  display: block;
}

.anv_head .catLogo .en, .sml_head .catLogo .en, .tec_head .catLogo .en {
  font-family: 'Oooh Baby', cursive;
  font-size: 2.14286rem;
  display: block;
  padding-bottom: 0.7rem;
  margin-right: 1rem;
  color: #7d6f6e;
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .anv_head .catLogo .en, .sml_head .catLogo .en, .tec_head .catLogo .en {
    font-size: 1.78571rem;
  }
}

@media screen and (max-width: 767px) {
  .anv_head .catLogo .en, .sml_head .catLogo .en, .tec_head .catLogo .en {
    font-size: 1.5rem;
    padding-bottom: 0;
  }
}

.anv_head .catLogo .ja, .sml_head .catLogo .ja, .tec_head .catLogo .ja {
  font-size: 0.92857rem;
  letter-spacing: 0.1em;
  display: block;
  line-height: 1.3;
  color: #7d6f6e;
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .anv_head .catLogo .ja, .sml_head .catLogo .ja, .tec_head .catLogo .ja {
    font-size: 0.8rem;
  }
}

@media screen and (max-width: 767px) {
  .anv_head .catLogo .ja, .sml_head .catLogo .ja, .tec_head .catLogo .ja {
    display: none;
  }
}

.anv_head .spPMTrg, .sml_head .spPMTrg, .tec_head .spPMTrg {
  background: #f5f2f2;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35vw;
  margin-left: auto;
  margin-right: 17vw;
  cursor: pointer;
}

.anv_head .spPMTrg p, .sml_head .spPMTrg p, .tec_head .spPMTrg p {
  font-size: 0.9rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding-right: 1.5rem;
  position: relative;
}

.anv_head .spPMTrg p br, .sml_head .spPMTrg p br, .tec_head .spPMTrg p br {
  display: none;
}

.anv_head .spPMTrg p:after, .sml_head .spPMTrg p:after, .tec_head .spPMTrg p:after {
  content: "";
  display: block;
  width: 0.4em;
  height: 0.4em;
  border-top: 1px solid #7d6f6e;
  border-right: 1px solid #7d6f6e;
  transform: translateY(-50%) rotate(135deg);
  position: absolute;
  top: 50%;
  right: 0;
}

@media screen and (max-width: 767px) {
  .sml_head._v2 .catLogo {
    margin-left: 2vw;
  }
}

@media screen and (max-width: 767px) {
  .sml_head._v2 .catLogo .ja {
    display: block;
    font-size: 0.8rem;
    letter-spacing: 0;
  }
}

.sml_head._v2 .spPMTrg {
  width: 28vw;
}

.sml_head._v2 .spPMTrg p {
  line-height: 1.3;
  padding-left: 0.5rem;
  padding-right: 1rem;
}

.sml_head._v2 .spPMTrg p br {
  display: block;
}

.headCatTrg,
.photomenuTrg {
  cursor: pointer;
  transition: opacity 0.4s;
}

.headCatTrg:hover,
.photomenuTrg:hover {
  opacity: 0.6;
}

@media screen and (max-width: 767px) {
  .headCatTrg:hover,
  .photomenuTrg:hover {
    opacity: 1;
  }
}

#maruNav {
  width: 90vw;
  max-width: 1100px;
  margin: 1rem auto -10rem;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1010;
  transition: 0.4s;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #maruNav {
    margin: 0.7rem auto -9rem;
  }
}

@media screen and (max-width: 767px) {
  #maruNav {
    display: none;
  }
}

#maruNav.hide {
  overflow: hidden;
  transition: 0.4s;
  opacity: 0;
  transform: translateY(10%);
  pointer-events: none;
}

#maruNav .maruNavList {
  width: 12%;
  position: relative;
  margin-right: 0.5714%;
}

#maruNav .maruNavList:last-child {
  margin-right: 0;
}

#maruNav .maruNavList .mnl_cat {
  position: relative;
  box-sizing: content-box;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  cursor: pointer;
  transition: 0.4s;
}

#maruNav .maruNavList .mnl_cat:hover {
  opacity: 0.6;
}

#maruNav .maruNavList .mnl_cat:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/common/maru_c1.svg);
  z-index: 5;
}

#maruNav .maruNavList .mnl_cat:after {
  content: "";
  display: block;
  position: absolute;
  top: 78%;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  z-index: 6;
  width: 0.5rem;
  height: 0.5rem;
}

#maruNav .maruNavList .mnl_cat p {
  position: absolute;
  width: 100%;
  top: 47%;
  left: 0;
  transform: translateY(-50%);
  color: #fff;
  font-size: 1rem;
  line-height: 1.4;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  z-index: 10;
  text-align: center;
  letter-spacing: 0.2em;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #maruNav .maruNavList .mnl_cat p {
    font-size: 0.75rem;
  }
}

#maruNav .maruNavList .mnl_link {
  position: absolute;
  top: 90%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;
  width: 180%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 180%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.6s;
  opacity: 0;
  pointer-events: none;
  height: 0;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #maruNav .maruNavList .mnl_link {
    width: 200%;
    padding-bottom: 200%;
  }
}

#maruNav .maruNavList .mnl_link._large {
  width: 210%;
  padding-bottom: 210%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #maruNav .maruNavList .mnl_link._large {
    width: 250%;
    padding-bottom: 250%;
  }
}

#maruNav .maruNavList .mnl_link._small {
  width: 110%;
  padding-bottom: 110%;
}

#maruNav .maruNavList .mnl_link:before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/common/maru_c1.svg);
  z-index: 18;
  opacity: 0.8;
}

#maruNav .maruNavList .mnl_link div {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 19;
  width: 100%;
  height: 100%;
}

#maruNav .maruNavList .mnl_link div:before {
  content: "";
  display: block;
  width: 30%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 30%;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/common/maru_c1.svg);
  z-index: 18;
  transition: 0.4s;
  transition-delay: 0.5s;
  opacity: 0;
  pointer-events: none;
}

#maruNav .maruNavList .mnl_link div:after {
  content: "";
  display: block;
  width: 20%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 20%;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/common/maru_c1.svg);
  z-index: 18;
  transition: 0.4s;
  transition-delay: 1s;
  opacity: 0;
  pointer-events: none;
}

#maruNav .maruNavList .mnl_link div a {
  text-align: center;
  position: relative;
  z-index: 30;
  font-size: 0.89286rem;
  color: #fff;
  line-height: 1.4;
  display: inline-block;
  border-bottom: 1px solid #fff;
  margin-bottom: 0.8rem;
}

#maruNav .maruNavList .mnl_link div a:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #maruNav .maruNavList .mnl_link div a {
    font-size: 0.78rem;
    line-height: 1.2;
  }
}

#maruNav .maruNavList:nth-child(1) .mnl_cat:before {
  transform: rotate(30deg);
}

#maruNav .maruNavList:nth-child(1) .mnl_link:before {
  transform: rotate(-20deg);
}

#maruNav .maruNavList:nth-child(1) .mnl_link div:before {
  top: 50%;
  left: 80%;
}

#maruNav .maruNavList:nth-child(1) .mnl_link div:after {
  top: 90%;
  left: 0%;
}

#maruNav .maruNavList:nth-child(2) .mnl_cat:before {
  transform: rotate(60deg);
}

#maruNav .maruNavList:nth-child(2) .mnl_link:before {
  transform: rotate(-40deg);
}

#maruNav .maruNavList:nth-child(2) .mnl_link div:before {
  top: 70%;
  left: 0%;
}

#maruNav .maruNavList:nth-child(2) .mnl_link div:after {
  top: 10%;
  left: 85%;
}

#maruNav .maruNavList:nth-child(3) .mnl_cat:before {
  transform: rotate(90deg);
}

#maruNav .maruNavList:nth-child(3) .mnl_link:before {
  transform: rotate(-60deg);
}

#maruNav .maruNavList:nth-child(3) .mnl_link div:before {
  top: 20%;
  left: 90%;
}

#maruNav .maruNavList:nth-child(3) .mnl_link div:after {
  top: 80%;
  left: -5%;
}

#maruNav .maruNavList:nth-child(4) .mnl_cat:before {
  transform: rotate(120deg);
}

#maruNav .maruNavList:nth-child(4) .mnl_link:before {
  transform: rotate(-80deg);
}

#maruNav .maruNavList:nth-child(4) .mnl_link div:before {
  top: 10%;
  left: 0%;
}

#maruNav .maruNavList:nth-child(4) .mnl_link div:after {
  top: 90%;
  left: 80%;
}

#maruNav .maruNavList:nth-child(5) .mnl_cat:before {
  transform: rotate(150deg);
}

#maruNav .maruNavList:nth-child(5) .mnl_link:before {
  transform: rotate(-100deg);
}

#maruNav .maruNavList:nth-child(5) .mnl_link div:before {
  top: 50%;
  left: 80%;
}

#maruNav .maruNavList:nth-child(5) .mnl_link div:after {
  top: 90%;
  left: 0%;
}

#maruNav .maruNavList:nth-child(6) .mnl_cat:before {
  transform: rotate(180deg);
}

#maruNav .maruNavList:nth-child(6) .mnl_link:before {
  transform: rotate(-120deg);
}

#maruNav .maruNavList:nth-child(6) .mnl_link div:before {
  top: 70%;
  left: 0%;
}

#maruNav .maruNavList:nth-child(6) .mnl_link div:after {
  top: 10%;
  left: 85%;
}

#maruNav .maruNavList:nth-child(7) .mnl_cat:before {
  transform: rotate(210deg);
}

#maruNav .maruNavList:nth-child(7) .mnl_link:before {
  transform: rotate(-140deg);
}

#maruNav .maruNavList:nth-child(7) .mnl_link div:before {
  top: 20%;
  left: 90%;
}

#maruNav .maruNavList:nth-child(7) .mnl_link div:after {
  top: 80%;
  left: -5%;
}

#maruNav .maruNavList:nth-child(8) .mnl_cat:before {
  transform: rotate(240deg);
}

#maruNav .maruNavList:nth-child(8) .mnl_link:before {
  transform: rotate(-160deg);
}

#maruNav .maruNavList:nth-child(8) .mnl_link div:before {
  top: 10%;
  left: 0%;
}

#maruNav .maruNavList:nth-child(8) .mnl_link div:after {
  top: 90%;
  left: 80%;
}

#maruNav .maruNavList:hover .mnl_link {
  opacity: 1;
  pointer-events: auto;
  height: auto;
}

#maruNav .maruNavList:hover .mnl_link div:before {
  opacity: 0.6;
}

#maruNav .maruNavList:hover .mnl_link div:after {
  opacity: 0.4;
}

#maruNav .maruNavList._c1 .mnl_cat:before {
  background-image: url(../images/common/maru_c1.svg);
}

#maruNav .maruNavList._c1 .mnl_link:before {
  background-image: url(../images/common/maru_c1.svg);
}

#maruNav .maruNavList._c1 .mnl_link div:before {
  background-image: url(../images/common/maru_c1.svg);
}

#maruNav .maruNavList._c1 .mnl_link div:after {
  background-image: url(../images/common/maru_c1.svg);
}

#maruNav .maruNavList._c2 .mnl_cat:before {
  background-image: url(../images/common/maru_c2.svg);
}

#maruNav .maruNavList._c2 .mnl_link:before {
  background-image: url(../images/common/maru_c2.svg);
}

#maruNav .maruNavList._c2 .mnl_link div:before {
  background-image: url(../images/common/maru_c2.svg);
}

#maruNav .maruNavList._c2 .mnl_link div:after {
  background-image: url(../images/common/maru_c2.svg);
}

#maruNav .maruNavList._c3 .mnl_cat:before {
  background-image: url(../images/common/maru_c3.svg);
}

#maruNav .maruNavList._c3 .mnl_link:before {
  background-image: url(../images/common/maru_c3.svg);
}

#maruNav .maruNavList._c3 .mnl_link div:before {
  background-image: url(../images/common/maru_c3.svg);
}

#maruNav .maruNavList._c3 .mnl_link div:after {
  background-image: url(../images/common/maru_c3.svg);
}

#maruNav .maruNavList._c4 .mnl_cat:before {
  background-image: url(../images/common/maru_c4.svg);
}

#maruNav .maruNavList._c4 .mnl_link:before {
  background-image: url(../images/common/maru_c4.svg);
}

#maruNav .maruNavList._c4 .mnl_link div:before {
  background-image: url(../images/common/maru_c4.svg);
}

#maruNav .maruNavList._c4 .mnl_link div:after {
  background-image: url(../images/common/maru_c4.svg);
}

.f_top_block {
  width: 100%;
  letter-spacing: 0.2em;
}

.f_top_block .f_topblock_inner {
  display: flex;
  justify-content: space-between;
}

.f_top_block .f_topblock_inner a {
  width: 100%;
}

.f_top_block .f_topblock_inner a:nth-of-type(2) {
  margin: 0 0.2vw;
}

.f_top_block .f_topblock_inner p {
  width: 100%;
  background-color: #d5a8a4;
  text-align: center;
  height: 7.5rem;
  line-height: 6.5;
  font-size: 1.15rem;
  color: #fff;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .f_top_block .f_topblock_inner p {
    height: 8vw;
    line-height: 5;
  }
}

@media screen and (max-width: 767px) {
  .f_top_block .f_topblock_inner p {
    font-size: 3vw;
  }
}

@media screen and (max-width: 767px) {
  .f_top_block .f_topblock_inner {
    flex-wrap: wrap;
    margin: 8vw 7.5vw 10vw 5vw;
  }
  .f_top_block .f_topblock_inner p {
    border-radius: 3rem;
    height: 9.5vw;
    line-height: 1.8;
    padding: 1.8vw;
    margin-bottom: 3.5vw;
  }
  .f_top_block .f_topblock_inner a:nth-of-type(1) {
    width: 100%;
  }
  .f_top_block .f_topblock_inner a:nth-of-type(n+2) {
    width: 49%;
  }
}

.f_top_block .f_topblock_inner .f_yoyaku {
  background-color: #7d6f6e;
}

.f_top_block .f_topblock_inner .f_yoyaku:before {
  content: url("../images/common/icn_check.png");
  position: relative;
  top: 1px;
  margin-right: 1rem;
}

.f_top_block .f_topblock_inner .f_recruit {
  position: relative;
}

.f_top_block .f_topblock_inner .f_recruit:after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 0.7rem;
  width: 0.7rem;
  -webkit-mask: url("../images/common/ex_links_icon.svg");
  mask: url("../images/common/ex_links_icon.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  margin-left: 0.5rem;
  position: absolute;
  right: -1.2em;
  top: 34%;
}

footer {
  position: relative;
  width: 100%;
  padding: 4.2rem 4.37rem 3.8rem;
  background-color: #f5f2f2;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer {
    padding: 4vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  footer {
    padding-bottom: 15vw;
  }
}

@media screen and (max-width: 767px) {
  footer {
    padding: 3.5rem 2rem 9.5rem;
  }
  footer .copyright {
    margin: 1rem auto;
  }
}

footer:before {
  position: absolute;
  content: "";
  top: -8px;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 12px;
  background: url("../images/common/footer-edge.svg") repeat-x 1318px;
}

footer .f_inner {
  max-width: 1340px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  footer .f_inner {
    flex-wrap: wrap;
  }
}

footer .f_inner .f_left {
  width: 21rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left {
    width: 30vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left {
    width: 100%;
  }
}

footer .f_inner .f_left .f_left_top {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_top {
    display: block;
  }
}

footer .f_inner .f_left .f_left_top .logo {
  width: 9rem;
  margin-left: 0;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left .f_left_top .logo {
    width: 10vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_top .logo {
    margin: 0 auto 5vw;
  }
}

footer .f_inner .f_left .f_left_top p {
  margin-left: 1.5rem;
  font-size: 1.2rem;
  white-space: nowrap;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left .f_left_top p {
    font-size: 1.1vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_top p {
    text-align: center;
    font-size: 1.1rem;
  }
}

footer .f_inner .f_left .f_left_bottom {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left .f_left_bottom {
    margin-top: 2vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_bottom {
    margin-top: 10vw;
  }
}

footer .f_inner .f_left .f_left_bottom ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 3rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left .f_left_bottom ul {
    margin: 0 0 2vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_bottom ul {
    margin: 0 0 10vw;
  }
}

footer .f_inner .f_left .f_left_bottom ul li {
  width: 47%;
  display: flex;
  justify-content: space-between;
  margin-top: 2rem;
}

footer .f_inner .f_left .f_left_bottom ul li:nth-child(-n+2) {
  margin-top: 0;
}

footer .f_inner .f_left .f_left_bottom ul li figure {
  width: 20%;
}

footer .f_inner .f_left .f_left_bottom ul li figure img {
  height: 1.9rem;
  width: auto;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left .f_left_bottom ul li figure img {
    height: 2.5vw;
  }
}

footer .f_inner .f_left .f_left_bottom ul li div {
  width: 75%;
}

footer .f_inner .f_left .f_left_bottom ul li div p {
  border-bottom: 1px solid #aaa;
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_bottom ul li div p {
    margin-bottom: 2vw;
  }
}

footer .f_inner .f_left .f_left_bottom ul li div p a {
  color: #aaa;
  font-size: 0.85rem;
  display: block;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_left .f_left_bottom ul li div p a {
    font-size: 0.8rem;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_left .f_left_bottom ul li div p a {
    font-size: 0.9rem;
  }
}

footer .f_inner .f_right {
  display: flex;
  justify-content: flex-end;
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_right {
    width: 100%;
    justify-content: space-between;
  }
}

@media screen and (min-width: 1260px) {
  footer .f_inner .f_right .f_sp_inner {
    flex-wrap: wrap;
    display: flex;
    justify-content: flex-end;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_right .f_sp_inner {
    flex-wrap: wrap;
    display: flex;
    justify-content: flex-end;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  footer .f_inner .f_right .f_sp_inner {
    min-width: 40%;
    display: block;
    justify-content: flex-start;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_right {
    width: 70vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_right .f_sp_inner {
    width: 45%;
  }
  footer .f_inner .f_right .f_sp_inner .f_sitemap_list {
    line-height: 1;
    margin: 0.9rem 0;
    padding-left: 1.15rem;
  }
}

@media screen and (min-width: 1260px) {
  footer .f_inner .f_right .f_sitemap_block {
    margin-left: 6rem;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1259px) {
  footer .f_inner .f_right .f_sitemap_block {
    margin-left: 4rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  footer .f_inner .f_right .f_sitemap_block {
    width: 100%;
    margin-left: 0;
  }
}

footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading {
  position: relative;
  margin: 0.9rem 0;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading {
    font-size: 1.3vw;
  }
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading {
    margin: 0.9rem 0 0.9rem 1rem;
  }
}

footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading a, footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading span {
  font-weight: bold;
  line-height: 1;
}

footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading a:before, footer .f_inner .f_right .f_sitemap_block .f_sitemap_heading span:before {
  position: absolute;
  content: "";
  top: 37%;
  left: -0.8rem;
  width: 0;
  height: 0;
  border-top: solid 0.35rem transparent;
  border-right: solid 0.35rem transparent;
  border-bottom: solid 0.35rem transparent;
  border-left: solid 0.55rem #d5a8a4;
}

@media screen and (max-width: 767px) {
  footer .f_inner .f_right .f_sitemap_block .f_heading_2line a:before {
    top: 18%;
  }
}

footer .f_inner .f_right .f_sitemap_block .f_sitemap_list {
  padding-left: 1.15rem;
  line-height: 1;
  margin: 0.9rem 0;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_right .f_sitemap_block .f_sitemap_list {
    padding-left: 0.7rem;
  }
}

footer .f_inner .f_right .f_sitemap_block .f_sitemap_list a {
  line-height: 1;
  font-size: 0.85rem;
  position: relative;
}

footer .f_inner .f_right .f_sitemap_block .f_sitemap_list a:before {
  position: absolute;
  content: "";
  top: 50%;
  left: -1.1rem;
  width: 6px;
  border-top: solid 1px #888888;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  footer .f_inner .f_right .f_sitemap_block .f_sitemap_list a:before {
    left: -1rem;
  }
}

.f_cta_block {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100vw;
  z-index: 1000;
  background-color: #fff;
}

.f_cta_block ul {
  display: flex;
  justify-content: space-between;
}

.f_cta_block ul li {
  width: 49.5%;
  padding: 0.5rem 0 0.3rem;
  background-color: #7d6f6e;
  cursor: pointer;
}

.f_cta_block ul li img {
  height: 2rem;
}

.h_yoyaku {
  position: fixed;
  right: 8rem;
  top: 2.2rem;
  z-index: 1050;
}

.h_yoyaku a {
  text-align: center;
  display: inline-block;
  color: #fff;
  background: #7d6f6e;
  border-radius: 2rem;
  padding: 0.625rem 3rem;
  min-width: 6rem;
  letter-spacing: 0.1em;
  font-size: 1rem;
  position: relative;
}

@media screen and (min-width: 1100px) and (max-width: 1300px) {
  .h_yoyaku a {
    font-size: 1.18289vw;
    min-width: none;
    padding: 0.625rem 2rem;
  }
}

@media screen and (max-width: 767px) {
  .h_yoyaku a {
    padding: 0.5rem 4rem;
    min-width: 60vw;
  }
}

.h_yoyaku .yoyaku:before {
  content: url("../images/common/icn_check.png");
  position: relative;
  top: 1px;
  margin-right: 0.5em;
}

.menu_modal_navi {
  z-index: 1500;
  position: fixed;
  transition: 0.5s;
  opacity: 0;
  top: 0;
  left: -100vw;
  margin: auto;
  width: 100vw;
  height: 100vh;
  background-color: #f5f2f2;
  overflow: auto;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi {
    letter-spacing: 0.1em;
    overflow-y: auto;
    overflow-x: hidden;
    top: 0;
  }
}

.menu_modal_navi .logo {
  position: absolute;
  top: 4%;
  width: 10.5vw;
  margin-left: 3vw;
  left: 0;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .logo {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 1.9vw 40.5vw;
    background-color: white;
    margin: 0;
  }
}

.menu_modal_navi .menu_modal_navi_inner {
  display: flex;
  min-height: 100vh;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner {
    width: auto;
    flex-direction: column-reverse;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left {
  background-color: #fff;
  width: 24%;
  padding: 10vw 5vw 3vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left {
    width: 100%;
    padding: 8vw 5vw 10vw;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_left ul:nth-of-type(1) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_left ul:nth-of-type(1) li {
    font-size: 0.85rem;
    line-height: 3.3;
    width: 46%;
    margin-bottom: 4vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .m_left_inner {
  width: 100%;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .yoyaku:before {
  content: url("../images/common/icn_check.png");
  position: relative;
  top: 1px;
  margin-right: 0.5em;
}

@media screen and (min-width: 1260px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .link_arrow02 a::after {
    height: 0;
    width: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .link_arrow02 a::after {
    height: 0;
    width: 0;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .m_left_list {
  font-size: 1.15rem;
  font-size: 0.95541vw;
  line-height: 2.5;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .m_left_list a {
  font-weight: bold;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .m_left_list aa:after {
  right: -1.3em;
  top: 0.6em;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .m_left_list a {
    width: 100%;
    display: block;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .m_left_list .link_arrow:after {
  right: -1.3em;
  top: 0.6em;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .m_left_list .link_arrow:after {
    right: 0.5em;
    width: 0.5em;
    height: 0.5em;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea {
  margin: 3.35rem 0;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea {
    margin: 5vw auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea li:nth-of-type(1) {
    width: 100%;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea li:nth-of-type(1) .yoyaku {
    border-radius: 0.8rem;
    width: 100%;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea li:nth-of-type(n+2) {
    width: 49%;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea li:nth-of-type(n+2) a {
    border-radius: 0.8rem;
    width: 100%;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .m_left_btn {
  margin-bottom: 1.1vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .m_left_btn {
    margin-bottom: 3vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .m_left_btn a {
  text-align: center;
  display: inline-block;
  color: #fff;
  background: #7d6f6e;
  letter-spacing: 0.1em;
  position: relative;
  border-radius: 2vw;
  padding: 0.6vw;
  width: 100%;
  font-size: 0.90992vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .m_left_btn a {
    padding: 2.2vw;
    font-size: 3vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .m_left_btn:nth-of-type(n+2) a {
  background: #d5a8a4;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .external_link_w a::after {
  height: 0.7vw;
  width: 0.7vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_btnArea .external_link_w a::after {
    height: 2.5vw;
    width: 2.5vw;
    top: 35%;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li {
  display: flex;
  justify-content: space-between;
  margin-top: 2rem;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li figure {
  width: 20%;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li figure img {
  height: 1.9rem;
  width: auto;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li figure img {
    height: 2.5vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li div {
  width: 78%;
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li div p {
  border-bottom: 1px solid #aaa;
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li div p {
    margin-bottom: 2vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li div p a {
  color: #aaa;
  font-size: 0.95rem;
  display: block;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li div p a {
    font-size: 0.9rem;
  }
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_left .modal_sns li div p a {
    font-size: 0.9rem;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right {
  width: 76%;
  background: #f5f2f2;
  padding: 5vw 7vw 5vw 5vw;
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right {
    display: block;
    width: 100%;
    padding: 20vw 5vw 0;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner {
  width: 63vw;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner {
    margin: 0 auto 9vw;
    width: 100%;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate {
  padding: 2rem 3.5rem 3rem;
  background: #fff;
  width: 100%;
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate {
    padding: 5vw;
    margin-bottom: 5vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate.order1 {
  order: 1;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate.order2 {
  order: 2;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate.order3 {
  order: 3;
  margin-bottom: 0;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top {
    display: block;
    margin-bottom: 3vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top h2 {
  color: #7d6f6e;
  font-size: 1.63785vw;
  letter-spacing: 0.1em;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top h2 {
    font-size: 4.5vw;
    margin-bottom: 5vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div {
  display: flex;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div {
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div a {
  color: #7d6f6e;
  font-size: 0.90992vw;
  letter-spacing: 0.1em;
  font-weight: bold;
  margin-left: 2rem;
  padding-right: 1rem;
  position: relative;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div a:first-child {
  margin-left: 0;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div a {
    display: block;
    margin-left: 0;
    width: 48%;
    font-size: 0.9rem;
    margin-bottom: 2.9vw;
    background: #d5a8a4;
    color: #fff;
    padding: 1.9vw 5vw 1.9vw 3vw;
    border-radius: 0.715rem;
    font-weight: normal;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div a:last-child {
    margin-bottom: 0;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div a:after {
  content: "";
  display: block;
  width: 0.3em;
  height: 0.3em;
  border-top: 1px solid #7d6f6e;
  border-right: 1px solid #7d6f6e;
  position: absolute;
  top: 42%;
  right: 0;
  transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_top div a:after {
    top: 50%;
    right: 3vw;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_cate .mric_bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block {
  width: 47%;
  margin-top: 2vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block {
    width: 100%;
    margin-top: 3.5vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block:nth-child(-n+2) {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block:nth-child(-n+2) {
    margin-top: 3.5vw;
  }
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block:first-child {
    margin-top: 3.5vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block h3 {
  border-bottom: solid 1px #999999;
  color: #7d6f6e;
  font-size: 1.04641vw;
  letter-spacing: 0.1em;
  line-height: 2.5;
  font-weight: bold;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block h3 .note {
  font-size: 0.81893vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block h3 {
    margin-bottom: 5.5vw;
    font-size: 3.5vw;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block h3 a {
    font-size: 4vw;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block h3 .note {
    font-size: 2.8vw;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block .menu_ex_link_sub {
  position: relative;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block .menu_ex_link_sub:after {
    content: "";
    position: absolute;
    right: 0.5rem;
    top: 30%;
    display: inline-block;
    height: 0.8rem;
    width: 0.8rem;
    background-image: url("../images/common/ex_links_icon.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.5rem;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block .menu_ex_link {
  position: relative;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block .menu_ex_link:after {
  content: "";
  position: absolute;
  right: 0.5rem;
  top: 40%;
  background-color: #888888;
  display: inline-block;
  height: 1rem;
  width: 1rem;
  background-image: url("../images/common/ex_links_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 0.5rem;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul {
  margin-top: 1vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 95%;
    margin: 0 auto;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li {
  font-size: 0.91vw;
  display: inline-block;
  line-height: 2.1;
  position: relative;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li {
    border-bottom: solid 1px #ccc;
    width: 47%;
    font-size: 0.9rem;
    margin-bottom: 2.9vw;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li._sp_full {
    width: 100%;
  }
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li a {
    position: relative;
    line-height: 1.4;
    display: block;
    padding-right: 1rem;
    padding: 0.5rem 1rem 0.5rem 0;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li:last-child:after {
  display: none;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li:not(:last-child):after {
  content: " / ";
  display: inline-block;
  vertical-align: baseline;
  position: static;
  transform: none;
  border: none;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li.link_arrow:after {
    content: "";
    display: inline-block;
    position: absolute;
    transform: rotate(45deg);
    border-top: solid 0.1em #aaaaaa;
    border-right: solid 0.1em #aaaaaa;
  }
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block ul li.menu_ex_link_sub:after {
    content: "";
    position: absolute;
    right: 0.5rem;
    top: 30%;
    display: inline-block;
    height: 0.8rem;
    width: 0.8rem;
    background-image: url("../images/common/ex_links_icon.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.5rem;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block > div {
  background: #f5f2f2;
  border-radius: 0.715rem;
  padding: 1rem 1.5rem;
  margin-top: 1rem;
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block > div h4 {
  color: #d5a8a4;
  font-size: 0.90992vw;
  letter-spacing: 0.1em;
  font-weight: bold;
  margin-bottom: 0.7rem;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block > div h4 {
    font-size: 1rem;
  }
}

.menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block > div p span {
  display: inline-block;
  margin-right: 1rem;
  color: #7d6f6e;
  font-size: 0.81893vw;
}

@media screen and (max-width: 767px) {
  .menu_modal_navi .menu_modal_navi_inner .m_right .m_right_inner .m_right_inner_block > div p span {
    font-size: 0.9rem;
  }
}

.menu-open {
  opacity: 1;
  left: 0;
}

@media screen and (max-width: 767px) {
  .m_right_inner_block:nth-of-type(5) > h3 {
    line-height: 1.2 !important;
    padding-bottom: 2.2vw;
    margin-top: 6vw;
  }
}

/* menu-trigger */
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}

.menu-trigger {
  position: fixed;
  z-index: 2000;
  top: 2.6rem;
  right: 3rem;
  cursor: pointer;
  width: 3.125rem;
  height: 2.25rem;
}

@media screen and (max-width: 767px) {
  .menu-trigger {
    top: 4vw;
    right: 4vw;
    width: 8vw;
    height: 6vw;
  }
}

.menu-trigger span {
  position: absolute;
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
  height: 0.32rem;
  border-radius: 1rem;
  background-color: #888888;
}

@media screen and (max-width: 767px) {
  .menu-trigger span {
    height: 0.8vw;
  }
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
}

.menu-trigger span:nth-of-type(2) {
  top: 45%;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

/* menu-trigger エフェクト */
.menu-trigger.active span:nth-of-type(1) {
  transform: translateX(-50%) translateY(0.95rem) rotate(-45deg);
}

@media screen and (max-width: 767px) {
  .menu-trigger.active span:nth-of-type(1) {
    transform: translateX(-50%) translateY(2.7vw) rotate(-45deg);
  }
}

.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
  transform: translateX(-50%) translateY(-0.95rem) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .menu-trigger.active span:nth-of-type(3) {
    transform: translateX(-50%) translateY(-2.6vw) rotate(45deg);
  }
}

.modal_photo {
  z-index: 2100;
  position: fixed;
  transition: 0.5s;
  opacity: 0;
  top: 0;
  left: -100vw;
  margin: auto;
  width: 100vw;
  height: 100vh;
  background: #fff;
  overflow: auto;
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  .modal_photo {
    letter-spacing: 0.1em;
    overflow-y: auto;
    overflow-x: hidden;
    top: 0;
  }
}

.modal_photo.menu-open {
  opacity: 1;
  left: 0;
  pointer-events: auto;
}

.modal_photo .mpInner {
  padding: 2.14rem;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner {
    padding: 0;
  }
}

.modal_photo .mpInner .close,
.modal_photo .mpInner .close span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}

.modal_photo .mpInner .close {
  position: fixed;
  z-index: 2010;
  top: 2.6rem;
  right: 3rem;
  cursor: pointer;
  width: 3.125rem;
  height: 2.25rem;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .close {
    top: 4vw;
    right: 4vw;
    width: 8vw;
    height: 6vw;
  }
}

.modal_photo .mpInner .close span {
  position: absolute;
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
  height: 0.32rem;
  border-radius: 1rem;
  background-color: #888888;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .close span {
    height: 0.8vw;
  }
}

.modal_photo .mpInner .close span:nth-of-type(1) {
  top: 0;
}

.modal_photo .mpInner .close span:nth-of-type(2) {
  bottom: 0;
}

.modal_photo .mpInner .close span:nth-of-type(1) {
  transform: translateX(-50%) translateY(0.95rem) rotate(-45deg);
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .close span:nth-of-type(1) {
    transform: translateX(-50%) translateY(2.7vw) rotate(-45deg);
  }
}

.modal_photo .mpInner .close span:nth-of-type(2) {
  transform: translateX(-50%) translateY(-0.95rem) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .close span:nth-of-type(2) {
    transform: translateX(-50%) translateY(-2.6vw) rotate(45deg);
  }
}

.modal_photo .mpInner .mpTtl {
  text-align: center;
  padding-top: 4rem;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpTtl {
    padding-top: 20vw;
  }
}

.modal_photo .mpInner .mpTtl .ja {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.71429rem;
  letter-spacing: 0.2em;
  margin-bottom: 0.2em;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpTtl .ja {
    font-size: 1.3rem;
  }
}

.modal_photo .mpInner .mpTtl .en {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.5rem;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpTtl .en {
    font-size: 1rem;
  }
}

.modal_photo .mpInner .mpCon {
  background-color: #f5f2f2;
  width: 100%;
  border-radius: 0.71428571rem;
  margin: 0 auto;
  margin-top: 3rem;
  padding: 4rem;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpCon {
    border-radius: 0;
    padding: 15vw 7vw;
  }
}

.modal_photo .mpInner .mpCon > div {
  width: 100%;
  min-height: calc(100vh - 26rem);
  display: flex;
  align-content: center;
  justify-content: center;
}

.modal_photo .mpInner .mpCon > div > ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpCon > div > ul {
    justify-content: flex-start;
  }
}

.modal_photo .mpInner .mpCon > div > ul li {
  width: 19%;
  margin-right: 1.25%;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .modal_photo .mpInner .mpCon > div > ul li {
    margin-top: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpCon > div > ul li {
    width: 48.5%;
    margin-right: 3%;
    margin-top: 5vw;
  }
}

.modal_photo .mpInner .mpCon > div > ul li:nth-child(5n) {
  margin-right: 0;
}

.modal_photo .mpInner .mpCon > div > ul li:last-child {
  margin-right: 0;
}

.modal_photo .mpInner .mpCon > div > ul li:nth-child(-n+5) {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpCon > div > ul li:nth-child(5n) {
    margin-right: 3%;
  }
  .modal_photo .mpInner .mpCon > div > ul li:nth-child(-n+5) {
    margin-top: 5vw;
  }
  .modal_photo .mpInner .mpCon > div > ul li:nth-child(2n) {
    margin-right: 0;
  }
  .modal_photo .mpInner .mpCon > div > ul li:nth-child(-n+2) {
    margin-top: 0;
  }
}

.modal_photo .mpInner .mpCon > div > ul li a {
  display: block;
  width: 100%;
}

.modal_photo .mpInner .mpCon > div > ul li a figure {
  overflow: hidden;
  border-radius: 0.71428571rem;
  display: block;
  width: 100%;
}

.modal_photo .mpInner .mpCon > div > ul li a figure img {
  display: block;
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

.modal_photo .mpInner .mpCon > div > ul li a p {
  text-align: center;
  margin-top: 1rem;
  color: #7d6f6e;
}

.modal_photo .mpInner .mpCon > div > ul li a p span {
  display: block;
}

.modal_photo .mpInner .mpCon > div > ul li a p span.en {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.07143rem;
  line-height: 1;
  margin-bottom: 0.2rem;
}

.modal_photo .mpInner .mpCon > div > ul li a p span.jp {
  letter-spacing: 0.2em;
  line-height: 1.3;
}

.modal_photo .mpInner .mpCon > div > ul.anv_pm {
  max-width: 600px;
  margin: 0 auto;
}

.modal_photo .mpInner .mpCon > div > ul.anv_pm li {
  width: 31%;
  margin-right: 1.8%;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .modal_photo .mpInner .mpCon > div > ul.anv_pm li {
    margin-top: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpCon > div > ul.anv_pm li {
    margin-top: 5vw;
    width: 48.5%;
    margin-right: 3%;
  }
}

.modal_photo .mpInner .mpCon > div > ul.anv_pm li:nth-child(3n) {
  margin-right: 0;
}

.modal_photo .mpInner .mpCon > div > ul.anv_pm li:nth-child(-n+3) {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .modal_photo .mpInner .mpCon > div > ul.anv_pm li:nth-child(3n) {
    margin-right: 3%;
  }
  .modal_photo .mpInner .mpCon > div > ul.anv_pm li:nth-child(-n+3) {
    margin-top: 5vw;
  }
  .modal_photo .mpInner .mpCon > div > ul.anv_pm li:nth-child(3n) {
    margin-right: 3%;
  }
  .modal_photo .mpInner .mpCon > div > ul.anv_pm li:nth-child(2n) {
    margin-right: 0;
  }
}

.shopgroup_list {
  margin-top: 10rem;
}

@media screen and (max-width: 767px) {
  .shopgroup_list {
    margin-top: 5rem;
  }
}

.shopgroup_list .sgrttl {
  text-align: center;
  margin-bottom: 4.5rem;
}

.shopgroup_list .sgrttl h3 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 2.14286rem;
  letter-spacing: 0.1em;
  color: #7d6f6e;
  margin-bottom: 3rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopgroup_list .sgrttl h3 {
    font-size: 2.72975vw;
  }
}

@media screen and (max-width: 767px) {
  .shopgroup_list .sgrttl h3 {
    font-size: 5.00455vw;
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .shopgroup_list .sgrttl {
    margin-bottom: 4rem;
  }
}

.shopgroup_list .shopgroup_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .shopgroup_list .shopgroup_inner {
    display: block;
  }
}

.shopgroup_list .shopgroup_inner p {
  letter-spacing: 0.1em;
}

.shopgroup_list .shopgroup_inner .sgr_inner_block {
  width: 17%;
  margin-top: 3.3rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block {
    width: 100%;
    margin-top: 5vw;
  }
}

.shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_shopname {
  font-weight: bold;
  font-size: 1.14286rem;
  margin-bottom: 1.4rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_shopname {
    font-size: 1.45587vw;
  }
}

@media screen and (max-width: 767px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_shopname {
    margin-bottom: 0.6rem;
  }
}

.shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_tel {
  font-size: 0.92857rem;
  margin-bottom: 0.8rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_tel {
    font-size: 1.18289vw;
  }
}

@media screen and (max-width: 767px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_tel {
    margin-bottom: 0;
  }
}

.shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_address {
  font-size: 0.92857rem;
  margin-bottom: 1.5rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_address {
    font-size: 1.18289vw;
  }
}

@media screen and (max-width: 767px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block .sgr_address {
    padding-bottom: 1.5rem;
  }
}

.shopgroup_list .shopgroup_inner .sgr_inner_block:after {
  content: "";
  border-radius: 1em;
  display: block;
  height: 6px;
  width: 100%;
  position: absolute;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  .shopgroup_list .shopgroup_inner .sgr_inner_block:after {
    height: 4px;
  }
}

.shopgroup_list .bln-line:after {
  background-color: #b2b5d8;
}

.shopgroup_list .sml-line:after {
  background-color: #dccebd;
}

.shopgroup_list .crl-line:after {
  background-color: #9ca71d;
}

.shopgroup_list .rhy-line:after {
  background-color: #bbbbbb;
}

.shopgroup_list .anv-line:after {
  background-color: #6e004a;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../slick/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../slick/fonts/slick.eot");
  src: url("../slick/fonts/slick.eot?#iefix") format("embedded-opentype"), url("../slick/fonts/slick.woff") format("woff"), url("../slick/fonts/slick.ttf") format("truetype"), url("../slick/fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
  z-index: 5;
  position: absolute;
  font-size: 0px;
  top: 40%;
  height: 40px;
  width: 40px;
}

@media screen and (max-width: 767px) {
  .slick-prev,
  .slick-next {
    height: 28px;
    width: 28px;
  }
}

.slick-prev {
  left: 20px;
}

.slick-next {
  right: 20px;
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: 0px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 0px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  background: #FFF;
  border-radius: 50%;
  content: "";
  width: 8px;
  height: 8px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #fff;
  opacity: 0.9;
  filter: alpha(opacity=90);
}

#colorbox {
  outline: 0;
}

#cboxTopLeft {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat 0 0;
}

#cboxTopCenter {
  height: 25px;
  background: url(images/border1.png) repeat-x 0 -50px;
}

#cboxTopRight {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat -25px 0;
}

#cboxBottomLeft {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat 0 -25px;
}

#cboxBottomCenter {
  height: 25px;
  background: url(images/border1.png) repeat-x 0 -75px;
}

#cboxBottomRight {
  width: 25px;
  height: 25px;
  background: url(images/border1.png) no-repeat -25px -25px;
}

#cboxMiddleLeft {
  width: 25px;
  background: url(images/border2.png) repeat-y 0 0;
}

#cboxMiddleRight {
  width: 25px;
  background: url(images/border2.png) repeat-y -25px 0;
}

#cboxContent {
  background: #fff;
  overflow: hidden;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  margin-bottom: 20px;
}

#cboxTitle {
  position: absolute;
  bottom: 0px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #999;
}

#cboxCurrent {
  position: absolute;
  bottom: 0px;
  left: 100px;
  color: #999;
}

#cboxLoadingOverlay {
  background: #fff url(images/loading.gif) no-repeat 5px 5px;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 0px;
  right: 42px;
  color: #444;
}

#cboxPrevious {
  position: absolute;
  bottom: 0px;
  left: 0;
  color: #444;
}

#cboxNext {
  position: absolute;
  bottom: 0px;
  left: 63px;
  color: #444;
}

#cboxClose {
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  color: #444;
}

/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

#MV {
  position: relative;
}

#MV .bgSlider .item {
  border-radius: 1.42rem 0 0 1.42rem;
}

@media screen and (max-width: 767px) {
  #MV .bgSlider .item {
    border-radius: 0;
  }
}

#MV .bgSlider .item img {
  display: block;
  width: 83%;
  margin: 9rem 0 0 auto;
  object-fit: cover;
  border-radius: 1.42rem 0 0 1.42rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #MV .bgSlider .item img {
    margin: 11vw 0 0 auto;
  }
}

@media screen and (max-width: 767px) {
  #MV .bgSlider .item img {
    margin: 0 auto;
    width: 100vw;
    height: 88.5vh;
    box-sizing: content-box;
    border-radius: 0;
  }
}

#MV .mv_logo {
  z-index: 1000;
  position: absolute;
  left: calc(100vw - 88.2%);
  top: 42%;
  font-size: 4.91356vw;
  font-family: 'Oooh Baby', cursive;
  line-height: 1;
  color: #7d6f6e;
}

#MV > .scroll {
  position: absolute;
  font-size: 0.85rem;
  letter-spacing: 0.2rem;
  font-family: 'Noto Sans JP', sans-serif;
  bottom: 0;
  left: 3%;
  z-index: 5;
  height: 7rem;
  line-height: 1;
  white-space: nowrap;
  writing-mode: tb-rl;
  animation: arrowmovetop 1.5s ease-in-out infinite;
}

#MV > .scroll a {
  cursor: pointer;
  color: #7d6f6e;
  transition: .3s;
}

#MV > .scroll:before {
  content: "";
  position: absolute;
  bottom: 7%;
  left: -70%;
  width: 1px;
  height: 0.6rem;
  background: #7d6f6e;
  transform: skewX(-47deg);
}

#MV > .scroll:after {
  content: '';
  position: absolute;
  top: -7%;
  left: -100%;
  width: 1px;
  height: 7rem;
  background: #7d6f6e;
}

@keyframes arrowmovetop {
  0% {
    bottom: 1%;
  }
  50% {
    bottom: 3%;
  }
  100% {
    bottom: 1%;
  }
}

@media screen and (max-width: 767px) {
  .mv_logo {
    z-index: 1200;
    position: absolute;
    left: 6%;
    top: 10vw;
    overflow: visible;
    font-size: 10.46406vw;
    font-family: 'Oooh Baby', cursive;
    line-height: 1;
    color: #7d6f6e;
  }
}

#about {
  position: relative;
  margin-bottom: 9.64rem;
}

#about .about_image {
  width: 61%;
  height: 41vw;
  margin: 10rem auto 4rem 0;
}

#about .about_image img {
  border-radius: 0px 1.42rem 1.42rem 0px;
  object-fit: cover;
}

@media screen and (max-width: 767px) {
  #about .about_image {
    width: 91%;
    height: 60.5vw;
    margin: 12vw auto 72vw 0;
  }
  #about .about_image img {
    border-radius: 0px 0.8rem 0.8rem 0px;
  }
}

#about .about_lead {
  position: absolute;
  right: 5%;
  top: 15%;
  width: 37%;
  background-color: #fff;
  border-radius: 0.7rem;
  padding: 4vw;
  height: auto;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #about .about_lead {
    width: 41%;
    top: 11%;
  }
}

@media screen and (max-width: 767px) {
  #about .about_lead {
    right: 5%;
    top: 90%;
    width: 83%;
  }
}

#about .about_lead .about_inner {
  margin: 0 auto;
}

#about .about_lead .about_inner h2 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.53vw;
  letter-spacing: 0.05em;
  margin: 1.2vw 0 2vw;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  #about .about_lead .about_inner h2 {
    margin: 2.5vw 0 5vw;
    font-size: 4.1vw;
  }
}

#about .about_lead .about_inner .about_lead_txt {
  font-size: 0.86vw;
  line-height: 2.15;
}

@media screen and (max-width: 767px) {
  #about .about_lead .about_inner .about_lead_txt {
    font-size: 2.8vw;
  }
}

#about .about_lead .about_inner .about_lead_enttl {
  font-family: 'Oooh Baby', cursive;
  color: #d4d6cc;
  font-size: 1.63785vw;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  #about .about_lead .about_inner .about_lead_enttl {
    font-size: 3.18471vw;
  }
}

#category {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 10rem;
}

#category > .btn_wrap {
  margin: 0 auto 8rem;
}

@media screen and (max-width: 767px) {
  #category > .btn_wrap {
    margin: 0 auto 15vw;
  }
}

#category > .btn_wrap .btn {
  max-width: 440px;
  cursor: pointer;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  #category > .btn_wrap .btn {
    width: 81%;
    font-size: 0.95rem;
  }
  #category > .btn_wrap .btn a {
    padding: 0.85rem;
  }
}

#category .cate_left_block {
  text-align: center;
}

@media screen and (max-width: 767px) {
  #category .cate_left_block {
    margin: 0 auto 14rem;
  }
}

#category .cate_right_block {
  max-width: 923px;
  width: 76%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  #category .cate_right_block {
    width: 100%;
    max-width: unset;
    display: block;
  }
}

#category .cate_right_block .crb_box {
  width: 47.7%;
  margin-bottom: 4.42rem;
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .crb_box {
    width: 100%;
    margin-bottom: 2.6rem;
  }
}

#category .cate_right_block .crb_box._full {
  width: 100%;
}

#category .cate_right_block .crb_box._full .crb_box_full_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .crb_box._full .crb_box_full_wrap {
    width: 100%;
    max-width: unset;
    display: block;
  }
}

#category .cate_right_block .crb_box._full .crb_box_full_wrap a {
  width: 47.7%;
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .crb_box._full .crb_box_full_wrap a {
    width: 100%;
    margin-bottom: 3vw;
  }
  #category .cate_right_block .crb_box._full .crb_box_full_wrap a:last-child {
    margin-bottom: 0;
  }
}

#category .cate_right_block .crb_box .crb_box_btn {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 1rem;
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .crb_box .crb_box_btn {
    display: block;
    margin-top: 5vw;
  }
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .crb_box .crb_box_btn .btn {
    width: 100%;
    margin-bottom: 5vw;
  }
  #category .cate_right_block .crb_box .crb_box_btn .btn:last-child {
    margin-bottom: 0;
  }
}

#category .cate_right_block .crb_box .crb_box_btn .btn span {
  display: block;
  font-size: 0.87rem;
  margin-bottom: 0.5em;
}

@media screen and (min-width: 768px) and (max-width: 1260px) {
  #category .cate_right_block .crb_box .crb_box_btn .btn span {
    font-size: 0.85rem;
  }
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .crb_box .crb_box_btn .btn span {
    font-size: 0.9rem;
  }
}

#category .cate_right_block .crb_box .crb_box_btn .btn span br {
  display: none;
}

@media screen and (min-width: 768px) and (max-width: 1260px) {
  #category .cate_right_block .crb_box .crb_box_btn .btn span br {
    display: block;
  }
}

#category .cate_right_block .crb_box .crb_box_btn .btn a {
  position: relative;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #category .cate_right_block .crb_box .crb_box_btn .btn a {
    padding: 0.6rem 0;
  }
}

@media screen and (min-width: 1260px) {
  #category .cate_right_block .crb_box .crb_box_btn .btn a {
    padding: 0.6rem 0;
  }
}

#category .cate_right_block .crb_box .crb_box_btn .btn a:after {
  height: 0.9rem;
  width: 0.9rem;
  right: 0.9em;
  top: 35%;
}

#category .cate_right_block .btn {
  width: 47%;
  cursor: pointer;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  #category .cate_right_block .btn {
    width: 81%;
    font-size: 0.95rem;
  }
  #category .cate_right_block .btn a {
    padding: 0.85rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #category {
    width: 90vw;
  }
}

@media screen and (max-width: 767px) {
  #category {
    display: block;
    width: 90vw;
  }
}

#category .cate_list_ttl {
  letter-spacing: 0.2em;
  text-align: center;
  font-size: 1.2rem;
  margin-bottom: 1rem;
  color: #7d6f6e;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
}

#category .cate_list_txt {
  color: #bbbbbb;
  text-align: center;
  font-size: 0.9rem;
  margin-top: 1rem;
}

#category .cate_list_txt p {
  color: #bbbbbb;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #category .cate_list_txt {
    font-size: 1.05vw;
  }
}

#category .cate_list_img {
  display: block;
}

#category .cate_list_img img {
  border-radius: 0.6rem;
}

@media screen and (max-width: 767px) {
  #category .cate_list_img img {
    border-radius: 0.4rem;
  }
}

#storeInfo {
  margin: 10rem auto 0;
  max-width: 1072px;
  margin-bottom: 9.64rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #storeInfo {
    width: 90vw;
  }
}

@media screen and (max-width: 767px) {
  #storeInfo {
    width: 100vw;
  }
}

#storeInfo .shopInfo_ttl {
  margin: 0 auto 16.5rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  #storeInfo .shopInfo_ttl {
    margin: 0 auto 14rem;
  }
}

#storeInfo .shopInfo_list_block {
  width: 100%;
}

#storeInfo .cap_txt {
  font-size: 0.9rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #storeInfo .cap_txt {
    font-size: 0.5vw;
  }
}

#storeInfo .mt-3 {
  margin-top: 3rem;
}

@media screen and (max-width: 767px) {
  #storeInfo .mt-3 {
    margin-top: 0;
  }
}

#storeInfo .shopInto_pagelink {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90vw;
  margin: 2vw auto 23vw;
}

#storeInfo .shopInto_pagelink .btn {
  width: 100%;
  margin-bottom: 3vw;
  position: relative;
}

#storeInfo .shopInto_pagelink .btn a {
  display: block;
  padding: 2.5vw 0;
  border-radius: 3rem;
  background-color: #d5a8a4;
}

#storeInfo .shopInto_pagelink .btn a:after {
  position: absolute;
  content: '';
  width: 0.3em;
  height: 0.3em;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
  transform: rotate(45deg);
  top: 42%;
  right: 0.8em;
}

.footer_info {
  max-width: 76.5rem;
  margin: 0 auto 100px;
  text-align: center;
}

.footer_info .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .footer_info .wrap {
    width: 95%;
  }
}

.footer_info #news {
  width: 41%;
}

.footer_info #news .news_ttl {
  margin: 0 auto 13.5rem;
}

.footer_info #news .news_contents {
  margin-top: 4.74rem;
}

.footer_info #news .news_contents li {
  margin-top: 2rem;
}

.footer_info #news .news_contents li:first-child {
  margin-top: 0;
}

.footer_info #news .news_contents li .news_content {
  align-items: center;
  display: flex;
  justify-content: space-between;
  font-size: 0.8rem;
  color: #555555;
  line-height: 1.6;
}

.footer_info #news .news_contents li .news_content .n_date {
  font-size: 0.62rem;
  color: #555555;
  letter-spacing: 0.1em;
}

.footer_info #news .news_contents li .news_content .shop-name {
  width: 25.6%;
  background: #7d6f6e;
  border-radius: 0.81rem;
  color: #fff;
  padding: 0.2rem 0;
  letter-spacing: 0.2em;
}

.footer_info #news .news_contents li .news_content p.excerpt {
  width: 52%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
  color: #555555;
  letter-spacing: 0.2em;
}

.footer_info #news .btn_more {
  font-size: 1.04rem;
  width: 22rem;
  padding: 1.4rem 0;
  display: inline-block;
  margin-top: 6.76rem;
  background-color: #7d6f6e;
  border-radius: 3rem;
  color: #fff;
  letter-spacing: 0.2em;
  position: relative;
  cursor: pointer;
}

.footer_info #news .btn_more:after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 1.66rem;
  width: 1.66rem;
  -webkit-mask: url("../images/common/arw.svg");
  mask: url("../images/common//arw.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  right: 1.66em;
  top: 33%;
}

.footer_info #column {
  width: 41%;
  position: relative;
}

.footer_info #column .column_ttl {
  margin: 0 auto 13.5rem;
}

.footer_info #column .column_contents {
  margin-top: 4.74rem;
}

.footer_info #column .column_contents a {
  display: block;
}

.footer_info #column .column_contents .column_content {
  display: flex;
  align-items: center;
  margin-top: 1.14rem;
}

.footer_info #column .column_contents .column_content .c_img {
  width: 7rem;
  width: 22%;
}

.footer_info #column .column_contents .column_content .c_img img {
  border-radius: 0.71rem;
}

.footer_info #column .column_contents .column_content .c_title {
  font-size: 0.86rem;
  width: 70%;
  margin-left: 1.63rem;
  text-align: left;
  color: #555555;
  letter-spacing: 0.2em;
}

.footer_info #column .btn_more {
  font-size: 1.04rem;
  width: 22rem;
  padding: 1.4rem 0;
  display: inline-block;
  margin-top: 6.76rem;
  background-color: #7d6f6e;
  border-radius: 3rem;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  letter-spacing: 0.2em;
  cursor: pointer;
}

.footer_info #column .btn_more:after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 1.66rem;
  width: 1.66rem;
  -webkit-mask: url("../images/common/arw.svg");
  mask: url("../images/common//arw.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  right: 1.66em;
  top: 33%;
}

@media screen and (max-width: 767px) {
  .footer_info {
    max-width: 90%;
    width: 90%;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .footer_info #news {
    width: 100%;
    margin-bottom: 17vw;
  }
  .footer_info #news .news_ttl img {
    height: 44vw;
  }
  .footer_info #news .news_contents {
    width: 100%;
    margin-top: 9.9vw;
  }
  .footer_info #news .news_contents li {
    text-align: left;
  }
  .footer_info #news .news_contents li .news_content {
    width: 100%;
    display: inline-block;
    text-align: left;
    border-bottom: 1px solid #555555;
    padding-bottom: 4.2vw;
    letter-spacing: 0.1em;
  }
  .footer_info #news .news_contents li .news_content .n_date {
    display: inline-block;
    font-size: 2.9vw;
    line-height: 1.8;
  }
  .footer_info #news .news_contents li .news_content .shop-name {
    width: 30.7vw;
    text-align: center;
    display: inline-block;
    font-size: 2.9vw;
    margin-left: 5.4vw;
    border-radius: 0.91rem;
    letter-spacing: 0.2em;
  }
  .footer_info #news .news_contents li .news_content p.excerpt {
    display: block;
    font-size: 3.1vw;
    width: 100%;
    max-width: unset;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 3.9vw;
    line-height: 1;
  }
  .footer_info #news .btn_more {
    font-size: 0.87rem;
    margin-top: 10.6vw;
    padding: 1.07rem 0;
    letter-spacing: 0.2em;
    line-height: 1;
    border-radius: 3rem;
  }
  .footer_info #news .btn_more:after {
    content: "";
    height: 3vw;
    width: 3vw;
    right: 3vw;
  }
  .footer_info #column {
    width: 100%;
  }
  .footer_info #column .column_ttl img {
    height: 44vw;
  }
  .footer_info #column .column_contents {
    margin-top: 9.9vw;
  }
  .footer_info #column .column_contents .column_content {
    text-align: left;
  }
  .footer_info #column .column_contents .column_content .c_img {
    width: 17.9vw;
    height: 17.9vw;
  }
  .footer_info #column .column_contents .column_content .c_img img {
    border-radius: 5px;
  }
  .footer_info #column .column_contents .column_content .c_title {
    font-size: 3vw;
    width: 63.1vw;
    text-align: left;
    letter-spacing: 0.1em;
  }
  .footer_info #column .btn_more {
    transform: unset;
    font-size: 0.87rem;
    margin-top: 10.6vw;
    padding: 1.07rem 0;
    letter-spacing: 0.2em;
    position: relative;
    left: 0;
    line-height: 1;
    border-radius: 3rem;
  }
  .footer_info #column .btn_more:after {
    content: "";
    height: 3vw;
    width: 3vw;
    right: 3vw;
  }
}

.price .button-wrapper {
  margin: 5rem auto 2rem;
  display: flex;
  justify-content: center;
  justify-content: space-evenly;
}

.price .info-wrapper {
  width: 55%;
  padding: 5rem 0;
  border-radius: 1rem;
  margin: 0 auto;
}

.price .info-wrapper hr {
  border-style: none;
  border-top: 1px solid #7D6F6E;
}

.price .info-wrapper p {
  font-family: 'Noto Serif JP', serif;
}

.price .info-child {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.price .info-child .list-mark {
  margin-right: 1rem;
  margin-bottom: auto;
  color: #D5A8A4;
  font-size: 1.5rem;
}

.price .info-child-heading {
  color: #7D6F6E;
  font-size: 1.3rem;
  letter-spacing: 0.1rem;
}

.price .info-child-note {
  color: #BBBBBB;
  font-size: 0.95rem;
  line-height: 1.8rem;
  margin: 1rem 0px 0px;
}

@media screen and (max-width: 767px) {
  .price .info-child-note {
    font-size: 0.9rem;
  }
}

@media screen and (max-width: 767px) {
  .price .button-wrapper {
    width: 80vw;
    margin-top: 5vw;
  }
  .price .brown-button {
    width: 80%;
    height: 3rem;
  }
  .price .info-wrapper {
    width: 90vw;
    padding: 1rem;
  }
}

#priceStoreInfo {
  margin: 0 auto;
  max-width: 1072px;
  margin-bottom: 9.64rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #priceStoreInfo {
    width: 90vw;
  }
}

@media screen and (max-width: 767px) {
  #priceStoreInfo {
    width: 100vw;
  }
}

#priceStoreInfo .shopInfo_list_block {
  width: 100%;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve {
  position: relative;
  border-radius: 0.7rem;
  background-color: #f5f2f2;
  margin-bottom: 6.92rem;
  padding: 6.5rem 2.5rem 0;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve {
    border-radius: 0;
    padding: 4.4rem 2rem 1rem;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shop_logo {
  position: absolute;
  top: -2.7rem;
  left: 0;
  right: 0;
  margin: auto;
  width: 13%;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shop_logo {
    top: -1.9rem;
    width: 21%;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shop_logo.anv-bln {
  width: 26%;
  max-width: 230px;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shop_logo.anv-bln {
    width: 42%;
    max-width: none;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shop_logo.rhy_logo {
  width: 26%;
  max-width: 230px;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shop_logo.rhy_logo {
    width: 42%;
    max-width: none;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li {
  width: 30%;
  margin-bottom: 3.2rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li {
    position: relative;
    padding-bottom: 3.5rem;
  }
}

@media screen and (min-width: 1260px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li {
    position: relative;
    padding-bottom: 3.5rem;
  }
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li {
    width: 90vw;
    margin: 0 auto 2rem;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li {
    margin: 0 auto 2.5rem;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_top {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_top img {
  width: 36%;
  border-radius: 0.5rem;
  margin-right: 1.2rem;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_top img {
    width: 22%;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_top h4 {
  font-size: 1.15rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #555;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_txt {
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_txt {
    font-size: 1vw;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom {
  display: flex;
  justify-content: space-between;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

@media screen and (min-width: 1260px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom .btn {
  width: 50%;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom .btn a {
  padding: 0.6rem 0;
  cursor: pointer;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom .btn a:after {
  height: 0.9rem;
  width: 0.9rem;
  right: 0.9em;
  top: 35%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom .btn a:after {
    height: 1.1vw;
    width: 1.1vw;
    right: 1vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul li .inner_bottom .btn {
    font-size: 0.75vw;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve ul::after {
  content: "";
  display: block;
  width: 30%;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide {
  display: flex;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide {
    margin: 0 auto 2.5rem;
    display: block;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_top {
  width: 24%;
  margin: 0 2.2rem 3.2rem 0;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_top {
    width: 25vw;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_top img {
  border-radius: 0.5rem;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_top {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
  }
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_top h4 {
    font-size: 1.15rem;
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    color: #555;
  }
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_top img {
    width: 22%;
    border-radius: 0.5rem;
    margin-right: 1.2rem;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .wide_left_wrap .wide_sp_ttl {
  font-size: 1.15rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #555;
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .wide_left_wrap .inner_txt {
    font-size: 1vw;
  }
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom {
  display: flex;
  width: 22rem;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom .btn {
  width: 50%;
  margin: 1.5rem 1.3rem 0 0;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom .btn a {
  padding: 0.6rem 0;
  cursor: pointer;
}

#priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom .btn a:after {
  height: 0.9rem;
  width: 0.9rem;
  right: 0.9em;
  top: 35%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom .btn a:after {
    height: 1.1vw;
    width: 1.1vw;
    right: 1vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom .btn {
    font-size: 0.75vw !important;
  }
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .shopInfo_list_block .shopInfo_list_reserve .shopInfo_list_wide .inner_bottom {
    width: 100%;
  }
}

#priceStoreInfo .cap_txt {
  font-size: 0.9rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .cap_txt {
    font-size: 0.5vw;
  }
}

#priceStoreInfo .mt-3 {
  margin-top: 3rem;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .mt-3 {
    margin-top: 0;
  }
}

#priceStoreInfo .support_menu {
  width: 100%;
  border-radius: 0.7rem;
  background-color: #fff;
  padding: 1.5rem 2rem;
  margin-bottom: 4rem;
}

#priceStoreInfo .support_menu dl {
  display: flex;
  align-items: center;
}

#priceStoreInfo .support_menu dl dt {
  color: #d5a8a4;
  width: 12%;
  font-size: 0.92857rem;
  padding-right: 3%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #priceStoreInfo .support_menu dl dt {
    width: 15%;
  }
}

#priceStoreInfo .support_menu dl dd {
  width: 85%;
  padding-left: 3%;
  border-left: solid 1px #d5a8a4;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .support_menu {
    margin-bottom: 4rem;
    padding: 3vw 6vw;
  }
  #priceStoreInfo .support_menu dl {
    display: block;
  }
  #priceStoreInfo .support_menu dl dt {
    width: 100%;
    text-align: center;
    margin-bottom: 2vw;
  }
  #priceStoreInfo .support_menu dl dd {
    width: 100%;
    text-align: center;
    border: 0;
    padding: 2vw 0 0;
    position: relative;
  }
  #priceStoreInfo .support_menu dl dd:before {
    position: absolute;
    content: "";
    width: 6%;
    border-top: solid 1px #d5a8a4;
    top: 1%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

#priceStoreInfo .speciality_txt {
  color: #d5a8a4;
  margin: 1rem 0 1.5rem;
}

@media screen and (max-width: 767px) {
  #priceStoreInfo .speciality_txt {
    margin: 2.5vw 0 5vw;
  }
}

.reserve_read {
  text-align: center;
  margin: 9.9rem auto 12rem;
}

.reserve_read .rr_caution {
  color: #d5a8a4;
  margin-top: 1.7rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .reserve_read {
    width: 90vw;
    margin: 15vw auto 23vw;
    text-align: left;
  }
  .reserve_read p {
    line-height: 2;
    font-size: 3.05732vw;
  }
}

.price_support_menu {
  width: 100%;
  border-radius: 0.7rem;
  background-color: #fff;
  padding: 1.5rem 2rem;
  margin-bottom: 4rem;
}

.price_support_menu dl {
  display: flex;
  align-items: center;
}

.price_support_menu dl dt {
  color: #7d6f6e;
  width: 15%;
  font-size: 0.92857rem;
  padding: 0 4% 0 1%;
  text-align: center;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .price_support_menu dl dt {
    width: 18%;
  }
}

.price_support_menu dl dd {
  width: 75%;
  color: #555;
  padding-left: 5%;
  border-left: solid 1px #7d6f6e;
}

@media screen and (max-width: 767px) {
  .price_support_menu {
    margin-bottom: 4rem;
    padding: 3vw 6vw;
  }
  .price_support_menu dl {
    display: block;
  }
  .price_support_menu dl dt {
    width: 100%;
    text-align: center;
    margin-bottom: 2vw;
  }
  .price_support_menu dl dd {
    width: 100%;
    text-align: left;
    border: 0;
    padding: 2vw 0 0;
    position: relative;
  }
  .price_support_menu dl dd:before {
    position: absolute;
    content: "";
    width: 6%;
    border-top: solid 1px #7d6f6e;
    top: 1%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

.MVsml_price {
  background-image: url("../images/price/sml_kids_price_mvpc.jpg");
}

@media screen and (max-width: 767px) {
  .MVsml_price {
    background-image: url("../images/price/sml_kids_price_mvsp.jpg");
  }
}

.MVanv_price {
  background-image: url("../images/price/anv_otona_price_mvpc.jpg");
}

@media screen and (max-width: 767px) {
  .MVanv_price {
    background-image: url("../images/price/anv_otona_price_mvsp.jpg");
  }
}

.photoprice {
  width: 100vw;
}

@media screen and (max-width: 767px) {
  .photoprice {
    margin-top: 10vw;
  }
}

.photoprice .listtop {
  width: 100%;
  padding: 2.5rem 0;
}

.photoprice .listtop .prlt_ttl {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.85714rem;
  letter-spacing: 0.2em;
  color: #fff;
  text-align: center;
}

.photoprice .listtop .prlt_ttl .ttl_small {
  font-size: 1.07143rem;
}

.photoprice .listtop .prlt_cap {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.07143rem;
  letter-spacing: 0.2em;
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .photoprice .listtop {
    padding: 5vw 0;
  }
  .photoprice .listtop .prlt_ttl {
    font-size: 5.09554vw;
  }
  .photoprice .listtop .prlt_ttl .ttl_small {
    font-size: 3.54868vw;
  }
  .photoprice .listtop .prlt_cap {
    font-size: 3.00273vw;
  }
}

.photoprice .listbottom {
  width: 100%;
}

.photoprice .listbottom > .inner {
  padding: 4.5rem 0 7rem;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom > .inner {
    padding: 7vw 0 8vw;
  }
}

.photoprice .listbottom > .inner > .caution {
  font-size: 0.92857rem;
  color: #888888;
  font-weight: 300;
}

.photoprice .listbottom > .inner > .caution .link_bold a {
  font-weight: bold;
  color: #7d6f6e;
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom > .inner > .caution {
    font-weight: 300;
  }
}

.photoprice .listbottom > .inner > .caution strong {
  font-weight: bold;
  color: #7d6f6e;
}

.photoprice .listbottom > .inner .ippan_ct {
  margin-bottom: 1.8rem;
  padding: 0 1.45rem;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom > .inner .ippan_ct {
    padding: 0 2vw;
  }
}

.photoprice .listbottom > .inner .caution_bottom {
  margin-top: 5rem;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom > .inner .caution_bottom {
    margin-top: 9vw;
  }
}

.photoprice .listbottom .prlt_block {
  width: 100%;
  border-bottom: solid 1px #7d6f6e;
  padding: 1rem 1.4rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 1.8rem;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .prlt_block {
    display: inline-block;
    padding: 1.3vw 1.4vw;
  }
}

.photoprice .listbottom p {
  color: #555;
  font-weight: bold;
  letter-spacing: 0.2em;
}

.photoprice .listbottom .caution p {
  font-weight: 300;
}

.photoprice .listbottom .prlt_name {
  text-align: left;
  font-size: 1.5rem;
}

.photoprice .listbottom .prlt_name .prlt_cap {
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .prlt_name {
    font-size: 3.82166vw;
  }
  .photoprice .listbottom .prlt_name .prlt_cap {
    font-size: 3.00273vw;
  }
}

.photoprice .listbottom .prlt_desc {
  text-align: right;
  font-size: 1.14286rem;
}

.photoprice .listbottom .prlt_desc .strong {
  font-size: 1.78571rem;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .prlt_desc {
    font-size: 2.72975vw;
  }
  .photoprice .listbottom .prlt_desc .strong {
    font-size: 5.09554vw;
  }
  .photoprice .listbottom .prlt_desc p {
    line-height: 1.4;
  }
}

.photoprice .listbottom .prlt_img_block {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 3.8rem;
}

.photoprice .listbottom .prlt_img_block .prlt_img {
  width: 33%;
}

.photoprice .listbottom .prlt_img_block .prlt_lists {
  width: 63%;
}

.photoprice .listbottom .prlt_img_block .prlt_lists .caution {
  color: #888888;
  font-size: 0.92857rem;
  line-height: 2;
  color: #888888;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .prlt_img_block {
    display: block;
    margin-top: 5vw;
  }
  .photoprice .listbottom .prlt_img_block .prlt_img {
    width: 54.3%;
    margin: 0 auto;
  }
  .photoprice .listbottom .prlt_img_block .prlt_lists {
    width: 100%;
  }
}

.photoprice .listbottom .lists_block {
  width: 100%;
  margin-bottom: 1.8rem;
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .lists_block {
    padding: 1.3vw 1.4vw;
  }
}

.photoprice .listbottom .lists_block .prlt_size {
  text-align: left;
  margin-top: 1.2rem;
  font-size: 1.07143rem;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .lists_block .prlt_size {
    font-size: 2.72975vw;
    margin-top: 3vw;
  }
}

.photoprice .listbottom .lists_block .mb05 {
  margin-bottom: 0.8rem;
}

.photoprice .listbottom .lists_block > .underline {
  width: 100%;
  border-bottom: solid 1px #7d6f6e;
}

.photoprice .listbottom .lists_block > .underline p {
  padding-left: 1.4rem;
}

@media screen and (max-width: 767px) {
  .photoprice .listbottom .lists_block > .underline {
    padding-bottom: 1vw;
  }
}

.price_wr {
  margin: 5rem auto 10rem;
}

.price_wr a {
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .price_wr {
    margin: 8vw auto 19vw;
  }
}

.price_wrbt {
  margin: 5rem auto 1rem;
}

.price_wrbt a {
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .price_wrbt {
    margin: 8vw auto 16vw;
  }
}

.rr_mt10 {
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .rr_mt10 {
    margin-top: 10vw;
  }
}

.br_txt {
  color: #888888;
}

.pricePlus {
  width: 2.2rem;
  margin: 4.5rem auto;
  text-align: center;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .pricePlus {
    width: 3.5%;
  }
}

@media screen and (max-width: 767px) {
  .pricePlus {
    width: 7%;
    margin: 6vw auto;
  }
}

.photo_green {
  background-color: #afcebd;
}

.photo_lightgreen {
  background-color: #eff5f2;
}

.print_olive {
  background-color: #c4c2b4;
}

.photo_lightolive {
  background-color: #f3f3f0;
}

.pack-contents-wrapper {
  margin-bottom: 9.64rem;
}

.pack_price_list {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .pack_price_list {
    display: block;
  }
}

.pack_price_list:nth-child(n+2) {
  margin-top: 8rem;
}

@media screen and (max-width: 767px) {
  .pack_price_list:nth-child(n+2) {
    margin-top: 5rem;
  }
}

.pack_price_list .imgarea {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .pack_price_list .imgarea {
    width: 100%;
  }
}

.pack_price_list .imgarea figure {
  position: relative;
}

.pack_price_list .imgarea figure:nth-child(n+2) {
  margin-top: 1.8rem;
  margin-left: auto;
  width: 68%;
}

@media screen and (max-width: 767px) {
  .pack_price_list .imgarea figure:nth-child(n+2) {
    width: 100%;
    margin: 1.5rem 0 0;
  }
}

@media screen and (max-width: 767px) {
  .pack_price_list .imgarea figure:nth-child(n+2) {
    margin: 0.7rem 0 0;
  }
}

.pack_price_list .imgarea figure figcaption {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  font-size: 0.85714rem;
  color: #7d6f6e;
  letter-spacing: 0.1em;
  z-index: 10;
  text-align: right;
  line-height: 1.3;
}

.pack_price_list .txtarea {
  width: 45%;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea {
    width: 100%;
    margin-top: 1.5rem;
  }
}

.pack_price_list .txtarea h3 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.64286rem;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #7d6f6e;
  padding-bottom: 0.2em;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea h3 {
    font-size: 1.34154rem;
  }
}

.pack_price_list .txtarea .price {
  text-align: right;
  color: #d5a8a4;
  font-size: 1.14286rem;
  font-weight: 700;
  letter-spacing: 0.1;
  margin-top: 0.5rem;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea .price {
    font-size: 1rem;
  }
}

.pack_price_list .txtarea .price span {
  font-size: 187.5%;
  font-weight: 700;
  display: inline-block;
  margin: 0 0.1em;
}

.pack_price_list .txtarea .content {
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea .content {
    margin-top: 1rem;
  }
}

.pack_price_list .txtarea .content h4 span {
  display: inline-block;
  background: #7d6f6e;
  color: #fff;
  padding: 0.5em 1.5em;
  font-size: 1rem;
  letter-spacing: 0.1em;
  font-weight: 700;
  line-height: 1;
  border-radius: 3em;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea .content h4 span {
    font-size: 1rem;
  }
}

.pack_price_list .txtarea .content p {
  margin-top: 1rem;
}

.pack_price_list .txtarea .content p span {
  display: inline-block;
  color: #7d6f6e;
  font-size: 1rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  margin-right: 0.7em;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea .content p span {
    font-size: 1rem;
  }
}

.pack_price_list .txtarea .content p span:after {
  content: '/';
  color: #ccc;
  display: inline-block;
  margin-left: 0.7em;
}

.pack_price_list .txtarea .content p span:last-child {
  margin-right: 0;
}

.pack_price_list .txtarea .content p span:last-child:after {
  display: none;
}

.pack_price_list .txtarea .description {
  margin-top: 2rem;
  font-size: 0.92857rem;
  letter-spacing: 0.1em;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea .description {
    line-height: 1.66;
    letter-spacing: 0.05em;
    font-size: 1rem;
  }
}

.pack_price_list .txtarea .notes {
  margin-top: 1.5rem;
  position: relative;
  font-size: 0.92857rem;
  letter-spacing: 0.1em;
  line-height: 2;
  padding-left: 1.2em;
}

@media screen and (max-width: 767px) {
  .pack_price_list .txtarea .notes {
    line-height: 1.66;
    letter-spacing: 0.05em;
    font-size: 1rem;
  }
}

.pack_price_list .txtarea .notes:before {
  content: '';
  display: block;
  width: 0.8em;
  height: 0.8em;
  background: #d5a8a4;
  position: absolute;
  top: 0.5em;
  left: 0;
  z-index: 5;
  border-radius: 50%;
  line-height: 1;
}

.goods-contents-wrapper {
  background: #f5f2f2;
  padding: 9.64rem 0;
}

.goods-contents-wrapper .goods_cate:nth-child(n+2) {
  margin-top: 7.8rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_cate:nth-child(n+2) {
    margin-top: 5rem;
  }
}

.goods-contents-wrapper .goods_cate h3 {
  background: #d5a8a4;
  text-align: center;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.78571rem;
  letter-spacing: 0.2em;
  border-radius: 3em;
  padding: 0.2em 0;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_cate h3 {
    font-size: 1.381rem;
  }
}

.goods-contents-wrapper .goods_list_wrap {
  margin-top: 6.4rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list_wrap {
    margin-top: 3.5rem;
  }
}

.goods-contents-wrapper .goods_list:nth-child(n+2) {
  margin-top: 7.8rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list:nth-child(n+2) {
    margin-top: 5rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top._2col {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top._2col {
    display: block;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top._2col > * {
  width: 47%;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top._2col > * {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top .info {
    margin-top: 1.5rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top .info h4 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.64286rem;
  letter-spacing: 0.2em;
  color: #555;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top .info h4 {
    font-size: 1.34154rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top .info .desc {
  margin-top: 2rem;
  font-size: 0.92857rem;
  letter-spacing: 0.075em;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top .info .desc {
    margin-top: 1.5rem;
    font-size: 1rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top .info .spec {
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top .info .spec {
    margin-top: 1.5rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top .info .spec h5 span {
  display: inline-block;
  background: #7d6f6e;
  color: #fff;
  padding: 0.5em 1.5em;
  font-size: 1rem;
  letter-spacing: 0.1em;
  font-weight: 700;
  line-height: 1;
  border-radius: 3em;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top .info .spec h5 span {
    font-size: 1rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top .info .spec ul {
  margin-top: 1rem;
}

.goods-contents-wrapper .goods_list.imgblock .top .info .spec ul li {
  padding-left: 1.4em;
  font-size: 0.92857rem;
  position: relative;
  color: #7d6f6e;
  letter-spacing: 0.1em;
  line-height: 1.6;
}

.goods-contents-wrapper .goods_list.imgblock .top .info .spec ul li:nth-child(n+2) {
  margin-top: 0.3rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .top .info .spec ul li {
    font-size: 1rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .top .info .spec ul li:before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10;
}

.goods-contents-wrapper .goods_list.imgblock .list {
  margin-top: 3rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.goods-contents-wrapper .goods_list.imgblock .list li {
  width: 47%;
}

.goods-contents-wrapper .goods_list.imgblock .list li:nth-child(n+3) {
  margin-top: 1.5rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .list li {
    width: 100%;
  }
  .goods-contents-wrapper .goods_list.imgblock .list li:nth-child(n+3) {
    margin-top: 1.5rem;
  }
  .goods-contents-wrapper .goods_list.imgblock .list li:nth-child(n+2) {
    margin-top: 1.5rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .list li figure {
  margin-bottom: 1.5rem;
}

.goods-contents-wrapper .goods_list.imgblock .list li .priceblock {
  display: flex;
  justify-content: space-between;
  padding-bottom: 0.2rem;
  border-bottom: 1px solid #7d6f6e;
}

.goods-contents-wrapper .goods_list.imgblock .list li .priceblock .name {
  font-size: 1.21429rem;
  font-weight: 700;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .list li .priceblock .name {
    font-size: 1.1048rem;
  }
}

.goods-contents-wrapper .goods_list.imgblock .list li .priceblock .price {
  font-size: 1.21429rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.imgblock .list li .priceblock .price {
    font-size: 1.1048rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.goods-contents-wrapper .goods_list.txtblock .list > li {
  width: 47%;
}

.goods-contents-wrapper .goods_list.txtblock .list > li:nth-child(n+3) {
  margin-top: 4rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li {
    width: 100%;
  }
  .goods-contents-wrapper .goods_list.txtblock .list > li:nth-child(n+3) {
    margin-top: 4rem;
  }
  .goods-contents-wrapper .goods_list.txtblock .list > li:nth-child(n+2) {
    margin-top: 4rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .priceblock {
  display: flex;
  justify-content: space-between;
  padding-bottom: 0.2rem;
  border-bottom: 1px solid #7d6f6e;
}

.goods-contents-wrapper .goods_list.txtblock .list > li .priceblock .name {
  font-size: 1.21429rem;
  font-weight: 700;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .priceblock .name {
    font-size: 1.1048rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .priceblock .price {
  font-size: 1.21429rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .priceblock .price {
    font-size: 1.1048rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .desc {
  margin-top: 1rem;
  font-size: 0.92857rem;
  letter-spacing: 0.075em;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .desc {
    margin-top: 1.5rem;
    font-size: 1rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .spec {
  margin-top: 2rem;
  display: flex;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .spec {
    margin-top: 1.5rem;
    display: block;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .spec h5 {
  margin-right: 1.5rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .spec h5 {
    margin: 0;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .spec h5 span {
  display: inline-block;
  background: #7d6f6e;
  color: #fff;
  padding: 0.5em 1.5em;
  font-size: 1rem;
  letter-spacing: 0.1em;
  font-weight: 700;
  line-height: 1;
  border-radius: 3em;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .spec h5 span {
    font-size: 1rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .spec ul {
  margin-top: 0.3rem;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .spec ul {
    display: block;
    margin-top: 1rem;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .spec ul li {
  padding-left: 1.4em;
  font-size: 0.92857rem;
  position: relative;
  color: #7d6f6e;
  letter-spacing: 0.1em;
  line-height: 1.6;
  margin-right: 1.5rem;
}

@media screen and (max-width: 767px) {
  .goods-contents-wrapper .goods_list.txtblock .list > li .spec ul li {
    font-size: 1rem;
    margin-right: 0;
  }
  .goods-contents-wrapper .goods_list.txtblock .list > li .spec ul li:nth-child(n+2) {
    margin-top: 0.3em;
  }
}

.goods-contents-wrapper .goods_list.txtblock .list > li .spec ul li:before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 10;
}

.section-wrapper {
  width: 100%;
  display: flex;
}

.section-wrapper .images {
  width: 60%;
  display: flex;
  justify-content: space-evenly;
}

.img-l-sec .images {
  margin-right: 20px;
}

.img-r-sec .images {
  margin-left: 20px;
}

.section-wrapper .images div {
  width: 45%;
}

.section-wrapper .images img {
  display: block;
  border-radius: 10%;
}

.section-wrapper .description {
  width: 40%;
}

.section-wrapper .desc-title-cont {
  height: 70px;
  display: flex;
}

.section-wrapper .desc-title-cont .desc-title-num {
  margin-right: 1.5rem;
  font-size: 5.5rem;
  font-family: "Oooh Baby", cursive;
  color: #D5A8A4;
}

.section-wrapper .desc-title-txt {
  margin-top: 5%;
}

.section-wrapper .desc-title-en {
  font-size: 1rem;
  font-family: "Oooh Baby", cursive;
  color: #D5A8A4;
}

.section-wrapper .desc-title-ja {
  font-size: 1.2rem;
  letter-spacing: 0.2rem;
  font-family: 'Noto Serif JP', serif;
  color: #7D6F6E;
}

.desc-detail {
  margin-top: 5%;
  letter-spacing: 0.1rem;
  line-height: 1rem;
}

.desc-detail p {
  color: #AAAAAA;
  line-height: 2.5rem;
}

.dots {
  margin: 5vw auto;
  text-align: center;
}

.dots img {
  width: 8px;
  height: auto;
}

.button-wrapper {
  /*width: 80vw;*/
  margin: 140px auto 30px;
  display: flex;
  justify-content: space-evenly;
}

@media screen and (max-width: 767px) {
  .title-wrapper {
    /*margin: 30px auto 50px;*/
    margin: 10vw auto 15vw;
  }
  .dots img {
    width: 5px;
  }
  .main-contents-wrapper,
  #breadcrumbs {
    width: 90vw;
  }
  .img-l-sec {
    flex-direction: column;
  }
  .img-r-sec {
    flex-direction: column-reverse;
  }
  .img-l-sec .images,
  .img-r-sec .images {
    margin: 0 auto;
  }
  .section-wrapper .images {
    width: 100%;
  }
  .section-wrapper .images img {
    margin: 0 1%;
  }
  .section-wrapper .description {
    /*width: 90%;*/
    width: 93%;
    /*padding-left: 10%;*/
    padding-left: 7%;
  }
  .section-wrapper .desc-title-cont {
    height: fit-content;
  }
  .section-wrapper .desc-title-txt {
    margin-top: 8%;
  }
  .desc-detail {
    margin-top: 1%;
  }
  .button-wrapper {
    flex-direction: column;
    /*margin: 70px auto 30px;*/
    margin: 20vw auto 5vw;
  }
  .brown-button {
    width: 100%;
    /*margin: 25px auto; */
    margin: 5vw auto;
  }
}

.photomenu_page {
  letter-spacing: 0.05em;
}

#pmMv {
  padding: 0 2.14rem;
}

@media screen and (max-width: 767px) {
  #pmMv {
    padding: 0 5vw;
  }
}

#pmMv .pmMVSlider {
  height: 100%;
}

#pmMv .pmMVSlider .item {
  display: block !important;
}

#pmMv figure {
  width: calc(100vw - 4.28rem);
  height: calc(100vh - 200px);
  overflow: hidden;
  border-radius: 1.42rem;
}

@media screen and (max-width: 767px) {
  #pmMv figure {
    width: calc(100vw - 10vw);
    height: calc(100vh - 70vw);
  }
}

#pmMv figure span {
  display: block;
  width: 100%;
  height: 100%;
}

#pmIntro {
  text-align: center;
  padding: 3rem 0 0;
}

@media screen and (max-width: 767px) {
  #pmIntro {
    padding-top: 10vw;
  }
}

#pmIntro:after {
  content: "";
  display: block;
  width: 38.35rem;
  height: 5px;
  margin: 7rem auto 0;
  background-image: url(../images/photomenu/common/bot_border.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

@media screen and (max-width: 767px) {
  #pmIntro:after {
    margin-top: 13vw;
    width: 70vw;
  }
}

#pmIntro .ttl p {
  color: #d5a8a4;
  line-height: 1;
}

#pmIntro .ttl p.en {
  font-family: 'Oooh Baby', cursive;
  font-size: 7.14286rem;
}

@media screen and (max-width: 767px) {
  #pmIntro .ttl p.en {
    font-size: 3.7rem;
  }
}

#pmIntro .ttl p.jp {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 2.14286rem;
  letter-spacing: 0.2em;
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  #pmIntro .ttl p.jp {
    font-size: 1.3rem;
    margin-top: 5vw;
  }
}

#pmIntro .lead {
  margin-top: 5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.14286rem;
  color: #7d6f6e;
  letter-spacing: 0.2em;
  line-height: 2.8125;
}

@media screen and (max-width: 767px) {
  #pmIntro .lead {
    margin-top: 13vw;
    font-size: 1.05rem;
    line-height: 1.7;
  }
}

.pmSec {
  margin-top: 8rem;
}

@media screen and (max-width: 767px) {
  .pmSec {
    margin-top: 13vw;
  }
}

@media screen and (max-width: 767px) {
  .pmAbout {
    padding-bottom: 2rem;
  }
}

.pmAbout .pmAboutBlock .ttl {
  border-top: 1px solid #d5a8a4;
  border-bottom: 1px solid #d5a8a4;
  padding: 5px 0;
  margin-bottom: 6.8rem;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .ttl {
    margin-bottom: 3rem;
  }
}

.pmAbout .pmAboutBlock .ttl:last-child {
  margin-bottom: 0;
}

.pmAbout .pmAboutBlock .ttl h3 {
  background: #d5a8a4;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.85714rem;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-align: center;
  padding: 1.5rem 0;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .ttl h3 {
    font-size: 1.381rem;
    padding: 1rem 0;
  }
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox {
  display: flex;
  justify-content: space-between;
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox:nth-child(n+2) {
  margin-top: 4.2rem;
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox:nth-child(even) {
  flex-direction: row-reverse;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox {
    display: block;
    width: 93%;
    margin: 0 auto;
  }
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox figure {
  width: 55%;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox figure {
    width: 100%;
    margin-bottom: 2.5rem;
  }
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox {
  width: 39.5%;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox {
    width: 100%;
  }
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox h4 {
  color: #7d6f6e;
  font-size: 1.64286rem;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox h4 {
    font-size: 1.34154rem;
    text-align: center;
  }
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox .pmaBtn {
  text-align: left;
  margin-top: 3rem;
}

@media screen and (max-width: 767px) {
  .pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox .pmaBtn {
    text-align: center;
  }
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox .txtbox .pmaBtn a {
  text-align: center;
  font-size: 1.0769rem;
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox.noimg {
  display: block;
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox.noimg .txtbox {
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
}

.pmAbout .pmAboutBlock .pmAboutBlockCon .pmAboutBox.noimg .txtbox h4 {
  text-align: center;
}

.pmAcd .acdBox {
  padding-top: 5rem;
  display: none;
}

.pmGallery .pmgWrap {
  margin-top: 1rem;
  display: none;
}

.pmGallery .pmgWrap:first-child {
  display: block;
}

.pmGallery .pmgWrap .pmgBlock {
  display: flex;
  justify-content: space-between;
  margin-top: 1rem;
}

.pmGallery .pmgWrap .pmgBlock .pmgPhoto.pmgT {
  display: block;
  width: 22.798675%;
}

.pmGallery .pmgWrap .pmgBlock .pmgPhoto.pmgT figure {
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 150%;
  box-sizing: content-box;
}

.pmGallery .pmgWrap .pmgBlock .pmgPhoto.pmgY {
  width: 51.232067%;
}

.pmGallery .pmgWrap .pmgBlock .pmgPhoto.pmgY figure {
  display: block;
  width: 100%;
  height: 0;
  padding-bottom: 66.666%;
  box-sizing: content-box;
}

.pmGallery .pmgWrap .pmgBlock._yy .pmgPhoto.pmgY {
  width: 49.25%;
}

.pmGallery .pmgBtn {
  padding-top: 2rem;
}

.photoprice_sec:nth-of-type(n+2) {
  margin-top: 10rem;
  padding-top: 10rem;
  position: relative;
}

@media screen and (max-width: 767px) {
  .photoprice_sec:nth-of-type(n+2) {
    margin-top: 5rem;
    padding-top: 5rem;
  }
}

.photoprice_sec:nth-of-type(n+2):before, .photoprice_sec:nth-of-type(n+2):after {
  content: "";
  display: block;
  background: #ABABAB;
  width: 5rem;
  height: 0.71rem;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .photoprice_sec:nth-of-type(n+2):before, .photoprice_sec:nth-of-type(n+2):after {
    width: 2.5rem;
    height: 0.355rem;
  }
}

.photoprice_sec:nth-of-type(n+2):after {
  transform: translateX(-50%) rotate(90deg);
}

.photoprice_sec .pps_ttl {
  max-width: 1000px;
  border-top: 1px solid #91BEAD;
  border-bottom: 1px solid #91BEAD;
  padding: 5px 0;
  margin: 0 auto 6.8rem;
}

@media screen and (max-width: 767px) {
  .photoprice_sec .pps_ttl {
    margin-bottom: 3rem;
  }
}

.photoprice_sec .pps_ttl h3 {
  background: #91BEAD;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.85714rem;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-align: center;
  padding: 1.5rem 0;
}

@media screen and (max-width: 767px) {
  .photoprice_sec .pps_ttl h3 {
    font-size: 1.381rem;
    padding: 1rem 0;
  }
}

@media screen and (max-width: 767px) {
  .photoprice_sec .pps_ttl + .pmPlan {
    margin-top: 0;
  }
}

.photoprice_sec.noplus {
  margin-top: 10rem;
  padding-top: 0;
  position: relative;
}

@media screen and (max-width: 767px) {
  .photoprice_sec.noplus {
    margin-top: 5rem;
  }
}

.photoprice_sec.noplus:before, .photoprice_sec.noplus:after {
  display: none;
}

#PHOTO-PRICE-AREA {
  margin-top: 8rem;
}

#PHOTO-OPTION .po_block {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block {
    display: block;
  }
}

#PHOTO-OPTION .po_block .po_box {
  width: 48%;
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block .po_box {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  #PHOTO-OPTION .po_block .po_box:nth-child(n+2) {
    margin-top: 2rem;
  }
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block .po_box figure {
    width: 32.7%;
  }
}

#PHOTO-OPTION .po_block .po_box figure img {
  border-radius: 5px;
}

#PHOTO-OPTION .po_block .po_box div {
  margin-top: 2rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block .po_box div {
    width: 61.8%;
    margin-top: 0;
    text-align: left;
  }
}

#PHOTO-OPTION .po_block .po_box div p {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 1.428;
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block .po_box div p {
    font-size: 1.18371rem;
  }
}

#PHOTO-OPTION .po_block .po_box div p.ttl {
  font-weight: 700;
  color: #7d6f6e;
}

#PHOTO-OPTION .po_block .po_box div p.price {
  margin-top: 1rem;
  font-weight: 700;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block .po_box div p.price {
    margin-top: 0.5rem;
  }
}

#PHOTO-OPTION .po_block .po_box div p.notes {
  margin-top: 1rem;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-OPTION .po_block .po_box div p.notes {
    font-size: 0.94697rem;
    margin-top: 0.5rem;
  }
}

#PHOTO-OPTION .btn {
  margin-top: 4rem;
}

#PHOTO-PACK .btn {
  margin-top: 8rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-PACK .btn {
    margin-top: 4rem;
  }
}

#PHOTO-TOKTEN .pps_ttl {
  margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .pps_ttl {
    margin-top: 2rem;
  }
}

#PHOTO-TOKTEN .pps_tokuten {
  background: #E7F0ED;
  border-radius: 1.42rem;
  padding: 3rem 5rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .pps_tokuten {
    padding: 0;
    background: none;
  }
}

#PHOTO-TOKTEN .planBenefits {
  background: #fff;
  border-radius: 0.714rem;
  padding: 3.5rem 6.8rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits {
    padding: 0 1rem;
    background: none;
  }
}

#PHOTO-TOKTEN .planBenefits ul li {
  margin-bottom: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li {
    margin-bottom: 5vw;
  }
}

#PHOTO-TOKTEN .planBenefits ul li:last-child {
  margin-bottom: 0;
}

#PHOTO-TOKTEN .planBenefits ul li .icon {
  width: 5.71rem;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 5.71rem;
  background-image: url(../images/photomenu/common/plan_round.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li .icon {
    width: 15%;
    padding-bottom: 15%;
  }
}

#PHOTO-TOKTEN .planBenefits ul li .icon p {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  text-align: center;
  width: 100%;
}

#PHOTO-TOKTEN .planBenefits ul li .icon p.head {
  font-size: 0.92857rem;
  top: 10%;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li .icon p.head {
    font-size: 0.6rem;
  }
}

#PHOTO-TOKTEN .planBenefits ul li .icon p.num {
  font-size: 2.14286rem;
  bottom: 8%;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li .icon p.num {
    bottom: 3%;
    font-size: 1.4rem;
  }
}

#PHOTO-TOKTEN .planBenefits ul li .txt {
  width: 85%;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li .txt {
    width: 80%;
  }
}

#PHOTO-TOKTEN .planBenefits ul li .txt .large {
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li .txt .large {
    line-height: 1.4;
    font-size: 1.3rem;
  }
}

#PHOTO-TOKTEN .planBenefits ul li .txt .large span.color {
  color: #d5a8a4;
}

#PHOTO-TOKTEN .planBenefits ul li .txt .small {
  margin-top: 0.5rem;
}

@media screen and (max-width: 767px) {
  #PHOTO-TOKTEN .planBenefits ul li .txt .small {
    margin-top: 1vw;
  }
}

.pmPlan {
  position: relative;
}

.pmPlan:before, .pmPlan:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  width: 90vw;
  max-width: 1132px;
  height: 7.85714rem;
  transform: translateX(-50%);
  left: 50%;
  pointer-events: none;
  background-image: url(../images/photomenu/common/plan_frame_pc.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (max-width: 767px) {
  .pmPlan:before, .pmPlan:after {
    background-image: url(../images/photomenu/common/plan_frame_sp.svg);
  }
}

.pmPlan:before {
  top: 0;
}

.pmPlan:after {
  bottom: 0;
  transform: translateX(-50%) rotate(180deg);
}

.pmPlan > div {
  position: relative;
  z-index: 10;
  padding: 5rem 0;
}

@media screen and (max-width: 767px) {
  .pmPlan > div {
    padding: 15vw 0 10vw;
  }
}

.pmPlan > div .planTtl {
  text-align: center;
  font-size: 3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #7d6f6e;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planTtl {
    font-size: 1.7rem;
    width: 87%;
    margin: 0 auto;
  }
}

.pmPlan > div .planHeadLead {
  text-align: center;
  font-size: 1.14286rem;
  letter-spacing: 0.05em;
  margin-top: 1rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planHeadLead {
    font-size: 1.05rem;
    width: 87%;
    margin: 1rem auto 0;
  }
}

.pmPlan > div .planStore {
  max-width: 830px;
  margin: 3rem auto 5rem;
  border: 1px solid #d5a8a4;
  border-radius: 0.71428rem;
  display: flex;
  align-items: center;
  padding: 1rem 0;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planStore {
    width: 87%;
    display: block;
    text-align: center;
    padding: 2vw;
    margin-top: 5vw;
    margin-bottom: 5vw;
  }
}

.pmPlan > div .planStore h3 {
  padding: 0.5rem 2rem;
  font-size: 0.92857rem;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planStore h3 {
    font-size: 1rem;
    padding: 0;
  }
}

.pmPlan > div .planStore > div {
  border-left: 1px solid #d5a8a4;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planStore > div {
    border-left: none;
  }
  .pmPlan > div .planStore > div:before {
    content: "";
    width: 2rem;
    height: 1px;
    background: #d5a8a4;
    display: block;
    margin: 1rem auto;
  }
}

.pmPlan > div .planStore > div p {
  padding: 0.5rem 2rem;
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planStore > div p {
    font-size: 0.9rem;
    padding: 0;
  }
}

.pmPlan > div .planMainCon {
  display: flex;
  justify-content: space-between;
  margin: 5rem auto 0;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon {
    display: block;
    width: 87%;
    margin: 5vw auto 0;
  }
}

.pmPlan > div .planMainCon > figure {
  width: 29%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > figure {
    width: 100%;
    margin-bottom: 3vw;
  }
}

.pmPlan > div .planMainCon > div {
  width: 66%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div {
    width: 100%;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1259px) {
  .pmPlan > div .planMainCon > div > *:last-child {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .pmPlan > div .planMainCon > div > *:last-child {
    margin-bottom: 0;
  }
}

.pmPlan > div .planMainCon > div .planName {
  border-bottom: 1px solid #7d6f6e;
  color: #7d6f6e;
  font-size: 2.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  padding-bottom: 0.4rem;
  margin-bottom: 3rem;
  margin-top: 4rem;
  line-height: 1.75;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planName {
    font-size: 1.5rem;
    margin-top: 10vw;
    margin-bottom: 3vw;
  }
}

.pmPlan > div .planMainCon > div .planName:first-child {
  margin-top: 0;
}

.pmPlan > div .planMainCon > div .planLead {
  font-size: 1.14286rem;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planLead {
    font-size: 1.1rem;
    margin-bottom: 3vw;
  }
}

.pmPlan > div .planMainCon > div .planPrice {
  background: #f5f2f2;
  border-radius: 0.71428rem;
  padding: 1.5rem;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planPrice {
    padding: 3vw;
    margin-bottom: 3vw;
  }
}

.pmPlan > div .planMainCon > div .planPrice p {
  color: #d5a8a4;
  font-weight: bold;
  display: inline-block;
  line-height: 1.3;
}

.pmPlan > div .planMainCon > div .planPrice p.small {
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planPrice p.small {
    font-size: 1rem;
  }
}

.pmPlan > div .planMainCon > div .planPrice p.large {
  font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planPrice p.large {
    font-size: 2rem;
  }
}

.pmPlan > div .planMainCon > div .planPrice p.large span {
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planPrice p.large span {
    font-size: 1rem;
  }
}

.pmPlan > div .planMainCon > div .planNotes {
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planNotes {
    font-size: 0.95rem;
  }
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planNotes:last-child {
    margin-bottom: 5vw;
  }
}

.pmPlan > div .planMainCon > div .planInc {
  margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planInc {
    margin-top: 5vw;
  }
}

.pmPlan > div .planMainCon > div .planInc h3 {
  font-size: 1.14286rem;
  font-weight: bold;
  color: #ccc;
  margin-bottom: 0.5rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planInc h3 {
    font-size: 1rem;
    margin-bottom: 2vw;
  }
}

.pmPlan > div .planMainCon > div .planInc > div {
  display: flex;
  flex-wrap: wrap;
}

.pmPlan > div .planMainCon > div .planInc > div span {
  display: block;
  padding: 0.5rem 1.5rem;
  background: #7d6f6e;
  color: #fff;
  margin-right: 0.7rem;
  border-radius: 0.5rem;
}

.pmPlan > div .planMainCon > div .planInc > div span:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planInc > div span {
    margin-bottom: 0.7rem;
  }
}

.pmPlan > div .planMainCon > div .planInc > p {
  margin-top: 0.5rem;
}

.pmPlan > div .planMainCon > div .planBenefits ul li {
  margin-bottom: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li {
    margin-bottom: 5vw;
  }
}

.pmPlan > div .planMainCon > div .planBenefits ul li .icon {
  width: 12.27%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 12.27%;
  background-image: url(../images/photomenu/common/plan_round.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li .icon {
    width: 15%;
    padding-bottom: 15%;
  }
}

.pmPlan > div .planMainCon > div .planBenefits ul li .icon p {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  text-align: center;
  width: 100%;
}

.pmPlan > div .planMainCon > div .planBenefits ul li .icon p.head {
  font-size: 0.92857rem;
  top: 10%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li .icon p.head {
    font-size: 0.6rem;
  }
}

.pmPlan > div .planMainCon > div .planBenefits ul li .icon p.num {
  font-size: 2.14286rem;
  bottom: 8%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li .icon p.num {
    bottom: 3%;
    font-size: 1.4rem;
  }
}

.pmPlan > div .planMainCon > div .planBenefits ul li .txt {
  width: 85%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li .txt {
    width: 80%;
  }
}

.pmPlan > div .planMainCon > div .planBenefits ul li .txt .large {
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li .txt .large {
    line-height: 1.4;
    font-size: 1.3rem;
  }
}

.pmPlan > div .planMainCon > div .planBenefits ul li .txt .large span.color {
  color: #d5a8a4;
}

.pmPlan > div .planMainCon > div .planBenefits ul li .txt .small {
  margin-top: 0.5rem;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planMainCon > div .planBenefits ul li .txt .small {
    margin-top: 1vw;
  }
}

.pmPlan > div .planBottomCon {
  max-width: 775px;
  width: 90vw;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planBottomCon {
    width: 87%;
  }
}

@media screen and (min-width: 1100px) and (max-width: 1259px) {
  .pmPlan > div .planBottomCon > *:last-child {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .pmPlan > div .planBottomCon > *:last-child {
    margin-bottom: 0;
  }
}

.pmPlan > div .planLine {
  max-width: 660px;
  width: 100%;
  height: 5px;
  margin: 4rem auto;
  background-image: url(../images/photomenu/common/bot_border.svg);
  background-repeat: repeat-x;
  background-size: contain;
  background-position: center;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planLine {
    margin: 7vw auto;
  }
}

.pmPlan > div .planFree {
  margin: 2.5rem 0;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planFree {
    margin: 5vw 0;
  }
}

.pmPlan > div .planFree img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.pmPlan > div .planChumoku {
  margin: 2.5rem 0 0;
  width: 100%;
  max-width: none;
}

.pmPlan > div .planChumoku > div > figure {
  width: 9%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planChumoku > div > figure {
    width: 11%;
  }
}

.pmPlan > div .planChumoku > div > div {
  width: 86%;
}

@media screen and (max-width: 767px) {
  .pmPlan > div .planChumoku > div > div {
    width: 84%;
  }
}

.pmBtnSet {
  display: flex;
  justify-content: space-between;
  padding-left: 3rem;
  padding-right: 3rem;
}

@media screen and (max-width: 767px) {
  .pmBtnSet {
    display: block;
    margin-top: 7vw;
  }
}

.pmBtnSet .btn {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .pmBtnSet .btn {
    width: 100%;
    margin-bottom: 5vw;
  }
}

@media screen and (max-width: 767px) {
  .pmBtnSet .btn a {
    padding: 1.8vw;
    font-size: 1rem;
  }
}

.pmBtnSet._bsSingle {
  justify-content: center;
}

.pmOption .optionPlan > div {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .pmOption .optionPlan > div {
    display: block;
  }
}

.pmOption .optionPlan > div figure {
  width: 31%;
  margin-right: 3rem;
}

.pmOption .optionPlan > div figure:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .pmOption .optionPlan > div figure {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5vw;
  }
  .pmOption .optionPlan > div figure:last-child {
    margin-bottom: 0;
  }
}

.pmOption .optionPlan > p {
  margin-top: 3rem;
  font-size: 0.92857rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .pmOption .optionPlan > p {
    margin-top: 5vw;
    font-size: 1rem;
    text-align: left;
  }
}

.pmGoods .goodsList {
  margin: 7rem auto;
}

@media screen and (max-width: 767px) {
  .pmGoods .goodsList {
    margin: 10vw auto;
  }
}

.pmGoods .goodsList ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.pmGoods .goodsList ul li {
  width: 100%;
  margin-bottom: 2rem;
}

.pmGoods .goodsList ul li.half {
  width: 49%;
}

.bnrPrice {
  margin-top: 7rem;
}

@media screen and (max-width: 767px) {
  .bnrPrice {
    margin-top: 15vw;
  }
}

.storeArea .storeList .btn {
  margin-top: 3rem;
}

.storeArea > div > p {
  text-align: center;
  margin-top: 7rem;
}

@media screen and (max-width: 767px) {
  .storeArea > div > p {
    margin-top: 15vw;
    text-align: left;
  }
}

.pmStore .ttl_type01 {
  margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .pmStore .ttl_type01 {
    margin-bottom: 20vw;
  }
}

.pmFree > * {
  margin-top: 1rem;
}

.pmFree > *:first-child {
  margin-top: 0;
}

.pmFree img {
  max-width: 100%;
  width: auto;
  height: auto;
}

.pmLine {
  display: block;
  width: 38.35rem;
  height: 5px;
  margin: 7rem auto 0;
  background-image: url(../images/photomenu/common/bot_border.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

@media screen and (max-width: 767px) {
  .pmLine {
    margin-top: 13vw;
    width: 70vw;
  }
}

.bnr_cloth > a {
  display: block;
  margin-bottom: 2rem;
}

.bnr_cloth .btn_type02 a:after {
  transform: translateY(-50%) rotate(45deg);
}

.pmCloth .clothTab .tabTrg {
  border-bottom: 1px solid #7d6f6e;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .pmCloth .clothTab .tabTrg {
    margin-bottom: 5vw;
  }
}

.pmCloth .clothTab .tabTrg li {
  width: 24%;
  margin-right: 1.3333%;
  padding: 1rem;
  text-align: center;
  color: #7d6f6e;
  letter-spacing: 0.2em;
  background: #f5f2f2;
  border-top-left-radius: 0.715rem;
  border-top-right-radius: 0.715rem;
  cursor: pointer;
  transition: 0.4s;
  margin-top: 0.5rem;
}

@media screen and (max-width: 767px) {
  .pmCloth .clothTab .tabTrg li {
    padding: 3vw 1vw;
    letter-spacing: 0.05em;
    font-size: 0.95rem;
  }
}

.pmCloth .clothTab .tabTrg li:hover {
  opacity: 0.6;
}

.pmCloth .clothTab .tabTrg li:nth-child(4n) {
  margin-right: 0;
}

.pmCloth .clothTab .tabTrg li:nth-child(-n+4) {
  margin-top: 0;
}

.pmCloth .clothTab .tabTrg li.current {
  color: #fff;
  background: #7d6f6e;
}

.pmCloth .clothTab .tabBox > div {
  display: flex;
  flex-wrap: wrap;
  opacity: 0;
  pointer-events: none;
  height: 0;
  overflow: hidden;
  transform: translateX(-2rem);
  transition: 0.4s;
}

.pmCloth .clothTab .tabBox > div.current {
  opacity: 1;
  pointer-events: auto;
  height: auto;
  transform: translateX(0);
}

.pmCloth .clothTab .tabBox > div a {
  display: block;
  width: 15.5%;
  margin-right: 1.4%;
  margin-top: 1rem;
}

.pmCloth .clothTab .tabBox > div a:nth-child(6n) {
  margin-right: 0;
}

.pmCloth .clothTab .tabBox > div a:nth-child(-n+6) {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .pmCloth .clothTab .tabBox > div a {
    width: 24%;
    margin-right: 1.3333%;
    margin-top: 1vw;
  }
  .pmCloth .clothTab .tabBox > div a:nth-child(6n) {
    margin-right: 1.3333%;
  }
  .pmCloth .clothTab .tabBox > div a:nth-child(-n+6) {
    margin-top: 1vw;
  }
  .pmCloth .clothTab .tabBox > div a:nth-child(4n) {
    margin-right: 0;
  }
  .pmCloth .clothTab .tabBox > div a:nth-child(-n+4) {
    margin-top: 0;
  }
}

.pmCloth .clothTab .tabBox > div a figure {
  display: block;
  width: 100%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 150%;
}

.pmCloth .clothTab + p {
  margin-top: 2rem;
}

.pmFaq .faq dl {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #ccc;
}

.pmFaq .faq dl:last-child {
  margin-bottom: 0;
}

.pmFaq .faq dl dt, .pmFaq .faq dl dd {
  display: flex;
  align-items: flex-start;
}

.pmFaq .faq dl dt span, .pmFaq .faq dl dd span {
  display: block;
  width: 3.5rem;
  font-size: 2.85714rem;
  font-family: 'Oooh Baby', cursive;
  line-height: 1.1;
}

@media screen and (max-width: 767px) {
  .pmFaq .faq dl dt span, .pmFaq .faq dl dd span {
    width: 2.5rem;
    font-size: 2rem;
  }
}

.pmFaq .faq dl dt p, .pmFaq .faq dl dd p {
  width: calc(100% - 3.5rem);
  padding-top: 0.5rem;
}

@media screen and (max-width: 767px) {
  .pmFaq .faq dl dt p, .pmFaq .faq dl dd p {
    width: calc(100% - 2.5rem);
    padding-top: 0;
  }
}

.pmFaq .faq dl dt {
  margin-bottom: 1rem;
}

.pmFaq .faq dl dt span {
  color: #9fccbb;
}

.pmFaq .faq dl dt p {
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  color: #7d6f6e;
}

.pmFaq .faq dl dd span {
  color: #d5a8a4;
}

.pmFaq .faq dl dd p {
  font-size: 1.14286rem;
  color: #aaa;
}

.pmLocMenu ul li {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 8rem;
}

@media screen and (max-width: 767px) {
  .pmLocMenu ul li {
    display: block;
  }
}

.pmLocMenu ul li:first-child {
  margin-top: 0;
}

.pmLocMenu ul li > figure {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .pmLocMenu ul li > figure {
    width: 90%;
    margin: 0 auto;
  }
}

.pmLocMenu ul li > div:not(.btnWrap) {
  width: 47%;
}

@media screen and (max-width: 767px) {
  .pmLocMenu ul li > div:not(.btnWrap) {
    width: 100%;
    margin-top: 5vw;
    text-align: center;
  }
}

.pmLocMenu ul li > div:not(.btnWrap) h3 {
  border-bottom: 1px solid #7d6f6e;
  color: #7d6f6e;
  font-size: 2.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  padding-bottom: 0.4rem;
  margin-bottom: 2rem;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .pmLocMenu ul li > div:not(.btnWrap) h3 {
    font-size: 1.5rem;
    margin-bottom: 5vw;
  }
}

.pmLocMenu ul li > div:not(.btnWrap) h3 span {
  display: block;
  font-size: 66.6666%;
}

.pmLocMenu ul li > div:not(.btnWrap) > p {
  font-size: 0.92857rem;
  margin-bottom: 2rem;
}

.pmLocMenu ul li > div:not(.btnWrap) .area p {
  display: inline-block;
  padding: 0.5rem 1rem;
  border: 1px solid #d5a8a4;
  border-radius: 0.7rem;
  color: #d5a8a4;
  font-size: 0.92857rem;
}

.pmLocMenu ul li .btnWrap {
  width: 100%;
  margin-top: 3rem;
}

.pmLocMenu ul li .btnWrap .btn {
  max-width: 440px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .pmLocMenu ul li .btnWrap .btn {
    width: 70vw;
  }
}

@media screen and (max-width: 767px) {
  .pmLocMenu ul li .btnWrap .btn a {
    padding: 1.9vw 0;
  }
}

/* フローエリア */
.pmFlow .pmFlow_block .section-wrapper {
  width: 86.5%;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper {
    width: 100%;
  }
}

.pmFlow .pmFlow_block .section-wrapper:nth-child(4n-1) {
  margin-left: 13.5%;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper:nth-child(4n-1) {
    margin-left: 0;
  }
}

.pmFlow .pmFlow_block .section-wrapper .images {
  width: 40.5%;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper .images {
    width: 100%;
  }
}

.pmFlow .pmFlow_block .section-wrapper .images div {
  position: relative;
  width: 100%;
}

.pmFlow .pmFlow_block .section-wrapper .images div img {
  margin: 0;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper .images div img {
    border-radius: 1rem;
  }
}

.pmFlow .pmFlow_block .section-wrapper .images div .time {
  position: absolute;
  bottom: 1rem;
  left: -1rem;
  width: 6.928rem;
  height: 6.928rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url("../images/common/anshin_round.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper .images div .time {
    width: 22.91vw;
    height: 22.91vw;
  }
}

.pmFlow .pmFlow_block .section-wrapper .images div .time p {
  width: 100%;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.5rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper .images div .time p {
    font-size: 1.49937rem;
  }
}

.pmFlow .pmFlow_block .section-wrapper .description {
  width: 53.64%;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .section-wrapper .description {
    width: 82%;
    margin: 1rem auto 0;
    padding-left: 0;
  }
}

.pmFlow .pmFlow_block .dots {
  margin: 2.3rem 0 2.3rem 17rem;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .dots {
    margin: 2rem auto;
  }
}

.pmFlow .pmFlow_block .dots img {
  display: block;
  width: 5px;
  height: auto;
}

@media screen and (max-width: 767px) {
  .pmFlow .pmFlow_block .dots img {
    margin: 0 auto;
  }
}

/* お客様の声エリア */
.pmVoice {
  padding-bottom: 3rem;
}

.pmVoice .pmVoice_block {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .pmVoice .pmVoice_block a {
    width: 21.9%;
    margin-right: 4.133%;
  }
  .pmVoice .pmVoice_block a:nth-child(4n) {
    margin-right: 0;
  }
  .pmVoice .pmVoice_block a:nth-child(n+5) {
    margin-top: 2rem;
  }
}

@media screen and (min-width: 1260px) {
  .pmVoice .pmVoice_block a {
    width: 21.9%;
    margin-right: 4.133%;
  }
  .pmVoice .pmVoice_block a:nth-child(4n) {
    margin-right: 0;
  }
  .pmVoice .pmVoice_block a:nth-child(n+5) {
    margin-top: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .pmVoice .pmVoice_block {
    justify-content: space-between;
  }
  .pmVoice .pmVoice_block a {
    width: 46.8%;
  }
  .pmVoice .pmVoice_block a:nth-child(n+3) {
    margin-top: 2rem;
  }
}

.pmVoice .pmVoice_block a {
  display: block;
}

.pmVoice .pmVoice_block a figure span {
  display: block;
  width: 100%;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.pmVoice .pmVoice_block a figure figcaption {
  color: #888888;
  letter-spacing: 0.1em;
  font-size: 0.92857rem;
  margin-top: 1rem;
}

/* コラムエリア */
.pmColmun {
  background: #e9e6e6;
  padding: 4rem 0;
}

.pmColmun .pmColumn_block .column_list {
  display: flex;
  justify-content: center;
  margin-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .pmColmun .pmColumn_block .column_list {
    display: block;
    margin-bottom: 2rem;
  }
}

.pmColmun .pmColumn_block .column_list a {
  display: block;
  width: 18%;
  margin-right: 2.5%;
}

@media screen and (max-width: 767px) {
  .pmColmun .pmColumn_block .column_list a {
    width: 100%;
    margin-right: 0;
  }
  .pmColmun .pmColumn_block .column_list a:nth-child(n+2) {
    margin-top: 1rem;
  }
}

.pmColmun .pmColumn_block .column_list a:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .pmColmun .pmColumn_block .column_list a .column_content {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.pmColmun .pmColumn_block .column_list a .c_img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .pmColmun .pmColumn_block .column_list a .c_img {
    width: 20%;
  }
}

.pmColmun .pmColumn_block .column_list a .c_img span {
  display: block;
  height: 0;
  box-sizing: content-box;
  padding-bottom: 100%;
  overflow: hidden;
  border-radius: 5px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.pmColmun .pmColumn_block .column_list a .c_title {
  margin-top: 0.8rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .pmColmun .pmColumn_block .column_list a .c_title {
    width: 75%;
    margin-top: 0;
    font-size: 0.94697rem;
  }
}

/*753*/
.about753 {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .about753 {
    text-align: left;
  }
}

.about753 > * {
  margin-bottom: 3rem;
}

.about753 .flex {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .about753 .flex {
    display: block;
  }
}

.about753 .flex figure {
  width: 29%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .about753 .flex figure {
    width: 31%;
  }
}

@media screen and (max-width: 767px) {
  .about753 .flex figure {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 5vw;
  }
  .about753 .flex figure:first-child {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .about753 .flex figure img {
    width: 30%;
    height: auto;
  }
}

.about753 .flex figure figcaption {
  display: block;
  background: #f5f2f2;
  border-radius: 0.714rem;
  margin-top: 1rem;
  padding: 1.5rem;
}

@media screen and (max-width: 767px) {
  .about753 .flex figure figcaption {
    padding: 3vw;
    width: 66%;
    margin-top: 0;
  }
}

.about753 .flex figure figcaption h3 {
  font-size: 1.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #555;
  margin-bottom: 0.7rem;
  letter-spacing: 0.2em;
}

.about753 .flex figure figcaption p {
  font-size: 0.92857rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .about753 .flex figure figcaption p {
    font-size: 0.85714rem;
  }
}

@media screen and (max-width: 767px) {
  .about753 .flex figure figcaption p {
    letter-spacing: 0;
  }
}

.movie753 {
  background: #f5f2f2;
  border-radius: 0.714rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2rem;
}

@media screen and (max-width: 767px) {
  .movie753 {
    display: block;
    padding: 5vw;
  }
}

.movie753 .left {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .movie753 .left {
    width: 100%;
  }
}

.movie753 .left > div {
  height: 0;
  padding-bottom: 56.179%;
  box-sizing: content-box;
  position: relative;
}

.movie753 .left > div iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.movie753 .right {
  width: 44%;
}

@media screen and (max-width: 767px) {
  .movie753 .right {
    width: 100%;
    margin-top: 10vw;
  }
}

.movie753 .right h3 {
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  color: #d5a8a4;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .movie753 .right h3 {
    font-size: 1.2rem;
  }
}

.movie753 .right p {
  line-height: 2.1538;
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .movie753 .right p {
    font-size: 1rem;
    letter-spacing: 0;
  }
}

/*20th*/
.planFrame {
  border: 1px solid #d5a8a4;
  border-radius: 0.714rem;
  padding: 1rem;
  text-align: center;
}

.planFrame h4 {
  color: #d5a8a4;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 0.2rem;
}

@media screen and (max-width: 767px) {
  .planFrame h4 {
    font-size: 1.2rem;
  }
}

.planFrame p {
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .planFrame p {
    font-size: 1rem;
  }
}

.planRakuchin {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.planRakuchin h3 {
  width: 100%;
  color: #d5a8a4;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .planRakuchin h3 {
    font-size: 1.2rem;
  }
}

.planRakuchin .frame {
  border: 1px solid #d5a8a4;
  border-radius: 0.714rem;
  padding: 1rem;
  width: 49%;
}

.planRakuchin .frame h4 {
  color: #d5a8a4;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 0.2rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .planRakuchin .frame h4 {
    font-size: 1.2rem;
  }
}

.planRakuchin .frame p {
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .planRakuchin .frame p {
    font-size: 0.95rem;
  }
}

.idIntro {
  text-align: center;
}

.idIntro .idi_lead {
  margin-bottom: 2rem;
}

.idIntro .idi_lead p {
  display: inline-block;
  background: #eae6de;
  border-radius: 2rem;
  color: #7d6f6e;
  font-size: 1.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  padding: 0.5em 4rem;
}

@media screen and (max-width: 767px) {
  .idIntro .idi_lead p {
    padding: 3vw 5vw;
    width: 100%;
  }
}

.idIntro .idi_ttl {
  color: #d5a8a4;
  font-size: 2.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  line-height: 1.75;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .idIntro .idi_ttl {
    font-size: 1.7rem;
  }
}

.idIntro .idi_comment {
  color: #ccc;
  font-size: 1rem;
  margin-bottom: 3rem;
  letter-spacing: 0.05em;
}

.idIntro .idi_con {
  padding: 3rem;
  background: #f5f2f2;
  border-radius: 0.714rem;
}

@media screen and (max-width: 767px) {
  .idIntro .idi_con {
    padding: 7vw 5vw;
  }
}

.idIntro .idi_con h3 {
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  color: #7d6f6e;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .idIntro .idi_con h3 {
    font-size: 1.5rem;
  }
}

.idIntro .idi_con p {
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 3rem;
}

.idIntro .idi_con p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .idIntro .idi_con p {
    margin-bottom: 5vw;
    text-align: left;
  }
}

.idIntro .idi_con p strong {
  color: #d5a8a4;
  font-size: 1.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  line-height: 1.75;
}

@media screen and (max-width: 767px) {
  .idIntro .idi_con p strong {
    font-size: 1.3rem;
  }
}

.idFlow {
  width: 90vw;
  max-width: 1205px;
  margin: 0 auto;
}

.idFlow .flowParts {
  margin-bottom: 4rem;
}

.idFlow .flowParts ul li {
  width: 14.937759%;
  padding: 4rem 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .idFlow .flowParts ul li {
    width: 100%;
    padding: 3vw 5vw;
  }
}

.idFlow .flowParts ul li p {
  width: 100%;
}

.idFlow .flowParts + p {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .idFlow .flowParts + p {
    text-align: left;
  }
}

.id_course .idc_box {
  margin-bottom: 2rem;
}

.id_course .idc_box:last-child {
  margin-bottom: 0;
}

.id_course .idc_box h4 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  padding: 0.3em 0.7em;
  border: 1px solid #d5a8a4;
  border-radius: 0.718rem;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .id_course .idc_box h4 {
    font-size: 1.4rem;
  }
}

.id_course .idc_box h4 + p {
  margin-bottom: 1rem;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .id_course .idc_box h4 + p {
    font-size: 1.05rem;
  }
}

.id_retouch {
  text-align: center;
}

.id_retouch h4 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .id_retouch h4 {
    font-size: 1.4rem;
  }
}

.id_retouch p {
  margin-bottom: 1rem;
  color: #ccc;
}

@media screen and (max-width: 767px) {
  .id_retouch p {
    text-align: left;
  }
}

.id_retouch p:last-child {
  margin-bottom: 0;
}

.id_retouch p strong {
  font-size: 1.14286rem;
  color: #888888;
  display: block;
}

@media screen and (max-width: 767px) {
  .id_retouch p strong {
    font-size: 1.05rem;
    text-align: center;
  }
}

.id_plan {
  text-align: center;
}

.id_plan h4 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .id_plan h4 {
    font-size: 1.4rem;
  }
}

.id_plan p {
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .id_plan p {
    margin-bottom: 5vw;
  }
}

.id_plan figure {
  margin-bottom: 1rem;
}

.id_plan figure img {
  width: 100%;
  height: auto;
}

.id_plan figure + p {
  font-size: 0.92857rem;
  color: #ccc;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .id_plan figure + p {
    font-size: 0.95rem;
  }
}

.id_mynumber {
  text-align: center;
}

.id_mynumber h4 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .id_mynumber h4 {
    font-size: 1.4rem;
  }
}

.id_mynumber p {
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .id_mynumber p {
    margin-bottom: 10vw;
  }
}

.id_mynumber > div {
  margin-bottom: 2rem;
  display: flex;
  justify-content: space-between;
  text-align: left;
}

@media screen and (max-width: 767px) {
  .id_mynumber > div {
    display: block;
  }
}

.id_mynumber > div > figure {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .id_mynumber > div > figure {
    width: 80%;
    margin: 0 auto 5vw;
  }
}

.id_mynumber > div > div {
  width: 47%;
}

@media screen and (max-width: 767px) {
  .id_mynumber > div > div {
    width: 100%;
  }
}

.id_mynumber > div > div h5 {
  border-bottom: 1px solid #7d6f6e;
  color: #7d6f6e;
  font-size: 2.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  padding-bottom: 0.4rem;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .id_mynumber > div > div h5 {
    font-size: 1.5rem;
    margin-bottom: 3vw;
  }
}

.id_mynumber > div > div ul {
  margin-bottom: 1rem;
}

.id_mynumber > div > div > div {
  padding: 1rem 1.5rem;
  border: 1px solid #d5a8a4;
  border-radius: 0.718rem;
}

.id_mynumber > div > div > div h6 {
  color: #d5a8a4;
  font-size: 1.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  margin-bottom: 0.5rem;
}

.id_mynumber > div > div > div p {
  margin-bottom: 0;
}

.id_mynumber > div + p {
  font-size: 1.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #d5a8a4;
  letter-spacing: 0.2em;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .id_mynumber > div + p {
    font-size: 1.05rem;
  }
}

.idOption figure {
  width: 90vw;
  max-width: 775px;
  margin: 0 auto 1rem;
}

.idOption figure + p {
  text-align: center;
}

.maternityPresernt {
  max-width: 300px;
}

@media screen and (max-width: 767px) {
  .maternityPresernt {
    width: 40vw;
    margin: 0 auto;
  }
}

.nb_model {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .nb_model {
    display: block;
  }
}

.nb_model > figure {
  width: 29%;
}

@media screen and (max-width: 767px) {
  .nb_model > figure {
    width: 100%;
    margin-bottom: 3vw;
  }
}

.nb_model > div {
  width: 66%;
}

@media screen and (max-width: 767px) {
  .nb_model > div {
    width: 100%;
  }
}

.nb_model > div h3 {
  border-bottom: 1px solid #7d6f6e;
  color: #7d6f6e;
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  padding-bottom: 0.4rem;
  margin-bottom: 2rem;
  line-height: 1.75;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .nb_model > div h3 {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .nb_model > div h3 {
    font-size: 1.5rem;
    margin-bottom: 3vw;
  }
}

.nb_model > div p strong {
  color: #d5a8a4;
}

.nb_day {
  text-align: center;
  margin-top: 3rem;
}

.nb_day > div {
  max-width: 650px;
  padding: 1rem;
  border: 1px solid #d5a8a4;
  border-radius: 0.718rem;
  margin: 0 auto 1rem;
}

.nb_day > div h4 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .nb_day > div h4 {
    font-size: 1.2rem;
  }
}

.nb_day > div p {
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .nb_day > div p {
    font-size: 1.05rem;
  }
}

@media screen and (max-width: 767px) {
  .nb_day > p {
    text-align: left;
  }
}

.nb_time {
  background: #ece8e0;
  padding: 2rem;
  text-align: center;
  border-radius: 0.715rem;
  margin-top: 4rem;
}

.nb_time h3 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 0.7rem;
}

@media screen and (max-width: 767px) {
  .nb_time h3 {
    font-size: 1.2rem;
    margin-bottom: 1vw;
  }
}

@media screen and (max-width: 767px) {
  .nb_time p {
    text-align: left;
  }
}

.nb_notes {
  margin-top: 4rem;
}

.nb_notes dl {
  margin-bottom: 2rem;
}

.nb_notes dl:last-child {
  margin-bottom: 0;
}

.nb_notes dl dt {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 0.7rem;
}

@media screen and (max-width: 767px) {
  .nb_notes dl dt {
    font-size: 1.2rem;
    margin-bottom: 1vw;
  }
}

.nb_check_acd {
  margin-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .nb_check_acd {
    margin-bottom: 5vw;
  }
}

.nb_check_acd > p {
  text-align: center;
  margin-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .nb_check_acd > p {
    margin-bottom: 5vw;
  }
}

.nb_check p {
  padding-left: 1.5rem;
  position: relative;
  margin-bottom: 2rem;
  font-size: 0.92857rem;
}

.nb_check p:last-child {
  margin-bottom: 0;
}

.nb_check p:before {
  content: "●";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.nb_check p strong {
  color: #d5a8a4;
}

.nb_check p a {
  color: #d5a8a4;
  text-decoration: underline;
}

.nb_contact {
  max-width: 634px;
  background: #ece8e0;
  padding: 2rem 2rem 3rem;
  text-align: center;
  border-radius: 1.43rem;
  margin: 0 auto;
}

.nb_contact h3 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 0.7rem;
}

@media screen and (max-width: 767px) {
  .nb_contact h3 {
    font-size: 1.2rem;
    margin-bottom: 1vw;
  }
}

.nb_contact .tel {
  color: #d5a8a4;
  font-weight: bold;
  font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .nb_contact .tel {
    font-size: 2rem;
  }
}

.nb_contact .tel span {
  font-size: 1.28571rem;
}

@media screen and (max-width: 767px) {
  .nb_contact .tel span {
    font-size: 1.2rem;
  }
}

.nb_contact .btn {
  max-width: 440px;
  margin: 2rem auto 0;
}

@media screen and (max-width: 767px) {
  .nb_contact .btn {
    max-width: none;
    width: 70vw;
    margin-top: 7vw;
  }
  .nb_contact .btn a {
    padding: 1.9vw 0;
  }
}

.nb_about > div {
  text-align: center;
  background: #f5f2f2;
  padding: 2rem 2rem 3rem;
  margin-bottom: 2rem;
  border-radius: 1.43rem;
}

.nb_about > div:last-child {
  margin-bottom: 0;
}

.nb_about > div h3 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .nb_about > div h3 {
    font-size: 1.2rem;
    margin-bottom: 1vw;
  }
}

@media screen and (max-width: 767px) {
  .nb_about > div p {
    text-align: left;
  }
}

.omiya_bnr {
  text-align: center;
}

.omiya_bnr figure {
  margin-bottom: 1rem;
}

.omiya_bnr figure:first-child {
  margin-bottom: 3rem;
}

.omiya_bnr p strong {
  color: #d5a8a4;
}

.omiya_bnr p:first-of-type {
  margin-bottom: 1rem;
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .omiya_bnr p:first-of-type {
    font-size: 1.05rem;
  }
}

.omiya_bnr.omiya_meimei {
  max-width: 775px;
  width: 90vw;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .omiya_bnr.omiya_meimei {
    width: 87%;
  }
}

.school_suit {
  max-width: 750px;
  width: 90vw;
  margin: 0 auto;
  text-align: center;
  background: #f5f2f2;
  padding: 2rem;
  border-radius: 0.715rem;
}

.school_suit h3 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .school_suit h3 {
    font-size: 1.2rem;
    margin-bottom: 1vw;
  }
}

.family_takaramono {
  text-align: center;
}

.family_takaramono h3 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  font-size: 2.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .family_takaramono h3 {
    font-size: 1.5rem;
    margin-bottom: 5vw;
  }
}

.family_takaramono p {
  font-size: 1.14286rem;
}

@media screen and (max-width: 767px) {
  .family_takaramono p {
    font-size: 1.05rem;
  }
}

.family_takaramono a {
  display: block;
  max-width: 790px;
  margin: 3rem auto 0;
  width: 90vw;
}

.tec_category {
  max-width: 750px;
  width: 90vw;
  margin: 0 auto;
  text-align: center;
  background: #f5f2f2;
  padding: 2rem;
  border-radius: 0.715rem;
}

.tec_category h3 {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  line-height: 1.2;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .tec_category h3 {
    font-size: 1.2rem;
    margin-bottom: 1vw;
  }
}

.loca_rsv {
  margin: 0 auto;
  text-align: center;
  background: #f5f2f2;
  padding: 3rem 3rem 5rem;
  border-radius: 0.715rem;
}

@media screen and (max-width: 767px) {
  .loca_rsv {
    padding: 5vw 5vw 15vw;
  }
}

.loca_rsv > p {
  color: #d5a8a4;
  letter-spacing: 0.2em;
  line-height: 1.2;
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .loca_rsv > p {
    font-size: 1.2rem;
  }
}

.loca753pack h2 {
  text-align: center;
  color: #7d6f6e;
  font-size: 2.14286rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .loca753pack h2 {
    font-size: 1.5rem;
    margin-top: 10vw;
  }
}

.locationRsv ul {
  margin-top: 2rem;
}

.locationRsv ul li {
  display: flex;
  flex-wrap: wrap;
  background: #f5f2f2;
  padding: 0.5rem 2rem;
  margin-bottom: 1rem;
}

.locationRsv ul li:last-child {
  margin-bottom: 0;
}

.locationRsv ul li p {
  font-size: 1.21429rem;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .locationRsv ul li p {
    font-size: 1.2rem;
    text-align: center;
  }
}

.locationRsv ul li .name {
  width: 65%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .locationRsv ul li .name {
    width: 60%;
  }
}

@media screen and (max-width: 767px) {
  .locationRsv ul li .name {
    width: 100%;
    margin-bottom: 2vw;
  }
}

.locationRsv ul li .tel {
  width: 25%;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .locationRsv ul li .tel {
    width: 50%;
  }
}

.locationRsv ul li .close {
  width: 10%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .locationRsv ul li .close {
    width: 15%;
  }
}

@media screen and (max-width: 767px) {
  .locationRsv ul li .close {
    width: 50%;
  }
}

.newsList {
  margin-top: 2rem;
}

.newsList:first-child {
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .newsList {
    padding-bottom: 3vw;
    border-bottom: 1px solid #888888;
  }
}

.newsList a {
  align-items: center;
  display: flex;
  justify-content: space-between;
  color: #555;
  line-height: 1.6;
}

@media screen and (max-width: 767px) {
  .newsList a {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}

.newsList a .ttl {
  width: 70%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #555;
  letter-spacing: 0.2em;
  text-align: left;
  font-size: 0.92857rem;
}

@media screen and (max-width: 767px) {
  .newsList a .ttl {
    width: 100%;
    margin-top: 3vw;
  }
}

.news_date {
  font-size: 0.85714rem;
  color: #555;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .news_date {
    margin-right: 5vw;
  }
}

.news_cat {
  width: 8.5rem;
  border-radius: 1rem;
  color: #fff;
  padding: 0.2rem 0;
  letter-spacing: 0.2em;
  text-align: center;
  font-size: 0.85714rem;
  font-weight: bold;
}

.news_cat.news_cat1 {
  background: #7d6f6e;
}

.news_cat.news_cat2 {
  background: #6e004a;
}

.news_cat.news_cat3 {
  background: #dccebd;
}

.news_cat.news_cat4 {
  background: #b2b5d8;
}

.news_cat.news_cat5 {
  background: #9ca71d;
}

#pagination {
  margin-top: 10rem;
}

@media screen and (max-width: 767px) {
  #pagination {
    margin-top: 15vw;
  }
}

#pagination .nav-links {
  display: flex;
  justify-content: center;
}

#pagination .nav-links a, #pagination .nav-links span {
  margin: 0 0.5rem 0;
  text-align: center;
  display: block;
  width: 3.3rem;
  line-height: 3rem;
  font-size: 0.85714rem;
  letter-spacing: 0.1em;
  background: #b0a9a8;
  color: #fff;
  border-radius: 0.5rem;
}

@media screen and (max-width: 767px) {
  #pagination .nav-links a, #pagination .nav-links span {
    width: 2.6rem;
    line-height: 2.5rem;
    margin: 0 1vw 0;
    font-size: 0.95rem;
  }
}

#pagination .nav-links .current {
  background: #7d6f6e;
}

.newsPost .btnArea {
  display: flex;
  justify-content: center;
  margin-top: 10rem;
}

@media screen and (max-width: 767px) {
  .newsPost .btnArea {
    margin-top: 15vw;
  }
}

.newsPost .btnArea .btn {
  width: 29%;
  margin-right: 6.5%;
}

@media screen and (max-width: 767px) {
  .newsPost .btnArea .btn {
    width: 31%;
    margin-right: 3.5%;
  }
}

.newsPost .btnArea .btn:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .newsPost .btnArea .btn a {
    font-size: 0.85rem;
    padding: 1.9vw 0;
  }
}

@media screen and (max-width: 767px) {
  .newsPost .btnArea .btn.link_arrow02 a:after {
    display: none;
  }
}

.newsPost .btnArea .btn.btnPrev a, .newsPost .btnArea .btn.btnNext a {
  background: #b0a9a8;
  position: relative;
}

.newsPost .btnArea .btn.btnPrev a:after, .newsPost .btnArea .btn.btnNext a:after {
  content: "";
  display: block;
  width: 0.4rem;
  height: 0.4rem;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
}

.newsPost .btnArea .btn.btnPrev a:after {
  left: 2rem;
  transform: translateY(-50%) rotate(-135deg);
}

@media screen and (max-width: 767px) {
  .newsPost .btnArea .btn.btnPrev a:after {
    left: 3vw;
  }
}

.newsPost .btnArea .btn.btnNext a:after {
  right: 2rem;
  transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .newsPost .btnArea .btn.btnNext a:after {
    right: 3vw;
  }
}

.postTtl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .postTtl {
    margin-bottom: 7vw;
  }
}

.postTtl:after {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  margin: 2rem auto;
  background-image: url(../images/photomenu/common/bot_border.svg);
  background-repeat: repeat-x;
  background-size: contain;
  background-position: center;
}

@media screen and (max-width: 767px) {
  .postTtl:after {
    margin: 7vw auto 0;
  }
}

.postTtl .news_date {
  margin-right: 2rem;
}

.postTtl .ttl {
  width: 100%;
  margin-top: 3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.85714rem;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .postTtl .ttl {
    font-size: 1.5rem;
    margin-top: 10vw;
  }
}

.postContent > * {
  margin-top: 1rem;
  letter-spacing: 0.05em;
}

.postContent > *:first-child {
  margin-top: 0;
}

.postContent img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.postContent p strong {
  font-weight: bold;
}

.postContent p a {
  text-decoration: underline;
  color: #d5a8a4;
}

.blogWrap {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}

@media screen and (max-width: 767px) {
  .blogWrap {
    display: block;
  }
}

.blogWrap .blogMain {
  width: 71.428571%;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain {
    width: 100%;
  }
}

.blogWrap .blogMain .blogList {
  margin-top: 10rem;
}

.blogWrap .blogMain .blogList:first-child {
  margin-top: 0;
}

.blogWrap .blogMain .blogList .blog_cat_wrap {
  display: flex;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .blog_cat_wrap {
    margin-top: 1rem;
    width: 100%;
  }
}

.blogWrap .blogMain .blogList .news_cat.blog_cat {
  background: #b0a9a8;
  width: auto;
  padding: 0.2rem 1rem;
  margin-right: 0.5rem;
}

.blogWrap .blogMain .blogList .postContent > * {
  margin-top: 1rem;
  letter-spacing: 0.05em;
}

.blogWrap .blogMain .blogList .postContent > *:first-child {
  margin-top: 0;
}

.blogWrap .blogMain .blogList .postContent img {
  width: auto;
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

.blogWrap .blogMain .blogList .postContent .bc_block {
  margin: 4rem 0;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block {
    margin: 5vw 0;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_free > * {
  margin-top: 1rem;
  letter-spacing: 0.05em;
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_free > *:first-child {
  margin-top: 0;
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_hd2 {
  position: relative;
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_hd2 {
    margin-bottom: 5vw;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_hd2:after {
  content: "";
  display: block;
  width: 3rem;
  height: 3px;
  background: #d5a8a4;
  margin-top: 0.5rem;
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_hd2 h2 {
  width: 100%;
  margin-top: 3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.85714rem;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_hd2 h2 {
    font-size: 1.5rem;
    margin-top: 10vw;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_hd3 {
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_hd3 {
    margin-bottom: 5vw;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_hd3 h3 {
  margin-top: 3rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  position: relative;
  padding-left: 2rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_hd3 h3 {
    font-size: 1.2rem;
    margin-top: 10vw;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_hd3 h3:before {
  content: "";
  display: block;
  width: 1.1rem;
  height: 1.1rem;
  transform: rotate(45deg);
  background: #d5a8a4;
  position: absolute;
  left: 0;
  top: 0.8rem;
  z-index: 1;
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_flex {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_flex {
    display: block;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_flex > figure {
  display: block;
  width: 48%;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_flex > figure {
    width: 100%;
    margin-bottom: 5vw;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_flex > div {
  display: block;
  width: 48%;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .postContent .bc_block.bc_flex > div {
    width: 100%;
  }
}

.blogWrap .blogMain .blogList .postContent .bc_block.bc_flex._rvs {
  flex-direction: row-reverse;
}

.blogWrap .blogMain .blogList .blogLink {
  margin-top: 4rem;
}

.blogWrap .blogMain .blogList .blogLink .btn {
  margin: 0 auto;
  max-width: 440px;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .blogLink .btn {
    min-width: 70vw;
    width: auto;
  }
  .blogWrap .blogMain .blogList .blogLink .btn a {
    display: inline-block;
    position: relative;
    width: auto;
    padding: 1.9vw 10vw;
  }
}

.blogWrap .blogMain .blogList .blogLink img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  margin-top: 2rem;
}

.blogWrap .blogMain .blogList .blogSns {
  margin-top: 4rem;
  display: flex;
  align-items: center;
}

.blogWrap .blogMain .blogList .blogSns > div {
  margin-right: 1rem;
}

.blogWrap .blogMain .blogList .blog_foot {
  margin-top: 3rem;
  background: #f5f2f2;
  padding: 2rem;
  border-radius: 1.428rem;
}

.blogWrap .blogMain .blogList .blog_foot p {
  letter-spacing: 0.05em;
}

.blogWrap .blogMain .blogList .blog_foot p.bgHead {
  font-size: 0.92857rem;
}

.blogWrap .blogMain .blogList .blog_foot p.bfBrand {
  font-size: 1.14286rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #ccc;
  margin-bottom: 1rem;
}

.blogWrap .blogMain .blogList .blog_foot p.bfComment {
  font-size: 0.92857rem;
  margin-bottom: 0.5rem;
}

.blogWrap .blogMain .blogList .blog_foot p.bfTel {
  font-size: 1.14286rem;
  color: #d5a8a4;
}

.blogWrap .blogMain .blogList .blog_btn {
  margin-top: 5rem;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .blog_btn {
    margin-top: 15vw;
    display: block;
  }
}

.blogWrap .blogMain .blogList .blog_btn .btn {
  width: 48%;
}

@media screen and (max-width: 767px) {
  .blogWrap .blogMain .blogList .blog_btn .btn {
    width: 70vw;
    margin: 0 auto 5vw;
  }
  .blogWrap .blogMain .blogList .blog_btn .btn a {
    padding: 1.9vw 0;
  }
}

.blogWrap .sidebar {
  width: 22.47619%;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar {
    width: 100%;
    margin-top: 20vw;
  }
}

.blogWrap .sidebar .search-form {
  display: flex;
}

.blogWrap .sidebar .search-form .input_search {
  width: 86%;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .search-form .input_search {
    width: 87%;
  }
}

.blogWrap .sidebar .search-form .input_search input {
  width: 100%;
  height: 100%;
  padding: 0.5rem;
  background: #f5f2f2;
  border: none;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .search-form .input_search input {
    font-size: 1.2rem;
    padding: 0.5rem 1rem;
  }
}

.blogWrap .sidebar .search-form .submit {
  width: 14%;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .search-form .submit {
    width: 13%;
  }
}

.blogWrap .sidebar .search-form .submit button {
  height: 100%;
  background: #b0a9a8;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .search-form .submit button {
    width: 100%;
  }
}

.blogWrap .sidebar .search-form .submit button img {
  display: block;
  vertical-align: bottom;
  padding: 0;
  margin: 0;
  line-height: 1;
}

.blogWrap .sidebar .sbBox {
  margin-bottom: 3rem;
}

.blogWrap .sidebar .sbBox:last-child {
  margin-bottom: 0;
}

.blogWrap .sidebar .sbBox h3 {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.5rem;
  color: #7d6f6e;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox h3 {
    font-size: 1.8rem;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox.sbSearch h3 {
    margin-bottom: 3vw;
  }
}

.blogWrap .sidebar .sbBox .catBox {
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox {
    margin-bottom: 0;
  }
}

.blogWrap .sidebar .sbBox .catBox:last-child {
  margin-bottom: 0;
}

.blogWrap .sidebar .sbBox .catBox h4 {
  font-weight: bold;
  color: #d5a8a4;
  font-size: 1rem;
  margin-bottom: 0.7rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox h4 {
    font-size: 1.2rem;
    cursor: pointer;
    padding: 5vw 0 3vw;
    border-bottom: 1px solid #ccc;
    margin-bottom: 0;
    position: relative;
  }
  .blogWrap .sidebar .sbBox .catBox h4:after {
    content: "";
    display: block;
    width: 2vw;
    height: 2vw;
    border-bottom: 1px solid #888888;
    border-right: 1px solid #888888;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 1vw;
  }
  .blogWrap .sidebar .sbBox .catBox h4:after:active.after {
    transform: rotate(-135deg);
  }
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox h4 + ul {
    transition: 0.4s;
    height: 0;
    overflow: hidden;
    transform: translateY(-5vw);
    pointer-events: none;
    opacity: 0;
  }
  .blogWrap .sidebar .sbBox .catBox h4 + ul.active {
    height: auto;
    overflow: hidden;
    transform: translateY(0);
    pointer-events: auto;
    opacity: 1;
  }
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox h4 + ul li a {
    padding: 5vw 0 3vw 5vw;
  }
  .blogWrap .sidebar .sbBox .catBox h4 + ul li a:before {
    content: "";
    display: block;
    width: 2vw;
    height: 1px;
    background: #888888;
    position: absolute;
    top: 55%;
    left: 1vw;
  }
}

.blogWrap .sidebar .sbBox .catBox ul li {
  margin-bottom: 0.3rem;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox ul li {
    margin-bottom: 0;
    border-bottom: 1px solid #ccc;
  }
}

.blogWrap .sidebar .sbBox .catBox ul li:before {
  content: "・";
  display: inline-block;
  margin-right: 0.2em;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox ul li:before {
    display: none;
  }
}

.blogWrap .sidebar .sbBox .catBox ul li a {
  font-size: 0.92857rem;
  color: #aaa;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox .catBox ul li a {
    display: block;
    font-size: 1.2rem;
    cursor: pointer;
    padding: 5vw 0 3vw;
    position: relative;
  }
  .blogWrap .sidebar .sbBox .catBox ul li a:after {
    content: "";
    display: block;
    width: 4vw;
    height: 4vw;
    background-image: url(../images/common/arw_gray.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    right: 0;
  }
}

.blogWrap .sidebar .sbBox .catBox .sbSpArchve {
  background: #f5f2f2;
  position: relative;
}

.blogWrap .sidebar .sbBox .catBox .sbSpArchve:after {
  content: "";
  display: block;
  width: 2vw;
  height: 2vw;
  border-bottom: 1px solid #888888;
  border-right: 1px solid #888888;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  top: 50%;
  right: 1rem;
  pointer-events: none;
}

.blogWrap .sidebar .sbBox .catBox .sbSpArchve select {
  width: 100%;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  padding: 1rem 1rem;
  color: #888888;
}

@media screen and (max-width: 767px) {
  .blogWrap .sidebar .sbBox.sbArchve h3 {
    margin-bottom: 3vw;
  }
}

.ctg-mv {
  width: 96%;
  height: 74vh;
  position: relative;
  margin: 0 auto 0;
}

.ctg-mv .bgSlider .item {
  height: 74vh;
}

.ctg-mv .bgSlider .item img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  border-radius: 1.42rem;
}

@media screen and (max-width: 767px) {
  .ctg-mv .bgSlider .item img {
    margin: 0 auto;
    width: 100%;
    box-sizing: content-box;
    border-radius: 0.8rem;
  }
}

.ctg-mv .bgSlider #TOPVIDEO {
  overflow: hidden;
  height: 74vh;
  width: 100%;
  border-radius: 1.42rem;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .ctg-mv .bgSlider #TOPVIDEO {
    border-radius: 0.8rem;
  }
}

.ctg-mv .bgSlider #TOPVIDEO video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
}

@media screen and (max-width: 767px) {
  .ctg-mv {
    width: 92%;
    margin: 0 auto;
    border-radius: 0.8rem;
  }
}

.ctg-mv:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 1.42rem;
  top: 0;
  background: black;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0.1) 65%);
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .ctg-mv:after {
    border-radius: 0.8rem;
    background: linear-gradient(225deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0.1) 53%);
  }
}

.ctg-mv .ctgMv_ttl {
  text-align: center;
  position: absolute;
  top: 30%;
  left: 10%;
  z-index: 10;
}

.ctg-mv .ctgMv_ttl p {
  font-size: 5rem;
  font-family: 'Oooh Baby', cursive;
  color: #fff;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_ttl p {
    font-size: 6.36943vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_ttl p {
    line-height: 0.9;
    margin-bottom: 5%;
    font-size: 9.00819vw;
  }
}

.ctg-mv .ctgMv_ttl h1 {
  font-size: 1.71429rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  color: #fff;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_ttl h1 {
    font-size: 2.1838vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_ttl h1 {
    font-size: 3.00273vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_ttl {
    top: 5%;
    left: 37%;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .left46 {
    left: 46%;
  }
}

.ctg-mv .ctgMv_img {
  position: absolute;
  bottom: -14%;
  left: 12%;
  z-index: 5;
}

.ctg-mv .ctgMv_img img {
  width: 17vw;
  height: 17vw;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_img img {
    width: 21vw;
    height: 21vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img img {
    width: 34vw;
    height: 34vw;
  }
}

.ctg-mv .ctgMv_img .ctgMv_img_inner {
  position: relative;
}

.ctg-mv .ctgMv_img .ctgMv_img_inner p {
  color: #fff;
  position: absolute;
  bottom: 18%;
  left: 0;
  right: 0;
  margin: 0;
  text-align: center;
  font-size: 0.90992vw;
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img .ctgMv_img_inner p {
    font-size: 1.72884vw;
  }
}

.ctg-mv .ctgMv_img .ctgMv_img_inner:after {
  content: "";
  display: block;
  height: 8.3vw;
  width: 8.1vw;
  background: url("../images/category/ctg_ttl_dot02.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 11%;
  right: -46%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_img .ctgMv_img_inner:after {
    bottom: 8%;
    right: -32%;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img .ctgMv_img_inner:after {
    height: 15.6vw;
    width: 15vw;
    right: -40%;
  }
}

.ctg-mv .ctgMv_img .ctgMv_img_inner.mv-anv-color:after {
  background-image: url("../images/category/ctg_ttl_dot02_anv.svg");
}

.ctg-mv .ctgMv_img .sml-logo:before {
  content: "";
  background-color: #fff;
  display: block;
  height: 7vw;
  width: 9.5vw;
  background: url("../images/common/smiley_logo_w.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 18%;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_img .sml-logo:before {
    height: 9vw;
    width: 12.4vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img .sml-logo:before {
    height: 12.6vw;
    width: 17.1vw;
    top: 20%;
  }
}

.ctg-mv .ctgMv_img .anv-logo:before {
  content: "";
  background-color: #fff;
  display: block;
  height: 7vw;
  width: 11.5vw;
  background: url("../images/common/anv-bln_logo.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_img .anv-logo:before {
    height: 9vw;
    width: 12.4vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img .anv-logo:before {
    height: 12.6vw;
    width: 27vw;
    top: 20%;
  }
}

.ctg-mv .ctgMv_img .tec-logo:before {
  content: "";
  background-color: #fff;
  display: block;
  height: 7vw;
  width: 9.5vw;
  background: url("../images/common/anv-logo_w.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg-mv .ctgMv_img .tec-logo:before {
    height: 9vw;
    width: 12.4vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img .tec-logo:before {
    height: 12.6vw;
    width: 17.1vw;
    top: 20%;
  }
}

@media screen and (max-width: 767px) {
  .ctg-mv .ctgMv_img {
    bottom: -9%;
    left: 6%;
  }
}

#ctg_about {
  position: relative;
  margin-bottom: 9.64rem;
}

@media screen and (max-width: 767px) {
  #ctg_about {
    margin-top: 8rem;
  }
}

#ctg_about .about_image {
  width: 61%;
  height: 41vw;
  margin: 11.5rem auto 4rem 0;
}

#ctg_about .about_image img {
  border-radius: 0px 1.42rem 1.42rem 0px;
  object-fit: cover;
}

@media screen and (max-width: 767px) {
  #ctg_about .about_image {
    width: 91%;
    height: 60.5vw;
    margin: 12vw auto 72vw 0;
  }
  #ctg_about .about_image img {
    border-radius: 0px 0.8rem 0.8rem 0px;
  }
}

#ctg_about .about_lead {
  position: absolute;
  right: 6.35rem;
  top: 15%;
  width: 37%;
  background-color: #f5f2f2;
  border-radius: 3.5rem;
  padding: 4vw 0;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #ctg_about .about_lead {
    padding: 2vw 0;
  }
}

@media screen and (max-width: 767px) {
  #ctg_about .about_lead {
    right: 5%;
    top: 90%;
    width: 85%;
    padding: 5vw 0;
    border-radius: 1.48rem;
  }
}

#ctg_about .about_lead .about_inner {
  margin: 0 auto;
  width: 72%;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #ctg_about .about_lead .about_inner {
    width: 76%;
  }
}

@media screen and (max-width: 767px) {
  #ctg_about .about_lead .about_inner {
    width: 83%;
  }
}

#ctg_about .about_lead .about_inner h2 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.53vw;
  letter-spacing: 0.05em;
  margin: 1.2vw 0 2vw;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  #ctg_about .about_lead .about_inner h2 {
    margin: 2.5vw 0 5vw;
    font-size: 4.1vw;
  }
}

#ctg_about .about_lead .about_inner .about_lead_txt {
  font-size: 0.86vw;
  line-height: 2.15;
}

@media screen and (max-width: 767px) {
  #ctg_about .about_lead .about_inner .about_lead_txt {
    font-size: 2.8vw;
  }
}

#ctg_about .about_lead .about_inner .about_lead_enttl {
  font-family: 'Oooh Baby', cursive;
  color: #d4d6cc;
  font-size: 1.63785vw;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  #ctg_about .about_lead .about_inner .about_lead_enttl {
    font-size: 3.18471vw;
  }
}

#ctg_about .ctg_dot:before {
  background: url(../images/category/ctg_read_dot.svg) no-repeat;
  background-size: contain;
  background-position: center;
  content: "";
  position: absolute;
  top: -27%;
  right: 10%;
  z-index: 10;
  width: 24%;
  height: 6.5rem;
}

@media screen and (max-width: 767px) {
  .ctg_news {
    padding-top: 3rem;
    margin-bottom: 4.64rem !important;
  }
}

.ctg_concept {
  background-color: #f5f2f2;
  border-radius: 0.7rem;
  text-align: center;
  padding: 4rem 0 4.8rem;
  width: 90vw;
  max-width: 1070px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .ctg_concept {
    width: 100vw;
    padding: 5vw 0 10vw;
    border-radius: 0;
  }
}

.ctg_concept .concept_ttl {
  position: relative;
  font-family: 'Oooh Baby', cursive;
  margin-bottom: 3.5rem;
  font-size: 2.85714rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg_concept .concept_ttl {
    font-size: 3.63967vw;
  }
}

.ctg_concept .concept_ttl:after {
  position: absolute;
  content: "";
  bottom: -0.5rem;
  left: calc( 50% - 2rem);
  width: 4rem;
  height: 1px;
  background: #bbbbbb;
}

.ctg_concept .concept_read {
  letter-spacing: 0.15em;
  line-height: 2.8;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.14286rem;
  margin-bottom: 3.5rem;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctg_concept .concept_read {
    font-size: 1.45587vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg_concept .concept_read {
    line-height: 1.9;
    margin-bottom: 8vw;
  }
}

@media screen and (max-width: 767px) {
  .ctg_concept .concept_txt {
    width: 83vw;
    margin: 0 auto;
    text-align: justify;
    text-justify: inter-ideograph;
    font-size: 3.00273vw;
    line-height: 2.1;
  }
}

.ctg_photomenu {
  margin-top: 9rem;
}

.ctg_photomenu > .ctg_wrap {
  width: 90vw;
  max-width: 1070px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .ctg_photomenu > .ctg_wrap {
    width: 100%;
  }
}

.ctg_photomenu .ctg_photomenu_inner {
  border-radius: 0.7rem;
  width: 100%;
  background-color: #f5f2f2;
  padding: 1.9rem 2.5rem 5.5rem;
}

.ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 6.5%;
  text-align: center;
}

.ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block {
  width: 18.5%;
  margin-top: 2.7rem;
  margin-right: 1.8%;
  display: block;
}

.ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block img {
  border-radius: 1rem;
}

.ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block p:nth-of-type(1) {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.07143rem;
  margin-top: 3%;
}

.ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block p:nth-of-type(2) {
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block {
    width: 47%;
    margin-right: 6%;
  }
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block img {
    border-radius: 2vw;
  }
}

@media screen and (min-width: 1260px) {
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block:last-child {
    margin-right: 0;
  }
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block:nth-child(5n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block:last-child {
    margin-right: 0;
  }
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block:nth-child(5n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap {
    justify-content: space-between;
    margin-bottom: 13%;
  }
  .ctg_photomenu .ctg_photomenu_inner .photomenu_inner_wrap .photomenu_block:nth-child(even) {
    margin-right: 0;
  }
}

.ctg_photomenu .ctg_photomenu_inner > .w600 {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 767px) {
  .ctg_photomenu .ctg_photomenu_inner > .w600 {
    max-width: 100%;
  }
}

.ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block {
  width: 31%;
  margin-right: 3.5%;
}

.ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:last-child {
  margin-right: 0;
}

.ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:nth-child(5n) {
  margin-right: 3.5%;
}

.ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:nth-child(3n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block {
    width: 47%;
    margin-right: 6%;
  }
  .ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block img {
    border-radius: 2vw;
  }
  .ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:nth-child(3n) {
    margin-right: 6%;
  }
  .ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:nth-child(5n) {
    margin-right: 6%;
  }
  .ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:nth-child(2n) {
    margin-right: 0;
  }
  .ctg_photomenu .ctg_photomenu_inner > .w600 > .photomenu_block:last-child {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .ctg_photomenu .ctg_photomenu_inner {
    border-radius: 0;
    padding: 3.5vw 7vw 13vw;
  }
}

.ctg_price_bnr {
  width: 96%;
  height: 29vw;
  margin: 10vw auto 0;
  background-size: cover;
  border-radius: 1.4rem;
}

.ctg_price_bnr .ttl_block {
  text-align: center;
  padding: 5% 0 4.5%;
  display: block;
}

@media screen and (max-width: 767px) {
  .ctg_price_bnr {
    height: 56vw;
    border-radius: 2vw;
    margin: 10vw auto;
  }
  .ctg_price_bnr .ttl_block {
    padding: 10% 0 6%;
  }
  .ctg_price_bnr .ttl_block > .ttl_en {
    line-height: 1.4;
  }
}

#storeInfo .shopInfo_list {
  border-radius: 0.7rem;
}

.babykid_img {
  background-image: url(../images/category/sml_price_pcimg.jpg);
}

@media screen and (max-width: 767px) {
  .babykid_img {
    background-image: url(../images/category/sml_price_spimg.jpg);
  }
}

.anv_otona_img {
  background-image: url(../images/category/anv_price_pcimg.jpg);
}

@media screen and (max-width: 767px) {
  .anv_otona_img {
    background-image: url(../images/category/anv_price_spimg.jpg);
  }
}

.shopInfo_block_ctg {
  width: 100%;
}

.shopInfo_block_ctg .shopInfo_list {
  position: relative;
  border-radius: 0.7rem;
  background-color: #f5f2f2;
  margin-bottom: 6.92rem;
  padding: 6rem 2.5rem 5rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list {
    border-radius: 0;
    padding: 14vw 2rem;
  }
}

.shopInfo_block_ctg .shopInfo_list .shop_logo {
  position: absolute;
  top: -2.7rem;
  left: 0;
  right: 0;
  margin: auto;
  width: 13%;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .shop_logo {
    top: -1.9rem;
    width: 21%;
  }
}

.shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide {
  display: flex;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide {
    margin: 0 auto 2.5rem;
    display: block;
  }
}

.shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .inner_top {
  width: 24%;
  margin: 0 2.2rem 2rem 0;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .inner_top {
    width: 25vw;
  }
}

.shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .inner_top img {
  border-radius: 0.5rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .inner_top {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
  }
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .inner_top h4 {
    font-size: 1.15rem;
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    color: #000;
  }
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .inner_top img {
    width: 22%;
    border-radius: 0.5rem;
    margin-right: 1.2rem;
  }
}

.shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .wide_left_wrap .wide_sp_ttl {
  font-size: 1.42857rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #000;
  margin-bottom: 4%;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .wide_left_wrap .wide_sp_ttl {
    margin-bottom: 2%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .shopInfo_block_ctg .shopInfo_list .shopInfo_list_wide .wide_left_wrap .inner_txt {
    font-size: 1vw;
  }
}

.shopInfo_block_ctg .shopInfo_list .ctg_map {
  margin: 3rem auto;
}

.shopInfo_block_ctg .shopInfo_list .ctg_map iframe {
  width: 100%;
  height: 24rem;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .ctg_map iframe {
    height: 59vw;
  }
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .ctg_map {
    margin: 0 auto 6vw;
  }
}

.shopInfo_block_ctg .shopInfo_list .inner_bottom {
  max-width: 910px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}

.shopInfo_block_ctg .shopInfo_list .inner_bottom .btn {
  width: 48%;
}

.shopInfo_block_ctg .shopInfo_list .inner_bottom .btn:nth-of-type(1) a {
  background-color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .shopInfo_block_ctg .shopInfo_list .inner_bottom {
    width: 100%;
  }
  .shopInfo_block_ctg .shopInfo_list .inner_bottom > .btn a {
    padding: 0.5rem 0;
  }
}

.ttl_en {
  font-family: 'Oooh Baby', cursive;
  font-size: 2.85714rem;
  text-align: center;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ttl_en {
    font-size: 3.63967vw;
  }
}

.ctgfooter_info {
  background-color: #f5f2f2;
  width: 100vw;
  text-align: center;
  position: relative;
}

.ctgfooter_info .wrap {
  margin: 0 auto;
  padding: 5% 0;
  max-width: 76.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .ctgfooter_info .wrap {
    width: 95%;
  }
}

@media screen and (max-width: 767px) {
  .ctgfooter_info .wrap {
    max-width: 90%;
    width: 90%;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

.ctgfooter_info #news {
  width: 41%;
}

.ctgfooter_info #news .news_ttl {
  margin: 0 auto 13.5rem;
}

.ctgfooter_info #news .news_contents {
  margin-top: 4.74rem;
}

.ctgfooter_info #news .news_contents li {
  margin-top: 2rem;
}

.ctgfooter_info #news .news_contents li:first-child {
  margin-top: 0;
}

.ctgfooter_info #news .news_contents li .news_content {
  align-items: center;
  display: flex;
  justify-content: space-between;
  font-size: 0.8rem;
  color: #555555;
  line-height: 1.6;
}

.ctgfooter_info #news .news_contents li .news_content .n_date {
  font-size: 0.62rem;
  color: #555555;
  letter-spacing: 0.1em;
}

.ctgfooter_info #news .news_contents li .news_content .shop-name {
  width: 25.6%;
  border-radius: 0.81rem;
  color: #fff;
  padding: 0.2rem 0;
  letter-spacing: 0.2em;
  background: #7d6f6e;
}

.ctgfooter_info #news .news_contents li .news_content p.excerpt {
  width: 52%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
  color: #555555;
  letter-spacing: 0.2em;
}

.ctgfooter_info #news .btn_more {
  font-size: 1.04rem;
  width: 22rem;
  padding: 1.4rem 0;
  display: inline-block;
  margin-top: 6.76rem;
  background-color: #7d6f6e;
  border-radius: 3rem;
  color: #fff;
  letter-spacing: 0.2em;
  position: relative;
  cursor: pointer;
}

.ctgfooter_info #news .btn_more:after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 1.66rem;
  width: 1.66rem;
  -webkit-mask: url("../images/common/arw.svg");
  mask: url("../images/common//arw.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  right: 1.66em;
  top: 33%;
}

.ctgfooter_info #column {
  width: 41%;
  position: relative;
}

.ctgfooter_info #column .column_ttl {
  margin: 0 auto 13.5rem;
}

.ctgfooter_info #column .column_contents {
  margin-top: 4.74rem;
}

.ctgfooter_info #column .column_contents .column_content {
  display: flex;
  align-items: center;
  margin-top: 1.14rem;
}

.ctgfooter_info #column .column_contents .column_content .c_img {
  width: 7rem;
  width: 22%;
}

.ctgfooter_info #column .column_contents .column_content .c_img img {
  border-radius: 0.71rem;
}

.ctgfooter_info #column .column_contents .column_content .c_title {
  font-size: 0.86rem;
  width: 70%;
  margin-left: 1.63rem;
  text-align: left;
  color: #555555;
  letter-spacing: 0.2em;
}

.ctgfooter_info #column .btn_more {
  font-size: 1.04rem;
  width: 22rem;
  padding: 1.4rem 0;
  display: inline-block;
  margin-top: 6.76rem;
  background-color: #7d6f6e;
  border-radius: 3rem;
  color: #fff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  letter-spacing: 0.2em;
  cursor: pointer;
}

.ctgfooter_info #column .btn_more:after {
  content: "";
  background-color: #fff;
  display: inline-block;
  height: 1.66rem;
  width: 1.66rem;
  -webkit-mask: url("../images/common/arw.svg");
  mask: url("../images/common//arw.svg");
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  right: 1.66em;
  top: 33%;
}

.ctgfooter_info:before {
  position: absolute;
  content: "";
  top: -8px;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 12px;
  background: url(../images/common/footer-edge.svg) repeat-x 1318px;
}

.ctgfooter_info:after {
  position: absolute;
  content: "";
  bottom: -8px;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 12px;
  background: url(../images/common/footer-edge.svg) repeat-x 1318px;
  transform: rotate(180deg);
}

@media screen and (max-width: 767px) {
  .ctgfooter_info #news {
    width: 100%;
    margin-bottom: 17vw;
  }
  .ctgfooter_info #news .news_ttl img {
    height: 44vw;
  }
  .ctgfooter_info #news .news_contents {
    width: 100%;
    margin-top: 9.9vw;
  }
  .ctgfooter_info #news .news_contents li {
    text-align: left;
  }
  .ctgfooter_info #news .news_contents li .news_content {
    width: 100%;
    display: inline-block;
    text-align: left;
    border-bottom: 1px solid #555555;
    padding-bottom: 4.2vw;
    letter-spacing: 0.1em;
  }
  .ctgfooter_info #news .news_contents li .news_content .n_date {
    display: inline-block;
    font-size: 2.9vw;
    line-height: 1.8;
  }
  .ctgfooter_info #news .news_contents li .news_content .shop-name {
    width: 30.7vw;
    text-align: center;
    display: inline-block;
    font-size: 2.9vw;
    margin-left: 5.4vw;
    border-radius: 0.91rem;
    letter-spacing: 0.2em;
  }
  .ctgfooter_info #news .news_contents li .news_content p.excerpt {
    display: block;
    font-size: 3.1vw;
    width: 100%;
    max-width: unset;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 3.9vw;
    line-height: 1;
  }
  .ctgfooter_info #news .btn_more {
    font-size: 0.87rem;
    margin-top: 10.6vw;
    padding: 1.07rem 0;
    letter-spacing: 0.2em;
    line-height: 1;
    border-radius: 3rem;
  }
  .ctgfooter_info #news .btn_more:after {
    content: "";
    height: 3vw;
    width: 3vw;
    right: 3vw;
  }
  .ctgfooter_info #column {
    width: 100%;
  }
  .ctgfooter_info #column .column_ttl img {
    height: 44vw;
  }
  .ctgfooter_info #column .column_contents {
    margin-top: 9.9vw;
  }
  .ctgfooter_info #column .column_contents .column_content {
    text-align: left;
  }
  .ctgfooter_info #column .column_contents .column_content .c_img {
    width: 17.9vw;
    height: 17.9vw;
  }
  .ctgfooter_info #column .column_contents .column_content .c_img img {
    border-radius: 5px;
  }
  .ctgfooter_info #column .column_contents .column_content .c_title {
    font-size: 3vw;
    width: 63.1vw;
    text-align: left;
    letter-spacing: 0.1em;
  }
  .ctgfooter_info #column .btn_more {
    transform: unset;
    font-size: 0.87rem;
    margin-top: 10.6vw;
    padding: 1.07rem 0;
    letter-spacing: 0.2em;
    position: relative;
    left: 0;
    line-height: 1;
    border-radius: 3rem;
  }
  .ctgfooter_info #column .btn_more:after {
    content: "";
    height: 3vw;
    width: 3vw;
    right: 3vw;
  }
}

.tel-txt {
  font-size: 1.78571rem;
  color: #d5a8a4;
  display: block;
  margin-bottom: 4%;
}

.tel-txt .fax-txt {
  font-size: 1rem;
  vertical-align: super;
  color: #888888;
  margin-left: 0.5em;
}

.ctg_anv_banner {
  padding-top: 5.3rem;
  margin: 0 auto;
}

.ctg_anv_banner .ttl_ja {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.64286rem;
  letter-spacing: 0.2em;
  margin-bottom: 2rem;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .ctg_anv_banner .ttl_ja {
    font-size: 1.4rem;
  }
}

.mv_bottom {
  margin: 11.5rem auto 0;
}

.pm_tech_pd {
  padding: 1.9rem 2.5rem 0.5rem !important;
}

.tech_desc {
  margin-top: 7.14rem;
}

.tech_desc > .ttl_ja {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 2.14286rem;
  border-bottom: solid 2px #d5a8a4;
  color: #d5a8a4;
  text-align: center;
  letter-spacing: 0.2em;
  margin-bottom: 3.5rem;
  padding-bottom: 0.4rem;
}

@media screen and (max-width: 767px) {
  .tech_desc > .ttl_ja {
    font-size: 5.91447vw;
    line-height: 1.5;
  }
}

.tech_desc .desc_inner {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .tech_desc .desc_inner {
    display: block;
  }
}

.tech_desc .desc_inner .photo_block {
  width: 43%;
}

@media screen and (max-width: 767px) {
  .tech_desc .desc_inner .photo_block {
    width: 100%;
  }
}

.tech_desc .desc_inner .txt_block {
  width: 51.5%;
}

@media screen and (max-width: 767px) {
  .tech_desc .desc_inner .txt_block {
    width: 100%;
    margin-top: 1.5rem;
  }
}

.tech_desc .desc_inner .txt_block p {
  line-height: 2.4;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 767px) {
  .tech_desc .desc_inner .txt_block p {
    line-height: 2.2;
  }
}

.tech_desc .desc_inner .txt_block p > .txt_cap {
  margin: 2.2rem 0 0 1.5rem;
  letter-spacing: 0;
  display: block;
  line-height: 2;
  position: relative;
}

.tech_desc .desc_inner .txt_block p > .txt_cap:before {
  content: "";
  position: absolute;
  border-radius: 1rem;
  width: 0.7rem;
  height: 0.7rem;
  left: -3.5%;
  top: 0.7rem;
  background-color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .tech_desc .desc_inner .txt_block p > .txt_cap:before {
    left: -4.5%;
  }
}

.tech_desc .sub_block {
  width: 90vw;
  max-width: 600px;
  margin: 0 auto;
}

.tech_desc .sub_block .message {
  margin: 4.2rem auto;
}

.tech_desc .sub_block .txt_subblock {
  width: 100%;
}

.tech_desc .sub_block .txt_subblock p {
  line-height: 2.4;
}

.tech_desc .sub_block .txt_subblock > .txt_cap {
  margin-top: 2rem;
  margin-bottom: 3rem;
  font-size: 0.92857rem;
}

.tech_desc .flex_reverse {
  flex-direction: row-reverse;
}

.pricelist {
  margin: 10rem auto 12rem;
}

.pricelist > .inner li {
  width: 100%;
  display: flex;
  border-bottom: solid 2px #d5a8a4;
  align-items: flex-end;
  margin-bottom: 2rem;
  padding-bottom: 0.5em;
}

@media screen and (max-width: 767px) {
  .pricelist > .inner li {
    display: block;
  }
}

.pricelist > .inner li > .list-ttl {
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  color: #d5a8a4;
  letter-spacing: 0.2em;
  width: 48%;
}

@media screen and (max-width: 767px) {
  .pricelist > .inner li > .list-ttl {
    width: 100%;
    font-size: 5.45951vw;
    line-height: 2;
  }
}

.w440btn {
  width: 72vw !important;
  max-width: 440px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .w440btn {
    width: 100%;
    max-width: 80vw;
  }
  .w440btn a {
    padding: 1.7vw 0;
  }
}

.tkmn_mv {
  width: 100%;
  margin: 2rem auto 8rem;
}

@media screen and (max-width: 767px) {
  .tkmn_mv {
    margin: 9.6vw auto;
  }
}

.tkmn_mv .ttl_block {
  text-align: center;
  margin-bottom: 5rem;
}

@media screen and (max-width: 767px) {
  .tkmn_mv .ttl_block {
    margin-bottom: 9.6vw;
  }
}

.tkmn_mv .ttl_block > .page_ttl {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 2.14286rem;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .tkmn_mv .ttl_block > .page_ttl {
    font-size: 3.63967vw;
  }
}

.tkmn_mv .ttl_block > .page_ttl_en {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.78571rem;
}

@media screen and (max-width: 767px) {
  .tkmn_mv .ttl_block > .page_ttl_en {
    font-size: 3.27571vw;
  }
}

.photo_lead {
  margin-top: 9rem;
  text-align: center;
  font-size: 1.14286rem;
  letter-spacing: 0.2em;
  line-height: 2.5;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
}

@media screen and (max-width: 767px) {
  .photo_lead {
    width: 90%;
    margin: 11vw auto 0;
    font-size: 3.3vw;
    font-size: 3.27571vw;
    line-height: 2.3;
  }
}

.tkmn_campaign {
  margin-top: 7.6vw;
}

.tkmn_campaign .tkmn_campaign_contents {
  width: 66.6%;
  text-align: center;
  margin: 0 auto;
  background: #f5f2f2;
  border-radius: 0.7rem;
  padding: 4.2rem 0;
}

.tkmn_campaign .tkmn_campaign_contents h2 {
  font-size: 2.5rem;
  letter-spacing: 0.2em;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
}

.tkmn_campaign .tkmn_campaign_contents h2 span.red {
  color: #d5a8a4;
}

.tkmn_campaign .tkmn_campaign_contents p {
  line-height: 2;
  letter-spacing: 0.1em;
}

.tkmn_campaign .tkmn_campaign_contents p.mt {
  margin-top: 2.35rem;
}

.tkmn_campaign .tkmn_campaign_contents p.red {
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .tkmn_campaign .tkmn_campaign_contents {
    width: 90%;
    padding: 8.8vw 0;
  }
  .tkmn_campaign .tkmn_campaign_contents h2 {
    font-size: 5.8vw;
  }
  .tkmn_campaign .tkmn_campaign_contents p.mt {
    margin-top: 4.5vw;
  }
}

.membership {
  text-align: center;
  margin-top: 9rem;
}

.membership img {
  margin: 6.4rem 0 2rem;
}

.membership p {
  font-size: 0.92857rem;
  line-height: 2.1;
}

@media screen and (max-width: 767px) {
  .membership {
    margin: 9.4vw auto 0;
  }
  .membership img {
    margin: 6.6vw 0 4.6vw;
  }
  .membership p {
    text-align: left;
  }
  .membership .txt_cap {
    text-align: center;
  }
  .membership p.ttl_en, .membership p.ttl_ja {
    text-align: center;
  }
}

.member_price {
  text-align: center;
  margin-top: 13rem;
}

.member_price .mp_container {
  width: 90vw;
  max-width: 1000px;
  margin: 0 auto;
  display: grid;
  gap: 0.7rem;
  grid-template-columns: 0.96fr 0.96fr 0.96fr 0.96fr 0.96fr 2fr;
  grid-template-rows: auto 9vw;
}

.member_price .mp_container .item {
  padding: 1.2rem;
  background: #f5f2f2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.member_price .mp_container .item .pmp_course {
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.member_price .mp_container .item .pmp_course .pmp_ribbon {
  width: 35.1%;
  position: absolute;
  top: -5.2%;
  left: -0.5vw;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .member_price .mp_container .item .pmp_course .pmp_ribbon {
    top: -4.2%;
    left: -1vw;
  }
}

.member_price .mp_container .item .pmp_course .pmp_tg {
  display: flex;
  justify-content: flex-end;
}

.member_price .mp_container .item .pmp_course .pmp_tg p {
  padding: 0.6vw;
  background: #d5a8a4;
  border-radius: 0.5rem;
  color: #fff;
  margin-left: 0.35rem;
  height: auto;
  font-size: 0.86vw;
}

.member_price .mp_container .item .pmp_course .pmp_ttl {
  height: 4.2vw;
  object-fit: contain;
  margin-top: 2vw;
}

.member_price .mp_container .item .pmp_course .c_dcp {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.7rem;
  margin-top: 2vw;
  padding: 2.6vw 1.3vw;
  background: #fff;
  flex-grow: 1;
}

.member_price .mp_container .item .pmp_course .c_dcp p {
  font-size: 0.85rem;
  line-height: 2rem;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .member_price .mp_container .item .pmp_course .c_dcp p {
    font-size: 1.1vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .member_price .mp_container .item .pmp_course .c_dcp {
    font-size: 0.9vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .member_price .mp_container .item .pmp_course .c_dcp {
    font-size: 0.9vw;
  }
}

.member_price .mp_container .item .f18 {
  font-size: 1.1vw;
  line-height: 2rem;
  color: #d5a8a4;
}

.member_price .mp_container .item .f18 span {
  font-size: 0.8vw;
  color: #888888;
  line-height: 1;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .member_price .mp_container .item .f18 {
    line-height: 1.8vw;
  }
}

.member_price .mp_container .item .pmp_content_full {
  display: flex;
  background: #fff;
  margin-bottom: 0.7rem;
  border-radius: 0.7rem;
  align-items: center;
}

.member_price .mp_container .item .pmp_content_full img {
  padding: 0.7rem;
  width: 48%;
  object-fit: cover;
}

.member_price .mp_container .item .pmp_content_full p {
  padding: 0.7rem;
  width: 52%;
  font-size: 0.7vw;
}

.member_price .mp_container .item .pmp_content_full p.lh1 {
  line-height: 1;
}

.member_price .mp_container .item .pmp_content_full p.only {
  width: 100%;
  text-align: center;
  height: 6.2vw;
  display: flex;
  align-items: center;
  justify-content: center;
}

.member_price .mp_container .item .pmp_content_full .pmp_content_img {
  width: 50%;
}

.member_price .mp_container .item .pmp_content_full .pmp_content_img img {
  width: 100%;
  object-fit: cover;
}

.member_price .mp_container .item_dcp {
  background-color: #f5f2f2;
}

.member_price .mp_container .item_dcp p {
  font-weight: bold;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .member_price .mp_container .item_dcp p {
    font-size: 1.1vw;
  }
}

.member_price .mp_container .half p {
  font-size: 1.1vw;
}

.member_price .mp_container .half p span {
  font-size: 0.8vw;
}

.member_price .mp_container .bgy {
  background-color: #FFFBD6;
}

.member_price .mp_container .bgp {
  background-color: #FFE2E1;
}

.member_price .mp_container .bgb {
  background-color: #E6EEF2;
}

.member_price .mp_container .big1 {
  grid-column: 2 / 4;
}

.member_price .mp_container .big2 {
  grid-column: 4 / 6;
}

.member_price .mp_container .big3 {
  grid-column: 6 / 7;
}

.member_price .mp_container .big3 p {
  font-size: 1.1vw;
}

.member_price .mp_container .spg_1, .member_price .mp_container .spg_10, .member_price .mp_container .spg_19, .member_price .mp_container .spg_9, .member_price .mp_container .spg_18, .member_price .mp_container .spg_25 {
  display: initial;
  justify-content: normal;
  align-items: normal;
}

.member_price p.mt4 {
  max-width: 90vw;
  margin: 4rem auto 0;
  font-size: 0.92857rem;
  line-height: 2rem;
}

.tak_btn {
  width: 29.4%;
  margin: 7rem auto 0;
}

@media screen and (max-width: 767px) {
  .member_price {
    margin-top: 18vw;
  }
  .member_price .mp_container {
    width: 90%;
    gap: 3.6vw;
    grid-template-columns: 1fr 1fr;
  }
  .member_price .mp_container .item {
    padding: 4.6vw;
  }
  .member_price .mp_container .item p {
    font-size: 3.1vw;
  }
  .member_price .mp_container .item .pmp_course .pmp_ribbon {
    width: 33%;
    top: -8%;
    left: 0;
  }
  .member_price .mp_container .item .pmp_course .pmp_tg p {
    font-size: 4.2vw;
    padding: 2vw 3vw;
    margin-left: 1.6vw;
  }
  .member_price .mp_container .item .pmp_course .pmp_ttl {
    height: 18.2vw;
    margin-top: 9.4vw;
  }
  .member_price .mp_container .item .pmp_course .c_dcp {
    padding: 5.8vw;
    margin-top: 8.7vw;
  }
  .member_price .mp_container .item .pmp_course .c_dcp p {
    font-size: 3.1vw;
    padding: 0;
    text-align: left;
    line-height: 8.2vw;
  }
  .member_price .mp_container .item .f18 {
    font-size: 4.5vw;
    line-height: 8.2vw;
  }
  .member_price .mp_container .item .f18 span {
    font-size: 3.1vw;
    line-height: initial;
  }
  .member_price .mp_container .item .pmp_content_full {
    display: flex;
    background: #fff;
    margin-bottom: 0.7rem;
    border-radius: 0.7rem;
    margin-top: 3.5vw;
  }
  .member_price .mp_container .item .pmp_content_full img {
    padding: 0.7rem;
    width: 80%;
    object-fit: cover;
  }
  .member_price .mp_container .item .pmp_content_full p {
    padding: 0.7rem 0;
    width: auto;
    font-size: 3.1vw;
  }
  .member_price .mp_container .item .pmp_content_full p.lh1 {
    line-height: 1.8;
  }
  .member_price .mp_container .item .pmp_content_full p.only {
    min-height: 26vw;
    height: 100%;
  }
  .member_price .mp_container .item_dcp {
    grid-column: 1/3;
  }
  .member_price .mp_container .item_dcp p {
    font-size: 3.3vw;
    letter-spacing: 0.1em;
  }
  .member_price .mp_container .bgy {
    background-color: #FFFBD6;
  }
  .member_price .mp_container .bgp {
    background-color: #FFE2E1;
  }
  .member_price .mp_container .bgb {
    background-color: #E6EEF2;
  }
  .member_price .mp_container .big1 {
    grid-column: 1/3;
  }
  .member_price .mp_container .big2 {
    grid-column: 1/3;
  }
  .member_price .mp_container .big3 {
    grid-column: 1/3;
  }
  .member_price .mp_container .spg_1 {
    order: 1;
  }
  .member_price .mp_container .spg_2 {
    order: 2;
  }
  .member_price .mp_container .spg_3 {
    order: 3;
  }
  .member_price .mp_container .spg_4 {
    order: 4;
  }
  .member_price .mp_container .spg_5 {
    order: 5;
  }
  .member_price .mp_container .spg_6 {
    order: 6;
  }
  .member_price .mp_container .spg_7 {
    order: 7;
  }
  .member_price .mp_container .spg_8 {
    order: 8;
  }
  .member_price .mp_container .spg_9 {
    order: 9;
  }
  .member_price .mp_container .spg_10 {
    order: 10;
  }
  .member_price .mp_container .spg_11 {
    order: 11;
  }
  .member_price .mp_container .spg_12 {
    order: 12;
  }
  .member_price .mp_container .spg_13 {
    order: 13;
  }
  .member_price .mp_container .spg_14 {
    order: 14;
  }
  .member_price .mp_container .spg_15 {
    order: 15;
  }
  .member_price .mp_container .spg_16 {
    order: 16;
  }
  .member_price .mp_container .spg_17 {
    order: 17;
  }
  .member_price .mp_container .spg_18 {
    order: 18;
  }
  .member_price .mp_container .spg_19 {
    order: 19;
  }
  .member_price .mp_container .spg_20 {
    order: 20;
  }
  .member_price .mp_container .spg_21 {
    order: 21;
  }
  .member_price .mp_container .spg_22 {
    order: 22;
  }
  .member_price .mp_container .spg_23 {
    order: 23;
  }
  .member_price .mp_container .spg_24 {
    order: 24;
  }
  .member_price .mp_container .spg_25 {
    order: 25;
  }
  .member_price .mp_container .spg_26 {
    order: 26;
  }
  .member_price .mp_container .spg_27 {
    order: 27;
  }
  .member_price .mp_container .spg_28 {
    order: 28;
  }
  .member_price .spg_9, .member_price .spg_18, .member_price .spg_25 {
    display: flex !important;
    justify-content: space-between !important;
    flex-wrap: wrap;
  }
  .member_price .spg_9 .pmp_content_full, .member_price .spg_18 .pmp_content_full, .member_price .spg_25 .pmp_content_full {
    width: 47%;
    flex-direction: column;
  }
  .member_price .spg_10, .member_price .spg_19 {
    margin-top: 13.9vw;
  }
  .member_price p.mt4 {
    width: 90%;
    text-align: left;
    font-size: 3.1vw;
    letter-spacing: 0.1em;
    margin: 8.2vw auto 0;
  }
}

@media screen and (max-width: 767px) {
  .m_policy .btn {
    width: 72.7%;
    margin-top: 11.4vw;
  }
  .m_policy .btn a {
    font-size: 3.1vw;
    padding: 3.1vw;
    line-height: 1;
  }
}

.toContact {
  text-align: center;
  margin: 8.42rem auto 12rem;
}

@media screen and (max-width: 767px) {
  .toContact {
    margin-top: 27.6vw;
  }
}

.toContact .contact_btns {
  width: 66.6%;
  margin: 0 auto;
  display: flex;
  justify-content: space-around;
}

@media screen and (max-width: 767px) {
  .toContact .contact_btns {
    width: 100%;
    flex-direction: column;
  }
}

.toContact .contact_btns p {
  width: 44.1%;
  margin: 0;
}

@media screen and (max-width: 767px) {
  .toContact .contact_btns p {
    width: 72.7%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .toContact .contact_btns p a {
    font-size: 3.1vw;
    padding: 3.1vw;
    line-height: 1;
  }
}

.toContact .contact_btns p a.pink {
  background-color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .toContact .contact_btns p:first-child {
    margin-bottom: 6vw;
  }
}

.store_mv {
  width: 96%;
  height: 25.8vw;
  margin: 0 auto;
  position: relative;
  border-radius: 1.4rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-origin: border-box;
}

.store_mv .str_ttl_mvblock {
  position: absolute;
  top: 33%;
  left: 8%;
}

@media screen and (max-width: 767px) {
  .store_mv {
    width: 90vw;
    height: 50vw;
    border-radius: 0.8rem;
  }
}

.MVsml_store {
  background-image: url("../images/store/sml_store_pc.jpg");
}

@media screen and (max-width: 767px) {
  .MVsml_store {
    background-image: url("../images/store/sml_store_sp.jpg");
  }
}

.MVanv_store {
  background-image: url("../images/store/anv_store_pc.jpg");
}

@media screen and (max-width: 767px) {
  .MVanv_store {
    background-image: url("../images/store/anv_store_sp.jpg");
  }
}

.ttlmt95 {
  margin-top: 6.2rem;
}

@media screen and (max-width: 767px) {
  .ttlmt95 {
    margin-top: 0;
  }
}

.str_ttl_block {
  margin: 0 auto;
  text-align: center;
}

.str_ttl {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 2.14286rem;
  letter-spacing: 0.2em;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  .str_ttl {
    font-size: 3.82166vw;
  }
}

.str_ttl_en {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.85714rem;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  .str_ttl_en {
    font-size: 3.3212vw;
  }
}

.page-link {
  margin-top: 6rem;
  margin-bottom: 7rem;
}

@media screen and (max-width: 767px) {
  .page-link {
    margin-top: 10.6vw;
    margin-bottom: 12vw;
  }
}

.page-link ul {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .page-link ul {
    justify-content: space-between;
  }
}

.page-link ul > .btn {
  width: 31.3%;
  margin: 0 3.05% 1.4rem 0;
}

@media screen and (min-width: 768px) and (max-width: 1259px) {
  .page-link ul > .btn:nth-child(3n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 1260px) {
  .page-link ul > .btn:nth-child(3n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .page-link ul > .btn {
    margin-right: 0;
  }
}

.page-link ul > .btn a {
  padding: 1rem 0;
  background-color: #d5a8a4;
  position: relative;
}

.page-link ul > .btn a:after {
  position: absolute;
  content: '';
  right: 1.5em;
  top: 40%;
  width: 0.45em;
  height: 0.45em;
  border-bottom: solid 0.15em #fff;
  border-right: solid 0.15em #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.page-link ul > .btn a p {
  color: #fff;
}

@media screen and (max-width: 767px) {
  .page-link ul > .btn {
    width: 48%;
  }
  .page-link ul > .btn a {
    padding: 0.8rem;
  }
  .page-link ul > .btn a:after {
    right: 1.2em;
    width: 0.3em;
    height: 0.3em;
    border-bottom: solid 0.1em #fff;
    border-right: solid 0.1em #fff;
  }
  .page-link ul > .btn a p {
    line-height: 1.3;
  }
}

.store_image {
  width: 96%;
  margin: 2.8rem auto 3.8rem;
}

.store_image img {
  border-radius: 1.4rem;
}

@media screen and (max-width: 767px) {
  .store_image {
    width: 90vw;
    margin: 7vw auto 5vw;
  }
  .store_image img {
    border-radius: 0.5rem;
  }
}

.infowrap {
  margin-bottom: 10rem;
}

@media screen and (max-width: 767px) {
  .infowrap {
    margin-bottom: 22vw;
  }
}

.infowrap .str_desc_block {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
  .infowrap .str_desc_block {
    display: block;
  }
}

.infowrap .str_desc_block .str_desc {
  width: 49.6%;
}

@media screen and (max-width: 767px) {
  .infowrap .str_desc_block .str_desc {
    width: 100%;
    margin-bottom: 9vw;
  }
}

.infowrap .str_desc_block .str_desc .str_tel {
  font-size: 2.14286rem;
  letter-spacing: 0.1em;
  color: #d5a8a4;
}

@media screen and (max-width: 767px) {
  .infowrap .str_desc_block .str_desc .str_tel {
    font-size: 6.36943vw;
    line-height: 1.2;
  }
}

.infowrap .str_desc_block .str_desc dl {
  display: flex;
  flex-wrap: wrap;
  margin: 1rem 0;
  padding-bottom: 1rem;
  border-bottom: solid 1px #555;
}

.infowrap .str_desc_block .str_desc dl dt {
  width: 20%;
  line-height: 2;
}

.infowrap .str_desc_block .str_desc dl dd {
  width: 80%;
  line-height: 2;
}

.infowrap .str_desc_block .str_desc dl dd.ste_address span {
  display: inline-block;
}

.infowrap .str_desc_block .str_map {
  width: 44%;
}

@media screen and (max-width: 767px) {
  .infowrap .str_desc_block .str_map {
    width: 100%;
  }
}

.infowrap .str_desc_block .str_map iframe {
  width: 100%;
  height: 21rem;
}

@media screen and (max-width: 767px) {
  .infowrap .str_desc_block .str_map iframe {
    height: 52vw;
  }
}

.infowrap .calendar_block {
  width: 100%;
  text-align: center;
  margin-bottom: 3rem;
}

.infowrap .calendar_block .calendar_ttl {
  margin-bottom: 2rem;
}

.infowrap > .btn {
  margin: 4rem auto 0;
}

.doubleline_ttl {
  margin-bottom: 5.8rem;
}

@media screen and (max-width: 767px) {
  .doubleline_ttl {
    margin-bottom: 7vw;
  }
}

.doubleline_ttl p {
  font-size: 1.85714rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.1em;
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  color: #7d6f6e;
}

@media screen and (max-width: 767px) {
  .doubleline_ttl p {
    font-size: 3.82166vw;
  }
}

.doubleline_ttl p:before,
.doubleline_ttl p:after {
  content: "";
  height: 0.23rem;
  border-top: solid 1px #7d6f6e;
  border-bottom: solid 1px #7d6f6e;
  flex-grow: 1;
}

.doubleline_ttl p:before {
  margin: 0 3rem 0 0;
}

@media screen and (max-width: 767px) {
  .doubleline_ttl p:before {
    margin: 0 5vw 0 0;
  }
}

.doubleline_ttl p:after {
  margin: 0 0 0 3rem;
}

@media screen and (max-width: 767px) {
  .doubleline_ttl p:after {
    margin: 0 0 0 5vw;
  }
}

.prkg .prkg_inner {
  display: flex;
  margin-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_inner {
    display: block;
    margin-bottom: 8vw;
  }
}

.prkg .prkg_inner .prkg_map {
  width: 38%;
  margin-right: 6%;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_inner .prkg_map {
    width: 100%;
    margin: 0 auto 8vw;
  }
}

.prkg .prkg_inner .prkg_info > .nav_txt {
  margin-bottom: 1.9rem;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_inner .prkg_info > .nav_txt {
    text-align: center;
    margin-bottom: 8vw;
  }
}

.prkg .prkg_inner .prkg_info > .nav_txt .strong {
  color: #d5a8a4;
  font-weight: bold;
}

.prkg .prkg_inner .prkg_info > .map_img {
  width: 62%;
  margin-bottom: 1.9rem;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_inner .prkg_info > .map_img {
    width: 50vw;
    margin: 0 auto 8vw;
  }
}

.prkg .prkg_inner .prkg_info > .note {
  font-size: 0.92857rem;
  line-height: 2.3;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .prkg .prkg_inner .prkg_info > .note {
    font-size: 1.18289vw;
  }
}

@media screen and (max-width: 767px) {
  .prkg .prkg_inner .prkg_info > .note {
    line-height: 1.75;
  }
}

.prkg .prkg_caution {
  width: 90vw;
  max-width: 620px;
  background-color: #f5f2f2;
  border-radius: 1.4rem;
  margin: 0 auto 4.5rem;
  padding: 2.2rem 3.3rem;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_caution {
    max-width: 100%;
    padding: 4vw 5vw;
  }
}

.prkg .prkg_caution .prkg_caution_inner {
  display: flex;
  justify-content: center;
  align-items: center;
}

.prkg .prkg_caution .prkg_caution_inner .prkg_caution_icon {
  width: 9.5%;
  margin-right: 2rem;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_caution .prkg_caution_inner .prkg_caution_icon {
    width: 12.5%;
    margin-right: 4vw;
  }
}

.prkg .prkg_caution .prkg_caution_inner .prkg_caution_txt > .ttl {
  font-size: 1.5rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.1em;
  width: 100%;
  color: #7d6f6e;
  margin-bottom: 1rem;
}

@media screen and (max-width: 767px) {
  .prkg .prkg_caution .prkg_caution_inner .prkg_caution_txt > .ttl {
    font-size: 3.82166vw;
    margin-bottom: 2vw;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .prkg .prkg_caution .prkg_caution_inner .prkg_caution_txt > .txt {
    font-size: 1.27389vw;
  }
}

.anv_feature .anv_feature_inner {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .anv_feature .anv_feature_inner {
    display: block;
  }
}

.anv_feature .anv_feature_inner .anv_feature_list {
  width: 48.6%;
  height: 666px;
  position: relative;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .anv_feature .anv_feature_inner .anv_feature_list {
    height: 62vw;
  }
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 91.5%;
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_img img {
  border-radius: 1.4rem;
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock {
  position: absolute;
  bottom: -0.7rem;
  right: 0;
  background-color: #fff;
  border-radius: 1.4rem;
  max-height: 385px;
  height: 60vw;
  width: 91.5%;
  padding: 5% 8% 0;
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen {
  font-family: 'Oooh Baby', cursive;
  font-size: 1.28571rem;
  color: #d5a8a4;
  line-height: 1;
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlja {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.5rem;
  color: #7d6f6e;
  letter-spacing: 0.2em;
  margin-bottom: 6%;
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlja > .small {
  font-size: 0.92857rem;
}

.anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .txt {
  font-size: 0.96429rem;
  line-height: 2;
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen {
    font-size: 1.63785vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen {
    font-size: 1.91083vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen > .small {
    font-size: 1.18289vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .txt {
    font-size: 1.22839vw;
  }
}

@media screen and (max-width: 767px) {
  .anv_feature .anv_feature_inner .anv_feature_list {
    width: 100%;
    margin-bottom: 9vw;
    display: block;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_img img {
    border-radius: 0.8rem;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock {
    max-height: none;
    height: auto;
    bottom: auto;
    top: 55vw;
    width: 91.5%;
    padding: 5% 0 5% 8%;
    border-radius: 0.8rem;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen {
    font-size: 3.05732vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen {
    font-size: 3.82166vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .ttlen > .small {
    font-size: 3.00273vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list .feature_txtblock > .txt {
    font-size: 2.91174vw;
    line-height: 1.8;
  }
  .anv_feature .anv_feature_inner .anv_feature_list:nth-of-type(1) {
    height: 118vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list:nth-of-type(2) {
    height: 128.5vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list:nth-of-type(3) {
    height: 123vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list:nth-of-type(4) {
    height: 118vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list:nth-of-type(5) {
    height: 102vw;
  }
  .anv_feature .anv_feature_inner .anv_feature_list:nth-of-type(6) {
    height: 114vw;
  }
}

.waso-contents-wrapper {
  padding-top: 2rem;
  margin-bottom: 15rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .w1000 {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .rp_inner {
    width: 90vw;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .title-wrapper h1 {
    font-size: 1.381rem;
    letter-spacing: 0.2em;
  }
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .title-wrapper span {
    font-size: 1.1048rem;
  }
}

.waso-contents-wrapper .waso_nav {
  display: flex;
  justify-content: center;
}

.waso-contents-wrapper .waso_nav .btn {
  width: 46%;
}

.waso-contents-wrapper .waso_nav .btn:nth-child(1) {
  margin-right: 2%;
}

.waso-contents-wrapper .waso_nav .btn a {
  background: #d5a8a4;
  position: relative;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .waso_nav .btn a {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 1rem;
    padding: 2.5rem 0;
    line-height: 1.3;
  }
}

.waso-contents-wrapper .waso_nav .btn a:after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .waso_nav .btn a:after {
    top: auto;
    bottom: 1rem;
    right: auto;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
  }
}

.waso-contents-wrapper .waso_nav .btn a span {
  color: #fff;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .waso_nav .btn a span {
    width: 100%;
    display: block;
  }
}

.waso-contents-wrapper .wasoplan_block {
  padding-top: 10rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block {
    padding-top: 5rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_ttl {
  border-top: 2px solid #d5a8a4;
  border-bottom: 2px solid #d5a8a4;
  padding: 5px 0;
  margin-bottom: 4rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_ttl {
    margin-bottom: 2rem;
    padding: 3px 0;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_ttl h2 {
  border-top: 1px solid #d5a8a4;
  border-bottom: 1px solid #d5a8a4;
  padding: 1.7rem 0;
  color: #d5a8a4;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  text-align: center;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_ttl h2 {
    padding: 1rem 0;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_ttl h2 .main {
  display: block;
  font-size: 2.85714rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_ttl h2 .main {
    font-size: 1.57828rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_ttl h2 .sub {
  display: block;
  font-size: 1.78571rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_ttl h2 .sub {
    font-size: 0.94697rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_lead {
  color: #d5a8a4;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  letter-spacing: 0.2em;
  font-size: 2.14286rem;
  text-align: center;
  margin-top: 6rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_lead {
    margin-top: 2rem;
    font-size: 1.18371rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_uchidashi {
  margin-top: 6rem;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_uchidashi {
    margin-top: 2rem;
    display: block;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_uchidashi figure {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_uchidashi figure {
    width: 100%;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_uchidashi div {
  width: 43%;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_uchidashi div {
    width: 100%;
    margin-top: 2rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_uchidashi div h3 {
  font-size: 1.35714rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.75;
  color: #7d6f6e;
  margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_uchidashi div h3 {
    font-size: 1.18371rem;
    margin-bottom: 2rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_uchidashi div p {
  letter-spacing: 0.05em;
  line-height: 1.75;
}

.waso-contents-wrapper .wasoplan_block .rp_point {
  margin-top: 7rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point {
    margin-top: 4rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point h3 {
  text-align: center;
}

.waso-contents-wrapper .wasoplan_block .rp_point h3 span {
  display: inline-block;
  background: #d5a8a4;
  color: #fff;
  padding: 1.5rem 4rem;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.85714rem;
  letter-spacing: 0.2em;
  line-height: 1.15;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point h3 span {
    font-size: 1.18371rem;
    padding: 1.5rem 1.5rem;
    width: 100%;
    display: block;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point .lead {
  text-align: center;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.14286rem;
  letter-spacing: 0.2em;
  line-height: 2.8;
  color: #7d6f6e;
  margin-top: 5rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point .lead {
    margin-top: 3rem;
    font-size: 1.02588rem;
    line-height: 1.75;
    text-align: left;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul {
  margin-top: 7rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul {
    margin-top: 3rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li {
  display: flex;
  justify-content: space-between;
  width: 92%;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li {
    display: block;
    width: 100%;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li:nth-child(even) {
  margin-left: 8%;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li:nth-child(even) {
    margin: 0;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li:nth-child(n+2) {
  margin-top: 6.5rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li:nth-child(n+2) {
    margin-top: 3rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li figure {
  width: 38%;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li figure {
    width: 100%;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea {
  width: 56%;
  position: relative;
  padding-top: 3rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea {
    width: 100%;
    padding-top: 0;
    margin-top: 1rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea .num {
  position: absolute;
  font-size: 2.85714rem;
  top: 0;
  left: 0;
  transform: translateY(-50%);
  display: flex;
  align-items: flex-end;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea .num {
    position: static;
    transform: none;
    font-size: 2.52525rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea .num p {
  font-family: 'Oooh Baby', cursive;
  line-height: 1;
  letter-spacing: 0;
  color: #d5a8a4;
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea .num p:nth-child(1) {
  margin-right: 0.2em;
  padding-bottom: 0.4em;
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea .num p:nth-child(2) {
  font-size: 225%;
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea h4 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.5rem;
  letter-spacing: 0.2em;
  line-height: 1.75;
  color: #7d6f6e;
  margin-bottom: 2rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea h4 {
    font-size: 1.18371rem;
    margin-bottom: 1.5rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_point ul li .txtarea > p {
  letter-spacing: 0.05em;
  line-height: 1.75;
}

.waso-contents-wrapper .wasoplan_block .rp_price {
  margin-top: 8rem;
  border: 1px solid #d5a8a4;
  border-radius: 1rem;
  padding: 3rem 8rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price {
    margin-top: 5rem;
    padding: 1.5rem 2rem 2rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price h3 {
  text-align: center;
  font-family: 'Noto Serif JP', serif;
  font-weight: 300;
  font-size: 1.71429rem;
  letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price h3 {
    font-size: 1.26263rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price .fu {
  display: flex;
  margin-top: 2rem;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price .fu {
    display: block;
    margin-top: 1rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price .fu h4 {
  margin-right: 2rem;
  white-space: nowrap;
  font-weight: 700;
  color: #ccc;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price .fu h4 {
    text-align: center;
    margin-right: 0;
    margin-bottom: 0.5rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price .fu ul {
  display: flex;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price .fu ul {
    justify-content: center;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price .fu ul li {
  background: #7d6f6e;
  border-radius: 5px;
  color: #fff;
  font-size: 0.92857rem;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 0.5em 1em 0.2em;
  margin-right: 0.5em;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price .fu ul li {
    font-size: 0.78914rem;
    padding: 0.5em;
  }
  .waso-contents-wrapper .wasoplan_block .rp_price .fu ul li:last-child {
    margin-right: 0;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price .plist {
  margin-top: 1.5rem;
}

.waso-contents-wrapper .wasoplan_block .rp_price .plist li {
  border-bottom: 1px solid #7d6f6e;
  font-size: 1.5rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 0.3em;
}

@media screen and (max-width: 767px) {
  .waso-contents-wrapper .wasoplan_block .rp_price .plist li {
    font-size: 1.02588rem;
  }
}

.waso-contents-wrapper .wasoplan_block .rp_price .plist li:nth-child(n+2) {
  margin-top: 1.5rem;
}

.waso-contents-wrapper .wasoplan_block .rp_price .plist li p {
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.waso-contents-wrapper .wasoplan_block .rp_price .plist li p.pl_price {
  color: #d5a8a4;
}

.waso-contents-wrapper .wasoplan_block .pl_gallery h3 {
  text-align: center;
  font-family: 'Oooh Baby', cursive;
  font-size: 2.85714rem;
  margin-bottom: 2rem;
}

/*# sourceMappingURL=style.css.map */
