@charset "UTF-8";
@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

@font-face {
  font-family: "Yu Mincho M";
  src: local("Yu Mincho Medium");
}

@font-face {
  font-family: "Yu Mincho M";
  src: local("Yu Mincho Bold");
  font-weight: bold;
}

/*! Type: YakuHanJP - Based on Noto Sans CJK JP */
@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Thin.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Thin.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Light.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Light.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-DemiLight.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-DemiLight.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Regular.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Regular.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Medium.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Bold.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Bold.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Black.woff2") format("woff2"), url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/fonts/YakuHanJP/YakuHanJP-Black.woff") format("woff");
  unicode-range: U+3001-3002, U+3008-3011, U+3014-3015, U+30fb, U+ff01, U+ff08-ff09, U+ff1a-ff1b, U+ff1f, U+ff3b, U+ff3d, U+ff5b, U+ff5d;
}

html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

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

ul {
  list-style: none;
}

button, input, select, textarea {
  margin: 0;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: border-box;
}

img, embed, object, audio, video {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

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

td, th {
  padding: 0;
  text-align: left;
}

em, i, b, strong, address {
  font-style: normal;
  font-weight: normal;
}

main {
  display: block;
}

input,
button,
textarea {
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type='submit'],
input[type='button'],
label,
select {
  cursor: pointer;
}

button {
  font-size: 1em;
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  border-radius: 0;
}

object {
  pointer-events: none;
}

html {
  overflow-y: auto;
  min-height: 100vh;
  height: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 56.4%;
}

@media print, screen and (min-width: 769px) {
  html {
    font-size: 62.5%;
  }
}

body {
  letter-spacing: 0em;
  line-height: 1.8125;
  font-size: 4.26667vw;
  font-family: "YakuHanJP", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Helvetica, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #323232;
  text-align: center;
  overflow-x: hidden;
  position: relative;
  min-height: 100vh;
  height: auto;
}

@media print, screen and (min-width: 769px) {
  body {
    letter-spacing: 0em;
    line-height: 1.8125;
    font-size: 160%;
    overflow-x: initial;
  }
}

a {
  background-color: transparent;
  color: #323232;
  text-decoration: none;
}

@media print, screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

.content:before, .content:after {
  content: '';
  background-size: contain;
  background-position: center;
  display: block;
  position: absolute;
}

@media print, screen and (min-width: 1001px) {
  .button {
    transition: opacity ease .3s;
  }
  .button:hover {
    opacity: .8;
  }
}

.flow__tw dd + dt:before, .flow--form .flow__ttl button:after, .flow--tw .flow__ttl button:after, .access__airline dt:before, .access__car dt:before, .contact-navigation li:nth-of-type(2) a:before, .contact-menu li:nth-of-type(2) em:before, .menu__mail:before, .contact-navigation li:nth-of-type(1) a:before, .contact-menu li:nth-of-type(1) em:before, .menu__tel:before, .access__train dt:before {
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
}

.flow__tw dd + dt:before, .flow--form .flow__ttl button:after, .flow--tw .flow__ttl button:after {
  width: 5.866vw;
  height: 4vw;
}

.access__airline dt:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1Ni4xNiAyMy42OCI+PHBhdGggZmlsbD0iI0FGOUM3NSIgY2xhc3M9ImNscy0xIiBkPSJNMCwyMS4yYzAsMi41OCw4LjQ5LDIuNDgsMTAuMzYsMi40OEg0Mi44NWM1LjQ2LjA5LDEzLjMxLTUuNzksMTMuMzEtOC4zNywwLS42My0uNzktLjkyLTQuMzItMUw1NS4yMyw4YS41OS41OSwwLDAsMCwwLS41OS40OS40OSwwLDAsMC0uNDktLjIzbC00LC43NGEuNDEuNDEsMCwwLDAtLjI1LjEzTDQ0LDE0LjMzSDM1LjE4TDQxLjE4LjhhLjU4LjU4LDAsMCwwLDAtLjU4QS40Ny40NywwLDAsMCw0MC42NCwwTDMzLjg2LDEuNTVhLjU1LjU1LDAsMCwwLS4yNy4xN0wyMi4xMiwxNC4zM0gxMC4zNkM2Ljc4LDE0LjcyLDAsMTguNjIsMCwyMS4yWm0zNy4yNC0yLjlhMS4xOCwxLjE4LDAsMCwxLDEuMTItMS4yNGgxLjA2YTEuMjUsMS4yNSwwLDAsMSwwLDIuNDhIMzguMzZBMS4xOCwxLjE4LDAsMCwxLDM3LjI0LDE4LjNaTTMyLDE4LjNhMS4xOCwxLjE4LDAsMCwxLDEuMTItMS4yNGgxYTEuMjUsMS4yNSwwLDAsMSwwLDIuNDhoLTFBMS4xOCwxLjE4LDAsMCwxLDMyLDE4LjNabS01LjIyLDBhMS4xOCwxLjE4LDAsMCwxLDEuMTItMS4yNGgxYTEuMjUsMS4yNSwwLDAsMSwwLDIuNDhoLTFBMS4xOCwxLjE4LDAsMCwxLDI2LjgsMTguM1ptLTUuMjIsMGExLjE4LDEuMTgsMCwwLDEsMS4xMi0xLjI0aDEuMDVhMS4yNSwxLjI1LDAsMCwxLDAsMi40OEgyMi43QTEuMTgsMS4xOCwwLDAsMSwyMS41OCwxOC4zWm0tNS4yMywwYTEuMTksMS4xOSwwLDAsMSwxLjEzLTEuMjRoMS4wNWExLjI1LDEuMjUsMCwwLDEsMCwyLjQ4SDE3LjQ4QTEuMTksMS4xOSwwLDAsMSwxNi4zNSwxOC4zWm0tMTEuNjQuNDljMC0uNjksMS43OS0xLjczLDIuNDEtMS43M2gzLjQ2YTEuMjUsMS4yNSwwLDAsMSwwLDIuNDhINy4xMkM2LjUsMTkuNTQsNC43MSwxOS40OCw0LjcxLDE4Ljc5WiIvPjwvc3ZnPg==");
}

.access__car dt:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OS43OCAyNC41OSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNBRjlDNzU7fTwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTQ5LjE3LDIwLjgzczEuMzctNi4xOCwwLTlTNDIuMSwwLDI4LjE1LDBzLTE2LDcuODMtMTYsNy44My00LjI1LS41MS05LjI0LDMuMzVTMSwyMC44MywxLDIwLjgzSDQuODFhNiw2LDAsMCwxLS4wOC0uNzMsNi4yOCw2LjI4LDAsMSwxLDEyLjU2LDAsNiw2LDAsMCwxLS4wOC43M0gzNC4xM2E2LDYsMCwwLDEtLjA4LS43Myw2LjI4LDYuMjgsMCwwLDEsMTIuNTYsMCw2LDYsMCwwLDEtLjA4LjczWk0yNy45LDIuMTZ2Ni40SDE1LjQ1UzE3LjEyLDIuNDMsMjcuOSwyLjE2Wm0xNS41OSw2LjRIMzAuMjRWMi4yQTE4LjYzLDE4LjYzLDAsMCwxLDQzLjQ5LDguNDFaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNNDAuMzMsMTUuNjFhNC40OSw0LjQ5LDAsMCwxLDQuNDksNC40OSw0LjQsNC40LDAsMCwxLS4wNy43Myw0LjQ4LDQuNDgsMCwwLDEtOC44NCwwLDQuNCw0LjQsMCwwLDEtLjA3LS43M0E0LjQ5LDQuNDksMCwwLDEsNDAuMzMsMTUuNjFaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTEsMTUuNjFBNC40OSw0LjQ5LDAsMCwxLDE1LjUsMjAuMWE0LjQsNC40LDAsMCwxLS4wNy43Myw0LjQ4LDQuNDgsMCwwLDEtOC44NCwwLDQuNCw0LjQsMCwwLDEtLjA3LS43M0E0LjQ5LDQuNDksMCwwLDEsMTEsMTUuNjFaIi8+PC9zdmc+");
}

