@charset "UTF-8";
/*
Theme Name: サロン001 【おきがるホームページ専用テーマ】2024-02-03-15:40
Author: NOVO 田中 陽介
Author URI: https://novo-web.jp//
Description: This theme is created by NOVO. These are only for our customer contracted with our service, "おきがるホームページ". 
Version: 1.0
Requires at least: 5.0
Tested up to: 5.4
Requires PHP: 7.0
License: GNU General Public License v2 or later
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {toppage-fv__visual .content .copy
  margin: 0;
}

a {
  text-decoration: none;
}

:where([hidden]:not([hidden='until-found'])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
  color-scheme: dark light;
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}

@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth;
  }
}

:where(body) {
  block-size: 100%;
  block-size: 100dvb;
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role='button'], [role='option']) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(button) {
  border-style: solid;
}

:where(a) {
  text-underline-offset: .2ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
}

:where(hr) {
  border: none;
  -webkit-border-before: 1px solid;
          border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(:focus-visible) {
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  -webkit-clip-path: inset(50%) !important;
          clip-path: inset(50%) !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  border: 0 !important;
}

html {
  font-size: 10px;
  letter-spacing: .15rem;
  color: #444444;
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

body {
  overflow-x: hidden;
}

#loading {
  display: none;
}

.pc {
  display: block;
}

.pc-tb {
  display: block;
}

.tb {
  display: none;
}

.tb-sp {
  display: none;
}

.sp {
  display: none;
}

.wrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px;
}

.p {
  line-height: 2;
  font-size: 1.6rem;
}

.sectiontitle {
  text-align: center;
}

.sectiontitle .eng {
  font-family: 'Noto Serif', serif;
  letter-spacing: .35rem;
  font-size: 4rem;
  font-weight: 600;
}

.sectiontitle .jpn {
  font-size: 1.8rem;
}

.sectiontitle .instagram {
  font-size: 2.8rem;
  font-weight: 600;
}

.sitebtn {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: inline-block;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 16px 0px;
  width: 228px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  border-radius: 50px;
  text-align: center;
  font-size: 1.4rem;
  color: #fff;

}

.sitebtn img {
  margin-left: 8px;
}

.sitebtn--white {
  color: #444444;
  background-color: #fff;
  border: solid 1px;
  margin-left: 266px;
  padding: 30px 0px;
  width: 320px;
}

.header {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 133px;
}

.header__upperbar {
  padding: 17px 0;
}

.header__copy {
  text-align: center;
  font-size: 1.4rem;
}

.copy {
	color: #fff;
}

.header__main {
  height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: 32px;
}

.header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}

.header__nav ul {
  margin-right: 57px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}

.header__nav ul li {
  margin-left: 24px;
}

.header__nav ul li:first-of-type {
  margin-left: 0;
}

.header__nav ul li a {
  font-size: 1.4rem;
  color: #444444;
}

.header__reservation {
  display: inline-block;
  height: 100%;
  width: 180px;
}

.header__reservation a {
  color: #fff;
  text-decoration: none;
  display: block;
  height: 100%;
  line-height: 80px;
  font-size: 1.6rem;
  text-align: center;
}

.footer {
  padding: 45px 0 24px;
}

.footer__logo {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.footer__logo img {
  margin-left: auto;
  margin-right: auto;
}

.footer__nav {
  margin-top: 32px;
}

.footer__nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.footer__nav ul li {
  margin-left: 24px;
  font-size: 1.4rem;
}

.footer__nav ul li:first-of-type {
  margin-left: 0;
}

.footer__privacy {
  margin-top: 32px;
  text-align: center;
}

.footer__privacy a {
  font-size: 1.25rem;
  color: #444;
  text-decoration: underline;
}

.footer__copyright {
  display: block;
  margin-top: 32px;
  text-align: center;
}

.toppage-fv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-right: 40px;
  margin-top: 133px;
}

.toppage-fv__snses {
  width: 114px;
  text-align: center;
}

.toppage-fv__snses ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}

.toppage-fv__snses ul li {
  margin-top: 16px;
}

.toppage-fv__snses ul li:first-of-type {
  margin-top: 0;
}

.toppage-fv__snses ul li a {
  border-radius: 50%;
  display: inline-block;
  width: 32px;
  height: 32px;
  line-height: 34px;
  text-align: center;
}

.toppage-fv__snses ul li a i {
  color: #fff;
  font-size: 1.4rem;
}

.toppage-fv__visual {
  position: relative;
  z-index: 0;
  width: calc(100% - 114px);
}

.toppage-fv__visual .content {
  position: absolute;
  top: 85px;
  left: 48px;
  z-index: 2;
}

.toppage-fv__visual .content .copy {
    font-size: 3.8rem;
    font-weight: 600;
    text-shadow: 0 10px 10px rgb(0 0 0);
    font-family: 'Shippori Mincho';
}

.toppage-fv__visual .content .desc {
  margin-top: 16px;
  font-size: 1.8rem;
  line-height: 2;
  color: #fff;
}

.top-concept {
  padding-top: 90px;
}

.top-concept__content {
  margin-top: 56px;
}

.top-concept__images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top-concept__image {
  position: relative;
  width: 49%;
  height: 322px;
}

.top-concept__image::after {
  content: "";
  position: absolute;
  right: -12px;
  bottom: -12px;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.top-concept__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-concept__desc {
  margin-top: 32px;
}

.top-concept__ownersec {
  margin-top: 56px;
}

.top-concept__ownersec-lr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.top-concept__ownersec-left {
  width: 40%;
}

.top-concept__ownersec-image {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 615px;
}

.top-concept__ownersec-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-concept__ownersec-image::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -15px;
  bottom: -15px;
  width: 100%;
  height: 100%;
}

.top-concept__ownersec-right {
  width: 50%;
}

.top-concept__ownersec-intro {
  font-size: 2.8rem;
}

.top-concept__ownersec-name {
  margin-top: 16px;
  font-size: 2.4rem;
}

.top-concept__ownersec-desc {
  margin-top: 16px;
}

.top-news {
  padding-top: 180px;
}

.top-news__content {
  margin-top: 56px;
}

.top-news__btn {
  margin-top: 56px;
  text-align: right;
}

.newslist ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.newslist ul li {
  margin-top: 16px;
  margin-left: 1%;
  width: 24%;
}

.newslist ul li:first-of-type, .newslist ul li:nth-of-type(4n + 1) {
  margin-left: 0;
}

.newslist ul li:nth-of-type(1), .newslist ul li:nth-of-type(2), .newslist ul li:nth-of-type(3), .newslist ul li:nth-of-type(4) {
  margin-top: 0;
}

.newslist ul li article a {
  color: #444444;
}

.newslist ul li article a .thumb {
  width: 100%;
  height: 212px;
}

.newslist ul li article a .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.newslist ul li article a .thumb.noimage {
  border: solid 1px #eee;
  padding: 24px;
}

.newslist ul li article a .thumb.noimage img {
  -o-object-fit: contain;
     object-fit: contain;
}

.newslist ul li article a time {
  display: block;
  margin-top: 8px;
  font-size: 1.4rem;
}

.newslist ul li article a .title {
  margin-top: 4px;
  font-size: 1.6rem;
  font-weight: 600;
}

.top-menu {
  margin-top: 90px;
  padding-top: 90px;
  padding-bottom: 90px;
}

.top-menu__content {
  margin-top: 56px;
}

.top-menu__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
 /* ▼ 両端揃えから中央揃えに変更 ▼ */
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  /* ▼ 隙間を追加（元々の幅32%に合わせて、残りの4%を2等分しています） ▼ */
  gap: 2%;
}

