@charset "UTF-8";
/* fonts
----------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=EB+Garamond:400,400i,700,700i");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+SC:400,500,600,700&subset=japanese");
@import url("https://fonts.googleapis.com/css?family=Karla:400,700");
@font-face {
/*
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?w70q9i");
  src: url("../fonts/icomoon.eot?w70q9i#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?w70q9i") format("truetype"), url("../fonts/icomoon.woff?w70q9i") format("woff"), url("../fonts/icomoon.svg?w70q9i#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
*/
}
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
/*  font-family: 'icomoon' !important;*/
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-logo-wh:before {
  content: "\e900";
}

@font-face {
/*  font-family: 'Gothic';*/
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/yu-gothic-medium.eot");
  src: url("../fonts/yu-gothic-medium.eot?#iefix") format("embedded-opentype"), url("../fonts/yu-gothic-medium.woff2") format("woff2"), url("../fonts/yu-gothic-medium.woff") format("woff"), url("../fonts/yu-gothic-medium.ttf") format("truetype");
}
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  box-sizing: border-box;
  overflow-y: scroll;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */
}

*:not(.header_cuisine),
::before,
::after {
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

summary {
  display: list-item;
  /* Add the correct display in all browsers */
}

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none;
  /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects;
  /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
/*  font-family: monospace, monospace;*/
  /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic;
  /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}
@media screen and (min-width:768px) {
  .hidden_xs {
      display: block;
  }
  .visible_xs {
      display: none !important;
  }
}
@media screen and (max-width:767px) {
  .hidden_xs {
      display: none !important;
  }
  .visible_xs {
      display: block;
  }
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type="number"] {
  width: auto;
  /* Firefox 36+ */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */
}

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

/* Style select like a standard input */
select {
  -moz-appearance: none;
  /* Firefox 36+ */
  -webkit-appearance: none;
  /* Chrome 41+ */
}

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */
}

legend {
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit;
  /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
  /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~="screen"] {
    display: inherit;
  }

  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

ol,
ul {
  list-style: none;
}

*:not(.header_cuisine),
:after,
:before {
  box-sizing: border-box;
  outline: none;
}

html {
  position: relative;
  height: 100%;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  color: #000;
  position: relative;
/*  overflow: hidden;*/
/*  font-family: "EB Garamond", "Noto Serif SC", Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;*/
/*  font-size: 62.5%;*/
  font-weight: 400;
}

h1, h2, h3, h4, h5 {
  font-weight: 400;
}

strong {
  font-weight: 700;
}

:-ms-clear {
  display: none;
}

img {
  max-width: 100%;
  -ms-interpolation-mode: bicubic;
  vertical-align: bottom;
  height: auto;
}

svg {
  max-width: 100%;
  height: auto;
}

span {
  display: inline-block;
}

.menu-trigger {
  display: none;
  cursor: pointer;
  z-index: 100;
}

.menu-trigger,
.menu-trigger span {
  -webkit-transition: all .2s;
  transition: all .2s;
  box-sizing: border-box;
  pointer-events: auto;
}

.menu-trigger {
  width: 30px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 3%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.menu-trigger span {
  position: absolute;
  left: 0;
  width: 30px;
  height: 1px;
  background-color: #eee;
}

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

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

.menu-trigger span:nth-of-type(3) {
  top: 16px;
}

.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
}

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

.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
}

body {
  min-width: 1200px;
}
body.bg {
  background-color: #f5f4f3;
}

a {
  -webkit-transition: all .3s;
  transition: all .3s;
  color: #000;
  text-decoration: none;
}

main {
  padding-bottom: 20px;
}
main.plan-list {
  background-color: #f5f4f3;
  padding: 60px 7.8% 20px;
}
main.lower {
  background-color: #f5f4f3;
  padding: 60px 7.8% 20px;
}
main.lower ul.links {
  width: 100%;
  max-width: 1060px;
  margin: 0 auto 120px;
  letter-spacing: -.4em;
}
main.lower ul.links li {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  width: 31%;
  font-size: 2.0em;
  text-align: center;
}
main.lower ul.links li:nth-child(2) {
  margin: 0 3.5%;
}
main.lower ul.links li a {
  display: block;
  line-height: 60px;
  background-color: #c09758;
  border: solid 1px #c09758;
  color: #fff;
  position: relative;
}
main.lower ul.links li a:hover {
  background-color: #eab86a;
}
main.lower ul.links li a:hover:after {
  right: 4%;
}
main.lower ul.links li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 6%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
main.lower p.back {
  text-align: center;
  font-size: 1.5em;
  line-height: 1em;
  letter-spacing: .05em;
}
main.lower p.back a {
  display: inline-block;
  line-height: 40px;
  position: relative;
  padding: 0 25px;
}
main.lower p.back a:hover:before {
  left: -4%;
}
main.lower p.back a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 12px;
  height: 12px;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
}
main.qanda {
  padding: 0 0 20px;
}
main.qanda ul.qa-nav {
  width: 100%;
  text-align: center;
  letter-spacing: -.4em;
  background-color: #414650;
}
main.qanda ul.qa-nav li {
  display: inline-block;
  font-size: 1.8em;
  letter-spacing: .15em;
  border: none;
}
main.qanda ul.qa-nav li a {
  display: block;
  line-height: 70px;
  color: #fff;
  background-color: #414650;
  padding: 0 1.6em;
}
main.qanda ul.qa-nav li a:hover span {
  border-bottom: solid 1px white;
}
main.qanda ul.qa-nav li a span {
  -webkit-transition: all .3s;
  transition: all .3s;
  display: inline-block;
  border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  line-height: 1.8em;
}
main.cuisine {
  padding: 0 0 20px;
}
main.cuisine div.img-area {
  width: 100%;
  height: 325px;
  position: relative;
}
main.dress-item {
  padding: 0 0 20px;
}
main.dress-item div.img-area {
  width: 100%;
  height: 600px;
  position: relative;
}
main.bridal-fair {
  padding: 0 0 20px;
}
main.bridal-fair div.img-area {
  width: 100%;
  height: 380px;
  position: relative;
}
main.pr-article {
  background-color: #f5f4f3;
  padding: 60px 0 20px;
}
main.report-top {
  padding: 50px 5.5% 20px;
  background-color: #f5f4f3;
  text-align: center;
}
main.report-top.archive {
  padding: 80px 5.5% 20px;
}
main.report-top div.info {
  margin: 0 auto 100px;
}
main.report-top div.info p {
  font-size: 1.6em;
  letter-spacing: .15em;
  line-height: 2.125em;
}
main.report-top ul.season {
  letter-spacing: -.4em;
  margin: 0 auto 90px;
  text-align: center;
}
main.report-top ul.season li {
  display: inline-block;
  letter-spacing: .07em;
  font-size: 1.7em;
  line-height: 30px;
  margin: 0 10px;
}
main.report-top ul.season li a {
  display: block;
  position: relative;
}
main.report-top ul.season li a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #000;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
}
main.report-top ul.season li a:hover:after, main.report-top ul.season li a.active:after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

/*
header {
  -webkit-transition: all .6s;
  transition: all .6s;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 1200px;
  height: 90px;
  z-index: 20000;
  opacity: 1;
  filter: alpha(opacity=100);
  visibility: visible;
}
header.load {
  opacity: 0;
  filter: alpha(opacity=0);
}
header.bg, header.article {
  background-color: #fff;
  height: 70px;
}
header.bg h1 a, header.article h1 a {
  color: #000;
}
header.bg nav ul li a, header.article nav ul li a {
  color: #000;
}
header.bg nav ul li a:after, header.article nav ul li a:after {
  background-color: #000;
}
header h1 {
  -webkit-transition: all .6s;
  transition: all .6s;
  position: absolute;
  top: 51%;
  left: 2.5%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 4.8em;
  line-height: 1em;
  pointer-events: auto;
}
header h1 a {
  color: #fff;
  display: inline-block;
}
*/

/*
nav {
  position: absolute;
  top: 50%;
  right: 2.5%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  pointer-events: auto;
}
*/
/*
nav.active {
  visibility: visible;
  padding: 70px 0 200px;
  opacity: 1;
  filter: alpha(opacity=100);
}
nav ul {
  letter-spacing: -.4em;
}
nav ul li {
  letter-spacing: .07em;
  display: inline-block;
  vertical-align: top;
  font-size: 1.5em;
  line-height: 1em;
  letter-spacing: .07em;
  margin: 0 0 0 2em;
}
nav ul li.sp {
  display: none;
}
nav ul li a {
  display: block;
  color: #fff;
  position: relative;
  padding: 4px 0 5px;
}
nav ul li a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #fff;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
}
nav ul li a:hover:after, nav ul li a.active:after {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}
*/