.contact-navigation li:nth-of-type(2) a:before, .contact-menu li:nth-of-type(2) em:before, .menu__mail:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMi4xOCAyMi4xOCI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNmZmY7fTwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTUuNzcsMTQuODRIMTYuNDF2LS4ybC0zLjU1LTIuODMtMS4yOSwxYS44Mi44MiwwLDAsMS0uNTIuMTguODUuODUsMCwwLDEtLjUzLS4xOGwtMS4yLTFMNS43NywxNC43M3YuMTFaIi8+PHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjE2LjQxIDguOTYgMTYuNDEgOC45NSAxNC4yOCAxMC42NiAxMy44IDExLjA1IDEzLjggMTEuMDUgMTMuOCAxMS4wNSAxNi40MSAxMy4xMyAxNi40MSAxMC41NSAxNi40MSA4Ljk2IDE2LjQxIDguOTYiLz48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iOC4zNyAxMS4xMyA4LjM3IDExLjEzIDguMzggMTEuMTMgNi43NyA5Ljg0IDUuNzcgOS4wNCA1Ljc3IDkuMDUgNS43NyA5LjA0IDUuNzcgMTMuMjIgNy45MSAxMS41IDguMzcgMTEuMTMiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMSwxMS41OWEuNTkuNTksMCwwLDAsLjM2LS4xM2w1LTRWNy4zM0g1Ljc3di4yMWw0LjkyLDMuOTJBLjU4LjU4LDAsMCwwLDExLDExLjU5WiIvPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTExLjA5LDBBMTEuMDksMTEuMDksMCwxLDAsMjIuMTgsMTEuMDksMTEuMDgsMTEuMDgsMCwwLDAsMTEuMDksMFpNNC4yOCwxNS40OVY2LjY5YS44NS44NSwwLDAsMSwuODQtLjg0SDE3LjA1YS44NC44NCwwLDAsMSwuODQuODR2OC44YS44NC44NCwwLDAsMS0uODQuODRINS4xMkEuODUuODUsMCwwLDEsNC4yOCwxNS40OVoiLz48L3N2Zz4=");
}

.contact-navigation li:nth-of-type(1) a:before, .contact-menu li:nth-of-type(1) em:before, .menu__tel:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMi4xOCAyMi4xOCI+PHBhdGggZmlsbD0iI2ZmZiIgY2xhc3M9ImNscy0xIiBkPSJNMTEuMDksMEExMS4wOSwxMS4wOSwwLDEsMCwyMi4xOCwxMS4wOSwxMS4wOCwxMS4wOCwwLDAsMCwxMS4wOSwwWm02LjM4LDE1LjM3Yy0uMTMuNS0xLjIzLDIuMTYtMi4xNSwyLjE2aDBBNC44NCw0Ljg0LDAsMCwxLDE0LDE3LjEyYTE3LjEsMTcuMSwwLDAsMS05LTksNC4wOSw0LjA5LDAsMCwxLS40MS0xLjI2QzQuNjEsNiw2LjI4LDQuODMsNi44MSw0LjdhMS44NCwxLjg0LDAsMCwxLC40MSwwLDEuNjksMS42OSwwLDAsMSwxLjM0LjY1bC44NywxLjExQTEuNzEsMS43MSwwLDAsMSw5LjM0LDguNmE1LjExLDUuMTEsMCwwLDEtLjUyLjUyLDkuMzUsOS4zNSwwLDAsMCwxLjgzLDIuNCw5LjM2LDkuMzYsMCwwLDAsMi40MSwxLjgzLDUuNzksNS43OSwwLDAsMSwuNTEtLjUyLDEuNzIsMS43MiwwLDAsMSwxLjE1LS40NCwxLjc4LDEuNzgsMCwwLDEsMSwuMzVsMS4xMS44N0ExLjcsMS43LDAsMCwxLDE3LjQ3LDE1LjM3WiIvPjwvc3ZnPg==");
}

.access__train dt:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OS43OCAzNy41MSI+PGRlZnM+PHN0eWxlPi5jbHMtMXtmaWxsOiNBRjlDNzU7fTwvc3R5bGU+PC9kZWZzPjxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTM4LjU5LDhhLjkzLjkzLDAsMCwwLDEuMSwwTDQ0LDQuODZhLjk0Ljk0LDAsMCwwLDAtMS41MkwzOS42OS4xOGEuOTMuOTMsMCwwLDAtMS4xLDBMMzQuMjUsMy4zNGEuOTUuOTUsMCwwLDAsMCwxLjUyWm0uNTUtNS45MywyLjc1LDItMi43NSwyLTIuNzUtMloiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0xMC4wOCw4YTEsMSwwLDAsMCwxLjExLDBsNC4zNC0zLjE2YTEsMSwwLDAsMCwwLTEuNTJMMTEuMTkuMThhMSwxLDAsMCwwLTEuMTEsMEw1Ljc0LDMuMzRhMSwxLDAsMCwwLDAsMS41MlptLjU1LTUuOTMsMi43NiwyLTIuNzYsMi0yLjc1LTJaIi8+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMi44MSwzMi44M0g0LjA3djIuMWEyLjU4LDIuNTgsMCwxLDAsNS4xNSwwdi0yLjFoMi4zM3YyLjFhMi41OCwyLjU4LDAsMSwwLDUuMTUsMHYtMi4xSDMzLjA3djIuMWEyLjU4LDIuNTgsMCwwLDAsNS4xNiwwdi0yLjFoMi4zM3YyLjFhMi41OCwyLjU4LDAsMSwwLDUuMTUsMHYtMi4xSDQ3QTIuODIsMi44MiwwLDAsMCw0OS43OCwzMFYxMi41NkEyLjgyLDIuODIsMCwwLDAsNDcsOS43NUgyLjgxQTIuOCwyLjgsMCwwLDAsMCwxMi41NlYzMGEyLjg2LDIuODYsMCwwLDAsLjgyLDJBMi44NCwyLjg0LDAsMCwwLDIuODEsMzIuODNabTM4LTE5LjM0SDQ2djguMjdINDAuOFptLTcuNDksMGg1LjYxdjguMjdIMzMuMzFabS03LjQ4LDBoNS42MXY4LjI3SDI1LjgzWm0tNy40OSwwSDI0djguMjdIMTguMzRabS03LjQ5LDBoNS42MnY4LjI3SDEwLjg1Wm0tNy4xMSwwSDl2OC4yN0gzLjc0WiIvPjwvc3ZnPg==");
}

.content {
  width: 89.333%;
}

@media print, screen and (min-width: 769px) {
  .content {
    width: 98%;
    max-width: 1000px;
  }
}

.content {
  margin-left: auto;
  margin-right: auto;
}

.content {
  margin-left: auto;
  margin-right: auto;
}

.header {
  position: relative;
  overflow: hidden;
}