/*.top-menu__items::after {
  content: "";
  width: 32%;
}*/

.menucard {
  margin-top: 24px;
  width: 32%;
  border-radius: 10px;
}

.menucard .image {
  position: relative;
  width: 100%;
  height: 230px;
}

.menucard .image img {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
  background-color: rgba(123, 75, 22, 0.8);
}

.menucard .image .pricetag {
  position: absolute;
  right: 0;
  bottom: 0;
  font-size: 1.6rem;
  padding: 8px 16px;
  color: #fff;
}

.menucard .txt-gr {
  padding: 32px 40px;
}

.menucard .txt-gr .name {
  text-align: center;
}

.menucard .txt-gr .name .jpn {
  font-size: 1.8rem;
  font-weight: 600;
  color: #fff;
}

.menucard .txt-gr .name .eng {
  font-size: 1.2rem;
  font-weight: 600;
  color: #fff;
}

.menucard .txt-gr .detail {
  margin-top: 16px;
  font-size: 1.3rem;
  color: #fff;
}

.banner-sec {
  padding-top: 90px;
}

.banner-sec__image {
  position: relative;
  z-index: 0;
  display: table;
  width: 100%;
  text-align: center;
}

.banner-sec__image::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.banner-sec__content {
  position: relative;
  z-index: 2;
  display: table-cell;
  vertical-align: middle;
}

.banner-sec__copy {
  font-size: 4rem;
  font-weight: 600;
  color: #fff;
}

.banner-sec__btn {
  margin-top: 24px;
}

.top-voice {
  padding-top: 90px;
}

.top-voice__content {
  margin-top: 56px;
}

.top-voice__items .voicecard:first-of-type {
  margin-top: 0;
}

.voicecard {
  margin-top: 40px;
  padding: 55px 200px;
  text-align: center;
}