section.block {
  width: 100%;
  height: 100vh;
  position: relative;
/*  overflow: hidden;*/
}
section.block.banners, section.block.access, section.block.contact, section.block.top-bridal-fair {
  height: initial !important;
  height: auto !important;
}
section.block.key-visual {
  width: 100%;
  position: relative;
}
section.block.key-visual h2 {
  -webkit-transition: all 2s;
  transition: all 2s;
  font-size: 2.0em;
  font-style: italic;
  line-height: 1.4em;
  letter-spacing: .4em;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
  color: #fff;
  z-index: 6500;
  opacity: 0;
  filter: alpha(opacity=0);
}
section.block.key-visual h2.load {
  opacity: 1;
  filter: alpha(opacity=100);
}
section.block.key-visual h2 span {
  margin: 0 .5em;
}
section.block.key-visual div.logo {
  display: none;
}
section.block.key-visual div.logo.load {
  opacity: 0;
  filter: alpha(opacity=0);
}
section.block.key-visual .black {
  -webkit-transition: all 3s;
  transition: all 3s;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 6000;
  visibility: hidden;
  background-color: transparent;
}
section.block.key-visual .black.load {
  visibility: visible;
  background-color: black;
}
section.block.key-visual .black.load.action {
  background-color: rgba(0, 0, 0, 0.5);
}
section.block.key-visual .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.block.key-visual .inner-sp {
  display: none;
}
section.block.key-visual a {
  -webkit-transition: all .6s;
  transition: all .6s;
  display: block;
  width: 100%;
  padding: 0 0 50px;
  position: absolute;
  bottom: 30px;
  left: 0;
  text-align: center;
  z-index: 10;
  color: #fff;
  font-size: 1.3em;
  font-style: italic;
  line-height: 1em;
  letter-spacing: .25em;
  opacity: 1;
  filter: alpha(opacity=100);
}
section.block.key-visual a.load {
  opacity: 0;
  filter: alpha(opacity=0);
}
section.block.key-visual a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
section.block.key-visual a span {
  position: absolute;
  top: 10px;
  left: 50%;
  width: 16px;
  height: 16px;
  margin-left: -10px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: scrbtn 1.5s infinite;
  animation: scrbtn 1.5s infinite;
  box-sizing: border-box;
}
section.block.menu {
  counter-increment: menunum;
}
section.block.menu h2 {
  font-size: 3.0em;
  letter-spacing: .1em;
  line-height: 1em;
  color: #fff;
  position: absolute;
  top: 150px;
  z-index: 30;
}
section.block.menu h2:after {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  width: 1px;
  height: 38px;
  background-color: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
section.block.menu h2:before {
  content: "0" counter(menunum);
  position: absolute;
  top: -28px;
  left: -1.6em;
  font-size: .5em;
}
section.block.menu div.center {
  z-index: 10;
}
section.block.menu div.center a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}
section.block.menu div.more {
  position: absolute;
  bottom: 95px;
  z-index: 300;
}
section.block.menu div.more a {
  font-size: 1.3em;
  line-height: 30px;
  letter-spacing: .05em;
  display: block;
  color: #fff;
  position: relative;
  padding: 0 2em 0 0;
}
section.block.menu div.more a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
}
section.block.menu div.more a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 20px;
  position: absolute;
  bottom: 0;
  right: 4px;
  background-color: #fff;
  -webkit-transform: rotate(-45deg) translateX(-4px);
  transform: rotate(-45deg) translateX(-4px);
}
section.block.menu div.more a:hover:before {
  width: 115%;
}
section.block.menu div.more a:hover:after {
  right: calc(-15% + 4px);
}
section.block.menu div.img {
  z-index: 0;
}
section.block.menu div.img.is-hover:after {
  background-color: rgba(0, 0, 0, 0.5);
}
section.block.menu div.img.is-hover-wh:after {
  background-color: rgba(255, 255, 255, 0.2);
}
section.block.menu div.img.action:before {
  -webkit-transition: all 2s;
  transition: all 2s;
  content: '';
  width: 100%;
  height: 100%;
  background-color: #000;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
section.block.menu div.img.action.off:before {
  opacity: 0;
  filter: alpha(opacity=0);
  visibility: hidden;
}
section.block.menu div.img:after {
  -webkit-transition: all 1s;
  transition: all 1s;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
}
section.block.concept {
  width: 100%;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
}
section.block.concept h2 {
  right: 7%;
}
section.block.concept .inner {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
section.block.concept p {
  font-size: 1.5em;
  line-height: 2.333em;
  letter-spacing: .2em;
  margin: 0 0 0 30px;
  white-space: nowrap;
}
section.block.concept p:last-child {
  margin: 0;
}
section.block.concept p span {
  display: block;
}
section.block.concept p.title {
  font-size: 3.2em;
  line-height: 1.71em;
  letter-spacing: .2em;
}
section.block.omotenashi h2 {
  left: 7%;
}
section.block.omotenashi .more {
  right: 10%;
}
section.block.special-place h2 {
  right: 7%;
}
section.block.special-place .more {
  left: 7%;
}
section.block.cuisine h2 {
  left: 7%;
}
section.block.cuisine .more {
  left: 7%;
}
section.block.cuisine .bg {
  position: absolute;
  top: 0;
  left: 0;
}
section.block.cuisine .img {
  position: absolute;
  top: 0;
  right: 0;
}
section.block.dress-item h2 {
  right: 7%;
}
section.block.dress-item .more {
  right: 10%;
}
section.block.dress-item .bg {
  position: absolute;
  top: 0;
  right: 0;
}
section.block.dress-item .img {
  position: absolute;
  top: 0;
  left: 0;
}
section.block.banners {
  width: 100%;
  padding: 180px 0 130px;
}
section.block.banners ul.banner-top {
  text-align: center;
  max-width: 1100px;
  letter-spacing: -.4em;
  margin: 0 auto;
}
section.block.banners ul.banner-top li {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  width: 48%;
  height: 288px;
  position: relative;
  overflow: hidden;
}
section.block.banners ul.banner-top li:hover .img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
section.block.banners ul.banner-top li:hover p:before, section.block.banners ul.banner-top li:hover p:after {
  width: 100%;
}
section.block.banners ul.banner-top li:hover p span:before, section.block.banners ul.banner-top li:hover p span:after {
  height: 100%;
}
section.block.banners ul.banner-top li:first-child .img {
  background: url(../img/top/banner-wedding-plan.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.block.banners ul.banner-top li:last-child {
  margin: 0 0 0 4%;
}
section.block.banners ul.banner-top li:last-child .img {
  background: url(../img/top/banner-party-report.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.block.banners ul.banner-top li a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 20;
}
section.block.banners ul.banner-top li .img {
  -webkit-transition: all 3s;
  transition: all 3s;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  -webkit-transform: scale(1);
  transform: scale(1);
}
section.block.banners ul.banner-top li p {
  display: inline-block;
  white-space: nowrap;
  font-size: 3.0em;
  line-height: 75px;
  letter-spacing: .1em;
  padding: 0 35px;
  border: solid 1px rgba(255, 255, 255, 0.6);
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10;
}
section.block.banners ul.banner-top li p:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: -1px;
  left: 0;
}
section.block.banners ul.banner-top li p:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -1px;
  right: 0;
}
section.block.banners ul.banner-top li p span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.block.banners ul.banner-top li p span:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: -1px;
}
section.block.banners ul.banner-top li p span:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: -1px;
}
section.block.omotenashi div.center, section.block.special-place div.center {
  position: absolute;
  top: 55%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border: solid 1px rgba(255, 255, 255, 0.7);
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
  padding: 10px 0;
  z-index: 200;
}
section.block.omotenashi div.center:hover:before, section.block.omotenashi div.center:hover:after, section.block.special-place div.center:hover:before, section.block.special-place div.center:hover:after {
  width: 100%;
}
section.block.omotenashi div.center:hover > a:before, section.block.omotenashi div.center:hover > a:after, section.block.special-place div.center:hover > a:before, section.block.special-place div.center:hover > a:after {
  height: 100%;
}
section.block.omotenashi div.center:before, section.block.special-place div.center:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: -1px;
  left: 0;
}
section.block.omotenashi div.center:after, section.block.special-place div.center:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -1px;
  right: 0;
}
section.block.omotenashi div.center > a:before, section.block.special-place div.center > a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: -1px;
}
section.block.omotenashi div.center > a:after, section.block.special-place div.center > a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: -1px;
}
section.block.omotenashi div.center p, section.block.special-place div.center p {
  font-size: 1.3em;
  line-height: 58px;
  color: #fff;
  padding: 15px 0 14px;
  white-space: nowrap;
  letter-spacing: .15em;
}
section.block.omotenashi div.center p.title, section.block.special-place div.center p.title {
  font-size: 3.2em;
  line-height: 80px;
  letter-spacing: .2em;
  border-left: solid 1px #fff;
  padding: 10px 0;
}
section.block.omotenashi div.more-sp, section.block.special-place div.more-sp {
  display: none;
}
section.block.omotenashi div.more-sp a, section.block.special-place div.more-sp a {
  font-size: 1.1em;
  line-height: 32px;
  letter-spacing: .05em;
  display: block;
  color: #fff;
  position: relative;
  padding: 0 0 1em;
}
section.block.omotenashi div.more-sp a:before, section.block.special-place div.more-sp a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
}
section.block.omotenashi div.more-sp a:after, section.block.special-place div.more-sp a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 10px;
  position: absolute;
  top: auto;
  bottom: 0;
  right: 1px;
  background-color: #fff;
  -webkit-transform: rotate(-45deg) translateX(-2px);
  transform: rotate(-45deg) translateX(-2px);
}
section.block.omotenashi div.img, section.block.special-place div.img {
  width: 100%;
  height: 100%;
}
section.block.cuisine div.center, section.block.dress-item div.center {
  position: absolute;
  top: 55%;
  left: 50%;
/*
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
*/
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
section.block.cuisine div.center:hover p.title, section.block.dress-item div.center:hover p.title {
  background-color: rgba(255, 255, 255, 0.1);
}
section.block.cuisine div.center p, section.block.dress-item div.center p {
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 1.3em;
  line-height: 1.666em;
  letter-spacing: .2em;
}
section.block.cuisine div.center p.title, section.block.dress-item div.center p.title {
  font-size: 1.8em;
  line-height: 45px;
  letter-spacing: .2em;
  border: solid 1px #000;
  margin: 0 0 0 20px;
  display: inline-block;
  padding: 10px 0;
  -webkit-transform: translateY(-15px);
  transform: translateY(-15px);
}
section.block.cuisine div.img, section.block.dress-item div.img {
  width: 72.6%;
  height: 100%;
}
section.block.cuisine div.bg, section.block.dress-item div.bg {
  width: 27.5%;
  height: 100%;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
}
section.block.cuisine div.more a, section.block.dress-item div.more a {
  font-size: 1.1em;
  line-height: 32px;
  letter-spacing: .05em;
  display: block;
  color: #fff;
  position: relative;
  padding: 0 0 1em;
}
section.block.cuisine div.more a:before, section.block.dress-item div.more a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fff;
}
section.block.cuisine div.more a:after, section.block.dress-item div.more a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 10px;
  position: absolute;
  top: auto;
  bottom: 0;
  right: 1px;
  background-color: #fff;
  -webkit-transform: rotate(-45deg) translateX(-2px);
  transform: rotate(-45deg) translateX(-2px);
}
section.block.access {
  background-color: #f5f4f3;
  letter-spacing: -.4em;
}
section.block.access .address,
section.block.access .map {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  width: 50%;
  position: relative;
}
section.block.access .address {
  padding: 100px 0 100px 16%;
}
section.block.access .address > p {
  font-size: 1.3em;
  line-height: 1.86em;
  letter-spacing: .125em;
  margin: 0 auto 30px;
}
section.block.access .address > p.title-jp {
  font-size: 2.0em;
  letter-spacing: .15em;
  line-height: 1em;
  margin: 0 auto 14px;
}
section.block.access .address > p.title-en {
  font-size: 1.9em;
  line-height: 1em;
  letter-spacing: 0em;
  margin: 0 auto 45px;
}
section.block.access .address .salon {
  border-top: solid 1px #dbc39f;
  border-bottom: solid 1px #dbc39f;
  padding: 15px 0;
  display: inline-block;
}
section.block.access .address .salon p {
  font-size: 1.3em;
  line-height: 1.84em;
  letter-spacing: .15em;
}
section.block.access .address .salon p.title {
  font-size: 1.5em;
  line-height: 1.4em;
  margin: 0 auto 15px;
}
section.block.access .address .salon p.title span {
  display: block;
  font-size: .72em;
}
section.block.access .map {
  background-color: #ddd;
}
section.block.access .map iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
section.block.top-bridal-fair {
  padding: 150px 0 100px 50%;
  position: relative;
}
section.block.top-bridal-fair::after {
  content: '';
  width: 86%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #a5690f;
}
section.block.top-bridal-fair p {
  font-size: 1.5em;
  letter-spacing: .15em;
  line-height: 2.4em;
  margin: -10px auto 25px;
}
section.block.top-bridal-fair p.more {
  font-size: 1.3em;
  margin: 0 auto 55px;
  letter-spacing: .05em;
}
section.block.top-bridal-fair p.more a {
  font-size: 1em;
  position: relative;
  padding: 0 2.4em 8px 0;
}
section.block.top-bridal-fair p.more a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #a5690f;
}
section.block.top-bridal-fair p.more a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 20px;
  position: absolute;
  bottom: 0;
  right: 3px;
  background-color: #a5690f;
  -webkit-transform: rotate(-45deg) translateX(-4px);
  transform: rotate(-45deg) translateX(-4px);
}
section.block.top-bridal-fair p.more a:hover:before {
  width: 115%;
}
section.block.top-bridal-fair p.more a:hover:after {
  right: calc(-15% + 4px);
}
section.block.top-bridal-fair p a {
  font-size: 1.333em;
  color: #a5690f;
}
section.block.top-bridal-fair p span.small {
  font-size: .84em;
  line-height: 1.63em;
  margin: 1em auto 0;
}
section.block.top-bridal-fair p.pagetop {
  z-index: 300;
  line-height: 1em;
  text-align: right;
  padding: 0 50px 0 0;
  margin: 180px 0 0;
}
section.block.top-bridal-fair p.pagetop a {
  width: 20px;
  height: 40px;
  display: inline-block;
  padding: 10px 0 0;
  border-top: solid 1px #999999;
}
section.block.top-bridal-fair p.pagetop a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
section.block.top-bridal-fair ul {
  letter-spacing: -.4em;
  max-width: 560px;
}
section.block.top-bridal-fair ul li {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  width: 48%;
  font-size: 2.0em;
  text-align: center;
}
section.block.top-bridal-fair ul li + li {
  margin: 0 0 0 4%;
}
section.block.top-bridal-fair ul li a {
  display: block;
  line-height: 60px;
  background-color: #c09758;
  border: solid 1px #c09758;
  color: #fff;
  position: relative;
}
section.block.top-bridal-fair ul li a:hover {
  background-color: #eab86a;
}
section.block.top-bridal-fair ul li a:hover:after {
  right: 5%;
}
section.block.top-bridal-fair ul li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 7%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
section.block.contact {
  padding: 150px 0 20px 50%;
}
section.block.contact p {
  font-size: 1.5em;
  letter-spacing: .15em;
  line-height: 2.4em;
  margin: -10px auto 60px;
}
section.block.contact p a {
  font-size: 1.333em;
  color: #a5690f;
}
section.block.contact p span.small {
  font-size: .84em;
  line-height: 1.63em;
  margin: 1em auto 0;
}
section.block.contact p.pagetop {
  z-index: 300;
  line-height: 1em;
  text-align: right;
  padding: 0 50px 0 0;
  margin: 180px 0 0;
}
section.block.contact p.pagetop a {
  width: 20px;
  height: 40px;
  display: inline-block;
  padding: 10px 0 0;
  border-top: solid 1px #999999;
}
section.block.contact p.pagetop a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
section.block.contact ul {
  letter-spacing: -.4em;
  max-width: 560px;
}
section.block.contact ul li {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  min-width: 48%;
  font-size: 2.0em;
  text-align: center;
}
section.block.contact ul li + li {
  margin: 0 0 0 4%;
}
section.block.contact ul li a {
  display: block;
  line-height: 60px;
  background-color: #c09758;
  border: solid 1px #c09758;
  color: #fff;
  position: relative;
  padding: 0 2rem 0 1rem;
}
section.block.contact ul li a:hover {
  background-color: #eab86a;
}
section.block.contact ul li a:hover:after {
  right: 5%;
}
section.block.contact ul li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 7%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
section.block.access, section.block.contact, section.block.top-bridal-fair {
  width: 100%;
  position: relative;
  color: #a5690f;
}
section.block.access h2, section.block.contact h2, section.block.top-bridal-fair h2 {
  font-size: 3.0em;
  letter-spacing: .1em;
  line-height: 1em;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
  border-left: solid 1px #dbc39f;
  padding: 0 0 0 10px;
  position: absolute;
  top: 100px;
  left: 7%;
}
section.main-visual {
  width: 100%;
  height: 100vh;
  position: relative;
}
section.main-visual.wedding-plan {
  height: 580px;
  margin: 0 auto 30px;
}
section.main-visual.wedding-plan:after {
  content: '';
  width: 100%;
  height: 30px;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
}
section.main-visual.party-report {
  height: 580px;
  margin: 0 auto 30px;
}
section.main-visual.party-report:after {
  content: '';
  width: 100%;
  height: 30px;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
}
section.main-visual.qanda {
  height: 580px;
  margin: 0 auto;
}
section.main-visual.bridal-fair {
  height: 580px;
  margin: 0 auto;
}
section.main-visual h2 {
  -webkit-transition: all 3s;
  transition: all 3s;
  font-size: 4.0em;
  line-height: 1.4em;
  letter-spacing: .3em;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
  text-align: center;
  color: #fff;
  z-index: 20;
  opacity: 1;
  filter: alpha(opacity=100);
}
section.main-visual h2.load {
  opacity: 0;
  filter: alpha(opacity=0);
  letter-spacing: .2em;
}
section.main-visual .black {
  -webkit-transition: all 3s;
  transition: all 3s;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 26000;
  visibility: hidden;
  background-color: transparent;
}
section.main-visual .black.load {
  visibility: visible;
  background-color: black;
}
section.main-visual .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.main-visual a {
  -webkit-transition: all .6s;
  transition: all .6s;
  display: block;
  width: 100%;
  padding: 0 0 50px;
  position: absolute;
  bottom: 30px;
  left: 0;
  text-align: center;
  z-index: 10;
  color: #fff;
  font-size: 1.3em;
  font-style: italic;
  line-height: 1em;
  letter-spacing: .25em;
  opacity: 1;
  filter: alpha(opacity=100);
}
section.main-visual a.load {
  opacity: 0;
  filter: alpha(opacity=0);
}
section.main-visual a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
section.main-visual a span {
  position: absolute;
  top: 10px;
  left: 50%;
  width: 16px;
  height: 16px;
  margin-left: -10px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: scrbtn 1.5s infinite;
  animation: scrbtn 1.5s infinite;
  box-sizing: border-box;
}
section.main-copy {
  width: 100%;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
  position: relative;
  text-align: center;
  padding: 90px 0;
}
section.main-copy.nobg {
  background: none;
}
section.main-copy .inner {
  position: relative;
  display: inline-block;
  text-align: left;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
section.main-copy h2 {
  display: inline-block;
/*  font-size: 2.2em !important;*/
  line-height: 1.71em;
  letter-spacing: .2em;
/*  margin: 0 0 0 30px;*/
}
section.main-copy h2 span {
  display: block;
}
section.main-copy h2 span.box {
  display: inline-block;
  line-height: 44px;
  border: solid 1px #000;
  padding: 0 .5em;
/*  margin: 0 0 0 30px;*/
  font-size: .56em;
  letter-spacing: .2em;
margin-bottom: 15px;
}
section.main-copy p {
  font-size: 1.2em;
  line-height: 2.333em;
  letter-spacing: .2em;
/*  margin: 0 0 0 30px;*/
  white-space: nowrap;
}
section.main-copy p:last-child {
  margin: 0;
}
section.main-copy p span {
  display: block;
}
section.main-copy ul.innerlink {
  position: absolute;
  top: 90px;
  left: 5%;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
section.main-copy ul.innerlink li {
  font-size: 1.5em;
  letter-spacing: .1em;
  line-height: 28px;
  text-align: left;
  margin: 0 20px 0 0;
}
section.main-copy ul.innerlink li a {
  display: block;
  position: relative;
  color: #fff;
  height: 100px;
}
section.main-copy ul.innerlink li a:hover {
  height: 110px;
}
section.main-copy ul.innerlink li a:hover:before, section.main-copy ul.innerlink li a:hover:after {
  background-color: white;
}
section.main-copy ul.innerlink li a:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 0;
  left: 0;
}
section.main-copy ul.innerlink li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 1px;
  height: 12px;
  background-color: rgba(255, 255, 255, 0.5);
  position: absolute;
  bottom: 0;
  left: 5px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
section.omotenashi-block {
  width: 100%;
  margin: 0 auto 110px;
  position: relative;
}
section.omotenashi-block:nth-of-type(odd) p.om-copy {
  right: 0;
  text-align: left;
}
section.omotenashi-block:nth-of-type(odd) p.om-copy span.inner {
  position: absolute;
  top: 25px;
  left: 320px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.omotenashi-block:nth-of-type(odd) div.txt {
  float: left;
}
section.omotenashi-block:nth-of-type(odd) div.img {
  float: right;
}
section.omotenashi-block:nth-of-type(even) p.om-copy {
  text-align: right;
  left: 0;
}
section.omotenashi-block:nth-of-type(even) p.om-copy span.inner {
  position: absolute;
  top: 25px;
  right: 300px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.omotenashi-block:nth-of-type(even) div.txt {
  float: right;
}
section.omotenashi-block:nth-of-type(even) div.img {
  float: left;
}
section.omotenashi-block.wp div.img {
  background: url(../img/omotenashi/wp-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block.cp div.img {
  background: url(../img/omotenashi/cp-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block.cc div.img {
  background: url(../img/omotenashi/cc-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block.rcp div.img {
  background: url(../img/omotenashi/rcp-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block.pa div.img {
  background: url(../img/omotenashi/pa-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block.pp div.img {
  background: url(../img/omotenashi/pp-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block.bs div.img {
  background: url(../img/omotenashi/bs-img.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.omotenashi-block h3 {
  font-size: 4.0em;
  font-style: italic;
  letter-spacing: 0.2em;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
  z-index: 200;
}
section.omotenashi-block p.om-copy {
  width: 53%;
  height: 170px;
  font-size: 3.2em;
  letter-spacing: .15em;
  line-height: 1.5em;
  background-color: #fff;
  position: absolute;
  top: 385px;
  z-index: 150;
  position: absolute;
}
section.omotenashi-block p.om-copy span.inner {
  text-align: center;
  display: inline-block;
  white-space: nowrap;
}
section.omotenashi-block p.om-copy span.job {
  display: inline-block;
  font-size: .5em;
  letter-spacing: .15em;
  line-height: 1.4em;
  border-bottom: solid 1px #b98c46;
}
section.omotenashi-block div.key-img {
  width: 100%;
  height: 500px;
  position: relative;
  margin: 0 auto 100px;
}
section.omotenashi-block div.bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
section.omotenashi-block div.bg:after {
  -webkit-transition: all 2s;
  transition: all 2s;
  content: '';
  width: 100%;
  height: 100%;
  background-color: #000;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
section.omotenashi-block div.bg.off:after {
  opacity: 0;
  filter: alpha(opacity=0);
  visibility: hidden;
}
section.omotenashi-block div.more {
  display: none;
}
section.omotenashi-block div.more span {
  position: absolute;
  top: 10px;
  left: 50%;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: scrbtn 1.5s infinite;
  animation: scrbtn 1.5s infinite;
  box-sizing: border-box;
}
section.omotenashi-block div.wrap {
  width: 100%;
  max-width: 1000px;
  *zoom: 1;
  margin: 0 auto;
}
section.omotenashi-block div.wrap:after {
  content: "";
  display: table;
  clear: both;
}
section.omotenashi-block div.wrap div {
  width: 40%;
}
section.omotenashi-block div.wrap div.txt p {
  font-size: 1.4em;
  letter-spacing: .15em;
  line-height: 2.0em;
  text-align: justify;
}
section.omotenashi-block div.wrap div.img {
  width: 48%;
  height: 320px;
}
section.lower {
  width: 100%;
  margin: 70px auto 0;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
  padding: 50px 0;
}
section.lower h2 {
  font-size: 4.0em;
  letter-spacing: .2em;
  line-height: 1em;
  text-align: center;
}
section.overview {
  width: 100%;
  max-width: 1060px;
  margin: 0 auto 90px;
  *zoom: 1;
}
section.overview:after {
  content: "";
  display: table;
  clear: both;
}
section.overview div.txt {
  float: left;
  width: 55%;
}
section.overview div.img {
  float: right;
  width: 38%;
}
section.overview ul.category {
  text-align: left;
  letter-spacing: -.4em;
  margin: 0 auto 30px;
}
section.overview ul.category li {
  display: inline-block;
  letter-spacing: 0em;
  font-size: 1.4em;
  line-height: 26px;
  color: #c11920;
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
  border: solid 1px #c11920;
  padding: 0 .6em;
  margin: 0 .5em 0 0;
}
section.overview h3 {
  font-size: 2.8em;
  line-height: 1.4em;
  margin: 0 auto 25px;
}
section.overview p {
  font-size: 1.5em;
  line-height: 2.0em;
  letter-spacing: .15em;
}
section.overview p.note {
  font-size: 2.0em;
  line-height: 1.76em;
  letter-spacing: 0em;
  font-weight: 700;
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
  margin: 0 auto 5px;
}
section.photo-gallery {
  width: 100%;
  padding: 90px 0 70px;
  background-color: #fff;
}
section.photo-gallery h3 {
  font-size: 3.5em;
  line-height: 1em;
  letter-spacing: .1em;
  color: #a5690f;
  margin: 0 auto 50px;
  text-align: center;
}
section.photo-gallery div.gallery-wrap.pc {
  width: 1210px;
  margin: 0 auto;
  *zoom: 1;
}
section.photo-gallery div.gallery-wrap.pc:after {
  content: "";
  display: table;
  clear: both;
}
section.photo-gallery div.gallery-wrap.pc .item {
  float: left;
  width: 440px;
  margin: 0 25px 45px;
}
section.photo-gallery div.gallery-wrap.pc .item.narrow {
  width: 310px;
}
section.photo-gallery div.gallery-wrap.pc .item.narrow2 {
  width: 406px;
}
section.photo-gallery div.gallery-wrap.pc .item.wide {
  width: 670px;
}
section.photo-gallery div.gallery-wrap.pc .item.wide2 {
  width: 695px;
}
section.photo-gallery div.gallery-wrap.pc .item.half {
  width: 555px;
}
section.photo-gallery div.gallery-wrap.pc .item:nth-child(2), section.photo-gallery div.gallery-wrap.pc .item:nth-child(3), section.photo-gallery div.gallery-wrap.pc .item:nth-child(6), section.photo-gallery div.gallery-wrap.pc .item:nth-child(8), section.photo-gallery div.gallery-wrap.pc .item:nth-child(9), section.photo-gallery div.gallery-wrap.pc .item:nth-child(12) {
  float: right;
}
section.photo-gallery div.gallery-wrap.sp {
  display: none;
}
section.photo-gallery div.gallery-wrap.sp .item {
  float: left;
  width: 45%;
  margin: 0 2.5% 20px;
}
section.photo-gallery div.gallery-wrap.sp .item.wide {
  width: 95%;
}
section.photo-gallery div.more-gallery {
  display: none;
}
section.photo-gallery div.more-gallery.active:after {
  content: 'Close';
}
section.photo-gallery div.more-gallery.active span {
  top: 55px;
  -webkit-animation: scrbtn2 1.5s infinite;
  animation: scrbtn2 1.5s infinite;
}
section.photo-gallery div.more-gallery:after {
  content: 'More';
  position: absolute;
  top: 20px;
  left: 0;
  width: 100%;
  text-align: center;
}
section.photo-gallery div.more-gallery span {
  position: absolute;
  top: 28px;
  left: 50%;
  width: 16px;
  height: 16px;
  margin-left: -8px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-animation: scrbtn 1.5s infinite;
  animation: scrbtn 1.5s infinite;
}
section.qa-block {
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
  width: 100%;
}
section.qa-block h3 {
/*  font-family: "EB Garamond", "Noto Serif SC", Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;*/
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
  padding: 65px 0 35px;
  text-align: center;
  font-size: 2.8em;
  letter-spacing: .15em;
  color: #fff;
}
section.qa-block h3 span {
  display: inline-block;
  width: 100%;
  max-width: 515px;
  padding: 20px 0 5px;
  border: solid 1px rgba(255, 255, 255, 0.6);
  border-bottom: none;
}
section.qa-block > article {
  border-bottom: solid 1px #d5ba90;
}
section.qa-block > article:last-child {
  border: none;
}
section.qa-block > article h4 {
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 2.2em;
  letter-spacing: .15em;
  line-height: 100px;
  background-color: #f5f4f3;
  text-align: center;
  position: relative;
  cursor: pointer;
}
section.qa-block > article h4:hover {
  background-color: #e5e1df;
}
section.qa-block > article h4.active:before {
  content: 'Close';
}
section.qa-block > article h4.active:after {
  top: 50%;
  -webkit-transform: rotate(135deg) translate(50%, -50%);
  transform: rotate(135deg) translate(50%, -50%);
}
section.qa-block > article h4:before {
  font-size: .6em;
  letter-spacing: .05em;
  content: 'More';
  position: absolute;
  top: 40%;
  right: 4.6%;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  color: #b98c46;
}
section.qa-block > article h4:after {
  content: '';
  position: absolute;
  top: 60%;
  right: 4.2%;
  width: 12px;
  height: 12px;
  border-left: 1px solid #b98c46;
  border-bottom: 1px solid #b98c46;
  -webkit-transform: rotate(-45deg) translate(50%, -50%);
  transform: rotate(-45deg) translate(50%, -50%);
}
section.qa-block > article h5 {
  font-size: 1.7em;
  font-weight: 700;
  line-height: 1em;
  padding: 0 0 .5em;
  display: block;
  color: #a5690f;
  border-bottom: solid 1px #d5ba90;
  text-align: left;
  margin: 0 auto 25px;
}
section.qa-block > article div.inner {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 50px 0 80px;
  display: none;
}
section.qa-block > article div.box {
  border: solid 1px #cccccc;
  padding: 25px;
  margin: 0 auto 25px;
}
section.qa-block > article div.box:last-child {
  margin: 0 auto;
}
section.qa-block > article div.map {
  height: 400px;
}
section.qa-block > article div.map iframe {
  width: 100%;
  height: 100%;
}
section.qa-block > article a {
  color: #a5690f;
  border-bottom: solid 1px #a5690f;
}
section.qa-block > article a:hover {
  color: #cc8629;
}
section.qa-block > article a.btm {
  display: inline-block;
  margin: .5em auto 0;
}
section.qa-block > article p {
  font-size: 1.4em;
  line-height: 2.0em;
  margin: 0 auto 35px;
}
section.qa-block > article p:last-child {
  margin: 0 auto;
}
section.qa-block > article p span.note {
  display: block;
  font-size: .92em;
}
section.qa-block > article p span.tel {
  display: block;
  font-size: 1.333em;
  margin: .6em 0 0;
  font-weight: 700;
  color: #a5690f;
}
section.qa-block > article p strong {
  color: #a5690f;
}
section.qa-block > article ol.num {
  margin: 0 auto 35px;
}
section.qa-block > article ol.num:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.num li {
  font-size: 1.4em;
  line-height: 2.0em;
  margin: 0 auto 35px;
  padding: 0 0 0 1.2em;
  position: relative;
  counter-increment: num;
}
section.qa-block > article ol.num li:before {
  content: counter(num) ".";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  color: #a5690f;
}
section.qa-block > article ol.num li:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.circle {
  margin: 0 auto 35px;
}
section.qa-block > article ol.circle:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.circle li {
  font-size: 1.4em;
  line-height: 2.0em;
  margin: 0 auto;
  padding: 0 0 0 1.2em;
  position: relative;
  counter-increment: num;
}
section.qa-block > article ol.circle li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  color: #a5690f;
}
section.qa-block > article ol.circle li:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.ban {
  margin: 0 auto 35px;
}
section.qa-block > article ol.ban:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.ban li {
  font-size: 1.4em;
  line-height: 2.0em;
  margin: 0 auto;
  padding: 0 0 0 1.2em;
  position: relative;
  counter-increment: num;
}
section.qa-block > article ol.ban li:before {
  content: "×";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  color: #a5690f;
}
section.qa-block > article ol.ban li:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.links {
  margin: 0 auto 35px;
}
section.qa-block > article ol.links:last-child {
  margin: 0 auto;
}
section.qa-block > article ol.links li {
  font-size: 1.4em;
  line-height: 2.0em;
  margin: 0 auto .8em;
  position: relative;
  counter-increment: num;
}
section.qa-block > article ol.links li:last-child {
  margin: 0 auto;
}
section.qa-block > article ul.half {
  *zoom: 1;
  margin: 0 auto 35px;
}
section.qa-block > article ul.half:after {
  content: "";
  display: table;
  clear: both;
}
section.qa-block > article ul.half:last-child {
  margin: 0 auto;
}
section.qa-block > article ul.half.img > li:first-child {
  float: right;
  width: 35%;
}
section.qa-block > article ul.half.img > li:last-child {
  float: left;
  width: 45.6%;
}
section.qa-block > article ul.half.access > li:first-child {
  float: right;
  width: 50.8%;
}
section.qa-block > article ul.half.access > li:last-child {
  float: left;
  width: 45.6%;
}
section.qa-block > article ul.half > li:first-child {
  float: left;
  width: 45.6%;
}
section.qa-block > article ul.half > li:last-child {
  float: right;
  width: 45.6%;
}
section.qa-block > article ul.set1 {
  *zoom: 1;
}
section.qa-block > article ul.set1:after {
  content: "";
  display: table;
  clear: both;
}
section.qa-block > article ul.set1:last-child {
  margin: 0 auto;
}
section.qa-block > article ul.set1.right li:first-child {
  float: right;
  width: 26.3%;
}
section.qa-block > article ul.set1.right li:last-child {
  float: left;
  width: 65.7%;
}
section.qa-block > article ul.set1 li:first-child {
  float: left;
  width: 26.3%;
}
section.qa-block > article ul.set1 li:last-child {
  float: right;
  width: 65.7%;
}
section.qa-block > article ul.set2 {
  *zoom: 1;
  margin: 0 auto 80px;
}
section.qa-block > article ul.set2:after {
  content: "";
  display: table;
  clear: both;
}
section.qa-block > article ul.set2:last-child {
  margin: 0 auto;
}
section.qa-block > article ul.set2 li:first-child {
  float: right;
  width: 27.2%;
}
section.qa-block > article ul.set2 li:last-child {
  float: left;
  width: 65.7%;
  padding: 5em 0 0;
}
section.qa-block > article ul.set2 li p {
  font-size: 1.5em;
}
section.qa-block > article article {
  margin: 0 auto 80px;
}
section.qa-block > article article:last-child {
  margin: 0 auto;
}
section.qa-block > article table {
  border: solid 1px #cccccc;
}
section.qa-block > article table thead tr {
  border-bottom: solid 1px #cccccc;
}
section.qa-block > article table thead th {
  padding: 12px 15px;
}
section.qa-block > article table thead th p {
  font-size: 1.7em;
  line-height: 1.76em;
  font-weight: 700;
  color: #a5690f;
}
section.qa-block > article table tbody tr {
  border-bottom: solid 1px #cccccc;
}
section.qa-block > article table tbody tr:last-child {
  border: none;
}
section.qa-block > article table tbody td {
  padding: 8px 15px;
}
section.qa-block > article table tbody td p {
  line-height: 1.76em;
}
section.fair-copy {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 70px 0 100px;
  letter-spacing: -.4em;
}
section.fair-copy div.left {
  display: inline-block;
  vertical-align: middle;
  width: 50%;
  height: 520px;
}
section.fair-copy div.left h3 {
  font-size: 3.0em;
  line-height: 1.8333em;
  letter-spacing: .2em;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
section.fair-copy ul {
  display: inline-block;
  letter-spacing: 0em;
  vertical-align: middle;
  width: 50%;
}
section.fair-copy ul li {
  font-size: 2.0em;
  margin: 0 auto 60px;
  text-align: center;
}
section.fair-copy ul li:last-child {
  margin: 0 auto;
}
section.fair-copy ul li a {
  display: block;
  line-height: 60px;
  background-color: #c09758;
  border: solid 1px #c09758;
  color: #fff;
  position: relative;
}
section.fair-copy ul li a:hover {
  background-color: #eab86a;
}
section.fair-copy ul li a:hover:after {
  right: 5%;
}
section.fair-copy ul li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 7%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
section.fair-about {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 120px 0 180px;
}
section.fair-about div.sec {
  padding: 0 0 80px;
  margin: 0 auto 80px;
  border-bottom: solid 1px #b2b2b2;
  *zoom: 1;
}
section.fair-about div.sec:after {
  content: "";
  display: table;
  clear: both;
}
section.fair-about div.sec:first-child h3 {
  float: right;
}
section.fair-about div.sec:first-child p {
  float: left;
}
section.fair-about div.sec:last-child {
  padding: 0;
  margin: 0 auto;
  border: none;
}
section.fair-about div.sec:last-child h3 {
  float: left;
}
section.fair-about div.sec:last-child p {
  float: right;
}
section.fair-about div.sec h3 {
  font-size: 1.8em;
  letter-spacing: .1em;
  width: 18%;
  text-align: center;
}
section.fair-about div.sec h3 span.vertical {
  display: inline-block;
  border: solid 1px #000;
  padding: 1em 0;
  line-height: 46px;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
section.fair-about div.sec h3 span.adjust {
  -webkit-transform: translateX(-0.24em);
  transform: translateX(-0.24em);
}
section.fair-about div.sec p {
  font-size: 1.5em;
  line-height: 2.0em;
  letter-spacing: .15em;
  width: 82%;
  padding: 2em 0 0;
}
section.flow {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 100px 0;
  text-align: center;
}
section.flow h3 {
  font-size: 2.5em;
  line-height: 1em;
  margin: 0 auto 35px;
}
section.flow h4 {
  font-size: 1.8em;
  line-height: 1.625em;
  letter-spacing: .15em;
  margin: 0 auto 40px;
  color: #a5690f;
}
section.flow ul.flow {
  width: 100%;
  letter-spacing: -.4em;
  border-top: solid 1px #b2b2b2;
  border-bottom: solid 1px #b2b2b2;
  margin: 0 auto 100px;
}
section.flow ul.flow li {
  display: inline-block;
  letter-spacing: 0em;
  width: 26.666%;
  padding: 40px 6.4% 40px 1em;
  position: relative;
  counter-increment: flow;
}
section.flow ul.flow li:last-child {
  width: 20%;
  padding: 40px 1em;
}
section.flow ul.flow li p {
  font-size: 1.3em;
  letter-spacing: .15em;
  line-height: 1.92em;
  margin: 0 auto 15px;
}
section.flow ul.flow li p.title {
  font-size: 2.0em;
  letter-spacing: 0em;
  line-height: 46px;
  border: solid 1px #b2b2b2;
  background-color: #fff;
  position: relative;
  padding: 0 0 0 1em;
}
section.flow ul.flow li p.title:before {
  content: counter(flow);
  position: absolute;
  top: 50%;
  left: .5em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
section.flow ul.flow li p.title:after {
  content: '';
  width: 1px;
  height: 65%;
  position: absolute;
  top: 50%;
  left: 1.5em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #000;
}
section.flow ul.flow li p:last-child {
  margin: 0 auto;
}
section.flow ul.flow li img {
  position: absolute;
  top: 0;
  right: 0;
  width: auto;
  height: 100%;
}
section.flow ul.links {
  width: 100%;
  max-width: 840px;
  letter-spacing: -.4em;
  margin: 0 auto;
}
section.flow ul.links li {
  display: inline-block;
  letter-spacing: 0em;
  width: 47.6%;
  font-size: 2.0em;
}
section.flow ul.links li:last-child {
  margin: 0 0 0 4.8%;
}
section.flow ul.links li a {
  display: block;
  line-height: 60px;
  background-color: #c09758;
  border: solid 1px #c09758;
  color: #fff;
  position: relative;
}
section.flow ul.links li a:hover {
  background-color: #eab86a;
}
section.flow ul.links li a:hover:after {
  right: 5%;
}
section.flow ul.links li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 7%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
section.contact-sub {
  width: 100%;
  position: relative;
  color: #a5690f;
  padding: 100px 0 20px 50%;
}
section.contact-sub h2 {
  font-size: 3.0em;
  letter-spacing: .1em;
  line-height: 1em;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
  border-left: solid 1px #dbc39f;
  padding: 0 0 0 10px;
  position: absolute;
  top: 100px;
  left: 7%;
}
section.contact-sub p {
  font-size: 1.5em;
  letter-spacing: .15em;
  line-height: 2.4em;
  margin: -10px auto 60px;
}
section.contact-sub p a {
  font-size: 1.333em;
  color: #a5690f;
}
section.contact-sub p span.small {
  font-size: .84em;
  line-height: 1.63em;
  margin: 1em auto 0;
}
section.contact-sub p.pagetop {
  z-index: 300;
  line-height: 1em;
  text-align: right;
  padding: 0 50px 0 0;
  margin: 80px 0 0;
}
section.contact-sub p.pagetop a {
  width: 20px;
  height: 40px;
  display: inline-block;
  padding: 10px 0 0;
  border-top: solid 1px #999999;
}
section.contact-sub p.pagetop a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
section.contact-sub ul {
  letter-spacing: -.4em;
  max-width: 560px;
}
section.contact-sub ul li {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  width: 48%;
  font-size: 2.0em;
  text-align: center;
}
section.contact-sub ul li:last-child {
  margin: 0 0 0 4%;
}
section.contact-sub ul li a {
  display: block;
  line-height: 60px;
  background-color: #c09758;
  border: solid 1px #c09758;
  color: #fff;
  position: relative;
}
section.contact-sub ul li a:hover {
  background-color: #eab86a;
}
section.contact-sub ul li a:hover:after {
  right: 5%;
}
section.contact-sub ul li a:after {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 7%;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
section.place-block {
  width: 100%;
  text-align: center;
}
section.place-block h3 {
  font-size: 3.5em;
  line-height: 1em;
  letter-spacing: .1em;
  padding: 40px 0;
  color: #a5690f;
  background-color: #f5f4f3;
}
section.place-block h3 span {
  display: inline-block;
  border-bottom: solid 1px #a5690f;
  padding: 0 0 15px;
}
section.place-block div.set {
  padding: 0 0 30px;
}
section.place-block div.set.chapel {
  padding: 0;
}
section.place-block div.set.chapel .spwrap {
  height: 2680px;
  position: relative;
}
section.place-block div.set.chapel .spwrap table {
  position: absolute;
  top: 2080px;
  right: 21.875%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.chapel .spwrap p {
  font-size: 1.3em;
  letter-spacing: .15em;
  line-height: 2.15em;
  text-align: left;
}
section.place-block div.set.chapel .spwrap .txt1 {
  position: absolute;
  top: 160px;
  right: 32.42%;
  max-width: 395px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.chapel .spwrap .txt2 {
  position: absolute;
  top: 1294px;
  left: 34.68%;
  max-width: 486px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.chapel .spwrap .img {
  position: absolute;
}
section.place-block div.set.chapel .spwrap .img1 {
  top: 0;
  left: 26.25%;
  width: 440px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.chapel .spwrap .img2 {
  top: 708px;
  left: 31%;
  width: 330px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.chapel .spwrap .img3 {
  top: 340px;
  right: 29.3%;
  width: 584px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.chapel .spwrap .img4 {
  top: 830px;
  right: 37.5%;
  width: 378px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.chapel .spwrap .img5 {
  top: 1150px;
  right: 21.25%;
  width: 380px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.chapel .spwrap .img6 {
  top: 1500px;
  right: 36.32%;
  width: 600px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.chapel .spwrap .img7 {
  top: 1968px;
  left: 31.25%;
  width: 600px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.chapel .spwrap .img8 {
  top: 1700px;
  left: 19.2%;
  width: 300px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.chapel .spwrap .img9 {
  top: 2423px;
  left: 39.8%;
  width: 368px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.chapel .main-img {
  background: url(../img/special-place/chapel-main.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.place-block div.set.banquet-gb .main-img {
  background: url(../img/special-place/banquet-gb-main.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.place-block div.set.banquet-gb .spwrap {
  height: 3300px;
  position: relative;
}
section.place-block div.set.banquet-gb .spwrap table {
  position: absolute;
  top: 2813px;
  left: 35.78%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gb .spwrap p {
  font-size: 1.3em;
  letter-spacing: .15em;
  line-height: 2.15em;
  text-align: left;
}
section.place-block div.set.banquet-gb .spwrap .txt1 {
  position: absolute;
  top: 748px;
  right: 41.85%;
  max-width: 317px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gb .spwrap .txt2 {
  position: absolute;
  top: 1960px;
  right: 15.9%;
  max-width: 214px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gb .spwrap .img {
  position: absolute;
}
section.place-block div.set.banquet-gb .spwrap .img1 {
  top: 0;
  left: 50%;
  width: 1068px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gb .spwrap .img2 {
  top: 910px;
  right: 30.7%;
  width: 600px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gb .spwrap .img3 {
  top: 1120px;
  left: 24.8%;
  width: 400px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gb .spwrap .img4 {
  top: 1358px;
  right: 35.1%;
  width: 480px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gb .spwrap .img5 {
  top: 754px;
  left: 32%;
  width: 210px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gb .spwrap .img6 {
  top: 1776px;
  left: 35.93%;
  width: 920px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gb .spwrap .img7 {
  top: 2465px;
  right: 23.4%;
  width: 428px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gb .spwrap .img8 {
  top: 2465px;
  left: 23.4%;
  width: 450px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gb .spwrap .img9 {
  top: 3030px;
  left: 35.78%;
  width: 370px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gr .main-img {
  background: url(../img/special-place/banquet-gr-main.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.place-block div.set.banquet-gr .spwrap {
  height: 2560px;
  position: relative;
}
section.place-block div.set.banquet-gr .spwrap table {
  position: absolute;
  top: 2272px;
  left: 22.34%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gr .spwrap p {
  font-size: 1.3em;
  letter-spacing: .15em;
  line-height: 2.15em;
  text-align: left;
}
section.place-block div.set.banquet-gr .spwrap .txt1 {
  position: absolute;
  top: 690px;
  right: 17.5%;
  max-width: 280px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gr .spwrap .txt2 {
  position: absolute;
  top: 1994px;
  right: 36.7%;
  max-width: 500px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gr .spwrap .img {
  position: absolute;
}
section.place-block div.set.banquet-gr .spwrap .img1 {
  top: 0;
  left: 50%;
  width: 990px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gr .spwrap .img2 {
  top: 808px;
  right: 14.37%;
  width: 365px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gr .spwrap .img3 {
  top: 704px;
  left: 39%;
  width: 682px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gr .spwrap .img4 {
  top: 1360px;
  right: 36.3%;
  width: 924px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gr .spwrap .img5 {
  top: 1660px;
  left: 12.18%;
  width: 306px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gr .spwrap .img6 {
  top: 2136px;
  right: 31.56%;
  width: 635px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gr .spwrap .img7 {
  top: 2465px;
  right: 23.4%;
  width: 428px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-gr .spwrap .img8 {
  top: 2465px;
  left: 23.4%;
  width: 450px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-gr .spwrap .img9 {
  top: 3030px;
  left: 35.78%;
  width: 370px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-vr {
  padding: 0;
}
section.place-block div.set.banquet-vr .main-img {
  background: url(../img/special-place/banquet-vr-main.jpg) 50% 50% no-repeat;
  background-size: cover;
}
section.place-block div.set.banquet-vr .spwrap {
  height: 2224px;
  position: relative;
}
section.place-block div.set.banquet-vr .spwrap table {
  position: absolute;
  top: 1388px;
  right: 32.42%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-vr .spwrap .img {
  position: absolute;
}
section.place-block div.set.banquet-vr .spwrap .img1 {
  top: 0;
  left: 50%;
  width: 1118px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-vr .spwrap .img2 {
  top: 614px;
  right: 25.78%;
  width: 508px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-vr .spwrap .img3 {
  top: 768px;
  left: 23.75%;
  width: 600px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-vr .spwrap .img4 {
  top: 994px;
  right: 25.78%;
  width: 508px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.set.banquet-vr .spwrap .img5 {
  top: 1293px;
  left: 27.34%;
  width: 514px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.place-block div.set.banquet-vr .spwrap .img6 {
  top: 1814px;
  right: 16.7%;
  width: 418px;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
section.place-block div.imgarea {
  width: 100%;
  height: 550px;
  position: relative;
}
section.place-block div.imgarea h4 {
  display: inline-block;
  width: 416px;
  padding: 20px 0;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  font-size: 4.0em;
  line-height: 1.1em;
  letter-spacing: .1em;
  z-index: 100;
}
section.place-block div.imgarea h4 span {
  display: block;
  font-size: .4em;
}
section.place-block div.imgarea div.main-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
section.place-block div.imgarea div.more-pc {
  -webkit-transition: all .3s;
  transition: all .3s;
  display: inline-block;
  width: 74px;
  height: 74px;
  background-color: #c7a36b;
  color: #fff;
  font-size: 1.3em;
  letter-spacing: .05em;
  line-height: 1em;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  cursor: pointer;
}
section.place-block div.imgarea div.more-pc:hover {
  background-color: #eab86a;
}
section.place-block div.imgarea div.more-pc.active:after {
  content: 'Close';
}
section.place-block div.imgarea div.more-pc.active span {
  top: 55px;
  -webkit-animation: scrbtn2 1.5s infinite;
  animation: scrbtn2 1.5s infinite;
}
section.place-block div.imgarea div.more-pc:after {
  content: 'More';
  position: absolute;
  top: 20px;
  left: 0;
  width: 100%;
  text-align: center;
}
section.place-block div.imgarea div.more-pc span {
  position: absolute;
  top: 28px;
  left: 50%;
  width: 16px;
  height: 16px;
  margin-left: -8px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-animation: scrbtn 1.5s infinite;
  animation: scrbtn 1.5s infinite;
}
section.place-block div.inner {
  display: none;
  width: 100%;
  padding: 90px 0 20px;
  background-color: #fff;
}
section.place-block div.inner > p:not(.pagetop) {
  font-size: 1.5em;
  letter-spacing: .15em;
  line-height: 2.0;
  margin: 0 auto 65px;
}
section.place-block div.inner div.more-sp {
  display: none;
}
section.place-block div.inner div.more-sp.active:after {
  content: 'Close';
}
section.place-block div.inner div.more-sp.active span {
  top: 55px;
  -webkit-animation: scrbtn2 1.5s infinite;
  animation: scrbtn2 1.5s infinite;
}
section.place-block div.inner div.more-sp:after {
  content: 'More';
  position: absolute;
  top: 20px;
  left: 0;
  width: 100%;
  text-align: center;
}
section.place-block div.inner div.more-sp span {
  position: absolute;
  top: 28px;
  left: 50%;
  width: 16px;
  height: 16px;
  margin-left: -8px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-animation: scrbtn 1.5s infinite;
  animation: scrbtn 1.5s infinite;
}
section.place-block div.inner div.spwrap {
  display: block;
}
section.place-block table {
  width: 100%;
  max-width: 370px;
}
section.place-block table tr {
  border-bottom: solid 1px #ede1cf;
}
section.place-block table tr:last-child {
  border: none;
}
section.place-block table tr th, section.place-block table tr td {
  font-size: 1.3em;
  font-weight: 400;
  line-height: 1.53em;
  text-align: left;
  padding: 10px 0;
  color: #a5690f;
  vertical-align: top;
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
}
section.place-block table tr th {
  min-width: 100px;
  background-color: #fff;
  font-weight: 700;
}
section.particular {
  width: 100%;
  background-color: #f5f4f3;
  padding: 80px 0 90px;
  text-align: center;
  position: relative;
}
section.particular h3 {
  font-size: 2.0em;
  line-height: 1.4em;
  color: #c11920;
  letter-spacing: .15em;
  margin: 0 auto 70px;
}
section.particular div.inner {
/*  display: inline-block;*/
  text-align: left;
    margin: 0 auto;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
}
@media screen and (min-width: 768px) {
    section.particular div.inner {
      max-height: 650px;
      display: flex;
      flex-direction: row;
        width: 1200px;
    }
    section.particular article {
        width: 25%;
    }
}
section.particular article {
  display: inline-block;
  text-align: left;
  position: relative;
  padding: 250px 2.5% 0;
  counter-increment: particular;
}
section.particular article:nth-child(even) {
  padding: 350px 2.5% 0;
}
section.particular article:nth-child(even) div.thumb {
  top: 100px;
}
section.particular article h4 {
  font-size: 1.4em;
  letter-spacing: .2em;
  line-height: 1.75em;
/*  margin: 0 0 0 12px;*/
  position: relative;
  white-space: nowrap;
}
section.particular article h4:before {
  content: counter(particular);
  position: absolute;
  top: -48px;
  left: 4.5%;
/*
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: rotate(-90deg) translate(-10%, -60%);
  transform: rotate(-90deg) translate(-10%, -60%);
*/
  font-size: 1.25em;
  line-height: 1em;
  color: #c11920;
}
section.particular article h4:after {
  content: '';
  width: 15%;
  height: 1px;
  background-color: #c11920;
  position: absolute;
  top: -12px;
  left: 0;
}
section.particular article p {
/*  font-size: 1.3em;*/
  line-height: 1.84em;
  letter-spacing: .15em;
  height: 255px;
}
section.particular article div.thumb {
  width: 214px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -107px;
}
section.grand-chef {
  width: 100%;
  padding: 75px 7%;
  background: url(../img/cuisine/bg.jpg) 50% 50% repeat;
/*    background-color: #f4f4f4;*/
}
section.grand-chef div.inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
section.grand-chef div.intro {
  letter-spacing: -.4em;
  text-align: left;
  margin: 0 0 90px 0;
  *zoom: 1;
  max-width: 770px;
}
section.grand-chef div.intro:after {
  content: "";
  display: table;
  clear: both;
}
section.grand-chef div.intro h3 {
  display: inline-block;
  font-size: 1.3em;
  letter-spacing: .1em;
  line-height: 1em;
  padding: 0 0 12px;
  border-bottom: solid 1px #000;
  margin: .5em auto 40px;
}
section.grand-chef div.intro p {
  font-size: 1em;
  letter-spacing: .15em;
  line-height: 1.92em;
  color: #fff;
}
section.grand-chef div.intro p.name {
  font-size: 2.0em;
  line-height: 1.4em;
  letter-spacing: .25em;
  margin: 0 auto 35px;
}
section.grand-chef div.intro p.name span {
  font-size: .666em;
  letter-spacing: 0em;
  margin: 0 0 0 .6em;
  font-style: italic;
}
section.grand-chef div.intro .pht {
  float: left;
  width: 295px;
  margin: 0 60px 0 0;
}
section.grand-chef section.hope {
  width: 100%;
  height: 440px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
section.grand-chef section.hope h4 {
  display: inline-block;
  font-size: 1em;
  letter-spacing: .2em;
  padding: 0 0 .5em;
  border-left: solid 1px #000;
  margin: 0 0 0 15px;
}
section.grand-chef section.hope p {
/*  font-size: 1.3em;*/
  line-height: 2.38em;
  letter-spacing: .2em;
  height: 430px;
}
section.grand-chef section.hope p.copy {
  font-size: 1.6em;
  letter-spacing: .2em;
  line-height: 1.666em;
  margin: 0 0 0 30px;
}
section.prefix {
  width: 100%;
  padding: 65px 0 0;
  text-align: center;
}
section.prefix h3 {
  font-size: 1.8em;
  letter-spacing: .15em;
  line-height: 1.4em;
  margin: 0 auto 25px;
  color: #c11920;
}
section.prefix p {
/*  font-size: 1.3em;*/
  line-height: 2.0em;
  letter-spacing: .15em;
  margin: 0 auto 60px;
}
section.prefix ul {
  letter-spacing: -.4em;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
section.prefix ul li {
  display: inline-block;
  width: 23%;
  margin: 0 1% 30px;
    padding-left: 0;
}
section.article-wrapper {
  width: 100%;
  text-align: center;
}
section.article-wrapper h3 {
  font-size: 3.6em;
  line-height: 1.666em;
  letter-spacing: .15em;
  position: relative;
  padding: 0 0 25px;
  margin: 0 auto 35px;
}
section.article-wrapper h3:after {
  content: '';
  width: 100px;
  height: 1px;
  background-color: #b2b2b2;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
section.article-wrapper > p {
  font-size: 1.6em;
  line-height: 1.875em;
  letter-spacing: .15em;
}
section.article-wrapper > p.category {
  font-size: 1.5em;
  letter-spacing: .1em;
  margin: 0 auto 20px;
}
section.article-wrapper div.ar-gallery {
  margin: 80px auto 0;
  width: 1210px;
  *zoom: 1;
}
section.article-wrapper div.ar-gallery:after {
  content: "";
  display: table;
  clear: both;
}
section.article-wrapper div.ar-gallery .grid-sizer {
  width: 400px;
}
section.article-wrapper div.ar-gallery .item {
  float: left;
  width: 350px;
  height: 230px;
  margin: 0 25px 50px;
}
section.article-wrapper div.ar-gallery .item.wide {
  width: 750px;
  height: 510px;
}
section.article-wrapper div.ar-gallery .item.horizon {
  width: 350px;
  height: 510px;
}
section.article-wrapper div.ar-gallery .item .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.article-wrapper article {
  margin: 100px auto 0;
  width: 100%;
  max-width: 920px;
  padding: 40px 65px;
  background-color: #fff;
  text-align: center;
  position: relative;
}
section.article-wrapper article h4 {
  font-size: 1.6em;
  letter-spacing: .1em;
  line-height: 36px;
  border: solid 1px #000;
  padding: 0 1em;
  margin: 0 auto 60px;
  display: inline-block;
}
section.article-wrapper article p {
  font-size: 1.3em;
  letter-spacing: .15em;
  line-height: 2.3em;
  text-align: left;
  margin: 0 auto 35px;
}
section.article-wrapper article p:last-child {
  margin: 0 auto;
}
section.article-wrapper article p.author {
  text-align: center;
  font-size: 1.6em;
}
section.article-wrapper ul {
  letter-spacing: -.4em;
  text-align: center;
  margin: 180px auto 0;
}
section.article-wrapper ul li {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.5em;
  letter-spacing: .05em;
  text-align: center;
}
section.article-wrapper ul li a {
  display: block;
  line-height: 20px;
  padding: 0 30px;
  position: relative;
}
section.article-wrapper ul li a.prev {
  border-right: solid 1px #cccccc;
}
section.article-wrapper ul li a.prev:hover:before {
  left: -4%;
}
section.article-wrapper ul li a.prev:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 16px;
  height: 16px;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
}
section.article-wrapper ul li a.next {
  border-left: solid 1px #cccccc;
}
section.article-wrapper ul li a.next:hover:before {
  right: -4%;
}
section.article-wrapper ul li a.next:before {
  -webkit-transition: all .3s;
  transition: all .3s;
  content: '';
  width: 16px;
  height: 16px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}

section.restaurant {
/*
  width: 100%;
  padding: 75px 7%;
*/
    width: 100%;
    max-width: 1200px;
    margin: 80px auto 0;
    padding: 0 1%;;
}
.restaurant h3 {
    font-size: 1.5em;
}

section.sp-footer {
  display: none;
}
section.sp-footer ul li:last-child {
  margin: 0 auto;
}
section.sp-footer ul li a {
  display: block;
  color: #fff;
}

div.plan-list {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  *zoom: 1;
}
div.plan-list:after {
  content: "";
  display: table;
  clear: both;
}
div.plan-list article {
  float: left;
  width: 30%;
  margin: 0 auto 100px;
  position: relative;
}
div.plan-list article:nth-child(3n-1) {
  margin: 0 5% 100px;
}
div.plan-list article:nth-child(3n+1) {
	clear:both;
}
div.plan-list article h3 {
  font-size: 2.0em;
  line-height: 1.4em;
}
div.plan-list article h3 a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
div.plan-list article p.date {
  font-size: 1.5em;
  letter-spacing: .1em;
  line-height: 1em;
  margin: 0 auto 14px;
}
div.plan-list article p.note {
  font-size: 1.4em;
  line-height: 1.76em;
  font-weight: 700;
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
  margin: 0 auto 5px;
}
div.plan-list article a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
div.plan-list article div.thumb {
  margin: 0 auto 10px;
  position: relative;
  overflow: hidden;
}
div.plan-list article div.thumb .inner {
  width: 100%;
  height: 100%;
}
div.plan-list article div.thumb .inner:after {
  -webkit-transition: all 2s;
  transition: all 2s;
  content: '';
  width: 100%;
  height: 100%;
  background-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
}
div.plan-list article div.thumb .inner.on:after {
  background-color: rgba(0, 0, 0, 0.3);
}
div.plan-list article div.thumb .inner.on img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
div.plan-list article div.thumb img {
  -webkit-transition: all 2s;
  transition: all 2s;
  -webkit-transform: scale(1);
  transform: scale(1);
}
div.plan-list article ul.category {
  text-align: left;
  letter-spacing: -.4em;
  margin: 0 auto 5px;
}
div.plan-list article ul.category li {
  display: inline-block;
  letter-spacing: 0em;
  font-size: 1.4em;
  line-height: 1.76em;
  color: #c11920;
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
}
div.plan-list article ul.category li:after {
  content: '|';
  display: inline-block;
  margin: 0 .6em;
}
div.plan-list article ul.category li:last-child:after {
  content: none;
}
div.dress-item-list {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  *zoom: 1;
  padding: 120px 0 0;
}
div.dress-item-list:after {
  content: "";
  display: table;
  clear: both;
}
div.dress-item-list article {
  float: left;
  width: 41.6%;
  margin: 0 4.2% 85px;
  counter-increment: itemnum;
  text-align: center;
}
div.dress-item-list article h3 {
  display: inline-block;
  font-size: 4.0em;
  font-style: italic;
  letter-spacing: .05em;
  line-height: 1em;
  color: #a5690f;
  position: relative;
  margin: 0 auto 20px;
}
div.dress-item-list article h3:after {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  width: 1px;
  height: 38px;
  background-color: #a5690f;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
div.dress-item-list article h3:before {
  content: "0" counter(itemnum);
  position: absolute;
  top: -30px;
  left: -1.6em;
  font-size: .375em;
}
div.dress-item-list article p {
  font-size: 1.3em;
  letter-spacing: .15em;
  text-align: left;
  line-height: 1.92em;
  padding: 0 8%;
}
div.dress-item-list article figure {
  width: 100%;
  margin: 0 auto 40px;
}
div.dress-item-list div.stamp {
  width: 40%;
  height: 220px;
  position: absolute;
  top: 0;
  right: 0;
}
div.ar-visual {
  width: 100%;
  max-width: 1130px;
  height: 560px;
  margin: 0 auto 75px;
}
div.pr-list {
  width: 100%;
  max-width: 1130px;
  *zoom: 1;
  margin: 0 auto;
}
div.pr-list:after {
  content: "";
  display: table;
  clear: both;
}
div.pr-list.archive article:first-of-type {
  width: 45%;
  text-align: left;
  margin: 0 0 60px !important;
}
div.pr-list.archive article:first-of-type h3 {
  font-size: 2.8em;
}
div.pr-list.archive article:first-of-type p.date span {
  display: inline-block;
  margin: 0 0 0 1em;
}
div.pr-list.archive article:first-of-type div.thumb {
  height: 325px;
  margin: 0 auto 10px;
  position: relative;
  overflow: hidden;
}
div.pr-list.archive article:nth-of-type(2n+1) {
  margin: 0 0 60px;
}
div.pr-list.archive article:nth-of-type(2n) {
  margin: 0 0 60px 10%;
}
div.pr-list article {
  float: left;
  width: 45%;
  margin: 0 0 60px;
  text-align: left;
  position: relative;
}
div.pr-list article:first-of-type {
  width: 100%;
  text-align: center;
  margin: 0 0 60px !important;
}
div.pr-list article:first-of-type h3 {
  font-size: 3.6em;
}
div.pr-list article:first-of-type div.thumb {
  height: 560px;
  margin: 0 auto 25px;
}
div.pr-list article:nth-of-type(2n+1) {
  margin: 0 0 60px 10%;
}
div.pr-list article h3 {
  font-size: 2.8em;
  letter-spacing: .15em;
  line-height: 1.6em;
}
div.pr-list article p.date {
  font-size: 1.7em;
  line-height: 1.6em;
  letter-spacing: .1em;
  margin: 0 auto 20px;
}
div.pr-list article p.date span {
  display: inline-block;
  margin: 0 0 0 1em;
}
div.pr-list article p.category {
  font-size: 1.5em;
  line-height: 1.6em;
  letter-spacing: .1em;
}
div.pr-list article div.thumb {
  height: 325px;
  margin: 0 auto 10px;
  position: relative;
  overflow: hidden;
}
div.pr-list article div.thumb .inner {
  -webkit-transition: all 3s;
  transition: all 3s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(1);
  transform: scale(1);
}
div.pr-list article div.thumb .inner:after {
  -webkit-transition: all 3s;
  transition: all 3s;
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
  width: 100%;
  height: 100%;
}
div.pr-list article div.thumb .inner.on {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
div.pr-list article div.thumb .inner.on:after {
  background-color: rgba(0, 0, 0, 0.3);
}
div.pr-list article a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0 auto;
  width: 100%;
}
table.plan {
  width: 100%;
  max-width: 1060px;
  margin: 0 auto 90px;
  border-top: solid 1px #b2b2b2;
}
table.plan > tbody > tr {
  border-bottom: solid 1px #b2b2b2;
}
table.plan > tbody > tr > th, table.plan > tbody > tr > td {
/*  font-family: "Karla", "Gothic", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;*/
  font-size: 1.5em;
  line-height: 2.0em;
  padding: 15px 30px;
  vertical-align: top;
}
table.plan > tbody > tr > th {
  white-space: nowrap;
  font-weight: 700;
  border-right: solid 1px #b2b2b2;
}
table.plan > tbody > tr > td.nopdd {
  padding: 0;
}
table.plan > tbody > tr > td table tr {
  border-bottom: solid 1px #b2b2b2;
}
table.plan > tbody > tr > td table tr th, table.plan > tbody > tr > td table tr td {
  font-size: .9em;
  text-align: left;
  padding: 15px 30px;
}
table.plan > tbody > tr > td table tr th,
td.nopdd > table > tbody > tr > td:nth-child(1) {
  font-weight: 700;
  background-color: #edebe9;
}



p.pagetop {
  width: 100%;
  text-align: right;
  padding: 0 4%;
  margin: 150px auto 0;
}
p.pagetop a {
  width: 20px;
  height: 40px;
  display: inline-block;
  padding: 10px 0 0;
  border-top: solid 1px #999999;
}
p.pagetop a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

ul.side-nav {
  -webkit-transition: all .6s;
  transition: all .6s;
  position: fixed;
  top: 35%;
  right: -1px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 18000;
/*
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
*/
  opacity: 1;
  filter: alpha(opacity=100);
}
ul.side-nav.load {
  opacity: 0;
  filter: alpha(opacity=0);
}
ul.side-nav li {
  display: inline-block;
  vertical-align: top;
  margin: 0 0 16px;
  font-size: 1.5em;
  letter-spacing: .1em;
  line-height: 1em;
}
ul.side-nav li:first-child a {
  -webkit-animation: blink 4s infinite;
  animation: blink 4s infinite;
}
ul.side-nav li:first-child a:hover {
  -webkit-animation: none;
  animation: none;
}
ul.side-nav li:last-child {
  margin: 0;
}
ul.side-nav li a {
  -webkit-transition: all .3s;
  transition: all .3s;
  display: block;
  min-height: 100px;
  padding: 10px 0;
  border: solid 1px #c09758;
  background-color: #c09758;
  text-align: center;
  line-height: 34px;
}
ul.side-nav li a:hover {
  line-height: 46px;
  background-color: #eab86a;
}
ul.sp-nav {
  display: none;
}
ul.sp-nav.load {
  opacity: 0;
  filter: alpha(opacity=0);
}
ul.sp-nav li {
  float: left;
  height: 48px;
  position: relative;
}
ul.sp-nav li:first-child {
  width: 32%;
}
ul.sp-nav li:first-child a {
  background-color: #c09758;
}
ul.sp-nav li:first-child img {
  width: 80px;
}
ul.sp-nav li:nth-child(2) {
  width: 23%;
}
ul.sp-nav li:nth-child(2) img {
  width: 50px;
}
ul.sp-nav li:last-child {
  width: 45%;
  border-left: solid 1px #c09758;
}
ul.sp-nav li:last-child img {
  width: 120px;
}
ul.sp-nav li a {
  display: block;
  background-color: #e1e1dc;
  width: 100%;
  height: 48px;
  position: relative;
}
ul.sp-nav li a img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

footer {
  width: 100%;
  background-color: #e1e1dc;
  padding: 95px 6.5% 25px;
  position: relative;
}
/*
footer h2 {
  font-size: 1.5em;
  line-height: 1em;
  letter-spacing: .125em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position: absolute;
  top: 95px;
  left: 6.5%;
  white-space: nowrap;
}
*/
footer p.copyright {
  /*font-size: 1.3em;*/
  font-size: 13px;        
  color: #787878;
}
footer p.copyright span {
  display: inline-block;
}
footer p.copyright a {
  display: inline-block;
  color: #222;
  margin: 0 0 0 2em;
}
footer p.copyright a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}
footer ul.footer-nav {
  margin: 0 0 110px 70px;
  border-left: solid 1px #fff;
  letter-spacing: -.4em;
  padding: 0 0 0 4.5%;
}
footer ul.footer-nav li {
  letter-spacing: 0em;
  display: inline-block;
  vertical-align: top;
  width: 36%;
}
footer ul.footer-nav li:first-child {
  width: 28%;
}
footer ul.footer-nav li p {
  font-size: 1.3em;
  line-height: 2.0em;
  margin: 0 auto 30px;
  position: relative;
  padding: 0 0 0 3.5em;
}
footer ul.footer-nav li p:before {
  content: '';
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 2.0) * 0.5em);
}
footer ul.footer-nav li p:last-child {
  margin: 0 auto;
}
footer ul.footer-nav li p span {
  position: absolute;
  top: 0;
  left: 0;
}
footer ul.footer-nav li p a {
  display: block;
}
footer ul.footer-nav li p a:last-child:after {
  content: none;
}
footer ul.footer-nav li p a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.spOnly {
  display: none !important;
}

.pcOnly {
  display: inline-block !important;
}

.fade-action,
.fade-action-left,
.fade-action-right {
  opacity: 0;
  filter: alpha(opacity=0);
}

.combine {
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
}

#loader {
  -webkit-transition: all .6s;
  transition: all .6s;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 32000;
  background-color: #000;
  opacity: 1;
  filter: alpha(opacity=100);
  visibility: visible;
}

#loader.fadeout {
  opacity: 0;
  filter: alpha(opacity=0);
  visibility: hidden;
}

.spinner {
  width: 50px;
  height: 60px;
  text-align: center;
  font-size: 10px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.spinner > div {
  background-color: rgba(255, 255, 255, 0.5);
  height: 100%;
  width: 1px;
  display: inline-block;
  margin: 0 1px;
  -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
}

.spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.spinner .rect3 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

.spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% {
    -webkit-transform: scaleY(0.4);
  }
  20% {
    -webkit-transform: scaleY(1);
  }
}
@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1);
  }
}
@-webkit-keyframes scrbtn {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-45deg) translate(-10px, 10px);
    opacity: 0;
  }
}
@keyframes scrbtn {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
            transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-45deg) translate(-10px, 10px);
            transform: rotate(-45deg) translate(-10px, 10px);
    opacity: 0;
  }
}
@-webkit-keyframes scrbtn2 {
  0% {
    -webkit-transform: rotate(135deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(135deg) translate(-10px, 10px);
    opacity: 0;
  }
}
@keyframes scrbtn2 {
  0% {
    -webkit-transform: rotate(135deg) translate(0, 0);
            transform: rotate(135deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(135deg) translate(-10px, 10px);
            transform: rotate(135deg) translate(-10px, 10px);
    opacity: 0;
  }
}
@-webkit-keyframes blink {
  0% {
    background-color: #c09758;
  }
  30% {
    background-color: #eab86a;
  }
  60% {
    background-color: #c09758;
  }
}
@keyframes blink {
  0% {
    background-color: #c09758;
  }
  30% {
    background-color: #eab86a;
  }
  60% {
    background-color: #c09758;
  }
}
.animated {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate(100px, 0);
    transform: translate(100px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate(100px, 0);
    transform: translate(100px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate(-100px, 0);
    transform: translate(-100px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate(-100px, 0);
    transform: translate(-100px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.scaleUp {
  -webkit-animation-name: scaleUp;
  animation-name: scaleUp;
}

@-webkit-keyframes scaleUp {
  from {
    opacity: 0;
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes scaleUp {
  from {
    opacity: 0;
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@media only screen and (max-width: 640px) {
  .menu-trigger {
    display: block;
    z-index: 30000;
  }

  body {
    min-width: initial;
  }

  main.plan-list {
    padding: 40px 7.8% 15px;
  }
  main.lower {
    padding: 30px 7.8% 15px;
  }
  main.lower ul.links {
    width: 90%;
    margin: 0 auto 60px;
  }
  main.lower ul.links li {
    width: 100%;
    font-size: 1.4em;
    margin: 0 auto 20px;
  }
  main.lower ul.links li:nth-child(2) {
    margin: 0 auto 20px;
  }
  main.lower ul.links li a {
    line-height: 38px;
  }
  main.qanda ul.qa-nav {
    padding: 5px 7.8%;
  }
  main.qanda ul.qa-nav li {
    width: 100%;
    display: block;
    font-size: 1.4em;
    border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  }
  main.qanda ul.qa-nav li:last-child {
    width: 100%;
    border: none;
  }
  main.qanda ul.qa-nav li a {
    line-height: 45px;
    padding: 0;
  }
  main.qanda ul.qa-nav li a span {
    border: none;
  }
  main.cuisine div.img-area {
    height: 200px;
  }
  main.dress-item div.img-area {
    height: 200px;
  }
  main.bridal-fair div.img-area {
    height: 200px;
  }
  main.pr-article {
    padding: 0 0 20px;
  }
  main.report-top {
    padding: 30px 4% 20px;
  }
  main.report-top.archive {
    padding: 40px 4% 20px;
  }
  main.report-top div.info {
    margin: 0 auto 40px;
  }
  main.report-top div.info p {
    font-size: 1.3em;
    text-align: left;
  }
  main.report-top div.info p br {
    display: none;
  }
  main.report-top ul.season {
    margin: 0 auto 40px;
  }
  main.report-top ul.season li {
    font-size: 1.2em;
    line-height: 20px;
    margin: 0 8px;
  }
  main.report-top ul.season li a:after {
    content: none;
  }
  main.report-top ul.season li a.active {
    border-bottom: solid 1px #000;
  }

/*
  header {
    min-width: initial;
    height: 60px;
    pointer-events: none;
  }
  header.bg, header.article {
    background-color: transparent;
    height: 60px;
  }
  header.bg.top h1.wh, header.article.top h1.wh {
    opacity: 1;
    filter: alpha(opacity=100);
    visibility: visible;
  }
  header.bg h1, header.article h1 {
    opacity: 0;
    filter: alpha(opacity=0);
    visibility: hidden;
  }
  header.bg h1.wh, header.article h1.wh {
    opacity: 1;
    filter: alpha(opacity=100);
    visibility: visible;
  }
  header.bg h1 a, header.article h1 a {
    color: #fff;
  }
  header.bg nav ul li a, header.article nav ul li a {
    color: #fff;
  }
  header.bg nav ul li a:after, header.article nav ul li a:after {
    content: none;
  }
  header h1 {
    font-size: 3.6em;
    left: auto;
    right: 3%;
    z-index: 20000;
  }
*/

/*
  nav {
    -webkit-transition: all .3s;
    transition: all .3s;
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    right: 0%;
    background-color: #c09758;
    padding: 0 0 50px;
    z-index: 19000;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    margin: 0;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    padding: 40px 0;
    visibility: hidden;
    opacity: 0;
    filter: alpha(opacity=0);
  }
  nav ul {
    width: 68.75%;
    margin: 0 auto;
  }
  nav ul li {
    display: block;
    margin: 0 auto;
    font-size: 1.8em;
  }
  nav ul li.sp {
    display: block;
  }
  nav ul li a {
    line-height: 45px;
    padding: 0 .5em;
    border-bottom: solid 1px rgba(255, 255, 255, 0.3);
  }
  nav ul li a:after {
    content: none;
  }
  nav ul li a.active {
    border-bottom: solid 1px white;
  }
*/

  section.block {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
  }
  section.block.sp-footer {
    height: initial !important;
    height: auto !important;
  }
  section.block.key-visual h2 {
    font-size: 1.8em;
    top: 45%;
  }
  section.block.key-visual h2 span {
    display: block;
    margin: 0;
  }
  section.block.key-visual div.logo {
    -webkit-transition: all 2s;
    transition: all 2s;
    display: inline-block;
    position: absolute;
    top: 30%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 53%;
    z-index: 200;
    opacity: 1;
    filter: alpha(opacity=100);
  }
  section.block.key-visual .inner {
    display: none;
  }
  section.block.key-visual .inner-sp {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/top/key-visual-sp.jpg) 10% 50% no-repeat;
    background-size: cover;
  }
  section.block.key-visual a {
    bottom: 60px;
  }
  section.block.menu h2 {
    font-size: 2.4em;
    top: 50px;
  }
  section.block.menu h2:after {
    height: 30px;
    top: -15px;
  }
  section.block.menu h2:before {
    top: -20px;
  }
  section.block.menu div.more {
    display: none;
  }
  section.block.menu div.more a:hover:before {
    width: 100%;
  }
  section.block.menu div.more a:hover:after {
    right: 4px;
  }
  section.block.concept .inner {
    width: 90%;
    top: 48%;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.block.concept p {
    font-size: 1.3em;
    letter-spacing: .075em;
    line-height: 2em;
    margin: 0 auto 15px;
    white-space: normal;
    text-align: justify;
  }
  section.block.concept p br {
    display: none;
  }
  section.block.concept p span {
    display: inline;
  }
  section.block.concept p.title {
    font-size: 1.8em;
    line-height: 1.555em;
    text-align: center;
  }
  section.block.concept p.title br {
    display: block;
  }
  section.block.omotenashi h2 {
    top: 80px;
    left: 10%;
  }
  section.block.omotenashi .more {
    right: 7%;
  }
  section.block.cuisine h2 {
    top: 80px;
    left: 10%;
  }
  section.block.cuisine .more {
    left: auto;
    right: 13.75%;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
  }
  section.block.cuisine .bg {
    left: auto;
    right: 0;
  }
  section.block.cuisine .img {
    right: auto;
    left: 0;
  }
  section.block.dress-item .more {
    right: auto;
    left: 13.75%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  section.block.dress-item .bg {
    right: auto;
    left: 0;
  }
  section.block.dress-item .img {
    left: auto;
    right: 0;
  }
  section.block.banners {
    padding: 80px 5% 30px;
  }
  section.block.banners ul.banner-top li {
    width: 100%;
    height: 140px;
  }
  section.block.banners ul.banner-top li:last-child {
    margin: 15px auto 0;
  }
  section.block.banners ul.banner-top li p {
    font-size: 2.4em;
    line-height: 60px;
  }
  section.block.omotenashi div.center, section.block.special-place div.center {
    top: 50%;
  }
  section.block.omotenashi div.center:before, section.block.special-place div.center:before {
    content: none;
  }
  section.block.omotenashi div.center:after, section.block.special-place div.center:after {
    content: none;
  }
  section.block.omotenashi div.center > a:before, section.block.special-place div.center > a:before {
    content: none;
  }
  section.block.omotenashi div.center > a:after, section.block.special-place div.center > a:after {
    content: none;
  }
  section.block.omotenashi div.center p, section.block.special-place div.center p {
    font-size: 1.3em;
    line-height: 1.73em;
    padding: 13px 1em 100px;
  }
  section.block.omotenashi div.center p.title, section.block.special-place div.center p.title {
    font-size: 2.3em;
    line-height: 55px;
  }
  section.block.omotenashi div.more-sp, section.block.special-place div.more-sp {
    display: inline-block;
    position: absolute;
    bottom: 20px;
    left: 3.5em;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  section.block.cuisine div.center, section.block.dress-item div.center {
    width: 50px;
    top: 80px;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.block.cuisine div.center p, section.block.dress-item div.center p {
    font-size: 1.3em;
/*
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
*/
  }
  section.block.cuisine div.center p.title, section.block.dress-item div.center p.title {
    font-size: 1.8em;
    letter-spacing: .05em;
    margin: 0 auto 10px;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  section.block.cuisine div.more, section.block.dress-item div.more {
    display: inline-block;
/*
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
*/
    bottom: 70px;
  }
  section.block.access {
    padding: 80px 0 80px;
  }
  section.block.access .address,
  section.block.access .map {
    width: 100%;
  }
  section.block.access .address {
    padding: 0 21% 0 23%;
    margin: 0 auto 30px;
  }
  section.block.access .address > p {
    font-size: 1.1em;
    margin: 0 auto 20px;
  }
  section.block.access .address > p.title-jp {
    font-size: 1.5em;
    letter-spacing: .1em;
    margin: 0 auto 10px;
  }
  section.block.access .address > p.title-en {
    font-size: 1.5em;
    line-height: 1.33em;
    letter-spacing: .05em;
    margin: 0 auto 30px;
  }
  section.block.access .address .salon {
    padding: 10px 0;
  }
  section.block.access .address .salon p {
    font-size: 1.1em;
    letter-spacing: .1em;
  }
  section.block.access .address .salon p.title {
    font-size: 1.4em;
  }
  section.block.access .map {
    height: 240px;
  }
  section.block.top-bridal-fair {
    padding: 75px 0;
  }
  section.block.top-bridal-fair::after {
    width: 84%;
  }
  section.block.top-bridal-fair p {
    font-size: 1.3em;
    margin: 0 auto 15px;
    line-height: 1.7em;
    padding: 0 21% 0 23%;
  }
  section.block.top-bridal-fair p.more {
    margin: 0 auto 30px;
  }
  section.block.top-bridal-fair p.more a:hover:before {
    width: 100%;
  }
  section.block.top-bridal-fair p.more a:hover:after {
    right: 4px;
  }
  section.block.top-bridal-fair p.pagetop {
    padding: 0 5%;
    margin: 100px 0 0;
  }
  section.block.top-bridal-fair ul {
    padding: 0 21% 0 23%;
  }
  section.block.top-bridal-fair ul li {
    width: 100%;
    font-size: 1.6em;
  }
  section.block.top-bridal-fair ul li:last-child {
    margin: 10px auto 0;
  }
  section.block.top-bridal-fair ul li a {
    line-height: 46px;
  }
  section.block.contact {
    padding: 75px 0 10px;
  }
  section.block.contact p {
    font-size: 1.3em;
    margin: 0 auto 40px;
    line-height: 1.7em;
    padding: 0 21% 0 23%;
  }
  section.block.contact p.pagetop {
    padding: 0 5%;
    margin: 100px 0 0;
  }
  section.block.contact ul {
    padding: 0 21% 0 23%;
  }
  section.block.contact ul li {
    width: 100%;
    font-size: 1.6em;
  }
  section.block.contact ul li:last-child {
    margin: 10px auto 0;
  }
  section.block.contact ul li a {
    line-height: 46px;
  }
  section.block.access h2, section.block.contact h2, section.block.top-bridal-fair h2 {
    font-size: 1.8em;
    top: 65px;
    left: 7%;
  }
  section.main-visual {
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
  }
  section.main-visual.omotenashi .inner {
    background-position: 43% 50% !important;
  }
  section.main-visual.wedding-plan {
    height: 240px;
    margin: 0 auto 20px;
  }
  section.main-visual.wedding-plan:after {
    height: 20px;
  }
  section.main-visual.party-report {
    height: 240px;
    margin: 0 auto 20px;
  }
  section.main-visual.party-report:after {
    height: 20px;
  }
  section.main-visual.qanda {
    height: 240px;
    margin: 0 auto;
  }
  section.main-visual.bridal-fair {
    height: 240px;
    margin: 0 auto;
  }
  section.main-visual h2 {
    font-size: 2.5em;
  }
  section.main-visual a {
    bottom: 60px;
  }
  section.main-copy {
    padding: 40px 7% 35px;
  }
  section.main-copy.dress-item h2 {
    -webkit-transform: translateX(1em);
    transform: translateX(1em);
  }
  section.main-copy .inner {
    text-align: center;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.main-copy h2 {
    font-size: 1.8em;
/*
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
*/
    margin: 0 0 25px;
    text-align: left;
    -webkit-transform: translateX(0.5em);
    transform: translateX(0.5em);
      width: 100%;
  }
  section.main-copy h2 span.box {
    font-size: .81em;
/*    margin: 0 0 0 .6em;*/
  }
  section.main-copy p {
    display: block;
    font-size: 1em;
    letter-spacing: .075em;
    line-height: 2em;
    margin: 0 auto 15px;
    white-space: normal;
    text-align: justify;
  }
  section.main-copy p br {
    display: none;
  }
  section.main-copy p span {
    display: inline;
  }
  section.main-copy ul.innerlink {
    position: relative;
    top: auto;
    left: auto;
    text-align: center;
    margin: 45px auto 0;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.main-copy ul.innerlink li {
    display: inline-block;
    margin: 0 20px;
  }
  section.main-copy ul.innerlink li a {
    width: 84px;
    height: auto;
  }
  section.main-copy ul.innerlink li a:hover {
    height: auto;
  }
  section.main-copy ul.innerlink li a:before {
    width: 100%;
    height: 1px;
    top: auto;
    bottom: 0;
  }
  section.main-copy ul.innerlink li a:after {
    width: 1;
    height: 12px;
    left: auto;
    right: 5px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  section.omotenashi-block {
    margin: 0 auto 50px;
  }
  section.omotenashi-block:nth-of-type(odd) p.om-copy {
    text-align: center;
    right: auto;
  }
  section.omotenashi-block:nth-of-type(odd) p.om-copy span.inner {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.omotenashi-block:nth-of-type(odd) div.txt {
    float: none;
  }
  section.omotenashi-block:nth-of-type(odd) div.img {
    float: none;
  }
  section.omotenashi-block:nth-of-type(even) p.om-copy {
    text-align: center;
    left: auto;
  }
  section.omotenashi-block:nth-of-type(even) p.om-copy span.inner {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.omotenashi-block:nth-of-type(even) div.txt {
    float: none;
  }
  section.omotenashi-block:nth-of-type(even) div.img {
    float: none;
  }
  section.omotenashi-block.wp div.bg {
    background-position: 70% 50% !important;
  }
  section.omotenashi-block.cp div.bg {
    background-position: 30% 50% !important;
  }
  section.omotenashi-block.cc div.bg {
    background-position: 90% 50% !important;
  }
  section.omotenashi-block.rcp div.bg {
    background-position: 10% 50% !important;
  }
  section.omotenashi-block.pa div.bg {
    background-position: 90% 50% !important;
  }
  section.omotenashi-block.bs div.bg {
    background-position: 80% 50% !important;
  }
  section.omotenashi-block h3 {
    font-size: 2.0em;
    letter-spacing: .175em;
    white-space: nowrap;
  }
  section.omotenashi-block p.om-copy {
    position: relative;
    top: 0;
    top: auto;
    font-size: 1.8em;
    width: 85%;
    height: auto;
    padding: 15px 0;
    margin: -60px auto 10px;
  }
  section.omotenashi-block p.om-copy span.inner {
    white-space: normal;
  }
  section.omotenashi-block p.om-copy span.job {
    font-size: .77em;
    margin: 12px auto 0;
  }
  section.omotenashi-block div.key-img {
    height: 320px;
    margin: 0 auto;
  }
  section.omotenashi-block div.more {
    -webkit-transition: all .6s;
    transition: all .6s;
    display: block;
    width: 100%;
    padding: 0 0 25px;
    text-align: center;
    z-index: 10;
    font-size: 1.1em;
    line-height: 1em;
    letter-spacing: .25em;
    position: relative;
    margin: 0 auto 10px;
  }
  section.omotenashi-block div.wrap {
    -webkit-transition: none;
    transition: none;
    padding: 0 7.8%;
    display: none;
  }
  section.omotenashi-block div.wrap div {
    width: 100%;
  }
  section.omotenashi-block div.wrap div.txt {
    margin: 0 auto 30px;
  }
  section.omotenashi-block div.wrap div.img {
    width: 100%;
    height: 200px;
  }
  section.lower {
    margin: 0 auto;
    padding: 30px 0;
  }
  section.lower h2 {
    font-size: 2.5em;
  }
  section.overview {
    margin: 0 auto 45px;
  }
  section.overview div.txt {
    float: none;
    width: 100%;
  }
  section.overview div.img {
    float: none;
    width: 100%;
    margin: 0 auto 20px;
  }
  section.overview ul.category {
    margin: 0 auto 15px;
  }
  section.overview ul.category li {
    font-size: 1.1em;
    line-height: 22px;
  }
  section.overview h3 {
    font-size: 1.8em;
    margin: 0 auto 15px;
  }
  section.overview p {
    font-size: 1.3em;
  }
  section.overview p.note {
    font-size: 1.2em;
  }
  section.photo-gallery {
    padding: 30px 1.5% 40px;
  }
  section.photo-gallery h3 {
    font-size: 2.0em;
    margin: 0 auto 25px;
  }
  section.photo-gallery div.gallery-wrap.pc {
    display: none;
  }
  section.photo-gallery div.gallery-wrap.sp {
    display: block;
    *zoom: 1;
  }
  section.photo-gallery div.gallery-wrap.sp:after {
    content: "";
    display: table;
    clear: both;
  }
  section.photo-gallery div.gallery-wrap.sp2 {
    display: none;
  }
  section.photo-gallery div.more-gallery {
    display: block;
    width: 74px;
    height: 74px;
    font-size: 1.1em;
    letter-spacing: .05em;
    line-height: 1em;
    position: relative;
    margin: 0 auto 20px;
  }
  section.qa-block h3 {
    font-size: 1.5em;
    letter-spacing: .1em;
    padding: 40px 5% 15px;
  }
  section.qa-block h3 span {
    padding: 12px 0 5px;
  }
  section.qa-block > article h4 {
    font-size: 1.6em;
    line-height: 75px;
  }
  section.qa-block > article h4.active:before {
    content: none;
  }
  section.qa-block > article h4.active:after {
    top: 40%;
  }
  section.qa-block > article h4:before {
    content: none;
  }
  section.qa-block > article h4:after {
    width: 10px;
    height: 10px;
    top: 50%;
  }
  section.qa-block > article h5 {
    font-size: 1.5em;
    text-align: center;
    margin: 0 auto 15px;
  }
  section.qa-block > article div.inner {
    padding: 35px 7.8% 40px;
  }
  section.qa-block > article div.box {
    padding: 20px;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.half.img > li:first-child {
    float: none;
    width: 100%;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.half.img > li:last-child {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
  section.qa-block > article ul.half.access > li:first-child {
    float: none;
    width: 100%;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.half.access > li:last-child {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
  section.qa-block > article ul.half > li:first-child {
    float: none;
    width: 100%;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.half > li:last-child {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
  section.qa-block > article ul.set1 {
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.set1.right li:first-child {
    float: none;
    width: 100%;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.set1.right li:last-child {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
  section.qa-block > article ul.set1 li:first-child {
    float: none;
    width: 100%;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.set1 li:last-child {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
  section.qa-block > article ul.set2 {
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.set2 li:first-child {
    float: none;
    width: 100%;
    margin: 0 auto 35px;
  }
  section.qa-block > article ul.set2 li:last-child {
    float: none;
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  section.qa-block > article article {
    margin: 0 auto 40px;
  }
  section.fair-copy {
    padding: 30px 10% 50px;
  }
  section.fair-copy div.left {
    width: 100%;
    height: auto;
    text-align: center;
    margin: 0 auto 30px;
  }
  section.fair-copy div.left h3 {
    font-size: 1.8em;
    text-align: left;
    margin: 0 auto;
  }
  section.fair-copy ul {
    width: 100%;
  }
  section.fair-copy ul li {
    font-size: 1.4em;
    margin: 0 auto 25px;
  }
  section.fair-about {
    padding: 40px 7.8%;
  }
  section.fair-about div.sec {
    padding: 0 0 50px;
    margin: 0 auto 50px;
  }
  section.fair-about div.sec:first-child h3 {
    float: none;
  }
  section.fair-about div.sec:first-child p {
    float: none;
  }
  section.fair-about div.sec:last-child h3 {
    float: none;
  }
  section.fair-about div.sec:last-child p {
    float: none;
  }
  section.fair-about div.sec h3 {
    font-size: 1.6em;
    width: 100%;
    margin: 0 auto 30px;
  }
  section.fair-about div.sec h3 span.vertical {
    line-height: 37px;
    padding: 0 1em;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.fair-about div.sec h3 span.adjust {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.fair-about div.sec p {
    width: 100%;
    font-size: 1.3em;
    padding: 0;
  }
  section.flow {
    padding: 40px 10%;
  }
  section.flow h3 {
    font-size: 1.8em;
    margin: 0 auto 30px;
  }
  section.flow h4 {
    font-size: 1.6em;
    margin: 0 auto 30px;
  }
  section.flow ul.flow {
    border: none;
    margin: 0 auto 30px;
  }
  section.flow ul.flow li {
    width: 100%;
    padding: 0;
    margin: 0 auto 30px;
  }
  section.flow ul.flow li:last-child {
    width: 100%;
    padding: 0;
  }
  section.flow ul.flow li p {
    margin: 0 auto 20px;
  }
  section.flow ul.flow li p.title {
    display: inline-block;
    min-width: 200px;
    font-size: 1.8em;
    line-height: 42px;
    margin: 0 auto 12px;
  }
  section.flow ul.flow li p.title:before {
    left: .7em;
  }
  section.flow ul.flow li p.title:after {
    left: 1.8em;
  }
  section.flow ul.flow li img {
    position: relative;
    top: auto;
    right: auto;
    width: 65px;
    height: auto;
  }
  section.flow ul.links li {
    width: 100%;
    font-size: 1.4em;
  }
  section.flow ul.links li:last-child {
    margin: 20px auto 0;
  }
  section.flow ul.links li a {
    line-height: 38px;
  }
  section.contact-sub {
    padding: 110px 0 10px;
  }
  section.contact-sub h2 {
    font-size: 1.8em;
    top: 80px;
    left: 7%;
  }
  section.contact-sub p {
    font-size: 1.3em;
    line-height: 1.6em;
    margin: 0 auto 40px;
    padding: 0 21% 0 23%;
  }
  section.contact-sub p.pagetop {
    padding: 0 5%;
  }
  section.contact-sub ul {
    padding: 0 21% 0 23%;
  }
  section.contact-sub ul li {
    width: 100%;
    font-size: 1.6em;
  }
  section.contact-sub ul li:last-child {
    margin: 10px auto 0;
  }
  section.contact-sub ul li a {
    line-height: 46px;
  }
  section.place-block {
    margin: 0 auto 10px;
  }
  section.place-block h3 {
    font-size: 2.0em;
    padding: 30px 0;
  }
  section.place-block h3 span {
    padding: 0 0 8px;
  }
  section.place-block div.set {
    padding: 0;
  }
  section.place-block div.set.chapel .spwrap {
    height: 0;
    height: auto;
    letter-spacing: -.4em;
  }
  section.place-block div.set.chapel .spwrap table {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    letter-spacing: 0em;
  }
  section.place-block div.set.chapel .spwrap p {
    padding: 0 4%;
    margin: 38px auto;
  }
  section.place-block div.set.chapel .spwrap .txt1 {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.place-block div.set.chapel .spwrap .txt2 {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.place-block div.set.chapel .spwrap .img {
    position: relative;
    display: inline-block;
    letter-spacing: 0em;
  }
  section.place-block div.set.chapel .spwrap .img1 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 46.875%;
  }
  section.place-block div.set.chapel .spwrap .img2 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 46.875%;
    margin: 0 0 0 6.25%;
  }
  section.place-block div.set.chapel .spwrap .img3 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 92%;
    margin: 0 0 30px 8%;
  }
  section.place-block div.set.chapel .spwrap .img4 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 61%;
    margin: 0 39% 30px 0;
  }
  section.place-block div.set.chapel .spwrap .img5 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 61%;
    margin: 0 0 30px 31.25%;
  }
  section.place-block div.set.chapel .spwrap .img6 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: auto;
    margin: 0 auto;
  }
  section.place-block div.set.chapel .spwrap .img7 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 84%;
    margin: 0 auto 30px;
  }
  section.place-block div.set.chapel .spwrap .img8 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 39.8%;
  }
  section.place-block div.set.chapel .spwrap .img9 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 39.8%;
    margin: 0 0 0 4.3%;
  }
  section.place-block div.set.banquet-gb .spwrap {
    height: 0;
    height: auto;
    letter-spacing: -.4em;
  }
  section.place-block div.set.banquet-gb .spwrap table {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    letter-spacing: 0em;
  }
  section.place-block div.set.banquet-gb .spwrap p {
    padding: 0 4%;
    margin: 38px auto;
    max-width: inherit !important;
  }
  section.place-block div.set.banquet-gb .spwrap .txt1 {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.place-block div.set.banquet-gb .spwrap .txt2 {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.place-block div.set.banquet-gb .spwrap .img {
    position: relative;
    display: inline-block;
    letter-spacing: 0em;
  }
  section.place-block div.set.banquet-gb .spwrap .img1 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 100%;
    margin: 0 auto;
  }
  section.place-block div.set.banquet-gb .spwrap .img2 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 79.6%;
    margin: 0 20.4% 30px 0;
  }
  section.place-block div.set.banquet-gb .spwrap .img3 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 75%;
    margin: 0 0 30px 25%;
  }
  section.place-block div.set.banquet-gb .spwrap .img4 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 65%;
    margin: 0 auto 30px;
  }
  section.place-block div.set.banquet-gb .spwrap .img5 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 29%;
    margin: 0 0 30px 6%;
  }
  section.place-block div.set.banquet-gb .spwrap .img6 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 100%;
  }
  section.place-block div.set.banquet-gb .spwrap .img7 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 72%;
    margin: 0 28% 30px 0;
  }
  section.place-block div.set.banquet-gb .spwrap .img8 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 57.8%;
    margin: 0 0 30px 32.8%;
  }
  section.place-block div.set.banquet-gb .spwrap .img9 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 57.8%;
    margin: 0 0 0 32.8%;
  }
  section.place-block div.set.banquet-gr .spwrap {
    height: 0;
    height: auto;
    letter-spacing: -.4em;
  }
  section.place-block div.set.banquet-gr .spwrap table {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    letter-spacing: 0em;
  }
  section.place-block div.set.banquet-gr .spwrap p {
    padding: 0 4%;
    margin: 38px auto;
  }
  section.place-block div.set.banquet-gr .spwrap .txt1 {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.place-block div.set.banquet-gr .spwrap .txt2 {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  section.place-block div.set.banquet-gr .spwrap .img {
    position: relative;
    display: inline-block;
    letter-spacing: 0em;
  }
  section.place-block div.set.banquet-gr .spwrap .img1 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 100%;
    margin: 0 auto 30px;
  }
  section.place-block div.set.banquet-gr .spwrap .img2 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 63.75%;
    margin: 0 28.75% 0 0;
  }
  section.place-block div.set.banquet-gr .spwrap .img3 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 70%;
    margin: 0 0 30px 23%;
  }
  section.place-block div.set.banquet-gr .spwrap .img4 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 100%;
    margin: 0 auto;
  }
  section.place-block div.set.banquet-gr .spwrap .img5 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 66%;
    margin: 0 0 30px 34%;
  }
  section.place-block div.set.banquet-gr .spwrap .img6 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 66%;
    margin: 0 34% 30px 0;
  }
  section.place-block div.set.banquet-gr .spwrap .img7 {
    display: none;
  }
  section.place-block div.set.banquet-gr .spwrap .img8 {
    display: none;
  }
  section.place-block div.set.banquet-gr .spwrap .img9 {
    display: none;
  }
  section.place-block div.set.banquet-vr .spwrap {
    height: 0;
    height: auto;
    letter-spacing: -.4em;
  }
  section.place-block div.set.banquet-vr .spwrap table {
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    letter-spacing: 0em;
  }
  section.place-block div.set.banquet-vr .spwrap .img {
    position: relative;
    display: inline-block;
    letter-spacing: 0em;
  }
  section.place-block div.set.banquet-vr .spwrap .img1 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 100%;
    margin: 0 auto 30px;
  }
  section.place-block div.set.banquet-vr .spwrap .img2 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 84%;
    margin: 0 auto 30px;
  }
  section.place-block div.set.banquet-vr .spwrap .img3 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 76%;
    margin: 0 24% 30px 0;
  }
  section.place-block div.set.banquet-vr .spwrap .img4 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 64%;
    margin: 0 0 30px 36%;
  }
  section.place-block div.set.banquet-vr .spwrap .img5 {
    top: auto;
    left: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 68.75%;
    margin: 0 23% 30px 0;
  }
  section.place-block div.set.banquet-vr .spwrap .img6 {
    top: auto;
    right: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: 46.8%;
    margin: 0 0 30px 45%;
  }
  section.place-block div.imgarea {
    height: 270px;
  }
  section.place-block div.imgarea h4 {
    width: 66%;
    font-size: 2.0em;
    padding: 15px 0;
  }
  section.place-block div.imgarea h4 span {
    font-size: .55em;
  }
  section.place-block div.imgarea div.more-pc {
    display: none;
  }
  section.place-block div.inner {
    display: block;
    padding: 30px 0 20px;
    background-color: #f5f4f3;
  }
  section.place-block div.inner > p:not(.pagetop) {
    font-size: 1.3em;
    text-align: left;
    padding: 0 4%;
    margin: 0 auto 35px;
  }
  section.place-block div.inner > p:not(.pagetop) br {
    display: none;
  }
  section.place-block div.inner p.pagetop {
    display: none;
  }
  section.place-block div.inner div.more-sp {
    display: inline-block;
    width: 74px;
    height: 74px;
    font-size: 1.1em;
    letter-spacing: .05em;
    line-height: 1em;
    position: relative;
  }
  section.place-block div.inner div.spwrap {
    display: none;
  }
  section.place-block table {
    width: 84.3%;
    margin: 40px auto;
  }
  section.place-block table tr {
    border: none;
  }
  section.place-block table tr th, section.place-block table tr td {
    display: block;
    text-align: center;
    font-size: 1.2em;
    color: #000;
  }
  section.place-block table tr td {
    padding: 15px 0;
  }
  section.place-block table tr td.left {
    text-align: left;
  }
  section.particular {
    padding: 30px 0 40px;
  }
  section.particular h3 {
    font-size: 1.8em;
  }
  section.particular div.inner {
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.particular article {
    letter-spacing: -.4em;
    padding: 0;
    margin: 0 auto 45px;
  }
  section.particular article:nth-child(even) {
    padding: 0;
    margin: 0 auto 45px;
  }
  section.particular article:nth-child(even) h4 {
    text-align: right;
  }
  section.particular article:nth-child(even) h4:before {
    top: 0;
    left: 0;
    right: auto;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
    width: 30px;
    text-align: center;
  }
  section.particular article:nth-child(even) h4:after {
    width: 30px;
    top: 30px;
    left: 0;
    right: auto;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  section.particular article:nth-child(even) h4 span {
    text-align: left;
      padding-left: 4rem;
  }
  section.particular article:nth-child(even) div.thumb {
    top: auto;
  }
  section.particular article h4 {
/*    font-size: 1.8em;*/
    margin: 0 auto -.5em;
    width: 50%;
/*    width: 37.5%;*/
    display: inline-block;
    vertical-align: middle;
    white-space: normal;
  }
  section.particular article h4:before {
    top: 0;
    left: auto;
    right: 0;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
    width: 30px;
    text-align: center;
  }
  section.particular article h4:after {
    width: 30px;
    top: 30px;
    left: auto;
    right: 0;
  }
  section.particular article h4 span {
/*
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
*/
  }
  section.particular article p {
    height: auto;
    letter-spacing: .05em;
    padding: 0 4%;
    margin: 20px auto 0;
  }
  section.particular article div.thumb {
    position: relative;
    top: auto;
    left: auto;
    width: 50% !important;
/*    width: 62.5%;*/
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin-left: 0;
  }
  section.particular article div.thumb img {
    width: 150px;
  }
  section.grand-chef {
    padding: 0 0 35px;
  }
  section.grand-chef div.intro {
    margin: 0 0 50px;
  }
  section.grand-chef div.intro h3 {
    font-size: 1.2em;
    padding: 0 0 6px;
    margin: 10% auto 15px;
  }
  section.grand-chef div.intro p {
    padding: 0 4%;
  }
  section.grand-chef div.intro p.name {
    font-size: 1.8em;
    margin: 0 auto 17%;
    padding: 0;
  }
  section.grand-chef div.intro p.name span {
    display: block;
    font-size: .777em;
    margin: 10px 0 0;
  }
  section.grand-chef div.intro .pht {
    width: 46.8%;
    margin: 0 11.8% 0 0;
  }
  section.grand-chef section.hope {
    height: auto;
    text-align: center;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-td;
    writing-mode: horizontal-tb;
  }
  section.grand-chef section.hope h4 {
    font-size: 1.2em;
    letter-spacing: .1em;
    padding: 0 0 .5em;
    border: none;
    border-bottom: solid 1px #000;
    margin: 0 auto 8px;
  }
  section.grand-chef section.hope p:not(.copy) br {
    display: none;
  }
  section.grand-chef section.hope p {
    text-align: left;
    letter-spacing: .05em;
    line-height: 1.84em;
    padding: 0 4%;
    height: auto;
  }
  section.grand-chef section.hope p.copy {
    font-size: 1.8em;
    letter-spacing: .15em;
    text-align: center;
    margin: 0 auto 20px;
    padding: 0;
  }
  section.prefix {
    padding: 30px 4% 0;
  }
  section.prefix h3 {
    font-size: 1.8em;
    margin: 0 auto 20px;
  }
  section.prefix p {
    letter-spacing: .05em;
    line-height: 1.84em;
    margin: 0 auto 40px;
    text-align: left;
  }
  section.prefix p br {
    display: none;
  }
  section.prefix ul li {
    width: 48%;
    margin: 0 auto 15px;
  }
  section.prefix ul li:nth-child(2n) {
    margin: 0 0 15px 4%;
  }
  section.article-wrapper h3 {
    font-size: 1.8em;
    padding: 0 0 20px;
    margin: 0 auto 20px;
  }
  section.article-wrapper h3:after {
    width: 50px;
  }
  section.article-wrapper > p {
    font-size: 1.4em;
  }
  section.article-wrapper > p.category {
    font-size: 1em;
    margin: 0 auto 10px;
  }
  section.article-wrapper div.ar-gallery {
    width: 100%;
  }
  section.article-wrapper div.ar-gallery .grid-sizer {
    width: 50%;
  }
  section.article-wrapper div.ar-gallery .item {
    width: 44.8%;
    height: calc(50vw * 0.65);
    margin: 0 2.6% 20px;
  }
  section.article-wrapper div.ar-gallery .item.wide {
    width: 94.8%;
    height: calc(100vw * 0.68);
  }
  section.article-wrapper div.ar-gallery .item.horizon {
    width: 44.8%;
    height: calc(50vw * 1.45);
  }
  section.article-wrapper article {
    margin: 50px auto 0;
    padding: 50px 4% 40px;
  }
  section.article-wrapper article h4 {
    white-space: nowrap;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: #fff;
  }
  section.article-wrapper article p {
    letter-spacing: .05em;
    line-height: 1.84em;
  }
  section.article-wrapper article p.author {
    font-size: 1.4em;
  }
  section.article-wrapper ul {
    margin: 80px auto 0;
  }
  section.article-wrapper ul li {
    font-size: 1.3em;
  }
  section.article-wrapper ul li a {
    padding: 0 18px;
  }
  section.restaurant {
    padding: 35px 4% 0;
      margin-bottom: 35px;
  }

  section.sp-footer {
    display: block;
    width: 100%;
    background-color: #c09758;
    position: relative;
    padding: 30px 5% 35px;
  }
  section.sp-footer h2 {
    line-height: 1em;
    letter-spacing: .125em;
/*
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
*/
    position: absolute;
    white-space: nowrap;
    color: #fff;
    font-size: 1.3em;
    top: 30px;
    left: 10%;
  }
  section.sp-footer ul {
    border-left: solid 1px #fff;
    padding: 0 0 0 30px;
    margin: 0 0 0 20%;
  }
  section.sp-footer ul li {
    letter-spacing: 0em;
    display: block;
    vertical-align: top;
    width: 100%;
    font-size: 1.4em;
    line-height: 1.4em;
    letter-spacing: .07em;
    margin: 0 auto 12px;
  }

  div.plan-list article {
    width: 45%;
    margin: 0 auto 30px;
  }
  div.plan-list article:nth-child(3n-1) {
    margin: 0 auto 30px;
  }
  div.plan-list article:nth-child(2n) {
    margin: 0 0 30px 10%;
  }
  div.plan-list article:nth-child(3n+1) {
	clear:none;
  }
  div.plan-list article:nth-child(2n+1) {
	clear:both;
  }
  div.plan-list article h3 {
    font-size: 1.4em;
  }
  div.plan-list article p.date {
    font-size: 1.2em;
    margin: 0 auto 8px;
  }
  div.plan-list article p.note {
    font-size: 1.2em;
  }
  div.plan-list article div.thumb {
    margin: 0 auto 5px;
  }
  div.plan-list article div.thumb img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
  div.plan-list article ul.category li {
    font-size: 1.1em;
  }
  div.dress-item-list {
    padding: 50px 0 0;
  }
  div.dress-item-list article {
    width: 100%;
    margin: 0 auto 45px;
    padding: 0 7.8%;
  }
  div.dress-item-list article h3 {
    font-size: 3.0em;
  }
  div.dress-item-list article h3:after {
    height: 30px;
    top: -15px;
  }
  div.dress-item-list article h3:before {
    top: -20px;
  }
  div.dress-item-list article p {
    padding: 0;
  }
  div.dress-item-list article figure {
    margin: 0 auto 35px;
  }
  div.dress-item-list div.stamp {
    display: none;
  }
  div.ar-visual {
    margin: 0 auto 30px;
    height: calc(100vw * 0.578);
  }
  div.pr-list.archive article:first-of-type {
    margin: 0 0 30px !important;
  }
  div.pr-list.archive article:first-of-type h3 {
    font-size: 1.4em;
    text-align: left;
  }
  div.pr-list.archive article:first-of-type p.date span {
    display: block;
    margin: 0;
  }
  div.pr-list.archive article:first-of-type div.thumb {
    height: 120px;
  }
  div.pr-list.archive article:nth-of-type(2n+1) {
    margin: 0 0 30px;
  }
  div.pr-list.archive article:nth-of-type(2n) {
    margin: 0 0 30px 10%;
  }
  div.pr-list article {
    margin: 0 0 30px;
  }
  div.pr-list article:first-of-type {
    margin: 0 0 40px !important;
  }
  div.pr-list article:first-of-type h3 {
    text-align: center;
    font-size: 1.8em;
  }
  div.pr-list article:first-of-type p.date span {
    display: inline-block;
    margin: 0 0 0 1em;
  }
  div.pr-list article:first-of-type div.thumb {
    height: 270px;
    margin: 0 auto 14px;
  }
  div.pr-list article:nth-of-type(2n+1) {
    margin: 0 0 30px 10%;
  }
  div.pr-list article h3 {
    font-size: 1.4em;
    text-align: left;
  }
  div.pr-list article h3 br {
    display: none;
  }
  div.pr-list article p.date {
    font-size: 1.2em;
    margin: 0 auto 15px;
  }
  div.pr-list article p.date span {
    display: block;
    margin: 0;
  }
  div.pr-list article p.category {
    font-size: 1.1em;
  }
  div.pr-list article div.thumb {
    height: 120px;
  }

  table.plan {
    border: none;
    margin: 0 auto 50px;
  }
  table.plan > tbody > tr {
    border: none;
  }
  table.plan > tbody > tr > th, table.plan > tbody > tr > td {
    display: block;
    font-size: 1.2em;
    line-height: 1.666em;
  }
  table.plan > tbody > tr > th {
    padding: 5px 1em;
    background-color: #fff;
    border: none;
  }
  table.plan > tbody > tr > th br {
    display: none;
  }
  table.plan > tbody > tr > td {
    padding: 12px 0 18px;
  }
  table.plan > tbody > tr > td.nopdd {
    padding: 15px 0 0;
  }
  table.plan > tbody > tr > td table tr {
    border: none;
  }
  table.plan > tbody > tr > td table tr th, table.plan > tbody > tr > td table tr td {
    display: block;
    font-size: 1.0em;
  }
  table.plan > tbody > tr > td table tr th {
    font-weight: 400;
    font-size: 1.08em;
    padding: 5px .8em;
  }
  table.plan > tbody > tr > td table tr td {
    padding: 10px .8em 15px;
  }

  p.pagetop {
    margin: 80px auto 0;
  }

  ul.side-nav {
    display: none;
  }
  ul.sp-nav {
    -webkit-transition: all 2s;
    transition: all 2s;
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 2000;
    width: 100%;
    height: 48px;
    *zoom: 1;
    opacity: 1;
    filter: alpha(opacity=100);
  }
  ul.sp-nav:after {
    content: "";
    display: table;
    clear: both;
  }

  footer {
    padding: 80px 5% 85px;
  }
  footer h2 {
    font-size: 1.3em;
    top: 80px;
    left: 10%;
  }
  footer p.copyright {
    text-align: center;
    font-size: 1.2em;
    line-height: 1.8em;
  }
  footer p.copyright span {
    display: block;
  }
  footer p.copyright a {
    margin: 0 .5em;
  }
  footer ul.footer-nav {
    padding: 0 0 0 30px;
    margin: 0 0 50px 20%;
  }
  footer ul.footer-nav li {
    width: 100%;
    margin: 0 auto 12px;
  }
  footer ul.footer-nav li:first-child {
    width: 100%;
  }
  footer ul.footer-nav li:last-child {
    margin: 0 auto;
  }
  footer ul.footer-nav li p {
    font-size: 1.1em;
    line-height: 1.4em;
    margin: 0 auto 12px;
  }
  footer ul.footer-nav li p:before {
    content: none;
    margin: 0;
  }
  footer ul.footer-nav li p a {
    margin: 0 auto 12px;
  }
  footer ul.footer-nav li p a:last-child {
    margin: 0 auto;
  }

  .spOnly {
    display: inline-block !important;
  }

  .pcOnly {
    display: none !important;
  }
}
@media only screen and (max-width: 320px) {
  nav.active {
    padding: 70px 0 180px;
  }

  section.block.menu h2 {
    top: 34px;
    font-size: 2.2em;
  }
  section.block.concept p {
    font-size: 1.1em;
    letter-spacing: .05em;
    line-height: 1.9em;
    margin: 0 auto 12px;
  }
  section.block.concept p.title {
    font-size: 1.6em;
  }
  section.block.omotenashi h2 {
    top: 70px;
  }
  section.block.cuisine h2 {
    top: 70px;
  }
  section.block.cuisine .more {
    right: auto;
    left: 7%;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  section.block.dress-item .more {
    left: auto;
    right: 7%;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
  section.block.omotenashi div.center p, section.block.special-place div.center p {
    font-size: 1.1em;
    padding: 13px 1em 90px;
  }
  section.block.omotenashi div.center p.title, section.block.special-place div.center p.title {
    font-size: 2.0em;
  }
  section.block.cuisine div.center, section.block.dress-item div.center {
    width: 40px;
  }
  section.block.cuisine div.center p, section.block.dress-item div.center p {
    font-size: 1.1em;
  }
  section.block.cuisine div.center p.title, section.block.dress-item div.center p.title {
    font-size: 1.6em;
    line-height: 40px;
  }
  section.block.top-bridal-fair p {
    font-size: 1.2em;
    letter-spacing: .05em;
  }
  section.block.access h2, section.block.contact h2, section.block.top-bridal-fair h2 {
    left: 5%;
  }
  section.omotenashi-block p.om-copy {
    width: 90%;
    font-size: 1.6em;
    letter-spacing: .08em;
  }
}

/* cuisineページについて追記 */
    .originality__inner {
        max-width: 1200px;
        width: 100%;
        margin-inline: auto;
    }
    .originality {
        margin-top: 90px;
    }
    .originality__head {
        padding-bottom: 50px;
    }
    .originality__description {
        margin-top: 60px;
        font-size: 1.45rem;
        line-height: 2;
        width: 85%;
        margin-inline: auto;
    }
    .originality__title {
        color: #82705d;
        font-size: 2rem;
    }
    .originality__sub-title-en {
        color: #82705d;
        font-size: 1.8rem;
    }
    .originality__sub-title-ja {
        color: #82705d;
        margin-top: 8px;
    }
    .slider-img-cuisine img {
        aspect-ratio: 650/400;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .originality__contents {
        margin-top: 60px;
        padding-left: 20px;
        padding-right: 20px;
        display: flex;
        flex-direction: column-reverse;
    }
    .originality__text {
        width: 80%;
        margin-inline: auto;
        line-height: 1.8;
        /* word-break: auto-phrase; */
    }
    @media (min-width:768px) {
        .originality__description {
        font-size: 1.8rem;
    }
        .originality__title {
        font-size: 2.5rem;
    }
    .originality__contents {
        flex-direction: initial;
    }
    }