@media print, screen and (min-width: 769px) {
  .header__inner {
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    max-width: 1500px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.navigation {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
}

@media print, screen and (min-width: 769px) {
  .navigation {
    display: none;
  }
}

.main {
  overflow: hidden;
}

.footer {
  background-color: #8a6b3f;
  padding: 8vw 0 13.333vw 0;
  color: #fff;
}

@media print, screen and (min-width: 769px) {
  .footer {
    padding: 30px 0 0 0;
  }
}

.footer div {
  padding-bottom: 13.333vw;
}

@media print, screen and (min-width: 769px) {
  .footer div {
    padding-bottom: 30px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-content: center;
            align-content: center;
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    width: 98%;
    max-width: 1376px;
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 769px) {
  .footer dl {
    display: -webkit-flex;
    display: flex;
  }
}

@media print, screen and (min-width: 769px) {
  .footer dt {
    margin-top: 5px;
  }
}

@media print, screen and (min-width: 769px) {
  .footer dd {
    text-align: left;
    margin-left: 40px;
  }
}

.footer p {
  margin-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .footer p {
    margin-top: 0;
  }
}

.footer p img {
  width: 49vw;
  border: solid 3px #fff;
}

@media print, screen and (min-width: 769px) {
  .footer p img {
    width: 257px;
    vertical-align: bottom;
  }
}

.footer small {
  display: block;
  background-color: #fff;
  color: #323232;
  font-size: 3.2vw;
  padding: 1.333vw 0;
}

@media print, screen and (min-width: 769px) {
  .footer small {
    font-size: 0.75em;
    padding: 10px 0;
  }
}

.page-home .mfp-iframe-scaler iframe {
  background-color: #fff;
}

.page-home .mfp-iframe-scaler {
  padding-top: 80vh;
}

@media print, screen and (min-width: 769px) {
  .page-home .mfp-iframe-scaler {
    padding-top: 86vh;
  }
}

.page-home.movie .mfp-iframe-scaler {
  padding-top: 56.25% !important;
}

@media print, screen and (min-width: 769px) {
  .page-home.movie .mfp-iframe-scaler {
    padding-top: 56.25% !important;
  }
}

.page-home .mfp-iframe-holder .mfp-content {
  max-width: 1000px;
}

.page-home .mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.3s ease-out;
}

.page-home .mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}

.page-home .mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

.page-home .mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all 0.3s ease-out;
}

.page-home .mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

.page-home .mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

.page-home .mfp-close {
  text-indent: -9999px;
}

.page-home .mfp-close:after {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 0.8vw;
  width: 8vw;
  max-width: 50px;
  height: 3px;
  background-color: #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media print, screen and (min-width: 769px) {
  .page-home .mfp-close:after {
    top: 10px;
    width: 4.533vw;
  }
}

.page-home .mfp-close:before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 0.8vw;
  max-width: 50px;
  width: 8vw;
  height: 3px;
  background-color: #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media print, screen and (min-width: 769px) {
  .page-home .mfp-close:before {
    top: 10px;
    width: 4.533vw;
  }
}

@media print, screen and (max-width: 768px) {
  .anchor {
    margin-top: -8vw;
    padding-top: 8vw;
  }
}

.button {
  background-color: #a18f6c;
  color: #fff;
  display: block;
  width: 100%;
  font-size: 5.333vw;
  font-weight: bold;
  padding: 5.333vw 0;
}

@media print, screen and (min-width: 769px) {
  .button {
    font-size: 20px;
    padding: 20px 0;
  }
}

.button--back {
  background-color: #999999;
}

.button--submit[disabled="disabled"], .button--submit:disabled {
  opacity: .5;
}

@media print, screen and (min-width: 769px) {
  .button--submit[disabled="disabled"], .button--submit:disabled {
    pointer-events: none;
  }
}

.button--cancel {
  background-color: #c0c0c1;
}

.button--cancel:after {
  display: none;
}

.button--back {
  background-color: #c0c0c1;
}

.button--back:after {
  display: none;
}

.content--white {
  background-color: #fff;
  border: solid 0.533vw #a0733f;
  border-radius: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .content--white {
    border-radius: 30px;
    border: solid 3px #a0733f;
  }
}

.content + .title {
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .content + .title {
    margin-top: 60px;
  }
}

.catch {
  margin-top: 10.666vw;
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .catch {
    margin-top: 20px;
    text-align: center;
  }
}

.link[target="_blank"] {
  color: #0073ca;
  text-decoration: underline;
}

.link[target="_blank"]:after {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  width: 3.359vw;
  height: 3.359vw;
  margin-left: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .link[target="_blank"]:after {
    width: 14.308px;
    height: 14.307px;
    margin-left: 5px;
  }
}