.voicecard .heading {
  font-size: 2.4rem;
  font-weight: 600;
}

.voicecard .age {
  margin-top: 12px;
  display: block;
  text-align: center;
  font-size: 1.6rem;
}

.voicecard .line {
  margin-top: 12px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 272px;
  height: 1px;
  background-color: #b0b0b0;
}

.voicecard .line::after {
  position: absolute;
  content: "";
  left: 25%;
  top: 0;
  width: 50%;
  height: 1px;
}

.voicecard .detail {
  margin-top: 12px;
}

.top-gallery {
  padding-top: 90px;
}

.top-gallery__content {
  margin-top: 56px;
}

.top-gallery__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.top-gallery__item {
  margin-top: 24px;
  margin-left: 2.5%;
  width: 23%;
  height: 203px;
  overflow: hidden;
}

.top-gallery__item:nth-of-type(1), .top-gallery__item:nth-of-type(4n + 1) {
  margin-left: 0;
}

.top-gallery__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-gallery__item:hover img {
  cursor: pointer;
  opacity: .7;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition-duration: .5s;
          transition-duration: .5s;
}

.pop-up-gallery {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 100000;
}

.pop-up-gallery__cross {
  position: absolute;
  right: 32px;
  top: 16px;
  background-color: #fff;
  width: 40px;
  height: 40px;
}

.pop-up-gallery__cross span {
  position: absolute;
  display: inline-block;
  height: 2px;
  width: 70%;
  top: 50%;
  left: 15%;
  background-color: #222;
}

.pop-up-gallery__cross span:nth-of-type(1) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pop-up-gallery__cross span:nth-of-type(2) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.pop-up-gallery__cross:hover {
  opacity: .7;
  cursor: pointer;
  -webkit-transition-duration: .5s;
  transition-duration: .5s;
}

.pop-up-gallery__inner {
  height: 100%;
}

.pop-up-gallery__table {
  display: table;
  width: 100%;
  height: 100%;
  text-align: center;
}

.pop-up-gallery__tablecell {
  display: table-cell;
  vertical-align: middle;
}

.pop-up-gallery__content img {
  margin-left: auto;
  margin-right: auto;
}

.top-access {
  padding-top: 90px;
  padding-bottom: 90px;
}

.top-access__content {
  margin-top: 56px;
}