.notes {
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .notes {
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 769px) {
  .notes {
    font-size: 1em;
  }
}

.notes li {
  text-indent: -1em;
  margin-left: 1em;
}

.notes.-plan li {
  text-indent: 0;
  margin-left: 0;
}

.notes.-plan span {
  font-size: 0.75em;
}

.notes.-plan em {
  font-weight: bold;
}

.page_top {
  display: none !important;
}

.section {
  position: relative;
  padding: 13.333vw 0;
}

@media print, screen and (min-width: 769px) {
  .section {
    padding: 80px 0;
  }
}

.section--white {
  background-color: #fff;
}

.section--beige {
  background-color: #f5f3ee;
}

.title {
  font-size: 6.933vw;
  color: #a18f6c;
  line-height: 1.34615;
  letter-spacing: .05em;
}

@media print, screen and (min-width: 769px) {
  .title {
    font-size: 30px;
  }
}

@media print, screen and (max-width: 768px) {
  .title--bold h2 {
    font-weight: bold;
    letter-spacing: .1em;
  }
}

.title--small {
  font-size: 5.333vw;
  letter-spacing: .22em;
  font-weight: bold;
}

@media print, screen and (min-width: 769px) {
  .title--small {
    font-size: 20px;
  }
}

.title--border {
  color: #323232;
  border: solid 1px #a18f6c;
  font-size: 5.866vw;
  font-weight: bold;
  letter-spacing: .2em;
  padding: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .title--border {
    border: solid 2px #a18f6c;
    font-size: 22px;
    padding: 15px;
    max-width: 726px;
    margin: 0 auto;
  }
}

.access__txt {
  text-align: left;
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .access__txt {
    text-align: center;
    margin-top: 20px;
  }
}

.access__map {
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .access__map {
    margin-top: 30px;
  }
}

.access__gmap {
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .access__gmap {
    margin-top: 40px;
    width: 98%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
}

.access__gmap iframe {
  width: 100%;
  height: 64vw;
}

@media print, screen and (min-width: 769px) {
  .access__gmap iframe {
    height: 400px;
  }
}

.access__gmap .content {
  text-align: left;
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .access__gmap .content {
    display: -webkit-flex;
    display: flex;
    margin-top: 60px;
  }
}

.access__gmap dt {
  color: #816b41;
}

.access__gmap dd {
  margin-top: 4vw;
}

@media print, screen and (min-width: 769px) {
  .access__gmap dd {
    margin-top: 0;
    margin-left: 40px;
  }
}

.access__howto {
  background-color: #fff;
  padding: 8vw 5.333vw;
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .access__howto {
    padding: 50px 6%;
    margin-top: 40px;
  }
}

.access__howto dl {
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .access__howto dl {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
  }
}

.access__howto dl + dl {
  margin-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .access__howto dl + dl {
    margin-top: 40px;
  }
}

.access__howto dt {
  font-size: 4.8vw;
  font-weight: bold;
  display: -webkit-flex;
  display: flex;
}

@media print, screen and (min-width: 769px) {
  .access__howto dt {
    font-size: 1.125em;
    width: 24.919%;
    border-right: solid 1px #bfbfbf;
  }
}

.access__howto dd .text-red {
  font-weight: bold;
}

@media print, screen and (min-width: 769px) {
  .access__howto dd {
    width: 71.8%;
  }
}

.access__car p {
  margin-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .access__car p {
    margin-top: 0;
  }
}

@media print, screen and (min-width: 769px) {
  .access__car p:nth-of-type(2) {
    margin-top: 15px;
  }
}

.access__car dt:before {
  width: 10.041vw;
  height: 4.96vw;
  margin-right: 2.666vw;
  -webkit-transform: translateY(2.133vw);
          transform: translateY(2.133vw);
}

@media print, screen and (min-width: 769px) {
  .access__car dt:before {
    width: 40.795px;
    height: 20.152px;
    margin-right: 10px;
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
}

.access__parking {
  margin-top: 4vw;
}

@media print, screen and (min-width: 769px) {
  .access__parking {
    margin-top: 30px;
  }
}

.access__parking h3 {
  font-weight: bold;
  color: #a18f6c;
}

@media print, screen and (min-width: 769px) {
  .access__parking h3 {
    margin-bottom: 10px;
  }
}

@media print, screen and (min-width: 769px) {
  .access__parking img {
    float: right;
    margin-left: 15px;
  }
}

.access__train dt:before {
  width: 10.041vw;
  height: 7.566vw;
  margin-right: 2.666vw;
}

@media print, screen and (min-width: 769px) {
  .access__train dt:before {
    width: 40.794px;
    height: 30.74px;
    margin-right: 10px;
  }
}

.access__airline dt:before {
  width: 11.329vw;
  height: 4.777vw;
  margin-right: 2.666vw;
  -webkit-transform: translateY(1.333vw);
          transform: translateY(1.333vw);
}

@media print, screen and (min-width: 769px) {
  .access__airline dt:before {
    width: 46.025px;
    height: 19.407px;
    margin-right: 10px;
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}

.attention {
  background-color: #fff;
  color: #ff0000;
  font-weight: bold;
  text-align: left;
  font-size: 4.8vw;
  line-height: 1.61111;
  padding: 5.333vw;
  margin: 10.666vw 0;
}

@media print, screen and (min-width: 769px) {
  .attention {
    font-size: 18px;
    padding: 20px;
    margin: 40px 0 60px;
    text-align: center;
  }
}

.contact__ttl {
  margin-bottom: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .contact__ttl {
    margin-bottom: 20px;
  }
}

.contact__sub {
  font-weight: 700;
  margin-bottom: 2.666vw;
}

@media print, screen and (min-width: 769px) {
  .contact__sub {
    margin-bottom: 10px;
  }
}

.contact__tel {
  margin-bottom: 2.666vw;
}

@media print, screen and (min-width: 769px) {
  .contact__tel {
    margin-bottom: 10px;
  }
}

.contact__open {
  font-size: 0.75em;
}

@media print, screen and (min-width: 769px) {
  .contact__open {
    font-size: 0.75em;
  }
}

.contact-navigation {
  display: -webkit-flex;
  display: flex;
}

@media print, screen and (max-width: 768px) {
  .contact-navigation {
    bottom: 0;
    left: 0;
  }
}

@media print, screen and (min-width: 769px) {
  .contact-navigation {
    width: 410px;
  }
}

.contact-navigation li {
  -webkit-flex: 1;
          flex: 1;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li {
    width: 200px;
  }
}

.contact-navigation li:nth-of-type(1) i {
  display: none;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li:nth-of-type(1) i {
    display: block;
    font-size: 1.312em;
    line-height: 1;
    font-weight: bold;
  }
}

.contact-navigation li:nth-of-type(1) b {
  display: none;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li:nth-of-type(1) b {
    display: block;
    font-size: 0.75em;
    text-align: left;
    letter-spacing: .08em;
  }
}

.contact-navigation li:nth-of-type(1) em {
  font-weight: bold;
  font-size: 4.8vw;
  line-height: 13.333vw;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li:nth-of-type(1) em {
    display: none;
  }
}

.contact-navigation li:nth-of-type(2) {
  border-left: solid 1px #fff;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li:nth-of-type(2) {
    border-left: none;
    margin-left: 10px;
  }
}

.contact-navigation li:nth-of-type(2) b {
  display: none;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li:nth-of-type(2) b {
    padding-top: 5px;
    display: block;
    font-weight: bold;
    font-size: 0.937em;
    line-height: 1;
  }
}

.contact-navigation li:nth-of-type(2) em {
  font-weight: bold;
  font-size: 4.8vw;
  line-height: 13.333vw;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation li:nth-of-type(2) em {
    font-size: 0.937em;
    line-height: 1;
    font-weight: bold;
  }
}

.contact-navigation a {
  color: #fff;
  background-color: #a18f6c;
  display: block;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation a {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
            align-items: center;
    -webkit-align-content: center;
            align-content: center;
    -webkit-justify-content: center;
            justify-content: center;
    height: 60px;
  }
}

.contact-navigation a:before {
  width: 7.359vw;
  height: 7.359vw;
  vertical-align: middle;
  -webkit-transform: translateY(-0.534vw);
          transform: translateY(-0.534vw);
  margin-right: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .contact-navigation a:before {
    width: 39.6px;
    height: 39.6px;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
    margin-right: 8px;
  }
}

@media print, screen and (min-width: 769px) {
  .contact-menu {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    max-width: 726px;
    margin: 50px auto 0;
  }
  .contact-menu li {
    width: 47.933%;
  }
}

.contact-menu a {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
          justify-content: center;
  color: #fff;
  background-color: #a18f6c;
  height: 36.8vw;
}

@media print, screen and (min-width: 769px) {
  .contact-menu a {
    height: 138px;
  }
}

.contact-menu i {
  font-size: 4.8vw;
  font-weight: bold;
  display: block;
  letter-spacing: .12em;
}

@media print, screen and (min-width: 769px) {
  .contact-menu i {
    font-size: 18px;
  }
}

.contact-menu b {
  font-size: 3.8vw;
  display: block;
  letter-spacing: .06em;
}

@media print, screen and (min-width: 769px) {
  .contact-menu b {
    font-size: 15px;
  }
}

.contact-menu em {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-align-content: center;
          align-content: center;
  -webkit-justify-content: center;
          justify-content: center;
  text-align: left;
  font-weight: bold;
}

.contact-menu em:before {
  width: 11.2vw;
  height: 11.2vw;
  margin-right: 2.666vw;
}

@media print, screen and (min-width: 769px) {
  .contact-menu em:before {
    width: 42px;
    height: 42px;
    margin-right: 10px;
    vertical-align: middle;
  }
}

.contact-menu li {
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .contact-menu li {
    margin-top: 0;
  }
}

.contact-menu li:nth-of-type(1) em {
  font-size: 10.335vw;
  line-height: 1.4;
}

@media print, screen and (min-width: 769px) {
  .contact-menu li:nth-of-type(1) em {
    font-size: 38.757px;
  }
}

.contact-menu li:nth-of-type(2) em {
  font-size: 6.4vw;
  line-height: 1.25;
}

@media print, screen and (min-width: 769px) {
  .contact-menu li:nth-of-type(2) em {
    font-size: 24px;
  }
}

.flow {
  width: 88.059%;
  margin: 8vw auto 0;
}

@media print, screen and (min-width: 769px) {
  .flow {
    width: 616.948px;
    margin: 60px auto 0;
  }
}

.flow--form {
  border: solid 0.266vw #002e87;
  background-color: #ebecf2;
}

@media print, screen and (min-width: 769px) {
  .flow--form {
    border: solid 3px #002e87;
  }
}

.flow--form .flow__ttl button {
  color: #002e87;
}

.flow--form .flow__ttl button:after {
  width: 3.013vw;
  height: 2.133vw;
}

@media print, screen and (min-width: 769px) {
  .flow--form .flow__ttl button:after {
    width: 21.226px;
    height: 14.581px;
  }
}

.flow--tw {
  border: solid 0.266vw #1a71e0;
  background-color: #e6edf2;
}

@media print, screen and (min-width: 769px) {
  .flow--tw {
    border: solid 3px #1a71e0;
  }
}

.flow--tw .flow__ttl {
  position: relative;
}

.flow--tw .flow__ttl button {
  color: #1a71e0;
}

.flow--tw .flow__ttl button:after {
  width: 3.013vw;
  height: 2.133vw;
}

@media print, screen and (min-width: 769px) {
  .flow--tw .flow__ttl button:after {
    width: 21.226px;
    height: 14.581px;
  }
}

.flow--tw .flow__ttl i {
  position: absolute;
  right: -12.8vw;
  top: -9.334vw;
}

@media print, screen and (min-width: 769px) {
  .flow--tw .flow__ttl i {
    right: -48px;
    top: -35px;
  }
}

.flow__ttl button {
  background-color: #fff;
  text-align: center;
  padding: 3.733vw 0;
  width: 100%;
  display: block;
  font-weight: 700;
}

@media print, screen and (min-width: 769px) {
  .flow__ttl button {
    padding: 14px 0;
    vertical-align: middle;
    font-size: 1.875em;
  }
}

@media print, screen and (min-width: 769px) and (min-width: 769px) {
  .flow__ttl button:hover:after {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
}

.flow__ttl button:after {
  -webkit-transform: translateY(-0.534vw);
          transform: translateY(-0.534vw);
  margin-left: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .flow__ttl button:after {
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
    margin-left: 10px;
    transition: -webkit-transform ease .3s;
    transition: transform ease .3s;
    transition: transform ease .3s, -webkit-transform ease .3s;
  }
}

.flow__ttl button.is-open:after {
  -webkit-transform: rotate(180deg) translateY(1.066vw);
          transform: rotate(180deg) translateY(1.066vw);
}

@media print, screen and (min-width: 769px) {
  .flow__ttl button.is-open:after {
    -webkit-transform: rotate(180deg) translateY(4px);
            transform: rotate(180deg) translateY(4px);
  }
}

.flow__content {
  padding: 10.666vw 0;
  display: none;
}

@media print, screen and (min-width: 769px) {
  .flow__content {
    padding: 70px 0;
  }
}

.flow__btn {
  padding-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .flow__btn {
    padding-top: 50px;
  }
}

.flow__btn a {
  margin: 0 auto;
  font-size: 1.375em;
}

.flow__txt {
  padding-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .flow__txt {
    padding-top: 10px;
    font-size: 1em;
  }
}

.flow__tw dt {
  position: relative;
}

.flow__tw dd {
  padding-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .flow__tw dd {
    padding-top: 5px;
    font-size: 1em;
  }
}

.flow__tw dd + dt {
  margin-top: 16vw;
}

@media print, screen and (min-width: 769px) {
  .flow__tw dd + dt {
    margin-top: 60px;
  }
}

.flow__tw dd + dt:before {
  position: absolute;
  top: -10.667vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media print, screen and (min-width: 769px) {
  .flow__tw dd + dt:before {
    width: 21.814px;
    height: 14.985px;
    top: -40px;
  }
}

.form {
  border: solid 1.066vw #a18f6c;
  padding: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .form {
    border: solid 10px #a18f6c;
    padding: 20px 0;
    min-height: 100%;
  }
}

@media print, screen and (min-width: 769px) {
  .form section {
    width: 83.399%;
    margin: 0 auto;
  }
}

.form header {
  margin-bottom: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .form header {
    margin-bottom: 20px;
  }
}

@media print, screen and (min-width: 769px) {
  .form header p {
    margin-top: 10px;
  }
}

.form header h3 {
  font-size: 4.266vw;
  font-weight: bold;
  text-align: left;
  padding: 12vw 0 8vw;
}

@media print, screen and (min-width: 769px) {
  .form header h3 {
    text-align: center;
    font-size: 18px;
    padding: 45px 0 30px;
  }
}

.form input[type=text],
.form textarea {
  border: solid #323232 1px;
}

.form__row {
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .form__row {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
  }
}

.form__row + .form__row {
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__row + .form__row {
    margin-top: 20px;
  }
}

.form__content {
  margin-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__content {
    margin-top: 5px;
    width: 71.462%;
  }
}

.form__content input[type=text],
.form__content textarea {
  width: 100%;
  padding: 2.666vw 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__content input[type=text],
  .form__content textarea {
    padding: 10px 5px;
  }
}

.form__content select {
  width: 100%;
  height: 3.125em;
  padding: 2.666vw 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__content select {
    width: auto;
    font-size: 1em;
    padding: 5px 10px 5px 5px;
  }
}

.form__content input[name=zip] {
  width: 77.333vw;
  margin-left: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__content input[name=zip] {
    width: 290px;
    margin-left: 20px;
  }
}

.form__content input[name=subject],
.form__content input[name=privacy] {
  margin-right: 2.133vw;
}

@media print, screen and (min-width: 769px) {
  .form__content input[name=subject],
  .form__content input[name=privacy] {
    margin-right: 8px;
  }
}

.form__content dl {
  margin-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__content dl {
    margin-top: 5px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.form__content dl + dl {
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__content dl + dl {
    margin-top: 20px;
  }
}

@media print, screen and (min-width: 769px) {
  .form__content dl dd {
    width: 70.469%;
  }
}

@media print, screen and (min-width: 769px) {
  .form__content dl.mail-confirm {
    margin-top: 5px;
  }
}

.form__content .text-tiny {
  font-size: 3.2vw;
  padding: 1.333vw 0;
}

@media print, screen and (min-width: 769px) {
  .form__content .text-tiny {
    font-size: 12px;
    padding: 0 0 5px 0;
  }
}

.form__content .text-small {
  font-size: 3.466vw;
  padding: 0 0 1.333vw 0;
}

@media print, screen and (min-width: 769px) {
  .form__content .text-small {
    font-size: 15px;
    padding: 0 0 5px 0;
  }
}

.form__content .subject li {
  display: inline-block;
  width: 40%;
}

@media print, screen and (min-width: 769px) {
  .form__content .subject li {
    width: auto;
  }
}

@media print, screen and (min-width: 769px) {
  .form__content .subject li + li {
    margin-left: 10%;
  }
}

.form__content.privacy-check {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}

.form__content.privacy-check a {
  color: #1a71e0;
  text-decoration: underline;
}

.form__button {
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .form__button {
    margin-top: 60px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
  }
}

.form__button div + div {
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .form__button div + div {
    margin-top: 0;
    margin-left: 20px;
  }
}

@media print, screen and (min-width: 769px) {
  .form__button div {
    width: 30%;
  }
}

.form__finish {
  text-align: left;
  font-size: 4vw;
}

@media print, screen and (min-width: 769px) {
  .form__finish {
    font-size: 16px;
  }
}

.form__finish .notes {
  margin-top: 6.666vw;
}

@media print, screen and (min-width: 769px) {
  .form__finish .notes {
    margin-top: 25px;
    width: auto;
    max-width: initial;
  }
}

.form__finish .notes span {
  display: inline-block;
  width: 1em;
  text-align: center;
}

.form span.is-error {
  color: #ff0000;
  display: block;
}

.form input[type=text].is-error,
.form textarea.is-error {
  background-color: #ffe9ee;
}

.page-form {
  height: 100%;
}

.howto__flow {
  margin-top: 13.333vw;
  list-style: none;
}

@media print, screen and (min-width: 769px) {
  .howto__flow {
    margin-top: 40px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
  }
}

.howto__flow li {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  position: relative;
}

@media print, screen and (min-width: 769px) {
  .howto__flow li {
    display: block;
    width: 21.7%;
  }
}

.howto__flow li + li {
  margin-top: 13.333vw;
}

@media print, screen and (min-width: 769px) {
  .howto__flow li + li {
    margin-top: 0;
  }
}

.howto__flow li + li:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2.133vw 1.866vw 0 1.866vw;
  border-color: #816b41 transparent transparent transparent;
  position: absolute;
  top: -9.334vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media print, screen and (min-width: 769px) {
  .howto__flow li + li:before {
    display: none;
  }
}

.howto__flow h4 {
  position: absolute;
  background-color: #816b41;
  color: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-align-content: center;
          align-content: center;
  border-radius: 50%;
  width: 10.666vw;
  height: 10.666vw;
  font-size: 5.939vw;
  -webkit-transform: translateY(-30%) translateX(-30%);
          transform: translateY(-30%) translateX(-30%);
}

@media print, screen and (min-width: 769px) {
  .howto__flow h4 {
    width: 40px;
    height: 40px;
    position: relative;
    font-size: 22px;
    margin: 0 auto 20px;
  }
}

.howto__flow picture {
  width: 41.333vw;
}

@media print, screen and (min-width: 769px) {
  .howto__flow picture {
    width: auto;
  }
}

.howto__flow div {
  width: 42.666vw;
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .howto__flow div {
    width: auto;
  }
}

.howto__flow h3 {
  color: #816b41;
  font-weight: bold;
  font-size: 4.8vw;
}

@media print, screen and (min-width: 769px) {
  .howto__flow h3 {
    font-size: 18px;
    min-height: 3.5em;
    margin-top: 5px;
  }
}

.howto__flow p {
  margin-top: 2.666vw;
}

@media print, screen and (min-width: 769px) {
  .howto__flow p {
    margin-top: 10px;
  }
}

.howto__open {
  background-color: #f5f3ee;
  padding: 5.333vw;
  margin-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .howto__open {
    padding: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-content: flex-start;
            align-content: flex-start;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    -webkit-justify-content: center;
            justify-content: center;
    margin-right: auto;
    margin-left: auto;
    margin-top: 50px;
  }
}

.howto__open dl {
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .howto__open dl:nth-of-type(1) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    width: 36.458%;
  }
  .howto__open dl:nth-of-type(1) dt {
    width: 30%;
  }
  .howto__open dl:nth-of-type(1) dd {
    width: 70%;
    padding-top: 0;
  }
}

@media print, screen and (min-width: 769px) {
  .howto__open dl:nth-of-type(2) {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    width: 50%;
  }
  .howto__open dl:nth-of-type(2) dt {
    width: 19.9%;
  }
  .howto__open dl:nth-of-type(2) dd {
    width: 80%;
    padding-top: 0;
  }
}

.howto__open dt {
  font-weight: bold;
}

dd + .howto__open dt {
  padding-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  dd + .howto__open dt {
    padding-top: 5px;
  }
}

.howto__open dd {
  padding-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .howto__open dd {
    padding-top: 5px;
  }
}

.howto__open dd span {
  font-size: 4vw;
}

@media print, screen and (min-width: 769px) {
  .howto__open dd span {
    font-size: 15px;
  }
}

.howto__price {
  border: solid 2px #a18f6c;
  margin-top: 5.333vw;
  padding: 5.333vw;
  color: #a18f6c;
}

@media print, screen and (min-width: 769px) {
  .howto__price {
    margin-top: 20px;
    padding: 17px 19px;
  }
}

.howto__price table {
  width: 100%;
}

.howto__price th, .howto__price td {
  border: 1px solid #d9d9d9;
  font-weight: 500;
  text-align: center;
}
@media print, screen and (max-width: 768px) {
  .howto__price th, .howto__price td {
    display: block;
    border-top: none;
    width: 100%;
  }

  .howto__price tr:first-child th {
    border-top: 1px solid #d9d9d9;
  }
}

.howto__price th {
  padding: 1.333vw 0;
  background-color: #f5f3ee;
  font-size: 4.8vw;
}
@media print, screen and (min-width: 769px) {
  .howto__price th {
    padding: 20px 0;
    width: 18%;
    font-size: 18px;
  }
}

.howto__price td {
  padding: 4vw 0;
  font-size: 5.6vw;
  line-height: 1.5;
}
@media print, screen and (min-width: 769px) {
  .howto__price td {
    padding: 20px 0;
    font-size: 21px;
  }
}

.howto__price small {
  font-size: 3.2vw;
}
@media print, screen and (min-width: 769px) {
  .howto__price small {
    font-size: 12px;
  }
}

.howto__price .price-attn {
  display: block;
  font-size: 3.466vw;
}
@media print, screen and (min-width: 769px) {
  .howto__price .price-attn {
    font-size: 13px;
  }
}

.howto__price + .title {
  margin-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .howto__price + .title {
    margin-top: 30px;
  }
}

.howto__list {
  margin-top: 5.333vw;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
}

@media print, screen and (min-width: 769px) {
  .howto__list {
    -webkit-flex-wrap: nowrap;
            flex-wrap: nowrap;
    margin-top: 30px;
  }
}

.howto__list li {
  width: 41.333vw;
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .howto__list li {
    width: 21.7%;
  }
}

.howto__list li:nth-of-type(n+3) {
  margin-top: 5.333vw;
}

@media print, screen and (min-width: 769px) {
  .howto__list li:nth-of-type(n+3) {
    margin-top: 0;
  }
}

.howto__list h4 {
  color: #a18f6c;
  font-weight: bold;
  font-size: 4.8vw;
  letter-spacing: .22em;
}

@media print, screen and (min-width: 769px) {
  .howto__list h4 {
    font-size: 18px;
  }
}

.howto__list p {
  margin-top: 1.333vw;
}

@media print, screen and (min-width: 769px) {
  .howto__list p {
    margin-top: 5px;
  }
}

@media print, screen and (min-width: 769px) {
  .howto__about div {
    margin-top: 30px;
    display: grid;
    display: -ms-grid;
    grid-template-rows: repeat(5, 20%);
    -ms-grid-template-rows: repeat(5, 20%);
    grid-template-columns: repeat(20, 5%);
    -ms-grid-template-columns: repeat(20, 5%);
    grid-template-areas: "a a a a a a a a . b b b b b b b b b b b" "a a a a a a a a . b b b b b b b b b b b" "a a a a a a a a . c c c c c c c c c c c" "a a a a a a a a . c c c c c c c c c c c" "a a a a a a a a . d d d d d d d d d d d";
    -ms-grid-template-areas: "a a a a a a a a . b b b b b b b b b b b" "a a a a a a a a . b b b b b b b b b b b" "a a a a a a a a . c c c c c c c c c c c" "a a a a a a a a . c c c c c c c c c c c" "a a a a a a a a . d d d d d d d d d d d";
  }
}

.howto__about div p {
  margin-top: 8vw;
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .howto__about div p {
    margin-top: 0;
  }
  .howto__about div p:nth-of-type(1) {
    grid-area: b;
    -ms-grid-area: b;
    letter-spacing: .1em;
    font-size: 1em;
  }
  .howto__about div p:nth-of-type(2) {
    grid-area: a;
    -ms-grid-area: a;
  }
}

@media print, screen and (min-width: 769px) {
  .howto__about div ul {
    grid-area: c;
    -ms-grid-area: c;
  }
}

@media print, screen and (min-width: 769px) {
  .howto__about div ul.-plan {
    grid-area: d;
    -ms-grid-area: d;
  }
}

@media all and (-ms-high-contrast: none) {
  .howto__about div ul.-plan {
    margin-top: 120px;
  }
}

@media all and (-ms-high-contrast: none) and (max-width: 768px) {
  .howto__about div ul.-plan {
    margin-top: 30px;
  }
}

@supports (-ms-ime-align:auto) {
  .howto__about div ul.-plan {
    margin-top: 120px;
  }
}

@media print, screen and (max-width: 768px) {
  @supports (-ms-ime-align:auto) {
    .howto__about div ul.-plan {
      margin-top: 30px;
    }
  }
}

@media print, screen and (min-width: 769px){
  .howto__about div p:nth-of-type(1) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 10;
    -ms-grid-column-span: 11;
  }
  .howto__about div p:nth-of-type(2) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 8;
  }
  .howto__about div ul {
    -ms-grid-row: 3;
    -ms-grid-row-span: 3;
    -ms-grid-column: 10;
    -ms-grid-column-span: 11;
  }
}

.howto__about div img {
  vertical-align: bottom;
}

@media all and (-ms-high-contrast: none) {
  .howto__about div img {
    margin-right: 3em;
  }
}

@supports (-ms-ime-align:auto) {
  .howto__about div img {
    margin-right: 3em;
  }
}

.howto__about div .notes {
  margin-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .howto__about div .notes {
    margin-top: 0vw;
    letter-spacing: .1em;
  }
}

.howto__about div + .title {
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .howto__about div + .title {
    margin-top: 80px;
  }
}

.logo {
  position: absolute;
  top: 5.333vw;
  left: 5.333vw;
  z-index: 101;
}

@media print, screen and (min-width: 769px) {
  .logo {
    top: 20px;
    left: 20px;
  }
}

.logo svg {
  width: 30.562vw;
  height: 6.72vw;
  transition: fill .3s ease;
}

@media print, screen and (min-width: 769px) {
  .logo svg {
    width: 120px;
    height: 26.385px;
  }
}

.is-menu-active .logo svg .a, .is-menu-active .logo svg .b {
  fill: #fff;
}

.main-visual {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-align-content: center;
          align-content: center;
  -webkit-align-items: center;
          align-items: center;
  background-image: url("../img/bg_visual_1@2x.png");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 177.147vw;
}

@media print, screen and (min-width: 769px) {
  .main-visual {
    background-image: url("../img/bg_visual_1.png");
    height: 800px;
    background-attachment: fixed;
  }
}

.main-visual h1 {
  line-height: 0;
  padding-bottom: 14.666vw;
}

.main-visual h1 svg {
  width: 48vw;
  height: 48vw;
}

@media print, screen and (min-width: 769px) {
  .main-visual h1 svg {
    width: 187px;
    height: 187px;
  }
}

@media print, screen and (min-width: 769px) {
  .main-visual h1 {
    padding-bottom: 0;
  }
}

.main-visual.is-not-fix {
  background-attachment: scroll;
}

.main-visual__fix {
  background-size: cover;
  background-position: center;
  position: relative;
  height: 58.666vw;
}

@media print, screen and (min-width: 769px) {
  .main-visual__fix {
    height: 800px;
    background-attachment: fixed;
  }
}

.main-visual__fix span {
  color: #fff;
  font-weight: bold;
  position: absolute;
  left: 3%;
  bottom: 5%;
  font-size: 4.266vw;
  transition: opacity .3s ease;
}

@media print, screen and (min-width: 769px) {
  .main-visual__fix span {
    font-size: 1.25em;
  }
}

.main-visual__fix span.is-hide {
  opacity: 0;
}

.main-visual__fix--use {
  background-image: url("../img/bg_visual_2@2x.png");
}

@media print, screen and (min-width: 769px) {
  .main-visual__fix--use {
    background-image: url("../img/bg_visual_2.png");
  }
}

.main-visual__fix--howto {
  background-image: url("../img/bg_visual_3@2x.png");
}

@media print, screen and (min-width: 769px) {
  .main-visual__fix--howto {
    background-image: url("../img/bg_visual_3.png");
  }
}

.main-visual__fix--access {
  background-image: url("../img/bg_visual_4@2x.png");
}

@media print, screen and (min-width: 769px) {
  .main-visual__fix--access {
    background-image: url("../img/bg_visual_4.png");
  }
}

.main-visual__fix.is-not-fix {
  background-attachment: scroll;
}

.menu {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  z-index: 100;
  height: 0;
}

.menu.is-menu-open {
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.3);
}

@media print, screen and (max-width: 768px) {
  .menu:after {
    content: '';
    display: block;
    position: fixed;
    top: -1px;
    left: 0;
    right: 0;
    z-index: 1;
    background-color: #a18f6c;
    height: 18.666vw;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
    transition: opacity .5s ease .5s;
  }
  .menu.is-menu-open:after {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}

.menu.is-menu-open ul {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}

.menu button {
  position: absolute;
  right: 0;
  top: 0;
  background-color: #a18f6c;
  background-size: contain;
  width: 16vw;
  height: 16vw;
  z-index: 10;
  transition-property: left;
  transition-duration: .3s;
  transition-timing-function: ease;
}

.menu button span {
  display: inline-block;
  padding-top: 7vw;
  color: #fff;
  letter-spacing: .05em;
}

.menu button span:before {
  content: 'MENU';
  font-size: 2.4vw;
}

.menu button i {
  width: 100%;
  display: block;
}

.menu button:before,
.menu button i:before,
.menu button i:after {
  content: '';
  display: block;
  position: absolute;
  left: 22%;
  width: 55%;
  height: 2px;
  background-color: #fff;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  transition-duration: .3s;
  transition-timing-function: ease;
}

.menu button:before {
  top: 4vw;
}

.menu button i:before {
  top: 6.1vw;
}

.menu button i:after {
  top: 8vw;
}

.menu.is-menu-open button span:before {
  content: 'CLOSE';
}

.menu.is-menu-open button:before,
.menu.is-menu-open button i:before,
.menu.is-menu-open button i:after {
  left: 25%;
  width: 50%;
}

.menu.is-menu-open button:before {
  -webkit-transform: translateY(2vw) rotate(-45deg);
          transform: translateY(2vw) rotate(-45deg);
}

.menu.is-menu-open button i:before {
  opacity: 0;
}

.menu.is-menu-open button i:after {
  -webkit-transform: translateY(-2vw) rotate(45deg);
          transform: translateY(-2vw) rotate(45deg);
}

.menu ul {
  position: relative;
  max-height: 100%;
  height: 100%;
  background-color: #a18f6c;
  overflow-y: scroll;
  -ms-overflow-style: none;
  width: 100%;
  margin-left: auto;
  padding: 21.333vw 5% 5% 5%;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateX(20px);
          transform: translateX(20px);
  transition: opacity ease .5s ,-webkit-transform ease .5s;
  transition: opacity ease .5s ,transform ease .5s;
  transition: opacity ease .5s ,transform ease .5s ,-webkit-transform ease .5s;
  font-size: 5.333vw;
}

.menu ul::-webkit-scrollbar {
  display: none;
}

.menu ul li {
  color: #fff;
  border-bottom: solid 1px #fff;
  padding: .6em 0;
}

.menu ul li:first-child {
  border-top: solid 1px #fff;
}

.menu ul a {
  color: #fff;
}

.menu ul div {
  border: solid 1px #fff;
  padding: 5%;
  margin: 2% 0;
}

.menu ul div h3 {
  font-size: 4.533vw;
}

.menu ul div p + p {
  margin-top: .2em;
}

.menu.is-menu-open ul {
  display: block;
}

.menu__tel:before {
  content: '';
  width: 5.692vw;
  height: 5.692vw;
  margin-right: 1.866vw;
  -webkit-transform: translateY(0.8vw);
          transform: translateY(0.8vw);
}

.menu__mail:before {
  content: '';
  width: 5.692vw;
  height: 5.692vw;
  margin-right: 1.866vw;
  -webkit-transform: translateY(0.8vw);
          transform: translateY(0.8vw);
}

.prize:before {
  background-image: url("../img/bg_sec3_1.png");
  top: 0;
  right: 50%;
  width: 42.933vw;
  height: 81.066vw;
  -webkit-transform: translateY(-23vw) translateX(62vw);
          transform: translateY(-23vw) translateX(62vw);
}

@media print, screen and (min-width: 769px) {
  .prize:before {
    width: 201px;
    height: 380px;
    -webkit-transform: translateY(-100px) translateX(595px);
            transform: translateY(-100px) translateX(595px);
  }
}

.prize .content {
  position: relative;
}

.prize .content:before {
  background-image: url("../img/bg_sec3_2.png");
  top: 0;
  left: 50%;
  z-index: 1;
  width: 30.933vw;
  height: 33.333vw;
  -webkit-transform: translateY(-18vw) translateX(-47vw);
          transform: translateY(-18vw) translateX(-47vw);
}

@media print, screen and (min-width: 769px) {
  .prize .content:before {
    width: 178px;
    height: 191px;
    -webkit-transform: translateY(-50px) translateX(-465px);
            transform: translateY(-50px) translateX(-465px);
  }
}

.prize .content:after {
  background-image: url("../img/bg_sec3_3.png");
  top: 0;
  right: 50%;
  z-index: 1;
  width: 19.2vw;
  height: 19.2vw;
  -webkit-transform: translateY(112vw) translateX(40vw);
          transform: translateY(112vw) translateX(40vw);
}

@media print, screen and (min-width: 769px) {
  .prize .content:after {
    width: 118px;
    height: 117px;
    -webkit-transform: translateY(520px) translateX(403px);
            transform: translateY(520px) translateX(403px);
  }
}

@media print, screen and (min-width: 769px) {
  .prize {
    padding-bottom: 200px;
  }
}

.prize__ttl {
  padding-top: 5.333vw;
  margin-bottom: 16vw;
}

@media print, screen and (min-width: 769px) {
  .prize__ttl {
    padding-top: 20px;
    margin-bottom: 60px;
  }
}

@media print, screen and (min-width: 769px) {
  .prize__list {
    width: 763px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.prize__unit {
  position: relative;
}

.prize__unit em {
  position: absolute;
  left: 0;
  top: -10.667vw;
}

@media print, screen and (min-width: 769px) {
  .prize__unit em {
    top: -40px;
  }
}

.prize__unit i {
  font-weight: 700;
  display: block;
}

.prize__unit + .prize__unit {
  margin-top: 16vw;
}

@media print, screen and (min-width: 769px) {
  .prize__unit + .prize__unit {
    margin-top: 5em;
  }
}

.prize__a i {
  font-size: 1.312em;
}

@media print, screen and (min-width: 769px) {
  .prize__a i {
    font-size: 1.625em;
  }
}

@media print, screen and (min-width: 769px) {
  .prize__a {
    width: 100%;
  }
}

.prize__b i {
  font-size: 1.031em;
}

@media print, screen and (min-width: 769px) {
  .prize__b i {
    font-size: 1.312em;
  }
}

@media print, screen and (min-width: 769px) {
  .prize__b {
    width: 50%;
  }
}

.prize__c i {
  font-size: 1.031em;
}

@media print, screen and (min-width: 769px) {
  .prize__c i {
    font-size: 1.312em;
  }
}

@media print, screen and (min-width: 769px) {
  .prize__c {
    width: 50%;
  }
}

.read__content {
  margin-top: 8vw;
}

@media print, screen and (min-width: 769px) {
  .read__content {
    margin-top: 40px;
    line-height: 2.1875;
  }
}

.rule__title {
  margin-bottom: 1.866vw;
}

@media print, screen and (min-width: 769px) {
  .rule__title {
    margin-bottom: 7px;
  }
}

.rule__textarea {
  height: 40.726vw;
  overflow-y: scroll;
  font-size: 0.875em;
  text-align: left;
  border: solid 1px #c0c0c1;
  padding: 2.666vw;
}

@media print, screen and (min-width: 769px) {
  .rule__textarea {
    height: 174px;
    font-size: 1em;
  }
}

.rule__textarea p + p {
  margin-top: 1.4em;
}

.rule__textarea b {
  font-weight: bold;
}

.rule__textarea a {
  text-decoration: underline;
}

.rule__check {
  margin: 4vw 0 8vw;
}

@media print, screen and (min-width: 769px) {
  .rule__check {
    margin: 15px 0 40px;
  }
}

.rule__check i {
  display: inline-block;
  margin-left: 1.866vw;
}

@media print, screen and (min-width: 769px) {
  .rule__check i {
    margin-left: 7px;
    font-size: 1em;
  }
}

.use__list {
  padding: 8vw;
}

@media print, screen and (min-width: 769px) {
  .use__list {
    padding: 50px 0;
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
    max-width: 610px;
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 769px) {
  .use__list li {
    font-size: 1.125em;
  }
}

.use__list li + li {
  margin-top: 1.866vw;
}

@media print, screen and (min-width: 769px) {
  .use__list li + li {
    margin-top: 0px;
  }
}

@media print, screen and (min-width: 769px) {
  .use__list li {
    text-align: left;
  }
}

.use__list span {
  display: inline-block;
  padding-bottom: 0.533vw;
  border-bottom: solid 1px #323232;
}

@media print, screen and (min-width: 769px) {
  .use__list span {
    padding-bottom: 0px;
    padding-top: 15px;
  }
}

.use__sample {
  text-align: left;
}

@media print, screen and (min-width: 769px) {
  .use__sample {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

@media print, screen and (min-width: 769px) {
  .use__sample dl {
    width: 45.7%;
    margin-top: 60px;
  }
}

.use__sample dl + dl {
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .use__sample dl + dl {
    margin-top: 60px;
  }
}

.use__sample dt {
  color: #a18f6c;
}

.use__sample dt em {
  font-size: 4.8vw;
  font-weight: bold;
}

@media print, screen and (min-width: 769px) {
  .use__sample dt em {
    display: block;
    font-size: 1.25em;
    padding-top: 10px;
    line-height: 1.6;
    letter-spacing: .22em;
  }
}

@media print, screen and (min-width: 769px) {
  .use__sample dt span {
    display: block;
  }
}

.use__sample dd {
  margin-top: 1.866vw;
  line-height: 1.78571;
}

@media print, screen and (min-width: 769px) {
  .use__sample dd {
    margin-top: 10px;
    font-size: 1em;
    line-height: 1.5;
  }
}

.text-a-center {
  text-align: center;
}

.text-a-right {
  text-align: right;
}

.text-a-left {
  text-align: left;
}

.text-w-bold {
  font-weight: bold;
}

.text-i-1 {
  text-indent: 1em;
}

.text-t-uppercase {
  text-transform: uppercase;
}

.text-v-middle {
  vertical-align: middle;
}

.text-v-top {
  vertical-align: top;
}

.text-v-bottom {
  vertical-align: bottom;
}

.text-nowrap {
  white-space: nowrap;
}

.text-red {
  color: #ff0000;
}

.text-pink {
  color: #ff7268;
}

.text-b-red {
  border-bottom: solid 2px red;
}

@media print, screen and (max-width: 768px) {
  .visibility-pc {
    display: none !important;
  }
}

@media print, screen and (min-width: 769px) {
  .visibility-sp {
    display: none !important;
  }
}

.youtube {
  width: 100%;
  margin-top: 10.666vw;
}

@media print, screen and (min-width: 769px) {
  .youtube {
    max-width: 560px;
    margin: 60px auto 0;
  }
}

.popup-youtub img {
  width: 100%;
}

.contact {
  display: flex;
  flex-direction: column;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
}

@media print, screen and (min-width: 769px) {
  .contact {
    left: auto;
    right: 10px;
    top: 10px;
    bottom: auto;
  }
}

.campaign-bunner {
  display: block;
  position: absolute;
  top: calc(16vw + 16px);
  left: 50%;
  padding: 0 20px;
  width: 100%;
  transform: translateX(-50%);
}

@media print, screen and (min-width: 769px) {
  .campaign-bunner {
    top: 84px;
    left: auto;
    right: 10px;
    padding: 0;
    width: 410px;
    transform: translateX(0);
  }
}