.top-access__topimages {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top-access__topimage {
  width: 49%;
  height: 326px;
}

.top-access__topimage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-access__reserve {
  margin-top: 56px;
  margin-left: auto;
  margin-right: auto;
  max-width: 836px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: solid 1px #8B8B8B;
  padding-bottom: 24px;
}

.top-access__reserve .info .heading {
  font-size: 1.6rem;
  font-weight: 600;
}

.top-access__reserve .info .tel {
  margin-top: 4px;
  font-size: 2.4rem;
}

.top-access__reserve .info .tel a {
  font-weight: 600;
  color: #444;
}

.top-access__reserve .info .hour {
  margin-top: 4px;
  font-size: 1.6rem;
}

.top-access__reserve .reserves {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}

.top-access__reserve .reserves a:first-of-type {
  margin-right: 8px;
}

.top-access__infolist {
  margin-left: auto;
  margin-right: auto;
  max-width: 836px;
}

.top-access__infolist dt {
  padding-top: 24px;
  font-size: 1.6rem;
  font-weight: 600;
}

.top-access__infolist dd {
  margin-top: 8px;
  padding-bottom: 24px;
  border-bottom: solid 1px #8B8B8B;
  font-size: 1.4rem;
  line-height: 2;
}

.top-access__access {
  margin-top: 56px;
  margin-left: auto;
  margin-right: auto;
  max-width: 836px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top-access__access .left {
  width: 49%;
}

.top-access__access .left dl dt {
  margin-top: 24px;
  position: relative;
  font-size: 1.4rem;
}

.top-access__access .left dl dt::before {
  margin-right: 8px;
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: solid 1.5px;
}

.top-access__access .left dl dd {
  margin-top: 8px;
  font-size: 1.4rem;
}

.top-access__access .right {
  width: 49%;
}

.top-access__access .right .googlemap {
  width: 100%;
  height: 300px;
}

.top-access__access .right .googlemap iframe {
  width: 100%;
  height: 100%;
}

.top-instagram {
  padding-top: 90px;
  padding-bottom: 90px;
}

.top-instagram__content {
  margin-top: 56px;
}

.top-instagram__content .sb_instagram_header, .top-instagram__content #sbi_load {
  display: none !important;
}

.top-instagram__btn {
  margin-top: 32px;
}

.lowerpage {
  margin-top: 133px;
}

.lowerpage__header {
  padding-top: 90px;
  padding-bottom: 90px;
  width: 100%;
}

.lowerpage__header .txt {
  font-size: 2.8rem;
  text-align: center;
}

.pagenavi {
  margin-top: 56px;
  text-align: center;
}

.pagenavi .pages {
  display: none;
}

.pagenavi span[aria-current="page"] {
  font-size: 1.6rem;
  display: inline-block;
  width: 32px;
  height: 32px;
}

.pagenavi a.page,
.pagenavi a.previouspostslink,
.pagenavi a.nextpostslink {
  font-size: 1.6rem;
  display: inline-block;
  width: 32px;
  height: 32px;
}

.singlepage {
  padding-top: 90px;
  padding-bottom: 90px;
}

.singlepage__inner {
  padding: 80px;
  background-color: #fff;
}

.singlepage__inner time {
  font-size: 1.4rem;
}

.singlepage__inner .title {
  margin-top: 8px;
  font-size: 2.4rem;
  margin-bottom: 24px;
}

.singlepage__inner .thumb {
  margin-bottom: 24px;
}

.singlepage__inner .content h2 {
  margin-bottom: 16px;
  font-size: 2.2rem;
  font-weight: 600;
}

.singlepage__inner .content h3 {
  font-size: 1.8rem;
  margin-bottom: 16px;
}

.singlepage__inner .content h4 {
  font-size: 1.8rem;
  margin-bottom: 16px;
}

.singlepage__inner .content h5 {
  font-size: 1.8rem;
  margin-bottom: 16px;
}

.singlepage__inner .content h6 {
  font-size: 1.8rem;
  margin-bottom: 16px;
}

.singlepage__inner .content p {
  padding-bottom: 16px;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: .05rem;
}

.singlepage__inner .content ul li {
  padding-bottom: 16px;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: .05rem;
}

.singlepage__inner .content ol li {
  padding-bottom: 16px;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: .05rem;
}

.singlepage__inner .content figure {
  margin-bottom: 16px;
}

.singlepagenavi {
  margin-top: 56px;
  text-align: center;
}

.singlepagenavi a {
  font-size: 1.4rem;
  border-bottom: solid 1px;
}

.singlepagenavi a:nth-of-type(2) {
  margin-left: 32px;
}

.contact_page {
  padding-top: 90px;
  padding-bottom: 90px;
}

.contact_page__heading {
  -webkit-columns: #fff;
          columns: #fff;
}

.contact_page__caution {
  margin-top: 28px;
}

.contact_page__caution ul li {
  font-size: 1.4rem;
  padding-top: 16px;
  padding-bottom: 16px;
  color: #fff;
  border-bottom: solid 1px;
}

.contact_page__form {
  margin-top: 80px;
  padding: 117px 110px;
  background-color: #F2F2F2;
}

.contact_page__form table {
  width: 100%;
}

.contact_page__form table tr {
  border-bottom: solid 1px #C4C4C4;
}

.contact_page__form table tr:last-of-type {
  border-bottom: none;
}

.contact_page__form table tr th,
.contact_page__form table tr td {
  padding: 30px 0;
  text-align: left;
  font-weight: 300;
}

.contact_page__form table tr th {
  position: relative;
  font-size: 16px;
}

.contact_page__form table tr th .require {
  padding-top: 4px;
  padding-bottom: 4px;
  margin-bottom: 8px;
  display: block;
  top: 0;
  left: 0;
  width: 56px;
  font-size: 12.5px;
  text-align: center;
  color: #fff;
  background-color: #C9742B;
}

.contact_page__form table tr td {
  padding-left: 72px;
}

.contact_page__form table tr td input[type="text"],
.contact_page__form table tr td input[type="email"],
.contact_page__form table tr td input[type="tel"],
.contact_page__form table tr td textarea {
  width: 100%;
  border: solid 1px #CCCCCC;
}

.contact_page__form table tr td input[type="text"]::-webkit-input-placeholder,
.contact_page__form table tr td input[type="email"]::-webkit-input-placeholder,
.contact_page__form table tr td input[type="tel"]::-webkit-input-placeholder,
.contact_page__form table tr td textarea::-webkit-input-placeholder {
  font-size: 1.6rem;
}

.contact_page__form table tr td input[type="text"]:-ms-input-placeholder,
.contact_page__form table tr td input[type="email"]:-ms-input-placeholder,
.contact_page__form table tr td input[type="tel"]:-ms-input-placeholder,
.contact_page__form table tr td textarea:-ms-input-placeholder {
  font-size: 1.6rem;
}

.contact_page__form table tr td input[type="text"]::-ms-input-placeholder,
.contact_page__form table tr td input[type="email"]::-ms-input-placeholder,
.contact_page__form table tr td input[type="tel"]::-ms-input-placeholder,
.contact_page__form table tr td textarea::-ms-input-placeholder {
  font-size: 1.6rem;
}

.contact_page__form table tr td input[type="text"]::placeholder,
.contact_page__form table tr td input[type="email"]::placeholder,
.contact_page__form table tr td input[type="tel"]::placeholder,
.contact_page__form table tr td textarea::placeholder {
  font-size: 1.6rem;
}

.contact_page__form table tr td input[type="text"],
.contact_page__form table tr td input[type="email"],
.contact_page__form table tr td input[type="tel"] {
  padding-left: 8px;
  padding-right: 8px;
  width: 100%;
  height: 55px;
  font-size: 18px;
}

.contact_page__form table tr td.radio_gr .wpcf7-list-item {
  display: block;
}

.contact_page__form table tr td.radio_gr .wpcf7-list-item-label {
  margin-left: 16px;
}

.contact_page__form table tr td.radio_gr .wpcf7-list-item.first label {
  margin-top: 0;
}

.contact_page__form table tr td.radio_gr > span:first-of-type {
  margin-top: 0;
}

.contact_page__form table tr td.radio_gr > span:first-of-type label {
  margin-top: 0;
}

.contact_page__form table tr td.radio_gr label {
  margin-top: 16px;
  display: block;
  font-size: 18px;
}

.contact_page__privacy {
  margin-top: 80px;
  color: #fff;
  text-align: center;
  font-size: 18px;
}

.contact_page__submit {
  margin-top: 80px;
  text-align: center;
}

.contact_page__submit input,
.contact_page__submit button {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  padding-top: 18px;
  padding-bottom: 18px;
  width: 240px;
  background-color: #fff;
  border: none;
  font-size: 18px;
}

.contact_page .wpcf7-not-valid-tip {
  margin-top: 4px;
  font-size: 14px;
	color: #f18200;
}

@media screen and (max-width: 690px) {
  .pc {
    display: none;
  }
  .pc-tb {
    display: none;
  }
  .tb {
    display: none;
  }
  .tb-sp {
    display: block;
  }
  .sp {
    display: block;
  }
  .wrapper {
    max-width: 375px;
    padding-left: 16px;
    padding-right: 16px;
  }
  .p {
    line-height: 1.75;
    font-size: 1.4rem;
  }
  html {
    font-size: 10px;
    letter-spacing: .1rem;
    color: #222222;
    text-align: justify;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
  body {
    overflow-x: hidden;
  }
  .sectiontitle {
    text-align: center;
  }
  .sectiontitle .eng {
    font-size: 2.8rem;
  }
  .sectiontitle .jpn {
    font-size: 1.4rem;
  }
  .sectiontitle .instagram {
    font-size: 2rem;
  }
  .sitebtn {
    padding: 12px 0px;
    width: 200px;
    font-size: 1.3rem;
  }
  .sitebtn--full-sp {
    width: 100%;
  }
  .header {
    height: 56px;
  }
  .header__upperbar {
    background-color: #fff !important;
    padding: 8px 8px 0;
  }
  .header__copy {
    text-align: left;
    font-size: 1.1rem;
  }
  .header__main {
    padding-top: 8px;
    height: initial;
    padding-left: 8px;
  }
  .header__logo {
    max-width: 50%;
  }
  .header__nav ul {
    display: none;
  }
  .header__ham {
    display: block;
    position: fixed;
    z-index: 10001;
    right: 8px;
    top: 16px;
    width: 40px;
    height: 40px;
  }
  .header__ham span {
    position: absolute;
    left: 10%;
    width: 80%;
    height: 1px;
  }
  .header__ham span:nth-of-type(1) {
    top: 35%;
    -webkit-transition-duration: .8s;
            transition-duration: .8s;
  }
  .header__ham span:nth-of-type(2) {
    top: 65%;
    -webkit-transition-duration: .8s;
            transition-duration: .8s;
  }
  .header__ham.cross span {
    position: absolute;
    left: 10%;
    -webkit-transition-duration: .8s;
            transition-duration: .8s;
  }
  .header__ham.cross span:nth-of-type(1) {
    top: 50%;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transition-duration: .8s;
            transition-duration: .8s;
  }
  .header__ham.cross span:nth-of-type(2) {
    top: 50%;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transition-duration: .8s;
            transition-duration: .8s;
  }
  .header__reservation {
    position: fixed;
    bottom: 12px;
    left: 5%;
    height: auto;
    width: 90%;
    z-index: 1000;
    border-radius: 50px;
  }
  .header__reservation a {
    padding: 16px 0;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: initial;
    border-radius: 50px;
    -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.8);
            box-shadow: 0 3px 3px rgba(0, 0, 0, 0.8);
  }
  .spmenu {
    position: fixed;
    left: 0;
    top: -100vh;
    width: 100%;
    height: 100vh;
    z-index: 10000;
    background-color: #fff;
    overflow: auto;
    -webkit-transition-duration: .75s;
            transition-duration: .75s;
  }
  .spmenu.show {
    top: 0vh;
    -webkit-transition-duration: .75s;
            transition-duration: .75s;
  }
  .spmenu__inner {
    padding-top: 32px;
  }
  .spmenu__nav {
    margin-top: 32px;
  }
  .spmenu__nav ul li a {
    font-size: 1.25rem;
    display: block;
    padding: 12px 0;
    border-bottom: solid 1px;
  }
  .spmenu__snses {
    margin-top: 32px;
  }
  .spmenu__snses ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .spmenu__snses ul li {
    margin-left: 16px;
  }
  .spmenu__snses ul li:first-of-type {
    margin-left: 0;
  }
  .spmenu__snses ul li a i {
    font-size: 2.4rem;
  }
  .spmenu__reservation {
    margin-top: 32px;
  }
  .footer {
    padding: 45px 0 140px;
  }
  .footer__nav {
    margin-top: 16px;
  }
  .footer__nav ul {
    display: block;
  }
  .footer__nav ul li {
    padding-top: 16px;
    padding-bottom: 16px;
    margin-left: 0px;
    font-size: 1.25rem;
    border-bottom: solid 1px #ddd;
  }
  .footer__nav ul li:first-of-type {
    margin-top: 0;
  }
  .footer__privacy {
    margin-top: 16px;
  }
  .footer__copyright {
    margin-top: 16px;
  }
  .toppage-fv {
    padding-left: 16px;
    padding-right: 0px;
    margin-top: 80px;
    display: block;
  }
  .toppage-fv__snses {
    display: none;
  }
  .toppage-fv__snses ul li a {
    width: 24px;
    height: 24px;
    line-height: 26px;
  }
  .toppage-fv__snses ul li a i {
    font-size: 1.25rem;
  }
  .toppage-fv__visual {
    width: calc(100%);
  }
  .toppage-fv__visual .content {
    position: absolute;
    top: 22px;
    left: 16px;
  }
  .toppage-fv__visual .content .copy {
    font-size: 2rem;
  }
  .toppage-fv__visual .content .desc {
    margin-top: 8px;
    font-size: 1.25rem;
    line-height: 1.75;
  }
  .top-concept {
    padding-top: 45px;
  }
  .top-concept__content {
    margin-top: 28px;
  }
  .top-concept__images {
    display: block;
  }
  .top-concept__image {
    margin-top: 32px;
    width: 100%;
    height: 65vw;
  }
  .top-concept__image:first-of-type {
    margin-top: 0;
  }
  .top-concept__desc {
    margin-top: 32px;
  }
  .top-concept__ownersec {
    margin-top: 28px;
  }
  .top-concept__ownersec-lr {
    display: block;
  }
  .top-concept__ownersec-left {
    width: 100%;
  }
  .top-concept__ownersec-image {
    margin-left: auto;
    margin-right: auto;
    height: 90vw;
  }
  .top-concept__ownersec-image::after {
    right: -8px;
    bottom: -8px;
  }
  .top-concept__ownersec-right {
    margin-top: 32px;
    width: 100%;
  }
  .top-concept__ownersec-intro {
    font-size: 2rem;
  }
  .top-concept__ownersec-name {
    margin-top: 8px;
    font-size: 1.8rem;
  }
  .top-concept__ownersec-desc {
    margin-top: 8px;
  }
  .top-news {
    padding-top: 90px;
  }
  .top-news__content {
    margin-top: 28px;
  }
  .top-news__btn {
    margin-top: 28px;
    text-align: center;
  }
  .newslist ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .newslist ul li {
    margin-top: 16px;
    margin-left: 0;
    width: 48%;
  }
  .newslist ul li:first-of-type, .newslist ul li:nth-of-type(4n + 1) {
    margin-left: 0;
  }
  .newslist ul li:nth-of-type(1), .newslist ul li:nth-of-type(2), .newslist ul li:nth-of-type(3), .newslist ul li:nth-of-type(4) {
    margin-top: 32px;
  }
  .newslist ul li:nth-of-type(1), .newslist ul li:nth-of-type(2) {
    margin-top: 0;
  }
  .newslist ul li article a .thumb {
    height: 32.5vw;
  }
  .newslist ul li article a .thumb.noimage {
    padding: 12px;
  }
  .newslist ul li article a time {
    margin-top: 8px;
    font-size: 1.25rem;
  }
  .newslist ul li article a .title {
    font-size: 1.4rem;
  }
  .top-menu {
    margin-top: 45px;
    padding-top: 45px;
    padding-bottom: 45px;
  }
  .top-menu__content {
    margin-top: 28px;
  }
  .top-menu__items {
    display: block;
  }
 /*.top-menu__items::after {
    display: none;
  }*/
  .menucard {
    width: 100%;
  }
  .menucard .image {
    height: 60vw;
  }
  .menucard .image .pricetag {
    font-size: 1.4rem;
  }
  .menucard .txt-gr {
    padding: 24px 32px;
  }
  .menucard .txt-gr .name .jpn {
    font-size: 1.6rem;
  }
  .menucard .txt-gr .detail {
    margin-top: 8px;
  }
  .banner-sec {
    padding-top: 45px;
  }
  .banner-sec__copy {
    font-size: 2.4rem;
  }
  .banner-sec__btn {
    margin-top: 12px;
  }
  .top-voice {
    padding-top: 45px;
  }
  .top-voice__content {
    margin-top: 28px;
  }
  .voicecard {
    margin-top: 40px;
    padding: 32px 8px;
  }
  .voicecard .heading {
    font-size: 1.6rem;
  }
  .voicecard .age {
    margin-top: 4px;
    font-size: 1.25rem;
  }
  .voicecard .line {
    width: 80%;
    height: 1px;
    background-color: #b0b0b0;
  }
  .voicecard .line::after {
    position: absolute;
    content: "";
    left: 25%;
    top: 0;
    width: 50%;
    height: 1px;
  }
  .voicecard .detail {
    margin-top: 12px;
    font-size: 1.3rem;
  }
  .top-gallery {
    padding-top: 45px;
  }
  .top-gallery__content {
    margin-top: 28px;
  }
  .top-gallery__items {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .top-gallery__item {
    margin-top: 8px;
    margin-left: 0%;
    width: 49%;
    height: 32vw;
  }
  .pop-up-gallery__cross {
    position: absolute;
    right: 8px;
    top: 8px;
    width: 32px;
    height: 32px;
  }
  .top-access {
    padding-top: 45px;
    padding-bottom: 45px;
  }
  .top-access__content {
    margin-top: 28px;
  }
  .top-access__topimages {
    display: block;
  }
  .top-access__topimage {
    margin-top: 16px;
    width: 100%;
    height: 60vw;
  }
  .top-access__topimage:first-of-type {
    margin-top: 0;
  }
  .top-access__reserve {
    margin-top: 28px;
    max-width: initial;
    padding-bottom: 24px;
    display: block;
  }
  .top-access__reserve .info .heading {
    font-size: 1.4rem;
  }
  .top-access__reserve .info .tel {
    margin-top: 4px;
    font-size: 1.8rem;
  }
  .top-access__reserve .info .hour {
    margin-top: 4px;
    font-size: 1.4rem;
  }
  .top-access__reserve .reserves {
    margin-top: 12px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .top-access__reserve .reserves a:first-of-type {
    margin-right: auto;
	  margin-left:auto;
  }
  .top-access__reserve .reserves a {
    width: 48%;
  }
  .top-access__infolist {
    max-width: initial;
  }
  .top-access__infolist dt {
    padding-top: 24px;
    font-size: 1.4rem;
  }
  .top-access__infolist dd {
    font-size: 1.4rem;
    line-height: 1.75;
  }
  .top-access__access {
    margin-top: 28px;
    max-width: initial;
    display: block;
  }
  .top-access__access .left {
    width: 100%;
  }
  .top-access__access .left dl dt {
    font-size: 1.4rem;
  }
  .top-access__access .left dl dd {
    font-size: 1.4rem;
  }
  .top-access__access .right {
    margin-top: 24px;
    width: 100%;
  }
  .top-access__access .right .googlemap {
    height: 100vw;
  }
  .top-instagram {
    padding-top: 45px;
    padding-bottom: 45px;
  }
  .top-instagram__content {
    margin-top: 28px;
  }
  .top-instagram__btn {
    margin-top: 16px;
  }
  .lowerpage {
    margin-top: 64px;
  }
  .lowerpage__header {
    padding-top: 45px;
    padding-bottom: 45px;
  }
  .lowerpage__header .txt {
    font-size: 1.6rem;
  }
  .pagenavi {
    margin-top: 28px;
  }
  .singlepage {
    padding-top: 45px;
    padding-bottom: 45px;
    background-color: #fff !important;
  }
  .singlepage__inner {
    padding: 8px;
  }
  .singlepage__inner time {
    font-size: 1.25rem;
  }
  .singlepage__inner .title {
    margin-top: 4px;
    font-size: 1.8rem;
    margin-bottom: 12px;
  }
  .singlepage__inner .thumb {
    margin-bottom: 12px;
  }
  .singlepage__inner .content h2 {
    margin-bottom: 8px;
    font-size: 1.8rem;
  }
  .singlepage__inner .content h3 {
    font-size: 1.6rem;
    margin-bottom: 8px;
  }
  .singlepage__inner .content h4 {
    font-size: 1.6rem;
    margin-bottom: 8px;
  }
  .singlepage__inner .content h5 {
    font-size: 1.6rem;
    margin-bottom: 8px;
  }
  .singlepage__inner .content h6 {
    font-size: 1.6rem;
    margin-bottom: 8px;
  }
  .singlepage__inner .content p {
    padding-bottom: 8px;
    font-size: 1.4rem;
    line-height: 1.75;
  }
  .singlepage__inner .content ul li {
    padding-bottom: 8px;
    font-size: 1.4rem;
    line-height: 1.75;
  }
  .singlepage__inner .content ol li {
    padding-bottom: 8px;
    font-size: 1.4rem;
    line-height: 1.75;
  }
  .singlepage__inner .content figure {
    margin-bottom: 8px;
  }
  .singlepagenavi {
    margin-top: 28px;
  }
  .singlepagenavi a {
    font-size: 1.4rem;
  }
  .singlepagenavi a:nth-of-type(2) {
    margin-left: 24px;
  }
  .contact_page {
    padding-top: 16px;
    padding-bottom: 45px;
  }
  .contact_page__caution {
    margin-top: 28px;
  }
  .contact_page__caution ul li {
    font-size: 1.25rem;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .contact_page__form {
    margin-top: 40px;
    padding: 16px 8px;
  }
  .contact_page__form table tr th,
  .contact_page__form table tr td {
    padding: 0px 0;
    display: block;
  }
  .contact_page__form table tr th {
    padding-top: 32px;
    font-size: 14px;
  }
  .contact_page__form table tr th .require {
    padding-top: 4px;
    padding-bottom: 4px;
    margin-bottom: 8px;
    display: block;
    top: 0;
    left: 0;
    width: 56px;
    font-size: 12.5px;
    text-align: center;
    color: #fff;
    background-color: #C9742B;
  }
  .contact_page__form table tr td {
    padding-left: 72px;
  }
  .contact_page__form table tr td input[type="text"],
  .contact_page__form table tr td input[type="email"],
  .contact_page__form table tr td input[type="tel"],
  .contact_page__form table tr td textarea {
    width: 100%;
    border: solid 1px #CCCCCC;
  }
  .contact_page__form table tr td input[type="text"],
  .contact_page__form table tr td input[type="email"],
  .contact_page__form table tr td input[type="tel"] {
    padding-left: 8px;
    padding-right: 8px;
    width: 100%;
    height: 55px;
    font-size: 18px;
  }
  .contact_page__form table tr td.radio_gr .wpcf7-list-item {
    display: block;
  }
  .contact_page__form table tr td.radio_gr .wpcf7-list-item-label {
    margin-left: 16px;
  }
  .contact_page__form table tr td.radio_gr .wpcf7-list-item.first label {
    margin-top: 0;
  }
  .contact_page__form table tr td.radio_gr > span:first-of-type {
    margin-top: 0;
  }
  .contact_page__form table tr td.radio_gr > span:first-of-type label {
    margin-top: 0;
  }
  .contact_page__form table tr td.radio_gr label {
    margin-top: 16px;
    display: block;
    font-size: 18px;
  }
  .contact_page__privacy {
    margin-top: 80px;
    color: #fff;
    text-align: center;
    font-size: 18px;
  }
  .contact_page__submit {
    margin-top: 80px;
    text-align: center;
  }
  .contact_page__submit input,
  .contact_page__submit button {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    padding-top: 18px;
    padding-bottom: 18px;
    width: 240px;
    background-color: #fff;
    border: none;
    font-size: 18px;
  }
  .contact_page .wpcf7-not-valid-tip {
    margin-top: 4px;
    font-size: 14px;
  }
}
body,
p,
li,
dt,
dd,
span,
div,
a,
button,
input,
textarea,
select {
  font-family: "Noto Sans JP", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title,
.entry-title,
.page-title {
  font-family: "Shippori Mincho", serif;
}

/* 送信ボタン下に出るメッセージの文字色だけを白にする */
.wpcf7-form .wpcf7-response-output {
  color: #ffffff !important;
	text-align:center;
}

/* --- お問い合わせ内容（テキストエリア）の文字サイズと余白の調整 --- */
.contact_page__form table tr td textarea {
  font-size: 16px !important;
  padding: 12px 8px !important; /* 文字が枠の端にくっつかないよう内側に余白を持たせます */
}

br.pc{
display:block;
}

br.sp{
display:none;
}

@media screen and (max-width: 690px) {

br.pc{
display:none;
}

br.sp{
display:block;
}

}
/*# sourceMappingURL=style.css.map */