@charset "UTF-8";
/* ==========================================================================
Foundation
========================================================================== */
/* Font
----------------------------------------------------------------- */
/* 拡大する */
/* Reset
----------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
l,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0; }

h1,
h2,
h3,
h4,
h5,
h6,
table,
input,
textarea,
select,
option,
button {
  font-size: 100%; }

blockquote,
q {
  quotes: none; }

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

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
main {
  display: block; }

input,
textarea {
  margin: 0;
  padding: 0; }

ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0; }

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

caption,
th {
  text-align: left;
}
.table-74 th {
  padding: 0 2em;
  text-align: center;
  background-color: #E2EFD9;
}
@media only screen and (max-width: 47.9375em) {
  .table-74 th {
    padding: 0 1em;
  }
}

img,
a img {
  height: auto;
  border: none; }

a {
  cursor: pointer; }

input:not([type='checkbox']) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

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

/* Base
----------------------------------------------------------------- */
html {
  height: 100%; }

body {
  position: relative;
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
  color: #2d2d2d;
  line-height: 1.8; }
  @media only screen and (max-width: 47.9375em) {
    body {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    body {
      font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

a {
  text-decoration: none;
  color: #2d2d2d;
  -webkit-transition: color 0.1s 0s ease;
  transition: color 0.1s 0s ease; }
  @media print, screen and (min-width: 64em) {
    a:hover {
      color: #009e6f; } }
  @media print, screen and (min-width: 64em) {
    a[href^='tel'] {
      pointer-events: none;
      cursor: text; } }

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

address {
  font-style: normal; }

.browser-is-ie wbr:after {
  content: '\00200B'; }

.preload * {
  -webkit-transition: all 0s !important;
  transition: all 0s !important; }

/* KeyFrames
----------------------------------------------------------------- */
@-webkit-keyframes spMenu {
  0% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; } }
@keyframes spMenu {
  0% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; } }

/* ==========================================================================
Layout
========================================================================== */
/* ヘッダー
----------------------------------------------------------------- */
@-webkit-keyframes fadeInHeader {
  0% {
    -webkit-transform: translateY(-101%);
            transform: translateY(-101%); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }
@keyframes fadeInHeader {
  0% {
    -webkit-transform: translateY(-101%);
            transform: translateY(-101%); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@media print, screen and (min-width: 64em) {
  .l-header {
    height: 60px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 60000;
    background-color: #fff;
    padding-right: 13px;
    padding-left: 20px;
    box-sizing: border-box; } }

.l-header:not(.-home) {
  position: fixed;
  z-index: 60000; }
  @media print, screen and (max-width: 69.6875em) {
    .l-header:not(.-home) {
      background-color: #fff;
      position: static; } }
  @media print, screen and (max-width: 69.6875em) {
    .l-header:not(.-home) .l-header__logo {
      position: relative;
      top: 0;
      padding-top: 15px;
      padding-bottom: 15px; } }
  .l-header:not(.-home) .l-header__logo svg {
    fill: #2d2d2d; }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current a,
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current button {
      color: #009e6f; } }
  .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current::after {
    content: '';
    position: absolute;
    height: 3px;
    width: calc(100% - 12px);
    left: 6px;
    top: -3px;
    background-color: #009e6f; }
  @media print, screen and (min-width: 1024px) and (max-width: 1120px) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current::after {
      width: calc(100% - 5px);
      left: 5px; } }
  @media print, screen and (min-width: 1420px) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current::after {
      width: calc(100% - 18px);
      left: 9px;
      top: -2px; } }
  .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current.-dropdown a {
    border-bottom: none; }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-current.-dropdown > button::after {
      border-color: #009e6f; } }
  .l-header:not(.-home) .p-main-menu .p-main-menu__item a,
  .l-header:not(.-home) .p-main-menu .p-main-menu__item button {
    outline: none; }
    @media print, screen and (min-width: 64em) {
      .l-header:not(.-home) .p-main-menu .p-main-menu__item a,
      .l-header:not(.-home) .p-main-menu .p-main-menu__item button {
        color: #2d2d2d;
        -webkit-transition: color 0.2s;
        transition: color 0.2s;
        cursor: pointer; } }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown .p-main-menu__toggle-area a,
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown .p-main-menu__toggle-area button {
      color: #fff;
      cursor: pointer;
      font-size: 0.8125rem;
      font-weight: normal; } }
  .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown > button {
    position: relative; }
    @media print, screen and (min-width: 48em) {
      .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown > button {
        padding-right: 20px; } }
    @media screen and (min-width: 1136px) {
      .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown > button {
        padding-right: 22px; } }
    @media print, screen and (min-width: 64em) {
      .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown > button::after {
        content: '';
        box-sizing: border-box;
        display: block;
        position: absolute;
        width: 6px;
        height: 6px;
        border-style: solid;
        border-width: 0 2px 2px 0;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        top: calc(50% - 4px);
        left: calc(50% - 3px);
        border-color: #2d2d2d;
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        content: '';
        left: auto;
        right: 10px;
        -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
        transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
        top: calc(50% - 4px); } }
    @media print, screen and (min-width: 75em) {
      .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown > button::after {
        content: '';
        box-sizing: border-box;
        display: block;
        position: absolute;
        width: 6px;
        height: 6px;
        border-style: solid;
        border-width: 0 2px 2px 0;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        top: calc(50% - 4px);
        left: calc(50% - 3px);
        border-color: #2d2d2d;
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        content: '';
        left: auto;
        right: 10px;
        top: calc(50% - 4px); } }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown.-active > button {
      color: #009e6f; } }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item.-dropdown.-active > button::after {
      top: calc(50% - 3px);
      -webkit-transform: rotate(-135deg);
              transform: rotate(-135deg);
      border-color: #009e6f; } }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home) .p-main-menu .p-main-menu__item:hover a,
    .l-header:not(.-home) .p-main-menu .p-main-menu__item:hover button {
      color: #009e6f; } }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home).-active .p-main-menu__item.-dropdown.is-active button span:after {
      content: '';
      box-sizing: border-box;
      display: block;
      position: absolute;
      width: 7px;
      height: 7px;
      border-style: solid;
      border-width: 2px 0 0 2px;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: calc(50% - 4.5px);
      left: calc(50% - 3.5px);
      border-color: #009e6f;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      content: '';
      left: auto;
      right: 2px; } }
  @media print, screen and (min-width: 64em) {
    .l-header:not(.-home).-active a,
    .l-header:not(.-home).-active button {
      color: #2d2d2d; } }
  .l-header:not(.-home).-active .p-tel-mod__number,
  .l-header:not(.-home).-active .p-tel-mod__hours {
    color: #2d2d2d; }

.l-header.-home {
  background-color: transparent; }
  @media print, screen and (max-width: 69.6875em) {
    .l-header.-home .l-header__logo {
      position: absolute;
      padding-left: 4.6875%; } }
  .l-header.-home .p-main-menu__item {
    cursor: pointer;
    -webkit-transition: color, border 0.2s;
    transition: color, border 0.2s; }
    @media print, screen and (min-width: 64em) {
      .l-header.-home .p-main-menu__item.-current a,
      .l-header.-home .p-main-menu__item.-current button {
        color: #009e6f;
        border-bottom: 2px solid #009e6f; } }
    .l-header.-home .p-main-menu__item > a {
      color: #fff; }
      @media print, screen and (max-width: 69.6875em) {
        .l-header.-home .p-main-menu__item > a {
          color: #2d2d2d; } }
      @media print, screen and (min-width: 64em) {
        .l-header.-home .p-main-menu__item > a {
          -webkit-transition: color, border 0.2s;
          transition: color, border 0.2s; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .l-header.-home .p-main-menu__item > a:hover {
      color: #009e6f; } }
    .l-header.-home .p-main-menu__item button {
      cursor: pointer;
      outline: none; }
      .l-header.-home .p-main-menu__item button::before {
        opacity: 0;
        -webkit-transition: opacitiy 0.2s ease;
        transition: opacitiy 0.2s ease; }
      @media print, screen and (min-width: 64em) {
        .l-header.-home .p-main-menu__item button:hover:after {
          content: '';
          box-sizing: border-box;
          display: block;
          position: absolute;
          width: 8px;
          height: 8px;
          border-style: solid;
          border-width: 0 2px 2px 0;
          -webkit-transform: rotate(45deg);
                  transform: rotate(45deg);
          top: calc(50% - 5px);
          left: calc(50% - 4px);
          border-color: #009e6f;
          -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
          transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
          transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
          transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          content: '';
          left: auto;
          right: 2px;
          -webkit-transition: border 0.2s;
          transition: border 0.2s; } }
    .l-header.-home .p-main-menu__item.-dropdown.is-active > button::after {
      content: '';
      box-sizing: border-box;
      display: block;
      position: absolute;
      width: 8px;
      height: 8px;
      border-style: solid;
      border-width: 2px 0 0 2px;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: calc(50% - 5px);
      left: calc(50% - 4px);
      border-color: #2d2d2d;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      content: '';
      left: auto;
      right: 2px; }
      @media print, screen and (min-width: 64em) {
        .l-header.-home .p-main-menu__item.-dropdown.is-active > button::after {
          border-color: #009e6f; } }
  @media print, screen and (min-width: 64em) {
    .l-header.-home .p-tel-mod__number,
    .l-header.-home .p-tel-mod__hours {
      color: #fff; } }
  @media print, screen and (min-width: 64em) {
    .l-header.-home .p-tel-mod:before {
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%23fff%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); } }
  .l-header.-home .p-tel-mod__number {
    font-size: 1.2rem; }
  .l-header.-home.-home.-open {
    background-color: #fff; }
    .l-header.-home.-home.-open .l-header__logo svg {
      fill: #2d2d2d; }
    .l-header.-home.-home.-open .p-tel-mod:before {
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%232d2d2d%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
    .l-header.-home.-home.-open .p-tel-mod__number,
    .l-header.-home.-home.-open .l-header.-active.-home,
    .l-header.-home.-home.-open .p-tel-mod__hours {
      color: #2d2d2d; }
    .l-header.-home.-home.-open .p-main-menu__item.-dropdown > button::after {
      border-color: #2d2d2d; }
    @media print, screen and (min-width: 64em) {
      .l-header.-home.-home.-open .p-main-menu__item.-dropdown.is-active > button::after {
        border-color: #009e6f; } }
    .l-header.-home.-home.-open .p-main-menu__item > button,
    .l-header.-home.-home.-open .p-main-menu__item a {
      color: #2d2d2d; }
    @media print, screen and (min-width: 64em) {
      .l-header.-home.-home.-open .p-main-menu__item .c-column.-dropdown > a {
        color: #fff; } }
  @media print, screen and (min-width: 64em) {
    .l-header.-home.-home .p-main-menu__item.-dropdown.is-active > button {
      color: #009e6f; } }

.l-header.-active {
  box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15);
  background-color: #fff;
  color: #2d2d2d; }
  .l-header.-active > a,
  .l-header.-active button {
    color: #2d2d2d;
    -webkit-transition: color 0.2s;
    transition: color 0.2s;
    position: relative; }
  @media print, screen and (min-width: 64em) {
    .l-header.-active .p-main-menu__item.-current {
      color: #009e6f; } }
  .l-header.-active .l-header__logo svg {
    fill: #2d2d2d; }
    @media print, screen and (max-width: 69.6875em) {
      .l-header.-active .l-header__logo svg {
        fill: #2d2d2d; } }
  @media print, screen and (min-width: 64em) {
    .l-header.-active.-home {
      position: fixed;
      -webkit-animation: fadeInHeader 0.4s ease 0s 1 normal;
              animation: fadeInHeader 0.4s ease 0s 1 normal;
      color: #2d2d2d; } }
  @media print, screen and (min-width: 64em) {
    .l-header.-active.-home .p-main-menu__item.-current > a {
      color: #009e6f; } }
  .l-header.-active.-home .p-main-menu__item > a {
    color: #2d2d2d; }
    @media print, screen and (min-width: 64em) {
      .l-header.-active.-home .p-main-menu__item > a:hover {
        color: #009e6f; } }
  .l-header.-active.-home .p-main-menu__item.-dropdown > button {
    cursor: pointer;
    position: relative;
    padding-right: 20px; }
    .l-header.-active.-home .p-main-menu__item.-dropdown > button:after {
      content: '';
      box-sizing: border-box;
      display: block;
      position: absolute;
      width: 8px;
      height: 8px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: calc(50% - 5px);
      left: calc(50% - 4px);
      border-color: #2d2d2d;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      content: '';
      left: auto;
      right: 2px;
      -webkit-transition: all 0s;
      transition: all 0s; }
    .l-header.-active.-home .p-main-menu__item.-dropdown > button:hover:after {
      content: '';
      box-sizing: border-box;
      display: block;
      position: absolute;
      width: 8px;
      height: 8px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: calc(50% - 5px);
      left: calc(50% - 4px);
      border-color: #009e6f;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      content: '';
      left: auto;
      right: 2px;
      -webkit-transition: border 0.2s;
      transition: border 0.2s; }
  @media print, screen and (min-width: 64em) {
    .l-header.-active.-home .p-main-menu__item.-dropdown.is-active > button {
      color: #009e6f; } }
  .l-header.-active.-home .p-main-menu__item.-dropdown.is-active > button:after {
    content: '';
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 8px;
    height: 8px;
    border-style: solid;
    border-width: 2px 0 0 2px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: calc(50% - 5px);
    left: calc(50% - 4px);
    border-color: #009e6f;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    content: '';
    left: auto;
    right: 2px; }
  .l-header.-active.-home .p-tel-mod__number,
  .l-header.-active.-home .p-tel-mod__hours {
    color: #2d2d2d; }
  .l-header.-active.-home .p-tel-mod:before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%232d2d2d%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
  .l-header.-active.-home .l-header__logo svg {
    fill: #2d2d2d; }
    @media print, screen and (max-width: 69.6875em) {
      .l-header.-active.-home .l-header__logo svg {
        fill: #fff; } }

.l-header.-border:not(.-active) {
  border-bottom: 1px solid #c2cfc9; }

.l-header__inner {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
  padding-left: 4.6875%; }
  @media print, screen and (min-width: 69.6875em) {
    .l-header__inner {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 200px 1fr;
      grid-template-columns: 200px 1fr;
      padding-left: 0; } }
  @media screen and (min-width: 1193px) and (max-width: 1419px) {
    .l-header__inner {
      -ms-grid-columns: 186px 1fr;
      grid-template-columns: 186px 1fr; } }
  @media screen and (min-width: 1420px) {
    .l-header__inner {
      -ms-grid-columns: 250px 1fr;
      grid-template-columns: 250px 1fr; } }
  .browser-is-ie .l-header__inner {
    -webkit-box-pack: start;
            justify-content: flex-start; }

.l-header__logo {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  width: 219px;
  margin-right: auto;
  margin-left: 0; }
  @media print, screen and (max-width: 69.6875em) {
    .l-header__logo {
      position: relative;
      z-index: 2;
      top: 10px;
      left: 0;
      max-width: 200px;
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .l-header__logo {
      width: 100%;
      height: auto;
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1/2; } }
  .l-header__logo > svg {
    width: auto;
    vertical-align: top;
    fill: #fff;
    height: 30px; }
    @media screen and (min-width: 1024px) and (max-width: 1270px) {
      .l-header__logo > svg {
        width: 100%; } }
    @media screen and (max-width: 767px){
      .l-header__logo > svg {
        width: 100%; }
    }
    .browser-is-ie .l-header__logo > svg {
      width: 300px; }

.l-header__menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow: auto;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -webkit-box-flex: 1;
          flex: 1;
  z-index: 60000; }
  .device-is-ios .l-header__menu {
    -webkit-overflow-scrolling: touch; }
  @media print, screen and (max-width: 69.6875em) {
    .l-header__menu {
      position: fixed;
      box-sizing: border-box; } }
  @media print, screen and (min-width: 69.6875em) {
    .l-header__menu {
      background-color: transparent;
      width: auto;
      height: 100%;
      -ms-grid-column: 2;
      grid-column: 2/2;
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: end;
              justify-content: flex-end;
      -webkit-box-align: center;
              align-items: center;
      -webkit-transform: none;
              transform: none;
      overflow: visible;
      opacity: 1;
      visibility: visible; }
      .browser-is-ie .l-header__menu {
        height: 60px; } }
  .l-header__menu.-active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    visibility: visible;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    color: #2d2d2d; }
    @media print, screen and (max-width: 69.6875em) {
      .l-header__menu.-active {
        background-color: #fff;
        color: #2d2d2d; } }

/* フォーム */
.l-header.-form {
  position: static;
  z-index: 1; }
  @media print, screen and (max-width: 69.6875em) {
    .l-header.-form {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .l-header.-form {
      padding-top: 12px;
      padding-bottom: 9px;
      box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15); } }
  .l-header.-form.-active {
    box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15); }

@media print, screen and (min-width: 64em) {
  .l-header .p-main-menu__item.-dropdown > button {
    color: #009e6f; } }

.l-header.-boder_b {
  border-bottom: 1px solid #e3e3e0; }

@media print, screen and (max-width: 69.6875em) {
  .l-header__menu.-active .p-cta-menu {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
            justify-content: flex-end; } }

@media print, screen and (max-width: 69.6875em) {
  .l-header__menu.-active .p-cta-menu .p-cta-menu__form {
    margin-left: 30px; } }

@media only screen and (max-width: 47.9375em) {
  .l-header__menu.-active .p-cta-menu .p-cta-menu__form {
    margin-right: 10px;
    width: calc(50% - 10px); } }

@media print, screen and (max-width: 69.6875em) {
  .l-header__menu.-active .p-cta-menu .p-cta-menu__form .c-button.-document.-small {
    padding-right: 20px;
    padding-left: 20px;
    width: 100%; } }

@media only screen and (max-width: 47.9375em) {
  .l-header__menu.-active .p-cta-menu .p-cta-menu__form .c-button.-document.-small {
    padding-right: 5px;
    padding-left: 5px; } }

@media only screen and (max-width: 47.9375em) {
  .l-header__menu.-active .p-cta-menu .p-tel-mod.-header {
    margin-top: 6px;
    margin-left: 0; } }
  @media only screen and (max-width: 47.9375em) and (max-width: 47.9375em) {
    .l-header__menu.-active .p-cta-menu .p-tel-mod.-header::before {
      top: 3px;
      width: 12px;
      height: 12px; } }

@media only screen and (max-width: 47.9375em) {
  .l-header__menu.-active .p-cta-menu .p-tel-mod.-header {
    margin-top: 20px; } }

@media print, screen and (max-width: 69.6875em) {
  .l-header__menu.-active .p-cta-menu .p-tel-mod.-header .p-tel-mod__number {
    font-size: 1.875rem; } }

@media only screen and (max-width: 47.9375em) {
  .l-header__menu.-active .p-cta-menu .p-tel-mod.-header .p-tel-mod__number {
    font-size: 1.1875rem; } }

@media only screen and (max-width: 47.9375em) {
  .l-header__menu.-active .p-cta-menu .p-tel-mod.-header .p-tel-mod__hours {
    font-size: 0.65625rem; } }

/* Body直下のwrapper
----------------------------------------------------------------- */
.l-root-container {
  position: relative;
  overflow: hidden; }

/* content-blockのwrapper
----------------------------------------------------------------- */
.l-content-container {
  position: relative; }

.l-content-container.-pt-0 {
  padding-top: 0; }

/* フッター
----------------------------------------------------------------- */
.l-footer {
  position: relative;
  width: 100%;
  background-color: #212121; }

.l-footer__inner {
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-top: 28px;
  padding-right: 4.6875%;
  padding-bottom: 28px;
  padding-left: 4.6875%; }
  @media print, screen and (min-width: 48em) {
    .l-footer__inner {
      display: -ms-grid;
      display: grid;
      -ms-grid-rows: -webkit-max-content 0 1fr;
      -ms-grid-rows: max-content 0 1fr;
      -ms-grid-columns: calc(40% - 30px) 30px 1fr;
          grid-template: "company sitemap" -webkit-max-content "copyright sitemap" 1fr/calc(40% - 30px) 1fr;
          grid-template: "company sitemap" max-content "copyright sitemap" 1fr/calc(40% - 30px) 1fr;
      max-width: 1400px;
      gap: 0 30px;
      padding-top: 76px;
      padding-bottom: 76px; } }
  @media print, screen and (min-width: 64em) {
    .l-footer__inner {
      padding-right: 100px;
      padding-left: 100px; } }

@media print, screen and (min-width: 48em) {
  .l-footer__company {
    grid-area: company; } }

@media print, screen and (min-width: 48em) {
  .l-footer__copyright {
    grid-area: copyright; } }

@media only screen and (max-width: 47.9375em) {
  .l-footer__sitemap {
    margin-top: 24px; } }

@media print, screen and (min-width: 48em) {
  .l-footer__sitemap {
    grid-area: sitemap; } }

@media print, screen and (min-width: 48em){
    .l-footer__company {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .l-footer__copyright {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .l-footer__sitemap {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3; } }

.l-footer.-contact {
  padding-top: 11px;
  padding-bottom: 8px;
  background-color: #f7f7f6; }
  .l-footer.-contact .l-footer__inner {
    padding: 0; }

/* ==========================================================================
Object
========================================================================== */
/* ボタン
----------------------------------------------------------------- */
@-webkit-keyframes btnHover {
  0% {
    -webkit-transform: translate3d(-101%, 0, 0);
            transform: translate3d(-101%, 0, 0); }
  30% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  50% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  100% {
    -webkit-transform: translate3d(101%, 0, 0);
            transform: translate3d(101%, 0, 0); } }
@keyframes btnHover {
  0% {
    -webkit-transform: translate3d(-101%, 0, 0);
            transform: translate3d(-101%, 0, 0); }
  30% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  50% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  100% {
    -webkit-transform: translate3d(101%, 0, 0);
            transform: translate3d(101%, 0, 0); } }

@-webkit-keyframes btnHover-Ie {
  0% {
    -webkit-transform: translate3d(-101%, 0, 0);
            transform: translate3d(-101%, 0, 0); }
  100% {
    -webkit-transform: translate3d(101%, 0, 0);
            transform: translate3d(101%, 0, 0); } }

@keyframes btnHover-Ie {
  0% {
    -webkit-transform: translate3d(-101%, 0, 0);
            transform: translate3d(-101%, 0, 0); }
  100% {
    -webkit-transform: translate3d(101%, 0, 0);
            transform: translate3d(101%, 0, 0); } }

@-webkit-keyframes btnHoverIconBg {
  0% {
    background-color: #009e6f; }
  30% {
    background-color: #2d2d2d; }
  50% {
    background-color: #2d2d2d; }
  100% {
    background-color: #009e6f; } }

@keyframes btnHoverIconBg {
  0% {
    background-color: #009e6f; }
  30% {
    background-color: #2d2d2d; }
  50% {
    background-color: #2d2d2d; }
  100% {
    background-color: #009e6f; } }

@-webkit-keyframes btnHoverIconBorder {
  0% {
    border-color: #2d2d2d; }
  30% {
    border-color: #45bf7e; }
  50% {
    border-color: #45bf7e; }
  100% {
    border-color: #2d2d2d; } }

@keyframes btnHoverIconBorder {
  0% {
    border-color: #2d2d2d; }
  30% {
    border-color: #45bf7e; }
  50% {
    border-color: #45bf7e; }
  100% {
    border-color: #2d2d2d; } }

.c-button {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 100%;
  font-size: 1rem;
  font-weight: bold;
  box-sizing: border-box;
  border-radius: 4px; }
  @media only screen and (max-width: 47.9375em) {
    .c-button {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-button {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-button {
      padding-top: 10px;
      padding-right: 16px;
      padding-bottom: 10px;
      padding-left: 16px; } }
  @media print, screen and (min-width: 64em) {
    .c-button {
      -webkit-transition: opacity 1s 1s ease, -webkit-transform 1s 1s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: opacity 1s 1s ease, -webkit-transform 1s 1s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: transform 1s 1s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 1s 1s ease;
      transition: transform 1s 1s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 1s 1s ease, -webkit-transform 1s 1s cubic-bezier(0.215, 0.61, 0.355, 1);
      padding-top: 11px;
      padding-right: 12px;
      padding-bottom: 11px;
      padding-left: 12px; } }
  @media print, screen and (min-width: 64em) {
    .browser-is-ie .c-button {
      padding-top: 13px;
      padding-bottom: 9px; } }
  .browser-is-safari .c-button {
    z-index: 1; }
  @media print, screen and (min-width: 64em) {
    .c-button {
      -webkit-transition: background-color 0.7s ease;
      transition: background-color 0.7s ease; } }
  .c-button > span {
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .c-button > span {
        -webkit-transition: color 0.7s ease;
        transition: color 0.7s ease; } }
  .c-button .c-arrow {
    -ms-grid-row-align: center;
        align-self: center;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    -webkit-box-flex: 0;
            flex: 0 0 auto; }
    .browser-is-ie .c-button .c-arrow {
      top: -2px; }
  .c-button:hover:after {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  .c-button > * {
    position: relative;
    z-index: 1; }
  @media print, screen and (min-width: 64em) {
    .c-button:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #45bf7e;
      -webkit-transform: translate3d(-101%, 0, 0);
              transform: translate3d(-101%, 0, 0);
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }
  @media print, screen and (min-width: 64em) {
    .browser-is-ie .c-button {
      overflow: hidden;
      -webkit-backface-visiblity: hidden; } }
  .browser-is-ie .c-button:hover:after {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  .c-button.-center {
    margin: 0 auto; }

.c-button.-w_250 {
  width: 250px; }

/* お問い合わせ */
.c-button.-contact {
  background-color: #2d2d2d; }
  @media only screen and (max-width: 47.9375em) {
    .c-button.-contact {
      font-size: 0.75rem; } }
  .c-button.-contact > span {
    color: #fff; }
  .c-button.-contact > .c-arrow {
    background-color: #009e6f; }
    .c-button.-contact > .c-arrow:before {
      border-color: #2d2d2d; }
  .c-button.-contact:hover:after {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }

.c-button.-contact.-f_bk {
  background-color: #009e6f; }
  @media print, screen and (min-width: 64em) {
    .c-button.-contact.-f_bk:after {
      background-color: #45bf7e;
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }
  .c-button.-contact.-f_bk > span {
    color: #2d2d2d; }
  .c-button.-contact.-f_bk > .c-arrow {
    background-color: #2d2d2d; }
    .c-button.-contact.-f_bk > .c-arrow:before {
      border-color: #009e6f; }
  .c-button.-contact.-f_bk:hover > .c-arrow {
    background-color: #2d2d2d; }
    .c-button.-contact.-f_bk:hover > .c-arrow:before {
      border-color: #009e6f; }

/* 資料ダウンロード */
.c-button.-document {
  background-color: #009e6f;
  padding-top: 13px;
  padding-bottom: 10px; }
  @media print, screen and (min-width: 64em) {
    .c-button.-document:after {
      background-color: #45bf7e;
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }
  .c-button.-document > span {
    color: #fff;
    white-space: nowrap; }
  .c-button.-document > .c-arrow {
    background-color: #fff; }
    .c-button.-document > .c-arrow:before {
      border-color: #009e6f; }
  @media print, screen and (min-width: 48em) {
    .c-button.-document.-online {
      width: 250px; } }

/* 小さいサイズ */
.c-button.-small {
  padding-top: 6px;
  padding-right: 11px;
  padding-bottom: 4px;
  padding-left: 11px; }
  .c-button.-small > span {
    font-size: 0.8125rem; }
  .c-button.-small > .c-arrow {
    top: -1px;
    margin-right: 3px;
    width: 9px;
    height: 9px; }
    .c-button.-small > .c-arrow::before {
      width: 4px;
      height: 4px;
      left: calc(50% - 2.75px);
      top: calc(50% - 2px); }
      @media screen and (min-width: 1136px) {
        .c-button.-small > .c-arrow::before {
          width: 5px;
          height: 5px;
          left: 30%;
          top: 30%; } }
    @media screen and (min-width: 1136px) {
      .c-button.-small > .c-arrow {
        top: -1px;
        width: 11px;
        height: 11px;
        margin-right: 4px; } }
  .browser-is-ie .c-button.-small {
    padding-top: 6px;
    padding-bottom: 3px; }

/* 大きいサイズ */
@media print, screen and (min-width: 64em) {
  .c-button.-large {
    padding-top: 17px;
    padding-right: 11px;
    padding-bottom: 15px;
    padding-left: 11px; } }

.browser-is-ie .c-button.-large {
  padding-top: 20px;
  padding-right: 40px;
  padding-left: 40px;
  padding-bottom: 13px; }

@media print, screen and (min-width: 64em) {
  .c-button.-large > span {
    font-size: 1.125rem; } }

.c-button.-large > .c-arrow {
  margin-right: 10px; }

.c-button.-main {
  background-color: #2d2d2d; }
  @media print, screen and (min-width: 64em) {
    .c-button.-main {
      padding-top: 12px;
      padding-bottom: 10px; } }
  .c-button.-main > span {
    color: #fff; }
  .c-button.-main > .c-arrow {
    background-color: #009e6f; }
    .c-button.-main > .c-arrow:before {
      border-color: #2d2d2d;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s; }
  @media print, screen and (min-width: 64em) {
    .c-button.-main:hover:after {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }
    .c-button.-main:hover > .c-arrow {
      background-color: #2d2d2d; }
      .c-button.-main:hover > .c-arrow:before {
        border-color: #45bf7e;
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; } }
  .browser-is-ie .c-button.-main:hover {
    background-color: #2d2d2d; }
    .browser-is-ie .c-button.-main:hover:after {
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }

button.c-button {
  border: none;
  text-align: left;
  cursor: pointer; }

.c-button.-form {
  background-color: #2d2d2d;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  line-height: 1;
  font-weight: bold;
  border-radius: 4px; }
  @media only screen and (max-width: 47.9375em) {
    .c-button.-form {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-button.-form {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 64em) {
    .c-button.-form {
      font-size: 1rem; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-button.-form {
      padding-top: 11px;
      padding-right: 14px;
      padding-bottom: 11px;
      padding-left: 14px; } }
  @media print, screen and (min-width: 64em) {
    .c-button.-form {
      padding-top: 13px;
      padding-right: 16px;
      padding-bottom: 13px;
      padding-left: 20px; } }
  .c-button.-form > span {
    color: #fff; }
  .c-button.-form .c-arrow {
    background-color: #009e6f; }
    @media print, screen and (max-width: 63.9375em) {
      .c-button.-form .c-arrow {
        width: 16px;
        height: 16px; } }
    @media print, screen and (min-width: 64em) {
      .c-button.-form .c-arrow {
        width: 16px;
        height: 16px; } }
    .c-button.-form .c-arrow:before {
      border-color: #2d2d2d; }
  .c-button.-form.-disabled {
    background-color: #d6d6d4;
    box-shadow: none;
    cursor: default;
    pointer-events: none; }
    .c-button.-form.-disabled > span {
      color: #fff; }
    .c-button.-form.-disabled .c-arrow {
      background-color: #fff; }
      .c-button.-form.-disabled .c-arrow:before {
        border-color: #d6d6d4; }
    .c-button.-form.-disabled:hover {
      color: #fff; }
      .c-button.-form.-disabled:hover > span:after {
        -webkit-transform: translate(0, -50%) rotate(45deg);
                transform: translate(0, -50%) rotate(45deg); }
    .c-button.-form.-disabled:after {
      display: none;
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  @media only screen and (max-width: 47.9375em) {
    .f-button-block__button .c-button.-form {
      width: 100%; } }
  @media print, screen and (min-width: 48em) {
    .f-button-block__button .c-button.-form {
      width: 250px;
      margin: 0 auto; } }

/* コンテンツブロックの区切り
----------------------------------------------------------------- */
.c-block {
  padding-top: 1px;
  margin-top: -1px;
  width: 100%;
  position: relative; }

.c-block__inner {
  position: relative;
  z-index: 1;
  max-width: 1400px;
  box-sizing: border-box;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
  margin-right: auto;
  margin-left: auto; }
  @media print, screen and (min-width: 64em) {
    .c-block__inner {
      padding-right: 100px;
      padding-left: 100px; } }
  .c-block__inner.-detail {
    max-width: 1160px; }
  .c-block__inner.-contact {
    max-width: 1000px; }
    .c-block__inner.-contact.-thanks {
      text-align: center; }
    @media print, screen and (max-width: 63.9375em) {
      .c-block__inner.-contact {
        margin-top: 50px; } }

.c-block.-fill, .c-block.-user {
  background-color: #e1ede8; }

.c-block.-fill-maincolor {
  background-color: #2d2d2d; }

@media print, screen and (min-width: 48em) {
  .c-block.-fill-transparent {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(87.5%, #e1ede8), color-stop(0%, transparent));
    background: linear-gradient(#e1ede8 87.5%, transparent 0%); } }

@media only screen and (max-width: 47.9375em) {
  .c-block.-fill-transparent {
    background-color: #e1ede8;
    padding-bottom: 34px; } }

.c-block.-fill-right {
  background-color: #f2f5f4; }

.c-block.-oh {
  overflow: hidden; }

@media only screen and (max-width: 47.9375em) {
  .c-block.-last {
    padding-bottom: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-block.-last {
    padding-bottom: 80px; } }

@media only screen and (max-width: 47.9375em) {
  .c-block.-last120 {
    padding-bottom: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-block.-last120 {
    padding-bottom: 120px; } }

@media only screen and (max-width: 47.9375em) {
  .c-block.-user {
    padding-top: 40px;
    padding-bottom: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-block.-user {
    padding-top: 94px;
    padding-bottom: 100px; } }

@media only screen and (max-width: 47.9375em) {
  .c-block.-has_pb {
    padding-bottom: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-block.-has_pb {
    padding-bottom: 76px; } }

@media only screen and (max-width: 47.9375em) {
  .c-block__button {
    width: 150px;
    margin-top: 24px;
    margin-right: auto;
    margin-left: auto; } }

@media print, screen and (min-width: 48em) {
  .c-block__button {
    width: 250px;
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto; } }

@media print, screen and (max-width: 63.9375em) {
  .c-block.-home .c-block__inner {
    padding-bottom: 52px; } }

@media print, screen and (min-width: 64em) {
  .c-block.-home .c-block__inner {
    padding-bottom: 128px; } }

@media screen and (min-width: 1200px) and (max-width: 1420px) {
  .c-block.-home .c-block__inner {
    padding-right: 100px;
    padding-left: 100px; } }

/* サブ見出し
----------------------------------------------------------------- */
.c-sub-title {
  position: relative;
  display: inline-block;
  font-family: futura-pt, sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  color: #009e6f; }
  @media print, screen and (min-width: 64em) {
    .c-sub-title {
      font-size: 1.125rem;
      padding-bottom: 1px; } }
  .c-sub-title:after {
    content: '';
    position: absolute;
    top: 50%;
    left: calc(100% + 10px);
    width: 20px;
    height: 1px;
    background-color: #d7b596;
    opacity: 0.5; }
  .c-sub-title.-no_line {
    display: block;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .c-sub-title.-no_line {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .c-sub-title.-no_line {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (max-width: 63.9375em) {
      .c-sub-title.-no_line {
        font-size: 0.75rem; } }
    @media print, screen and (min-width: 64em) {
      .c-sub-title.-no_line {
        font-size: 0.875rem; } }
    .c-sub-title.-no_line:after {
      display: none; }

/* カードのサブタイトル */
.c-sub-title.-card-sub {
  font-size: 1rem;
  font-weight: 500; }
  @media print, screen and (max-width: 63.9375em) {
    .c-sub-title.-card-sub {
      margin-top: 26px; } }
  @media print, screen and (min-width: 64em) {
    .c-sub-title.-card-sub {
      margin-top: 26px; } }

/* 見出し（ベース）
----------------------------------------------------------------- */
/* 左に縦線のある見出し */
.c-heading-2 {
  position: relative;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-heading-2 {
      font-size: 1.625rem; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-2 {
      font-size: 2.25rem; } }
  .c-heading-2.-center {
    text-align: center; }
  .c-heading-2.-type_b {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em; }
    @media only screen and (max-width: 47.9375em) {
      .c-heading-2.-type_b {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .c-heading-2.-type_b {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

/* タイトル付き見出し */
.c-heading-2-1 {
  position: relative;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2-1 {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2-1 {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-heading-2-1 {
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-2-1 {
      font-size: 2rem; } }
  .c-heading-2-1.-center {
    text-align: center; }
  .c-heading-2-1 span {
    display: block;
    font-size: 1.125rem;
    color: #009e6f; }

.c-heading-3 {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-heading-3 {
      font-size: 1.375rem; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-3 {
      font-size: 1.75rem; } }
  .c-sub-title + .c-heading-3 {
    margin-top: 8px; }
  .c-heading-3.-center {
    text-align: center; }

/* ケータリング */
@media only screen and (max-width: 47.9375em) {
  .c-heading-3.-sp_18 {
    font-size: 1.125rem;
    margin-top: 23px; } }

/* サービス成功の秘訣 */
@media only screen and (max-width: 47.9375em) {
  .c-heading-3.-sp_20 {
    font-size: 1.25rem; } }

.c-heading-4 {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 {
      font-size: 1.375rem; } }
  .c-sub-title + .c-heading-4 {
    margin-top: 8px; }
  .c-heading-4.-center {
    text-align: center; }
  .c-heading-4.-gothic {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .c-heading-4.-gothic {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .c-heading-4.-gothic {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.c-heading-5 {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 {
      font-size: 1.125rem; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 {
      font-size: 1.125rem; } }

.c-heading-6 {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 {
      font-size: 1.25rem; } }
  .c-heading-6.-gothic {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .c-heading-6.-gothic {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .c-heading-6.-gothic {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.c-heading-cta {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-cta {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-cta {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-cta {
      font-size: 1.375rem; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-cta {
      font-size: 1.625rem; } }

.c-heading-bold {
  font-size: 1rem;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-heading-bold.-carry {
      margin-top: 10px;
      line-height: 1.5; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-bold.-carry {
      margin-top: 16px; } }

.c-heading-error-sub {
  text-align: center;
  display: block;
  color: #009e6f;
  font-weight: bold; }
  @media print, screen and (max-width: 63.9375em) {
    .c-heading-error-sub {
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-error-sub {
      font-size: 1.25rem; } }

.c-heading-error {
  text-align: center;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-error {
      font-size: 1.375rem; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-error {
      font-size: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-error {
      font-size: 2.625rem; } }

/* 文章
----------------------------------------------------------------- */
.c-sentence {
  line-height: 1.75; }
  @media only screen and (max-width: 47.9375em) {
    table + .c-sentence,
    .c-image + .c-sentence,
    .p-scrollable + .c-sentence {
      margin-top: 21px; } }
  @media print, screen and (min-width: 48em) {
    table + .c-sentence,
    .c-image + .c-sentence,
    .p-scrollable + .c-sentence {
      margin-top: 24px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery + .c-sentence {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .p-gallery + .c-sentence {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .c-sentence,
    .c-heading-2-1 + .c-sentence {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .c-sentence,
    .c-heading-2-1 + .c-sentence {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .c-sentence {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .c-sentence {
      margin-top: 20px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .c-sentence {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .c-sentence {
      margin-top: 44px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .c-sentence {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .c-sentence {
      margin-top: 32px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .c-sentence {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .c-sentence {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .c-sentence {
      margin-top: 13px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .c-sentence {
      margin-top: 13px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .c-sentence {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .c-sentence {
      margin-top: 11px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .c-sentence,
    .c-list + .c-sentence {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .c-sentence,
    .c-list + .c-sentence {
      margin-top: 26px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .c-sentence {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .c-sentence {
      margin-top: 44px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .c-sentence {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .c-sentence {
      margin-top: 14px; } }

/**
* 中央寄せ
*/
.c-sentence.-center, .c-sentence--lead {
  text-align: center; }

/**
* 中央寄せ（TB以上）
*/
@media print, screen and (min-width: 48em) {
  .c-sentence.-center-S {
    text-align: center; } }

/**
* 右寄せ
*/
.c-sentence--right {
  text-align: right; }
  .c-sentence--right.-small {
    font-size: 0.9375rem; }

/**
 * 文字サイズ小
 */
@media print, screen and (min-width: 48em) {
  .c-sentence.-muted {
    font-size: 0.875rem;
    line-height: 1.75; } }

/**
 * PC文字サイズ小
 */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-large {
    font-size: 1rem; } }

@media print, screen and (min-width: 48em) {
  .c-sentence.-large {
    font-size: 1.125rem;
    line-height: 1.75; } }

/**
* リード文
*/
@media only screen and (max-width: 47.9375em) {
  .c-sentence--lead {
    text-align: left;
    margin-top: 6px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence--lead {
    margin-top: 24px;
    line-height: 1.75; } }

.c-sentence--lead > br {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .c-sentence--lead > br {
      display: block; } }

.c-sentence--lead.-align_left {
  text-align: left; }

/* relative */
.c-sentence.-relative {
  display: inline-block; }

/**
* Google Maps 埋め込みの下部につく
*/
.c-sentence--caption {
  margin-top: 12px; }

/**
* ケータリングなどイメージ画像のキャプション
*/
.c-sentence--cap {
  line-height: 1.75; }
  @media print, screen and (max-width: 63.9375em) {
    .c-sentence--cap {
      margin-top: 14px; } }
  @media print, screen and (min-width: 64em) {
    .c-sentence--cap {
      margin-top: 14px; } }

/* 赤字特別なお知らせ */
.c-sentence--cap.-red {
  line-height: 1.75;
  color: #f94141;
  font-weight: bold; }
  @media print, screen and (max-width: 63.9375em) {
    .c-sentence--cap.-red {
      margin-top: 14px; } }
  @media print, screen and (min-width: 64em) {
    .c-sentence--cap.-red {
      margin-top: 14px; } }

/**
* 上マージンなし
*/
.c-sentence--no-margin {
  margin-top: 0; }

/* 社員詳細 */
.c-sentence.-detail {
  margin-top: 20px; }

/* 社員詳細入社後に感じたギャップ */
.c-sentence.-gap {
  margin-top: 18px; }

/* アプリとエンジニア実際の事例を見る*/
.c-sentence.-superior {
  margin-top: 37px; }

/* SPのときフォントサイズ14 */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-sp14 {
    font-size: 0.875rem; } }

.c-sentence.-mt20 {
  margin-top: 20px; }

@media print, screen and (min-width: 48em) {
  .c-sentence.-mt30 {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence.-mt30 {
    margin-top: 30px; } }

.c-sentence.-access--cap {
  margin-top: 20px; }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence.-access--cap {
      margin-top: 10px; } }

.c-sentence.-bold {
  font-weight: bold; }

.c-sentence.-contact {
  margin-top: 6px;
  line-height: 1.75; }

/* 矢印アイコン
----------------------------------------------------------------- */
.c-arrow {
  position: relative;
  display: block;
  content: '';
  width: 16px;
  height: 16px;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 50%;
  background-color: #009e6f; }
  @media print, screen and (min-width: 64em) {
    .c-arrow {
      -webkit-transition: background-color 0.7s ease;
      transition: background-color 0.7s ease; } }
  .c-arrow:before {
    content: ''; }
  .c-arrow.-inline {
    display: inline-block; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow,
    button:hover .c-arrow {
      background-color: #009e6f;
      -webkit-transition: background-color 0.2s ease;
      transition: background-color 0.2s ease; } }

.c-arrow.-bottom:before {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: calc(50% - 4px);
  left: calc(50% - 3px);
  border-color: #fff;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  content: ''; }

.c-arrow.-right:before {
  content: '';
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 2px 2px 0 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: calc(50% - 3px);
  left: calc(50% - 4px);
  border-color: #fff;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  content: '';
  top: calc(50% - 3px); }
  .browser-is-safari .c-arrow.-right:before {
    -webkit-transition: none;
    transition: none; }

.c-arrow.-left:before {
  content: '';
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: calc(50% - 3px);
  left: calc(50% - 2px);
  border-color: #fff;
  -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  content: '';
  top: calc(50% - 3px); }

/* 矢印が黒のもの */
/* リスト
----------------------------------------------------------------- */
.c-list {
  line-height: 1.75; }
  @media only screen and (max-width: 47.9375em) {
    table + .c-list,
    .c-image + .c-list,
    .p-scrollable + .c-list {
      margin-top: 21px; } }
  @media print, screen and (min-width: 48em) {
    table + .c-list,
    .c-image + .c-list,
    .p-scrollable + .c-list {
      margin-top: 24px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery + .c-list {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .p-gallery + .c-list {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .c-list,
    .c-heading-2-1 + .c-list {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .c-list,
    .c-heading-2-1 + .c-list {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .c-list {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .c-list {
      margin-top: 20px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .c-list {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .c-list {
      margin-top: 44px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .c-list {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .c-list {
      margin-top: 32px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .c-list {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .c-list {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .c-list {
      margin-top: 13px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .c-list {
      margin-top: 13px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .c-list {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .c-list {
      margin-top: 11px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .c-list,
    .c-list + .c-list {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .c-list,
    .c-list + .c-list {
      margin-top: 26px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .c-list {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .c-list {
      margin-top: 44px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .c-list {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .c-list {
      margin-top: 14px; } }
  .c-list > li + li {
    margin-top: 6px; }

/* リンクリスト */
@media only screen and (max-width: 47.9375em) {
  table + .c-list.-link,
  .c-image + .c-list.-link,
  .p-scrollable + .c-list.-link {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  table + .c-list.-link,
  .c-image + .c-list.-link,
  .p-scrollable + .c-list.-link {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-list.-link {
    margin-top: 8px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-list.-link {
    margin-top: 22px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-list.-link {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-list.-link {
    margin-top: 36px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-list.-link {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-list.-link {
    margin-top: 10px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-list.-link {
    margin-top: 18px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-list.-link {
    margin-top: 28px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-list.-link,
  .c-heading-2-1 + .c-list.-link {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-list.-link,
  .c-heading-2-1 + .c-list.-link {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-list.-link {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-page-title + .c-list.-link {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-list.-link {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-list.-link {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-list.-link,
  .c-list + .c-list.-link {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence + .c-list.-link,
  .c-list + .c-list.-link {
    margin-top: 35px; } }

@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-list.-link {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-list.-link {
    margin-top: 52px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-list.-link {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-list.-link {
    margin-top: 14px; } }

@media only screen and (max-width: 47.9375em) {
  .c-list.-link {
    font-size: 1rem; } }

@media print, screen and (min-width: 48em) {
  .c-list.-link {
    font-size: 1.125rem; } }

.c-list.-link > li {
  border-bottom: 1px solid #c2cfc9;
  margin-top: -1px; }
  .c-list.-link > li:first-child {
    top: 1px solid #c2cfc9; }
  .c-list.-link > li > a {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: baseline;
            align-items: baseline;
    position: relative;
    padding-top: 16px;
    padding-right: 24px;
    padding-bottom: 16px;
    font-size: 0.875rem;
    font-weight: bold; }
    @media print, screen and (min-width: 64em) {
      .c-list.-link > li > a {
        padding-right: 32px;
        font-size: 1rem; } }

.c-list.-link .c-arrow {
  margin-right: 8px;
  top: 0.15em; }

.c-list.-outline > li > a {
  display: block;
  position: relative;
  padding-top: 16px;
  padding-right: 24px;
  padding-bottom: 16px;
  font-size: 0.875rem;
  font-weight: bold; }
  @media print, screen and (min-width: 64em) {
    .c-list.-outline > li > a {
      padding-right: 32px;
      font-size: 1rem; } }
  .c-list.-outline > li > a:after {
    position: absolute;
    top: calc(16px + 0.7em);
    right: 2px;
    content: '';
    width: 6px;
    height: 9px;
    background-size: cover;
    background-position: 0 0;
    background-repeat: no-repeat;
    display: inline-block;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }

@media print, screen and (min-width: 48em) {
  .c-list.-S-2-XS-1 {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
            justify-content: space-between; } }

@media print, screen and (min-width: 48em) {
  .c-list.-S-2-XS-1 > li {
    width: calc(50% - 10px); } }

@media only screen and (max-width: 47.9375em) {
  table + .c-list.-beginners,
  .c-image + .c-list.-beginners,
  .p-scrollable + .c-list.-beginners {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  table + .c-list.-beginners,
  .c-image + .c-list.-beginners,
  .p-scrollable + .c-list.-beginners {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-list.-beginners {
    margin-top: 8px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-list.-beginners {
    margin-top: 22px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-list.-beginners {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-list.-beginners {
    margin-top: 36px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-list.-beginners {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-list.-beginners {
    margin-top: 10px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-list.-beginners {
    margin-top: 18px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-list.-beginners {
    margin-top: 28px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-list.-beginners,
  .c-heading-2-1 + .c-list.-beginners {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-list.-beginners,
  .c-heading-2-1 + .c-list.-beginners {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-list.-beginners {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-page-title + .c-list.-beginners {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-list.-beginners {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-list.-beginners {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-list.-beginners,
  .c-list + .c-list.-beginners {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence + .c-list.-beginners,
  .c-list + .c-list.-beginners {
    margin-top: 35px; } }

@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-list.-beginners {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-list.-beginners {
    margin-top: 52px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-list.-beginners {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-list.-beginners {
    margin-top: 14px; } }

@media only screen and (max-width: 47.9375em) {
  .c-list.-beginners {
    font-size: 1rem; } }

@media print, screen and (min-width: 48em) {
  .c-list.-beginners {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.125rem;
    margin-bottom: -20px;
    margin-left: -40px; } }

@media print, screen and (min-width: 48em) {
  .c-list.-beginners > li {
    margin-top: 0;
    margin-bottom: 20px;
    margin-left: 40px; } }

.c-list.-beginners > li > a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
          align-items: baseline;
  position: relative;
  font-size: 0.875rem;
  font-weight: bold; }
  @media print, screen and (min-width: 64em) {
    .c-list.-beginners > li > a {
      font-size: 1rem; } }

.c-list.-beginners .c-arrow {
  margin-right: 8px;
  top: 0.15em; }

.c-list--center {
  text-align: center; }

/**
 * 装飾付き（円）
 */
.c-list.-disc > li {
  position: relative;
  padding-left: 14px; }
  .c-list.-disc > li + li {
    margin-top: 3px; }
  .c-list.-disc > li:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    width: 6px;
    height: 6px;
    box-sizing: border-box;
    background-color: #c2cfc9;
    border-radius: 50%;
    top: 0.6em; }

@media only screen and (max-width: 47.9375em) {
  .c-list.-disc.-access > li + li {
    margin-top: 18px; } }

.c-list.-disc.-access > li:before {
  top: 1em; }

.c-list.-disc.p-delivery-plan__list > li:before {
  background-color: #212121;
  width: 4px;
  height: 4px;
  top: 0.7em; }

.c-list.-disc.-no_mt + .c-list.-disc.-no_mt {
  margin-top: 0; }

/**
 * 装飾付き（数字）
 */
.c-list--decimal {
  list-style-type: decimal;
  list-style-position: inside;
  text-indent: -1em;
  padding-left: 1em; }

@media only screen and (max-width: 47.9375em) {
  .c-list.-muted {
    font-size: 0.875rem; } }

@media print, screen and (min-width: 48em) {
  .c-list.-muted {
    font-size: 0.875rem; } }

/**
 * 文字サイズ小
 */
.c-list.-muted.-disc > li {
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-list.-muted.-disc > li:before {
      top: 0.4em; } }
  @media print, screen and (min-width: 48em) {
    .c-list.-muted.-disc > li:before {
      top: 0.4em; } }

.c-list--check li {
  position: relative;
  font-weight: bold;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em; }
  @media only screen and (max-width: 47.9375em) {
    .c-list--check li {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-list--check li {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .c-list--check li {
      padding-left: 24px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .c-list--check li {
      padding-left: 42px;
      font-size: 1.375rem; } }
  .c-list--check li:not(:first-of-type) {
    margin-top: 4px; }
  .c-list--check li:before {
    content: '';
    position: absolute;
    left: 4px;
    display: inline-block;
    box-sizing: border-box;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
    @media only screen and (max-width: 47.9375em) {
      .c-list--check li:before {
        top: 0.2em;
        width: 7px;
        height: 13px;
        border-color: #009e6f;
        border-width: 0 2px 2px 0;
        border-style: solid; } }
    @media print, screen and (min-width: 48em) {
      .c-list--check li:before {
        top: 0.45em;
        width: 13px;
        height: 19px;
        border-color: #009e6f;
        border-width: 0 4px 4px 0;
        border-style: solid; } }
    .browser-is-ie .c-list--check li:before {
      top: 0.3em; }

.c-list--check.c-list--reason > li {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: normal;
  color: #2d2d2d; }

.c-list.-flex li {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
          align-items: baseline; }
  .c-list.-flex li > *:first-child {
    margin-right: 7px; }

@media print, screen and (min-width: 48em) {
  .c-list.-annotation {
    font-size: 0.875rem; } }

/**
 * 装飾付き（注釈つき）
 * <li><span>※</span>テキスト</li>
 */
.c-list--no-margin {
  margin-top: 0; }

.c-list--bold {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-list--bold {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-list--bold {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.c-list.-box {
  border: 1px solid #dcdfe0;
  padding-top: 20px;
  padding-left: 20px;
  padding-bottom: 20px; }

.c-link {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
          align-items: baseline;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-link {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-link {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-link .c-arrow {
    min-width: 16px;
    margin-right: 8px;
    top: 0.1em; }
    .c-link .c-arrow.-inline {
      margin-right: 3px; }
  .c-link .c-blank {
    min-width: 15px;
    margin-right: 8px;
    top: 0.1em; }
  .c-link .c-zoom {
    min-width: 20px;
    margin-right: 8px;
    top: 0.15em; }
  .c-link .c-print {
    min-width: 15px;
    margin-right: 8px;
    top: 0.1em; }
  .c-link.-inline {
    display: inline; }
    .c-link.-inline .c-blank {
      top: 0.05em; }
    .c-link.-inline.-personal span {
      padding-right: 9px;
      font-size: 1rem;
      font-weight: medium;
      text-decoration: underline; }
  @media print, screen and (min-width: 48em) {
    .p-home-block.-support .p-home-block__sec .c-link {
      line-height: 1.4; } }
  .c-link.-normal {
    font-weight: normal; }

.c-link.-mt_10 {
  margin-top: 10px; }

.c-link.-mt_16 {
  margin-top: 16px; }

/* ドロップダウンで使用 */
.c-link .c-arrow.-p_top0 {
  top: 0; }
  @media screen and (min-width: 1024px) and (max-width: 1250px) {
    .c-link .c-arrow.-p_top0 {
      top: 0.1em; } }

.p-cta-block__desc .c-link {
  margin-top: 5px; }

.c-link.-underline {
  display: inline-block;
  position: relative; }
  .c-link.-underline::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: 5px;
    background-color: #000; }
  @media print, screen and (min-width: 64em) {
    .c-link.-underline:hover {
      color: #009e6f; }
      .c-link.-underline:hover::after {
        background-color: #009e6f; } }
  .c-link.-underline.-border_white::after {
    background-color: #fff; }
  @media print, screen and (min-width: 64em) {
    .c-link.-underline.-border_white:hover::after {
      background-color: #009e6f; } }

.c-note-number {
  font-weight: bold;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em; }
  @media only screen and (max-width: 47.9375em) {
    .c-note-number {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-note-number {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-note-number {
      font-size: 0.875rem; } }
  .c-note-number > sup {
    font-size: 0.625rem;
    position: relative;
    top: 1px;
    line-height: 0; }

/* 複数カラム
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  table + .c-column,
  .c-image + .c-column,
  .p-scrollable + .c-column {
    margin-top: 21px; } }

@media print, screen and (min-width: 48em) {
  table + .c-column,
  .c-image + .c-column,
  .p-scrollable + .c-column {
    margin-top: 24px; } }

@media only screen and (max-width: 47.9375em) {
  .p-gallery + .c-column {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .p-gallery + .c-column {
    margin-top: 35px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-column,
  .c-heading-2-1 + .c-column {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-column,
  .c-heading-2-1 + .c-column {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-column {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-page-title + .c-column {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-column {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-column {
    margin-top: 44px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-column {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-column {
    margin-top: 32px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-column {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-column {
    margin-top: 10px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-column {
    margin-top: 13px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-column {
    margin-top: 13px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-column {
    margin-top: 8px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-column {
    margin-top: 11px; } }

@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-column,
  .c-list + .c-column {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence + .c-column,
  .c-list + .c-column {
    margin-top: 26px; } }

@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-column {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-column {
    margin-top: 44px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-column {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-column {
    margin-top: 14px; } }

@media print, screen and (min-width: 48em) {
  .c-column {
    display: -webkit-box;
    display: flex; } }

@media print, screen and (max-width: 63.9375em) {
  .c-column__item + .c-column__item {
    margin-top: 30px; } }

.c-column__item.-flex {
  -webkit-box-flex: 1;
          flex: 1; }

@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-flex-pc {
    -webkit-box-flex: 1;
            flex: auto; } }

@media print, screen and (min-width: 64em) {
  .c-column__item.-flex-pc {
    -webkit-box-flex: 1;
            flex: 1; } }

@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-sp_mt-none {
    margin-top: 0; } }

.c-column.-sp_reverse {
  display: -webkit-box;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-sp_reverse {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
              flex-direction: column-reverse; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-sp_reverse {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row; } }
  @media print, screen and (max-width: 63.9375em) {
    .browser-is-ie .c-column.-sp_reverse {
      display: block; } }

@media print, screen and (min-width: 48em) {
  .c-column.-order-change {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse; } }

/**
 * XS…1列
 * S …2列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-XS-1 {
    flex-wrap: wrap; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-S-2-XS-1 > .c-column__item:nth-child(0) {
    margin-top: 0; }
  .c-column.-S-2-XS-1 > .c-column__item:nth-child(1) {
    margin-top: 0; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-2-XS-1 > .c-column__item {
    width: 50%; }
    .c-column.-S-2-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-2-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-2-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; } }

/* 折り返しなし */
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-XS-1.-n_rap {
    flex-wrap: nowrap; } }

/**
 * XS…1列
 * S …3列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-1 {
    flex-wrap: wrap; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-S-3-XS-1 > .c-column__item:nth-child(0) {
    margin-top: 0; }
  .c-column.-S-3-XS-1 > .c-column__item:nth-child(1) {
    margin-top: 0; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-1 > .c-column__item {
    width: 33.3%; }
    .c-column.-S-3-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-3-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-3-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; } }

/**
 * XS…2列
 * S …3列
 */
.c-column.-S-3-XS-2 {
  flex-wrap: wrap; }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-S-3-XS-2 > .c-column__item {
      width: 50%; }
      .c-column.-S-3-XS-2 > .c-column__item:nth-child(0) {
        margin-top: 0; }
      .c-column.-S-3-XS-2 > .c-column__item:nth-child(1) {
        margin-top: 0; }
      .c-column.-S-3-XS-2 > .c-column__item:nth-child(2) {
        margin-top: 0; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-S-3-XS-2 > .c-column__item {
      width: 33.3%; }
      .c-column.-S-3-XS-2 > .c-column__item:nth-child(0) {
        margin-top: 0; }
      .c-column.-S-3-XS-2 > .c-column__item:nth-child(1) {
        margin-top: 0; }
      .c-column.-S-3-XS-2 > .c-column__item:nth-child(2) {
        margin-top: 0; } }

/**
 * XS…1列
 * M …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-M-4-XS-1 {
    flex-wrap: wrap; } }

@media print, screen and (min-width: 64em) {
  .c-column.-M-4-XS-1 > .c-column__item {
    width: 33.3%; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(3) {
      margin-top: 0; } }

@media print, screen and (min-width: 64em) {
  .c-column.-M-4-XS-1 > .c-column__item {
    width: 25%; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(3) {
      margin-top: 0; }
    .c-column.-M-4-XS-1 > .c-column__item:nth-child(4) {
      margin-top: 0; } }

/**
 * XS…1列
 * S …2列
 * M …3列
 */
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-2-M-3-XS-1 {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-2-M-3-XS-1 {
    flex-wrap: wrap; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-2-M-3-XS-1 > .c-column__item {
    width: 50%; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; } }

@media print, screen and (min-width: 64em) {
  .c-column.-S-2-M-3-XS-1 > .c-column__item {
    width: 33.3%; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; }
    .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(3) {
      margin-top: 0; } }

/**
 * XS…2列
 * S …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-2 {
    flex-wrap: wrap; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-S-4-XS-2 > .c-column__item {
    width: 50%; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(2) {
      margin-top: 0; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-2 > .c-column__item {
    width: 25%; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(2) {
      margin-top: 0; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(3) {
      margin-top: 0; }
    .c-column.-S-4-XS-2 > .c-column__item:nth-child(4) {
      margin-top: 0; } }

/**
 * XS…2列
 * S …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 {
    flex-wrap: wrap; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 > .c-column__item {
    width: 25%; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(3) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(4) {
      margin-top: 0; } }

/**
 * XS…2列
 * S …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 {
    flex-wrap: wrap; } }

@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 > .c-column__item {
    width: 25%; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(0) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(1) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(2) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(3) {
      margin-top: 0; }
    .c-column.-S-4-XS-1 > .c-column__item:nth-child(4) {
      margin-top: 0; } }

.c-column.-mx_10 {
  margin-right: -10px;
  margin-left: -10px; }
  .c-column.-mx_10 > .c-column__item {
    margin-right: 10px;
    margin-left: 10px; }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_10.-S-2-M-3-XS-1 > .c-column__item {
      width: calc(50% - 20px); } }
  @media print, screen and (min-width: 64em) {
    .c-column.-mx_10.-S-2-M-3-XS-1 > .c-column__item {
      width: calc(33.3% - 20px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_10.-S-2-XS-1 > .c-column__item {
      width: calc(50% - 20px); } }

.c-column.-mx_30 {
  margin-right: -30px;
  margin-left: -30px; }
  .c-column.-mx_30 > .c-column__item {
    margin-right: 30px;
    margin-left: 30px; }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_30.-S-2-XS-1 > .c-column__item {
      width: calc(50% - 60px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_30.-S-3-XS-1 {
      margin-top: -54px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_30.-S-3-XS-1 > .c-column__item {
      width: calc(33.3% - 60px);
      margin-top: 54px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_30.-S-2-M-3-XS-1 > .c-column__item {
      width: calc(50% - 60px); } }
  @media print, screen and (min-width: 64em) {
    .c-column.-mx_30.-S-2-M-3-XS-1 > .c-column__item {
      width: calc(33.3% - 60px); } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_30.-S-4-XS-2 {
      display: -webkit-box;
      display: flex;
      flex-wrap: wrap; } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_30.-S-4-XS-2 > .c-column__item {
      width: calc(50% - 60px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_30.-S-4-XS-2 > .c-column__item {
      width: calc(20% - 60px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_30.-S-4-XS-1 > .c-column__item {
      width: calc(25% - 60px); } }

.c-column.-mx_15 {
  margin-right: -15px;
  margin-left: -15px; }
  .c-column.-mx_15 > .c-column__item {
    margin-right: 15px;
    margin-left: 15px; }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-2-XS-1 > .c-column__item {
      width: calc(50% - 30px); } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_15.-S-2-XS-2 {
      display: -webkit-box;
      display: flex;
      flex-wrap: wrap;
      margin-top: -34px;
      margin-right: -7px;
      margin-left: -7px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-2-XS-2 {
      margin-top: -54px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_15.-S-2-XS-2 > .c-column__item {
      margin-top: 34px;
      margin-right: 7px;
      margin-left: 7px;
      width: calc(50% - 14px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-2-XS-2 > .c-column__item {
      margin-top: 54px;
      width: calc(50% - 30px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-3-XS-1 {
      margin-top: -54px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-3-XS-1 > .c-column__item {
      width: calc(33.3% - 30px);
      margin-top: 54px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_15.-S-3-XS-2 {
      display: -webkit-box;
      display: flex;
      margin-top: -34px;
      margin-right: -7px;
      margin-left: -7px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-3-XS-2 {
      margin-top: -54px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_15.-S-3-XS-2 > .c-column__item {
      width: calc(50% - 14px);
      margin-top: 34px;
      margin-right: 7px;
      margin-left: 7px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-3-XS-2 > .c-column__item {
      width: calc(33.3% - 30px);
      margin-top: 54px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-2-M-3-XS-1 > .c-column__item {
      width: calc(50% - 30px); } }
  @media print, screen and (min-width: 64em) {
    .c-column.-mx_15.-S-2-M-3-XS-1 > .c-column__item {
      width: calc(33.3% - 30px); } }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-mx_15.-S-4-XS-2 > .c-column__item {
      width: calc(50% - 30px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-S-4-XS-2 > .c-column__item {
      width: calc(25% - 30px); } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-M-4-XS-1 {
      margin-top: -38px; } }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_15.-M-4-XS-1 > .c-column__item {
      width: calc(33.3% - 30px);
      margin-top: 38px; } }
  @media print, screen and (min-width: 64em) {
    .c-column.-mx_15.-M-4-XS-1 > .c-column__item {
      width: calc(25% - 30px); } }

/*

 XXX: 変ですが、右側は19px
*/
.c-column.-mx_20 {
  margin-right: -19px;
  margin-left: -20px; }
  .c-column.-mx_20 > .c-column__item {
    margin-left: 20px;
    margin-right: 19px; }
  @media print, screen and (min-width: 48em) {
    .c-column.-mx_20.-S-3-XS-1 > .c-column__item {
      width: calc(33.3% - 39px); } }

@media print, screen and (min-width: 48em) {
  .c-column.-mt_S-70 > .c-column__item {
    margin-top: 70px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-mt_S-70.-document .c-column__item {
    margin-top: 70px; } }

@media print, screen and (min-width: 48em) {
  .c-column + .c-column {
    margin-top: 74px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-list .c-column__item {
    margin-top: 0; } }

/**
 * 均等分
 */
.c-column.-space_between {
  -webkit-box-pack: justify;
          justify-content: space-between; }

@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-w_400px {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .c-column__item.-w_400px {
    width: 400px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-w_500px {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .c-column__item.-w_500px {
    width: 400px; } }

@media print, screen and (min-width: 75em) {
  .c-column__item.-w_500px {
    width: 500px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-service .c-column__item + .c-column__item {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-layout {
    margin-top: 4px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-layout .c-column__item + .c-column__item {
    margin-top: 10px; } }

/* アクセスの駅からの行き方で使用 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-1.-mt_66 {
    margin-top: -66px; } }

.c-column.-S-3-XS-1.-mt_66 .c-column__item {
  margin-top: 66px; }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-S-3-XS-1.-mt_66 .c-column__item {
      margin-top: 22px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-access-carry {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .c-column.-access-carry {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
            flex-direction: row-reverse; } }

.c-column.-access-carry .c-column__item.-w-66 {
  width: calc(66% - 60px);
  margin-right: 60px;
  box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .c-column.-access-carry .c-column__item.-w-66 {
      width: 100%; } }

.c-column.-dropdown {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center; }
  .c-column.-dropdown > a {
    color: #fff;
    margin-right: 36px;
    line-height: 1;
    white-space: nowrap; }
    @media screen and (min-width: 1024px) and (max-width: 1250px) {
      .c-column.-dropdown > a {
        font-size: 0.8125rem; } }
    @media print, screen and (max-width: 63.9375em) {
      .c-column.-dropdown > a {
        color: #2d2d2d;
        margin-left: 0px;
        margin-top: 10px; } }
  @media screen and (min-width: 1024px) and (max-width: 1250px) {
    .c-column.-dropdown .p-dropdown-title {
      font-size: 1.25rem; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-column.-dropdown {
      display: block;
      padding-top: 2px;
      padding-bottom: 20px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service {
    margin-top: 0px; } }

@media print, screen and (min-width: 64em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service {
    margin-top: -13px; } }

.c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item {
  margin-top: 0;
  border-top: 1px solid #c2cfc9; }
  @media print, screen and (max-width: 63.9375em) {
    .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item {
      display: -webkit-box;
      display: flex;
      margin-top: 0px; } }
  @media print, screen and (min-width: 64em) {
    .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item {
      width: calc(33.3% - 40px);
      margin-right: 20px;
      margin-left: 20px; } }
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:last-of-type {
    border-bottom: 1px solid #c2cfc9; }
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(2) {
    border-bottom: 1px solid #c2cfc9; }
    @media only screen and (max-width: 47.9375em) {
      .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(2) {
        border-bottom: none; } }
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(3) {
    border-bottom: 1px solid #c2cfc9; }
    @media only screen and (max-width: 47.9375em) {
      .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(3) {
        border-bottom: none; } }

@media print, screen and (max-width: 63.9375em) {
  .c-column.-S-3-XS-1.-mx_30.-sp_mt0 .c-column__item {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-S-3-XS-1.-mx_30.-sp_mt0 .c-column__item {
    margin-top: 0px; } }

@media print, screen and (min-width: 64em) {
  .c-column.-S-3-XS-1.-mx_30.-sp_mt0 .c-column__item {
    margin-top: 70px; } }

.c-column.-eating_rule .c-column__item {
  margin-top: 30px; }

.c-column.-article {
  margin-top: 20px; }

/* カード形式
----------------------------------------------------------------- */
.c-card {
  display: -webkit-box;
  display: flex;
  width: 100%;
  position: relative; }
  .c-card > a:not(.c-card__link) {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .c-column .c-card {
    height: 100%; }
  .c-card.-block {
    display: block; }

.c-card.-zoom .c-card__link {
  position: relative; }
  @media print, screen and (min-width: 48em) {
    .c-card.-zoom .c-card__link {
      padding-bottom: 42px; } }

.c-card.-zoom .c-card__zoom {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  background: transparent;
  border: none;
  -webkit-transition: color 0.1s 0s ease;
  transition: color 0.1s 0s ease;
  cursor: pointer; }
  @media print, screen and (min-width: 64em) {
    .c-card.-zoom .c-card__zoom:hover {
      color: #009e6f; } }
  .c-card.-zoom .c-card__zoom:focus {
    outline: none; }
  .c-card.-zoom .c-card__zoom span {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0; }
    @media only screen and (max-width: 47.9375em) {
      .c-card.-zoom .c-card__zoom span {
        display: none; } }

.c-card__link {
  box-sizing: border-box;
  width: 100%;
  border-radius: 4px; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__link {
      position: relative; } }
  @media print, screen and (min-width: 64em) {
    .c-card__link {
      -webkit-transition: box-shadow 0.7s ease;
      transition: box-shadow 0.7s ease; } }
  @media print, screen and (min-width: 64em) {
    .c-card__link:hover,
    a:hover + .c-card__link {
      -webkit-transition: box-shadow 0.2s ease;
      transition: box-shadow 0.2s ease; } }
  @media print, screen and (min-width: 64em) {
    .c-card__link:hover .c-card__thumb > span,
    a:hover + .c-card__link .c-card__thumb > span {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
      -webkit-transition: -webkit-transform 0.2s ease;
      transition: -webkit-transform 0.2s ease;
      transition: transform 0.2s ease;
      transition: transform 0.2s ease, -webkit-transform 0.2s ease; } }
  @media print, screen and (min-width: 64em) {
    .c-card__link:hover .c-card__more > span,
    a:hover + .c-card__link .c-card__more > span {
      -webkit-transition: color 0.2s ease;
      transition: color 0.2s ease;
      color: #009e6f; } }
  @media print, screen and (min-width: 64em) {
    .c-card__link:hover .c-card__more > .c-arrow,
    a:hover + .c-card__link .c-card__more > .c-arrow {
      -webkit-transition: background-image 0.2s ease;
      transition: background-image 0.2s ease; } }
  @media print, screen and (min-width: 48em) {
    .c-card__link.-column {
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column; } }
  .c-card__link.-column > .c-card__sec {
    padding-top: 24px;
    margin-top: auto; }

@media print, screen and (min-width: 48em) {
  .c-card.-article > .c-card__link {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; } }

.c-card.-article > .c-card__link > .c-card__image {
  width: 100%;
  position: relative;
  overflow: hidden;
  font-size: 0;
  padding-top: 62.5%; }
  .c-card.-article > .c-card__link > .c-card__image img {
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .c-card.-article > .c-card__link > .c-card__image + .c-card__title {
    display: -webkit-box;
    display: flex;
    margin-top: 20px;
    line-height: 1.8; }

.c-card.-article > .c-card__link .c-card__title .c-arrow {
  min-width: 16px;
  margin-right: 8px;
  margin-left: 0;
  top: 0.4em; }

.c-card.-article:hover > .c-card__link .c-card__image img {
  -webkit-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1); }

.c-card.-article:hover > .c-card__link .c-card__title {
  color: #009e6f; }

.c-card__body {
  box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__body {
      padding: 24px 24px 22px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__body {
      padding: 40px 40px 40px 40px; } }
  .c-card__body > *:first-child {
    margin-top: 0; }
  .c-card__body.-measures > *:first-child {
    margin-top: 30px; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__body.-measures {
      padding: 0; } }
  @media print, screen and (min-width: 48em) {
    .c-card__body.-measures {
      padding: 0 60px 0 0; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-card__body.-measures .c-card__title {
      font-size: 1.375rem;
      margin-top: 4px;
      line-height: 1.5; } }
  .c-card__body.-measures .c-card__text {
    font-weight: normal;
    color: #2d2d2d;
    font-size: 1rem; }

.c-card__image.-bg {
  width: 100%;
  position: relative;
  height: 0;
  padding-top: 75%; }
  .c-card__image.-bg > span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }

@media print, screen and (min-width: 48em) {
  .c-card__image.-service_1 {
    padding-top: 72px; } }

.c-card__image.-service_1 span {
  background-position: center; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__image.-service_1 span {
      background-size: 58px 51px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__image.-service_1 span {
      background-size: 83px 72px; } }

@media print, screen and (min-width: 48em) {
  .c-card__image.-service_2 {
    padding-top: 74px; } }

.c-card__image.-service_2 span {
  background-position: center; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__image.-service_2 span {
      background-size: 58px 40px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__image.-service_2 span {
      background-size: 64px 76px; } }

@media print, screen and (min-width: 48em) {
  .c-card__image.-service_3 {
    padding-top: 74px; } }

.c-card__image.-service_3 span {
  background-position: center; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__image.-service_3 span {
      background-size: 45px 52px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__image.-service_3 span {
      background-size: 85px 66px; } }

@media print, screen and (min-width: 48em) {
  .c-card__image.-service_4 {
    padding-top: 74px; } }

.c-card__image.-service_4 span {
  background-position: center; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__image.-service_4 span {
      background-size: 57px 52px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__image.-service_4 span {
      background-size: 84px 74px; } }

@media print, screen and (min-width: 48em) {
  .c-card__title.-measures {
    font-size: 1rem;
    margin-top: 20px; } }

.c-card__title.-measures .-number {
  display: block;
  font-size: 0.875rem;
  font-weight: normal; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__title.-measures .-number {
      margin-top: 6px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__title.-measures .-number {
      margin-top: 6px; } }

.c-card__text {
  font-weight: bold;
  color: #666;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__text {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-card__text {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .c-card__text {
      margin-top: 8px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .c-card__text {
      margin-top: 16px;
      font-size: 1rem; } }

.c-card__text.-example {
  color: #000;
  font-weight: 500; }
  @media print, screen and (max-width: 63.9375em) {
    .c-card__text.-example {
      margin-bottom: 16px; } }

.c-card__sub {
  position: relative;
  display: inline-block;
  padding-right: 30px;
  font-family: futura-pt, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1; }
  @media print, screen and (min-width: 48em) {
    .c-card__sub {
      padding-left: 30px; } }
  .c-card__sub:before, .c-card__sub:after {
    content: '';
    position: absolute;
    top: calc(50% - 1px);
    width: 20px;
    height: 1px;
    background-color: currentColor;
    opacity: 0.5; }
  .c-card__sub:before {
    left: 0; }
    @media only screen and (max-width: 47.9375em) {
      .c-card__sub:before {
        display: none; } }
  .c-card__sub:after {
    right: 0; }

.c-card__title {
  font-weight: bold;
  color: #2d2d2d;
  line-height: 1.36;
  margin-top: 8px; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-card__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .c-card__title {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 48em) {
    .c-card__title {
      font-size: 1.375rem; } }
  @media only screen and (max-width: 47.9375em) {
    .c-card__image + .c-card__title {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-card__image + .c-card__title {
      margin-top: 26px; } }
  .c-card__title > .c-arrow {
    top: 0;
    display: inline-block;
    margin-left: 5px; }
  .c-card__title > .c-link .c-arrow {
    top: 0; }

@media print, screen and (min-width: 48em) {
  .c-card__title.-small {
    font-size: 1.125rem; } }

@media print, screen and (min-width: 48em) {
  .c-card__title.-xsmall {
    font-size: 1rem; } }

@media only screen and (max-width: 47.9375em) {
  .c-card__sec {
    margin-top: 6px; } }

@media print, screen and (min-width: 48em) {
  .c-card__sec {
    margin-top: 8px; } }

.c-card__sec .c-sentence {
  line-height: 1.625; }

@media only screen and (max-width: 47.9375em) {
  .c-card__sec.-sp_mt20 {
    margin-top: 12px; } }

.c-card__sec-flex {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap; }
  @media print, screen and (max-width: 63.9375em) {
    .c-card__sec-flex {
      -webkit-box-pack: start;
              justify-content: flex-start; } }
  @media print, screen and (min-width: 64em) {
    .c-card__sec-flex {
      -webkit-box-pack: justify;
              justify-content: space-between; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-card__sec-flex .c-card__sec-left {
      margin-right: 10px; } }
  @media print, screen and (min-width: 64em) {
    .c-card__sec-flex .c-card__sec-right {
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: end;
              justify-content: flex-end;
      -webkit-box-flex: 1;
              flex: 1 1 auto; } }

.c-card__table {
  margin-top: 30px; }

.c-card__tag {
  margin-top: 4px;
  margin-left: -8px; }
  .c-card__tag .c-badge {
    margin-top: 8px;
    margin-left: 8px; }

.c-card__button {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  width: 100%;
  padding-top: 6px;
  padding-bottom: 4px;
  margin-top: 22px;
  border: 1px solid #c8cccf;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1rem;
  border-radius: 3px;
  -webkit-box-align: baseline;
          align-items: baseline; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__button {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-card__button {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-card__button .c-pdf {
    position: relative;
    top: 4px;
    margin-right: 8px; }
  .c-card__button .c-blank {
    margin-right: 8px; }
  .c-card__button .c-print {
    margin-right: 8px; }
  .c-card__button.-center {
    -webkit-box-align: center;
            align-items: center; }

.c-card__button.-mt_95 {
  margin-top: 95px; }
  @media only screen and (max-width: 47.9375em) {
    .c-card__button.-mt_95 {
      margin-top: 24px; } }

a.c-card__link,
a + .c-card__link {
  background-color: #fff; }

@media print, screen and (min-width: 48em) {
  .c-card.-text_center {
    text-align: center; } }

@media print, screen and (min-width: 48em) {
  .c-card.-service {
    text-align: center; } }

@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__link {
    display: -webkit-box;
    display: flex; } }

@media print, screen and (max-width: 63.9375em) {
  .c-card.-service .c-card__title {
    font-size: 1.125rem; } }

@media print, screen and (min-width: 64em) {
  .c-card.-service .c-card__title {
    font-size: 1.25rem; } }

.c-card.-service .c-card__body {
  padding: 0; }
  @media only screen and (max-width: 47.9375em) {
    .c-card.-service .c-card__body {
      -webkit-box-flex: 1;
              flex: 1; } }
  @media print, screen and (min-width: 48em) {
    .c-card.-service .c-card__body {
      margin-top: 24px; } }

@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__image {
    width: 80px;
    height: 100%;
    padding-top: 0; } }

@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__image > span {
    width: 58px;
    padding-top: 0;
    background-size: contain; } }

/* サブタイトルつきのカード */
.c-card.-width-sub-title .c-card__title {
  margin-top: 4px; }

/* 駅からの行き方 */
.c-column.-h_auto .c-card {
  height: auto; }

.c-card__list > li {
  line-height: 1.4;
  font-size: 1rem; }

.c-card__link.-catering {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column; }
  .c-card__link.-catering .c-card__sec {
    /*margin-top: auto;*/
    padding-top: 12px; }
    .c-card__link.-catering .c-card__sec::before {
      top: 12px; }

/* セクション
----------------------------------------------------------------- */
@media print, screen and (max-width: 63.9375em) {
  .c-section-lead {
    margin-top: 30px; } }

@media print, screen and (min-width: 64em) {
  .c-section-lead {
    margin-top: 60px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-1, .p-cta-block.-detail {
    margin-top: 40px; } }

@media print, screen and (min-width: 64em) {
  .c-section-1, .p-cta-block.-detail {
    margin-top: 105px; } }

@media only screen and (max-width: 47.9375em) {
  .c-section-1.-sp_mt_large, .-sp_mt_large.p-cta-block.-detail {
    margin-top: 44px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-15 {
    margin-top: 40px; } }

@media print, screen and (min-width: 64em) {
  .c-section-15 {
    margin-top: 92px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-2 {
    margin-top: 54px; } }

@media print, screen and (min-width: 64em) {
  .c-section-2 {
    margin-top: 76px; } }

.c-section-2.-p_test {
  page-break-before: always; }

@media only screen and (max-width: 47.9375em) {
  .c-section-25 {
    margin-top: 32px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-25 {
    margin-top: 15px; } }

@media print, screen and (min-width: 64em) {
  .c-section-25 {
    margin-top: 55px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-3 {
    margin-top: 34px; } }

@media print, screen and (min-width: 64em) {
  .c-section-3 {
    margin-top: 59px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-35 {
    margin-top: 32px; } }

@media print, screen and (min-width: 48em) {
  .c-section-35 {
    margin-top: 25px; } }

@media print, screen and (min-width: 64em) {
  .c-section-35 {
    margin-top: 59px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-4 {
    margin-top: 24px; } }

@media print, screen and (min-width: 64em) {
  .c-section-4 {
    margin-top: 45px; } }

@media only screen and (max-width: 47.9375em) {
  .c-section-45 {
    margin-top: 14px; } }

@media print, screen and (min-width: 48em) {
  .c-section-45 {
    margin-top: 25px; } }

@media print, screen and (min-width: 64em) {
  .c-section-45 {
    margin-top: 32px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-5 {
    margin-top: 14px; } }

@media print, screen and (min-width: 64em) {
  .c-section-5 {
    margin-top: 32px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-6 {
    margin-top: 52px; } }

@media print, screen and (min-width: 64em) {
  .c-section-6 {
    margin-top: 92px; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-7 {
    margin-top: 10px; } }

@media print, screen and (min-width: 64em) {
  .c-section-7 {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .c-section-7.-tb_mt0 {
    margin-top: 0; } }

@media print, screen and (max-width: 63.9375em) {
  .c-section-8 {
    margin-top: 12px; } }

@media print, screen and (min-width: 64em) {
  .c-section-8 {
    margin-top: 23px; } }

.c-section-9 {
  margin-top: 53px; }

.c-section-10 {
  margin-top: 54px; }
  @media print, screen and (min-width: 64em) {
    .c-section-10 {
      margin-top: 92px; } }
  .c-section-10.-top {
    margin-top: 54px; }
    @media print, screen and (min-width: 64em) {
      .c-section-10.-top {
        margin-top: 54px; } }
    @media print, screen and (min-width: 75em) {
      .c-section-10.-top {
        margin-top: 92px; } }

/* 別窓アイコン
----------------------------------------------------------------- */
.c-blank {
  display: inline-block;
  position: relative;
  width: 15px;
  height: 13px; }
  .c-blank:after {
    position: absolute;
    display: inline-block;
    content: '';
    right: 0;
    top: 0;
    width: 11px;
    height: 9px;
    background-color: #009e6f;
    box-sizing: border-box;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-blank:before {
    position: absolute;
    display: inline-block;
    content: '';
    bottom: 0;
    left: 0;
    width: 12px;
    height: 11px;
    border-style: solid;
    border-width: 0 0 2px 2px;
    border-color: #009e6f;
    border-radius: 0 0 0 2px;
    box-sizing: border-box;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }

.c-blank.-header {
  margin-left: 4px;
  top: 0;
  display: inline-block;
  position: relative;
  width: 13px;
  height: 11px; }
  .c-blank.-header:after {
    position: absolute;
    display: inline-block;
    content: '';
    right: 0;
    top: 0;
    width: 9px;
    height: 7px;
    background-color: #009e6f;
    box-sizing: border-box;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-blank.-header:before {
    position: absolute;
    display: inline-block;
    content: '';
    bottom: 0;
    left: 0;
    width: 10px;
    height: 9px;
    border-style: solid;
    border-width: 0 0 2px 2px;
    border-color: #009e6f;
    border-radius: 0 0 0 2px;
    box-sizing: border-box;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-blank.-header::before {
    left: 2px; }
  @media print, screen and (min-width: 64em) {
    .c-blank.-header {
      margin-left: 4px; }
      .c-blank.-header:after {
        position: absolute;
        display: inline-block;
        content: '';
        right: 0;
        top: 0;
        width: 9px;
        height: 7px;
        background-color: #fff;
        box-sizing: border-box;
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
      .c-blank.-header:before {
        position: absolute;
        display: inline-block;
        content: '';
        bottom: 0;
        left: 0;
        width: 10px;
        height: 9px;
        border-style: solid;
        border-width: 0 0 2px 2px;
        border-color: #fff;
        border-radius: 0 0 0 2px;
        box-sizing: border-box;
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
      .c-blank.-header::before {
        left: 2px; } }

/* 画像
 * 詳細ページに挿入する画像に指定する。
----------------------------------------------------------------- */
.c-image {
  display: block;
  position: relative; }
  .c-image > * {
    max-width: 100%; }
  .c-image img {
    display: block;
    margin: 0 auto;
    height: auto; }
    @media only screen and (max-width: 47.9375em) {
      .c-image img {
        width: 100%; } }
    @media print, screen and (min-width: 48em) {
      .c-image img {
        max-width: 100%;
        width: 100%; } }
  @media only screen and (max-width: 47.9375em) {
    table + .c-image,
    .c-image + .c-image,
    .p-scrollable + .c-image {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .c-image,
    .c-image + .c-image,
    .p-scrollable + .c-image {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .c-image {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .c-image {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .c-image {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .c-image {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .c-image {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .c-image {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .c-image {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .c-image {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .c-image,
    .c-heading-2-1 + .c-image {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .c-image,
    .c-heading-2-1 + .c-image {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .c-image {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .c-image {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .c-image {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .c-image {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .c-image,
    .c-list + .c-image {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .c-image,
    .c-list + .c-image {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .c-image {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .c-image {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .c-image {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .c-image {
      margin-top: 14px; } }

@media print, screen and (min-width: 48em) {
  .c-image.-radius-right > img {
    max-width: calc(100% + 100px);
    position: relative;
    right: 0;
    border-radius: 4px 0 0 4px; } }

@media print, screen and (min-width: 87.5em) {
  .c-image.-radius-right > img {
    border-radius: 4px; } }

@media print, screen and (min-width: 48em) {
  .c-image.-radius-left > img {
    max-width: calc(100% + 100px);
    position: relative;
    left: -100px;
    border-radius: 0 4px 4px 0; } }

@media print, screen and (min-width: 87.5em) {
  .c-image.-radius-left > img {
    border-radius: 4px; } }

.c-image.-svg {
  position: relative;
  height: 0;
  padding-top: 50%; }
  .c-image.-svg > img {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto; }
    @media only screen and (max-width: 47.9375em) {
      .c-image.-svg > img {
        width: auto;
        -webkit-transform: scale(0.8);
                transform: scale(0.8); } }

.c-image.-radius > img {
  border-radius: 4px; }

.c-image.-border > img {
  border: 2px solid #e5e5e5; }

@media only screen and (max-width: 47.9375em) {
  .c-image.-carriermodel {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .c-image.-carriermodel {
    margin-top: 40px; } }

@media print, screen and (min-width: 64em) {
  .c-heading-5 + .c-imag {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .c-image.-mt_XS_30 {
    margin-top: 23px; } }

.c-image.-rot_180 {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.c-image.-rot_90 {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  position: relative;
  z-index: -1; }

/* 詳細ページのアンカーリンク
----------------------------------------------------------------- */
.c-outline {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 47.9375em) {
    .c-outline {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column; } }
  @media print, screen and (min-width: 48em) {
    .c-outline {
      margin-top: -20px;
      margin-left: -40px; } }

@media print, screen and (min-width: 48em) {
  .c-outline__item {
    margin-top: 20px;
    margin-left: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .c-outline__item:not(:first-child) {
    margin-top: 12px; } }

.c-outline__link {
  display: inline-block;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  color: #2d2d2d;
  font-weight: bold;
  padding-left: 24px; }
  @media only screen and (max-width: 47.9375em) {
    .c-outline__link {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-outline__link {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-outline__link .c-arrow {
    position: absolute;
    top: 0.3em;
    left: 0; }

.c-outline.-room {
  margin-top: 0;
  margin-left: -30px; }
  .c-outline.-room .c-outline__item {
    margin-top: 5px;
    margin-left: 30px;
    padding-top: 0px;
    padding-bottom: 5px; }

@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap {
    display: block;
    margin: 0; } }

@media print, screen and (min-width: 64em) {
  .c-outline.-floormap {
    margin-top: -20px;
    margin-left: -60px; } }

.c-outline.-floormap .c-outline__item {
  box-sizing: border-box; }
  @media print, screen and (max-width: 63.9375em) {
    .c-outline.-floormap .c-outline__item {
      border-width: 1px 0 0 0;
      border-color: #c2cfc9;
      border-style: solid; } }
  @media print, screen and (min-width: 64em) {
    .c-outline.-floormap .c-outline__item {
      border-width: 1px 0 1px 0;
      border-color: #c2cfc9;
      border-style: solid; } }
  @media print, screen and (min-width: 48em) {
    .c-outline.-floormap .c-outline__item {
      margin: 0; } }
  @media print, screen and (min-width: 64em) {
    .c-outline.-floormap .c-outline__item {
      margin-top: 20px;
      margin-left: 60px;
      width: calc(50% - 60px); } }
  @media only screen and (max-width: 47.9375em) {
    .c-outline.-floormap .c-outline__item:not(:first-child) {
      margin-top: 12px; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-outline.-floormap .c-outline__item:last-child {
      border-width: 1px 0 1px 0; } }

.c-outline.-floormap .c-outline__link {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  @media print, screen and (max-width: 63.9375em) {
    .c-outline.-floormap .c-outline__link {
      padding-top: 13px;
      padding-bottom: 5px; } }
  @media print, screen and (min-width: 64em) {
    .c-outline.-floormap .c-outline__link {
      padding-top: 24px;
      padding-bottom: 18px; } }
  .c-outline.-floormap .c-outline__link .c-arrow {
    top: 50%;
    -webkit-transform: translateY(-40%);
            transform: translateY(-40%); }

.c-outline.-floormap .c-outline__left {
  display: inline-block; }

@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap .c-outline__right {
    width: 118px; }
    .c-outline.-floormap .c-outline__right img {
      width: 100%; } }

@media print, screen and (min-width: 64em) {
  .c-outline.-floormap .c-outline__right {
    width: 175px; }
    .c-outline.-floormap .c-outline__right img {
      width: 100%; } }

.c-overlay {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 1; }
  @media print, screen and (min-width: 64em) {
    .c-overlay {
      top: 55px; } }
  .c-overlay.-visible {
    visibility: visible;
    opacity: 0.75; }

/* テーブル形式
----------------------------------------------------------------- */
.c-table {
  width: 100%;
  border-top: 1px solid #c2cfc9; }
  @media only screen and (max-width: 47.9375em) {
    table + .c-table,
    .c-image + .c-table,
    .p-scrollable + .c-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .c-table,
    .c-image + .c-table,
    .p-scrollable + .c-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .c-table {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .c-table {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .c-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .c-table {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .c-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .c-table {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .c-table {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .c-table {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .c-table,
    .c-heading-2-1 + .c-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .c-table,
    .c-heading-2-1 + .c-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .c-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .c-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .c-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .c-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .c-table,
    .c-list + .c-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .c-table,
    .c-list + .c-table {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .c-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .c-table {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .c-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .c-table {
      margin-top: 14px; } }
  .c-table > tbody > tr:not(.c-thead-light),
  .c-table > thead > tr:not(.c-thead-light) {
    border-bottom: 1px solid #c2cfc9; }
  .c-table > tbody > tr > th,
  .c-table > thead > tr > th {
    white-space: nowrap;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    line-height: 1;
    vertical-align: top; }
    @media only screen and (max-width: 47.9375em) {
      .c-table > tbody > tr > th,
      .c-table > thead > tr > th {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .c-table > tbody > tr > th,
      .c-table > thead > tr > th {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media only screen and (max-width: 47.9375em) {
      .c-table > tbody > tr > th,
      .c-table > thead > tr > th {
        display: block;
        padding-top: 19px; } }
    @media print, screen and (min-width: 48em) {
      .c-table > tbody > tr > th,
      .c-table > thead > tr > th {
        padding-top: 18px;
        padding-bottom: 16px; } }
    .c-table > tbody > tr > th span,
    .c-table > thead > tr > th span {
      display: inline-block;
      font-size: 0.5625rem; }
  .c-table > tbody > tr > td,
  .c-table > thead > tr > td {
    line-height: 1.5;
    width: 100%; }
    @media only screen and (max-width: 47.9375em) {
      .c-table > tbody > tr > td,
      .c-table > thead > tr > td {
        display: block;
        padding-top: 8px;
        padding-bottom: 13px; } }
    @media print, screen and (min-width: 48em) {
      .c-table > tbody > tr > td,
      .c-table > thead > tr > td {
        padding-top: 14px;
        padding-bottom: 12px;
        padding-left: 38px; } }

.c-thead-light {
  border-width: 1px 0 1px 0;
  border-color: #c2cfc9;
  border-style: solid; }
  .c-thead-light > th:first-of-type {
    padding-left: 20px;
    text-align: left; }
  .c-thead-light > th:nth-child(3) {
    padding-left: 10px; }
  .c-thead-light > th:last-of-type {
    padding-left: 46px; }

/* アクセス */
.c-table.-access {
  margin-top: 20px; }
  @media print, screen and (max-width: 63.9375em) {
    .c-table.-access tbody tr th {
      display: block; } }
  .c-table.-access th {
    color: #2d2d2d;
    padding-bottom: 0;
    font-size: 1.375rem; }
    @media only screen and (max-width: 47.9375em) {
      .c-table.-access th {
        font-size: 1rem;
        padding-top: 22px; } }
    @media print, screen and (min-width: 48em) {
      .c-table.-access th {
        padding-top: 20px;
        font-size: 1.125rem; } }
    @media print, screen and (min-width: 64em) {
      .c-table.-access th {
        padding-top: 36px; } }
  .c-table.-access td {
    display: block;
    padding-left: 0;
    font-size: 1.125rem;
    font-weight: 600; }
    @media only screen and (max-width: 47.9375em) {
      .c-table.-access td {
        font-size: 0.875rem;
        padding-bottom: 14px; } }
    @media only screen and (max-width: 47.9375em) {
      .c-table.-access td {
        margin-top: 8px;
        padding-bottom: 14px; } }
    @media print, screen and (min-width: 64em) {
      .c-table.-access td {
        padding-top: 32px;
        padding-bottom: 32px; } }
    @media print, screen and (max-width: 63.9375em) {
      .c-table.-access td .c-list + .c-list {
        margin-top: 10px; } }
    .c-table.-access td .c-sentence {
      font-weight: 500;
      font-size: 1rem; }
    .c-table.-access td ul li .-mita,
    .c-table.-access td ul li .-metro-group {
      display: block;
      font-size: 1rem;
      font-weight: normal; }
      @media print, screen and (max-width: 63.9375em) {
        .c-table.-access td ul li .-mita,
        .c-table.-access td ul li .-metro-group {
          font-size: 0.875rem; } }
    .c-table.-access td ul li .-exit {
      position: relative;
      padding-left: 0;
      margin-right: 0;
      font-size: 1.5rem; }
    .c-table.-access td ul li span {
      position: relative;
      padding-left: 18px;
      margin-right: 20px; }
      .c-table.-access td ul li span::before {
        content: '';
        position: absolute;
        width: 14px;
        height: 14px;
        top: 0.35em;
        left: 0;
        box-sizing: border-box;
        border-radius: 50%; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-mita::before {
        border: solid 4px #0079c2;
        top: 0.35em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-mita::before {
            top: 0.325em; } }
      .c-table.-access td ul li span.-chiyoda::before {
        border: solid 4px #009933;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-chiyoda::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-hibiya::before {
        border: solid 4px #89a1ad;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-hibiya::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-marunouchi::before {
        border: solid 4px #e60012;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-marunouchi::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-ginza::before {
        border: solid 4px #f7931d;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-ginza::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-JR::before {
        top: 0.2em;
        width: 14px;
        height: 14px;
        top: 0.2em;
        left: 0;
        background-color: #00833f;
        border-radius: 3px; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-JR::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-asakusa::before {
        border: solid 4px #e85298;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-asakusa::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-nanboku::before {
        border: solid 4px #00ac9b;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-nanboku::before {
            top: 0.125em; } }
      .c-table.-access td ul li span.-yurikamome::before {
        background-color: #27404e;
        top: 0.2em; }
        @media only screen and (max-width: 47.9375em) {
          .c-table.-access td ul li span.-yurikamome::before {
            top: 0.125em; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-table.-catering {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-table.-catering {
    margin-top: 15px; } }

@media print, screen and (min-width: 64em) {
  .c-heading-5 + .c-table.-catering {
    margin-top: 15px; } }

@media print, screen and (min-width: 64em) {
  .c-table.-example {
    margin-top: 24px; } }

.c-badge {
  cursor: pointer;
  display: inline-block;
  border-radius: 3px;
  border: 1px solid #c8cccf;
  color: #2d2d2d;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.25;
  padding-top: 6px;
  padding-right: 10px;
  padding-bottom: 4px;
  padding-left: 10px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  @media only screen and (max-width: 47.9375em) {
    .c-badge {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .c-badge {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .c-badge {
      font-size: 0.875rem;
      padding-top: 8px;
      padding-bottom: 8px; } }
  .c-badge:hover, .c-badge.-current,
  input:checked + .c-badge {
    background-color: #dff5e2;
    color: #2b7443;
    border: 1px solid #2b7443;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease; }
  @media print, screen and (max-width: 63.9375em) {
    .c-badge span {
      position: relative;
      top: 1px; } }

.c-pdf {
  display: inline-block;
  width: 15px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.76%22%20height%3D%2218%22%20viewBox%3D%220%200%2014.76%2018%22%3E\a%20%20%20%20%20%20%3Cg%20transform%3D%22translate%28-6%20-4%29%22%3E\a%20%20%20%20%20%20%20%20%3Cg%20transform%3D%22translate%286%204%29%22%3E\a%20%20%20%20%20%20%20%20%20%20%3Cg%20transform%3D%22translate%280%200%29%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M20.04%2C22H6.72A.721.721%2C0%2C0%2C1%2C6%2C21.28V4.72A.721.721%2C0%2C0%2C1%2C6.72%2C4H17.594a.717.717%2C0%2C0%2C1%2C.508.21l.043.043L20.6%2C7.784a.717.717%2C0%2C0%2C1%2C.164.458V21.28A.721.721%2C0%2C0%2C1%2C20.04%2C22ZM6.72%2C4.72V21.28H20.04V8.242L20%2C8.2l-.027-.055-2.4-3.424Z%22%20transform%3D%22translate%28-6%20-4%29%22%20fill%3D%22%230b1f40%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%20%20%20%20%20%20%3Cpath%20d%3D%22M21.188%2C21.083a4.847%2C4.847%2C0%2C0%2C0-2.274.4%2C11.15%2C11.15%2C0%2C0%2C1-1.9-2.718c.579-2.033.51-3.36-.232-3.762a.982.982%2C0%2C0%2C0-1.277.41c-.089.132-.357.536.15%2C2.015a12.206%2C12.206%2C0%2C0%2C0%2C.594%2C1.4%2C24.877%2C24.877%2C0%2C0%2C1-.924%2C2.471c-.287.67-.557%2C1.237-.807%2C1.715a6.941%2C6.941%2C0%2C0%2C0-2.274%2C1.33%2C1.4%2C1.4%2C0%2C0%2C0-.343%2C1.437.694.694%2C0%2C0%2C0%2C.645.413h.011c.7-.01%2C1.557-.922%2C2.472-2.61%2C1.3-.524%2C2.824-1.006%2C3.739-1.27a3.467%2C3.467%2C0%2C0%2C0%2C1.11.665%2C2.239%2C2.239%2C0%2C0%2C0%2C2.411-.309.877.877%2C0%2C0%2C0%2C.192-.96C22.4%2C21.523%2C22.1%2C21.083%2C21.188%2C21.083Zm-8.631%2C4.4a.724.724%2C0%2C0%2C1%2C.227-.667%2C3.893%2C3.893%2C0%2C0%2C1%2C1.119-.737C13.152%2C25.26%2C12.672%2C25.51%2C12.557%2C25.488ZM16.1%2C15.81a.386.386%2C0%2C0%2C1%2C.277-.19.126.126%2C0%2C0%2C1%2C.058.014c.186.1.4.662.1%2C2.1-.053-.129-.1-.257-.148-.383C16.016%2C16.319%2C16.059%2C15.882%2C16.1%2C15.81Zm-.586%2C6.812q.232-.487.468-1.037.43-1%2C.731-1.879a11.8%2C11.8%2C0%2C0%2C0%2C1.457%2C2.034C17.525%2C21.934%2C16.524%2C22.247%2C15.517%2C22.621Zm6.239-.435a1.633%2C1.633%2C0%2C0%2C1-1.651.112%2C2.339%2C2.339%2C0%2C0%2C1-.573-.3%2C5.5%2C5.5%2C0%2C0%2C1%2C1.656-.2c.432%2C0%2C.6.131.635.2S21.779%2C22.162%2C21.756%2C22.187Z%22%20transform%3D%22translate%28-9.722%20-11.335%29%22%20fill%3D%22%23af0000%22%2F%3E\a%20%20%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%3C%2Fsvg%3E\a%20%20%20%20"); }

.c-pdf.-right.-inline {
  margin-right: 8px; }

.c-zoom {
  display: inline-block;
  position: relative;
  width: 15px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.374%22%20height%3D%2217.374%22%20viewBox%3D%220%200%2017.374%2017.374%22%3E\a%20%20%20%20%3Cg%20id%3D%22_24px%22%20data-name%3D%2224px%22%20transform%3D%22translate%28-2.627%20-2.627%29%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M14.986%2C13.547h-.758l-.268-.259a6.242%2C6.242%2C0%2C1%2C0-.671.671l.259.268v.758l4.794%2C4.785%2C1.429-1.429Zm-5.753%2C0a4.315%2C4.315%2C0%2C1%2C1%2C4.315-4.315A4.309%2C4.309%2C0%2C0%2C1%2C9.233%2C13.547Z%22%20transform%3D%22translate%28-0.123%20-0.123%29%22%20fill%3D%22%23009e6f%22%20stroke%3D%22%23009e6f%22%20stroke-width%3D%220.5%22%2F%3E\a%20%20%20%20%3C%2Fg%3E\a%20%20%3C%2Fsvg%3E\a%20%20"); }

.c-print {
  display: inline-block;
  width: 20px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22_24px_2_%22%20data-name%3D%2224px%20%282%29%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E\a%20%20%20%20%3Cpath%20d%3D%22M19%2C8H5a3%2C3%2C0%2C0%2C0-3%2C3v6H6v4H18V17h4V11A3%2C3%2C0%2C0%2C0%2C19%2C8ZM16%2C19H8V14h8Zm3-7a1%2C1%2C0%2C1%2C1%2C1-1A1%2C1%2C0%2C0%2C1%2C19%2C12ZM18%2C3H6V7H18Z%22%20fill%3D%22%23009e6f%22%2F%3E\a%20%20%20%20%3Cpath%20d%3D%22M0%2C0H24V24H0Z%22%20fill%3D%22none%22%2F%3E\a%20%20%3C%2Fsvg%3E\a%20%20"); }

/* Googlemapをレスポンシブ化するクラス
----------------------------------------------------------------- */
/* 以下HTLから */
.c-map {
  margin-top: 40px; }
  @media only screen and (max-width: 47.9375em) {
    .c-map {
      margin-top: 20px; } }

.c-map__wrap {
  height: 0;
  overflow: hidden;
  padding-bottom: 74.25%;
  position: relative; }

.c-map__wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%; }

.c-map__zoom {
  display: block;
  font-weight: 500;
  margin-top: 22px; }
  @media only screen and (max-width: 47.9375em) {
    .c-map__zoom {
      font-weight: bold;
      font-size: 0.875rem;
      margin-top: 22px; } }

.c-map__access {
  margin-top: 30px; }

.c-map__train {
  margin-top: 18px; }

.c-close {
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  top: 0.1em;
  width: 16px;
  height: 16px;
  margin-right: 7px;
  background-color: #009E6F;
  border-radius: 50%; }
  .c-close:before, .c-close:after {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 8px;
    height: 2px;
    background-color: #fff;
    content: ''; }
  .c-close:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg); }
  .c-close:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg); }

.c-annotation {
  position: relative;
  margin-top: 4px; }
  @media only screen and (max-width: 47.9375em) {
    .c-annotation {
      padding-left: 15px;
      font-size: 0.875rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 48em) {
    .c-annotation {
      padding-left: 15px;
      font-size: 0.875rem;
      line-height: 1.6; } }
  .c-annotation:first-child {
    margin-top: 0; }
  .c-annotation:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    content: '※'; }
  .c-annotation span {
    display: block;
    font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    * + .c-annotation {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    * + .c-annotation {
      margin-top: 13px; } }
  .c-annotation + .c-annotation {
    margin-top: 4px; }
    .c-annotation + .c-annotation:first-child {
      margin-top: 0; }
  .c-annotation.-pd_none {
    padding-left: 0; }
    .c-annotation.-pd_none::before {
      display: none; }

/* ==========================================================================
* モディファイア
========================================================================== */
/* SPで太字
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-annotation.-sp_bold {
    font-weight: bold; } }

/* 無印
----------------------------------------------------------------- */
.c-annotation.-nomark {
  padding-left: 0; }
  .c-annotation.-nomark:before {
    display: none; }

.c-annotation.-red {
  color: #f94141; }

@media print, screen and (min-width: 64em) {
  .c-annotation.-mt_large {
    margin-top: 32px; } }

@media print, screen and (min-width: 64em) {
  .c-annotation.-mt_xl {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .c-annotation.-sp_mt-large {
    margin-top: 20px; } }

@media print, screen and (min-width: 64em) {
  .c-annotation.-mt_medium {
    margin-top: 17px; } }

.p-banner {
  display: -webkit-box;
  display: flex;
  max-width: 690px; }

.p-banner__title {
  position: relative;
  background-color: #ead145;
  font-weight: bold;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-banner__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-banner__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-banner__title {
      line-height: 1.5;
      font-size: 0.9375rem;
      padding-left: 16px;
      padding-right: 8px;
      padding-top: 8px;
      padding-bottom: 8px; } }
  @media print, screen and (min-width: 48em) {
    .p-banner__title {
      font-size: 1.25rem;
      padding-left: 20px;
      padding-right: 10px;
      padding-top: 14px;
      padding-bottom: 14px; } }
  .p-banner__title::after {
    content: '';
    position: absolute;
    display: block;
    height: 100%;
    top: 0;
    background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #ead145)) no-repeat top left/100% 50%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, rgba(255, 255, 255, 0)), color-stop(50.5%, #ead145)) no-repeat bottom right/100% 50%;
    background: linear-gradient(to bottom left, rgba(255, 255, 255, 0) 50%, #ead145 50.5%) no-repeat top left/100% 50%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #ead145 50.5%) no-repeat bottom right/100% 50%; }
    @media only screen and (max-width: 47.9375em) {
      .p-banner__title::after {
        right: -14px;
        width: 12px; } }
    @media print, screen and (min-width: 48em) {
      .p-banner__title::after {
        right: -18px;
        width: 16px; } }

.p-banner__text {
  line-height: 1.4;
  border: 2px solid #ead145;
  box-sizing: border-box;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-banner__text {
      font-size: 0.75rem;
      padding-left: 30px;
      padding-right: 18px;
      padding-top: 6px;
      padding-bottom: 6px; } }
  @media print, screen and (min-width: 48em) {
    .p-banner__text {
      padding-left: 34px;
      padding-right: 28px;
      padding-top: 6px;
      padding-bottom: 6px;
      font-size: 0.875rem; } }

/* グロナビのメインメニュー
----------------------------------------------------------------- */
.p-main-menu {
  padding-right: 4.6875%;
  padding-left: 4.6875%; }
  @media print, screen and (max-width: 69.6875em) {
    .p-main-menu {
      padding-top: 50px; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-main-menu {
      height: 100%;
      display: -webkit-box;
      display: flex;
      position: static;
      padding-top: 3px;
      padding-right: 0;
      padding-left: 0; } }
  @media screen and (max-width: 1420px) {
    .p-main-menu {
      padding-top: 6px; } }
  input:checked + label + .p-main-menu {
    -webkit-transition: 0.2s ease;
    transition: 0.2s ease;
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  .p-main-menu .c-arrow,
  .p-main-menu .c-toggle {
    width: 16px;
    height: 16px; }

.p-main-menu__item {
  border-bottom: 1px solid #c2cfc9;
  white-space: nowrap; }
  @media print, screen and (min-width: 69.6875em) {
    .p-main-menu__item {
      position: relative;
      border-bottom: none; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-main-menu__item a,
    .p-main-menu__item button {
      padding-right: 3px;
      padding-left: 3px; } }
  @media screen and (min-width: 1136px) {
    .p-main-menu__item a,
    .p-main-menu__item button {
      padding-right: 5px;
      padding-left: 5px; } }
  @media screen and (min-width: 1420px) {
    .p-main-menu__item a,
    .p-main-menu__item button {
      padding-right: 9px;
      padding-left: 9px; } }
  .p-main-menu__item:first-child {
    padding-left: 0; }
  .p-main-menu__item > button {
    padding: 0;
    margin: 0;
    background-color: transparent;
    border: none; }
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: justify;
            justify-content: space-between;
    font-size: 0.875rem;
    font-weight: bold;
    color: #2d2d2d;
    line-height: 1.75;
    height: 100%; }
    @media only screen and (max-width: 47.9375em) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (max-width: 69.6875em) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        padding-top: 10px;
        padding-right: 20px;
        padding-bottom: 10px; } }
    @media print, screen and (min-width: 69.6875em) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        -webkit-transition: color 0s;
        transition: color 0s;
        color: #fff; } }
    @media screen and (max-width: 1120px) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        font-size: 0.6875rem; } }
    @media screen and (min-width: 1121px) and (max-width: 1420px) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        font-size: 0.6875rem; } }
    @media screen and (min-width: 1421px) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        font-size: 0.875rem; } }
    @media print, screen and (max-width: 69.6875em) {
      .p-main-menu__item > a,
      .p-main-menu__item > button {
        font-size: 1rem; } }
    @media print, screen and (min-width: 69.6875em) {
      .p-main-menu__item > a:hover,
      .p-main-menu__item > button:hover {
        color: #009e6f; } }
  @media print, screen and (min-width: 69.6875em) {
    .browser-is-safari .p-main-menu__item > a,
    .browser-is-safari .p-main-menu__item > button {
      font-size: 0.625rem; } }
  @media print, screen and (min-width: 75em) {
    .browser-is-safari .p-main-menu__item > a,
    .browser-is-safari .p-main-menu__item > button {
      font-size: 0.6875rem; } }
  .p-main-menu__item.-dropdown > button {
    position: relative; }
    @media print, screen and (max-width: 69.6875em) {
      .p-main-menu__item.-dropdown > button {
        padding-left: 0;
        width: 100%; } }
    @media print, screen and (min-width: 69.6875em) {
      .p-main-menu__item.-dropdown > button {
        padding-right: 15px;
        padding-left: 9px; } }
    @media print, screen and (min-width: 75em) {
      .p-main-menu__item.-dropdown > button {
        padding-right: 24px;
        padding-left: 9px; } }
    @media print, screen and (max-width: 69.6875em) {
      .p-main-menu__item.-dropdown > button span {
        padding-right: 18px;
        position: relative; } }
    .p-main-menu__item.-dropdown > button span:after {
      content: '';
      box-sizing: border-box;
      display: block;
      position: absolute;
      width: 8px;
      height: 8px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: calc(50% - 5px);
      left: calc(50% - 4px);
      border-color: #fff;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      content: '';
      left: auto;
      right: 2px;
      -webkit-transition: -webkit-transform 0.2s;
      transition: -webkit-transform 0.2s;
      transition: transform 0.2s;
      transition: transform 0.2s, -webkit-transform 0.2s; }
      @media print, screen and (max-width: 69.6875em) {
        .p-main-menu__item.-dropdown > button span:after {
          border-color: #2d2d2d; } }
  .p-main-menu__item.-dropdown.is-active > button span:after {
    content: '';
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 8px;
    height: 8px;
    border-style: solid;
    border-width: 2px 0 0 2px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: calc(50% - 5px);
    left: calc(50% - 4px);
    border-color: #fff;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    content: '';
    left: auto;
    right: 2px; }
    @media print, screen and (max-width: 69.6875em) {
      .p-main-menu__item.-dropdown.is-active > button span:after {
        border-color: #2d2d2d; } }

.p-main-menu__toggle-area {
  box-sizing: border-box;
  height: auto; }
  @media print, screen and (max-width: 69.6875em) {
    .p-main-menu__toggle-area {
      overflow: hidden; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-main-menu__toggle-area {
      visibility: hidden;
      opacity: 0;
      position: absolute;
      z-index: -100000;
      position: absolute;
      top: calc(100% - 10px);
      left: 5px;
      -webkit-transform: translate(0, -10px);
              transform: translate(0, -10px);
      box-shadow: 0 0 0 0 rgba(61, 99, 120, 0.1);
      -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
      transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s; } }
  @media print, screen and (min-width: 75em) {
    .p-main-menu__toggle-area {
      left: 9px; } }
  .p-main-menu__toggle-area.is-animation {
    -webkit-transition: height 0.2s ease;
    transition: height 0.2s ease; }
  @media print, screen and (min-width: 69.6875em) {
    .p-main-menu__item.-active .p-main-menu__toggle-area, .p-main-menu__toggle-area:hover {
      visibility: visible;
      opacity: 1;
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); } }

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area:before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 6px 5px 6px;
    border-color: transparent transparent #2d2d2d transparent;
    top: -5px;
    left: 20px;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); } }

@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__toggle-area ul {
    padding-bottom: 6px; } }

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area ul {
    background-color: #2d2d2d;
    padding-top: 6px;
    padding-bottom: 6px; } }

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area ul li a {
    display: block;
    white-space: nowrap;
    padding-top: 7px;
    padding-bottom: 6px;
    padding-right: 16px;
    padding-left: 16px; } }

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area ul li a:hover {
    background-color: #575757; } }

.p-main-menu__child.-lv1 {
  color: #fff; }
  @media print, screen and (min-width: 69.6875em) {
    .p-main-menu__child.-lv1 a {
      color: #fff;
      width: 188px;
      text-align: right;
      font-size: 1.5rem; } }

/* SP・TB時に表示するメニューの開閉ボタン
----------------------------------------------------------------- */
.p-main-menu-button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  width: 60px;
  height: 60px;
  padding-top: 15px;
  padding-right: 14px;
  padding-bottom: 8px;
  padding-left: 14px;
  box-sizing: border-box;
  background-color: #2d2d2d;
  position: fixed;
  bottom: 40px;
  right: 0;
  z-index: 60000;
  border-radius: 10px 0 0 10px;
  box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15); }
  @media print, screen and (min-width: 64em) {
    .p-main-menu-button {
      display: none; } }
  .p-main-menu-button:focus {
    outline: none; }

.p-main-menu-button__icon {
  margin-right: auto;
  margin-left: auto; }

.p-main-menu-button__text::before {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-size: 0.625rem;
  white-space: nowrap;
  font-weight: bold;
  color: #fff;
  text-align: center;
  content: 'メニュー'; }
  @media only screen and (max-width: 47.9375em) {
    .p-main-menu-button__text::before {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-main-menu-button__text::before {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-main-menu-button.-active .p-main-menu-button__text::before {
    content: '閉じる'; }

.p-main-menu-button__text.-en::before {
  content: 'MENU'; }
  .p-main-menu-button.-active .p-main-menu-button__text.-en::before {
    content: 'CLOSE'; }

.p-cta-menu {
  display: -webkit-box;
  display: flex;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
          flex-direction: column-reverse; }
  @media print, screen and (min-width: 48em) {
    .p-cta-menu {
      margin-top: 20px;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row;
      -webkit-box-align: center;
              align-items: center; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-cta-menu {
      padding-bottom: 50vh; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-cta-menu {
      padding-top: 13px;
      padding-right: 0;
      padding-bottom: 13px;
      padding-left: 20px;
      margin-top: 0; } }
  @media screen and (max-width: 1420px) {
    .p-cta-menu {
      padding-top: 15px; } }
  @media screen and (min-width: 1420px) {
    .p-cta-menu {
      margin-top: 0;
      margin-left: 1px; } }

.p-cta-menu__form {
  margin-top: 20px; }
  .p-cta-menu__form > a {
    height: 48px; }
    @media print, screen and (min-width: 69.6875em) {
      .p-cta-menu__form > a {
        height: auto; } }
  @media print, screen and (min-width: 48em) {
    .p-cta-menu__form {
      width: calc(50% - 20px);
      margin-top: 0px; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-cta-menu__form {
      width: 85px; } }
  @media screen and (min-width: 1136px) {
    .p-cta-menu__form {
      width: 96px; } }
  @media screen and (min-width: 1421px) {
    .p-cta-menu__form {
      width: 120px; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-cta-menu__form .c-button.-small {
      padding-right: 8px;
      padding-left: 8px; } }
  @media screen and (min-width: 1420px) {
    .p-cta-menu__form .c-button.-small {
      padding-right: 11px;
      padding-left: 11px; } }
  .p-cta-menu__form .c-button.-small > span {
    white-space: nowrap; }
    @media print, screen and (min-width: 69.6875em) {
      .p-cta-menu__form .c-button.-small > span {
        font-size: 0.625rem; } }
    @media screen and (min-width: 1420px) {
      .p-cta-menu__form .c-button.-small > span {
        font-size: 0.6875rem; } }

.p-cta-block:not(.-detail) {
  background-color: #2d2d2d;
  color: #fff;
  position: relative; }
  @media print, screen and (max-width: 63.9375em) {
    .p-cta-block:not(.-detail) {
      padding-top: 40px;
      padding-right: 4.6875%;
      padding-bottom: 40px;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-cta-block:not(.-detail) {
      overflow: hidden;
      padding-top: 56px;
      padding-right: 100px;
      padding-bottom: 80px;
      padding-left: 100px; } }
  @media print, screen and (min-width: 64em) {
    .p-cta-block:not(.-detail):after {
      font-family: "Prompt", sans-serif;
      content: '';
      width: 50vw;
      max-width: 756px;
      padding-top: 300px;
      background-image: url("/img/bg_contact.svg");
      background-repeat: no-repeat;
      position: absolute;
      font-size: 12.5rem;
      top: 0;
      left: -1px;
      font-weight: normal;
      color: #1b1b1b;
      z-index: 0;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; } }
  @media print, screen and (min-width: 100em) {
    .p-cta-block:not(.-detail):after {
      width: 756px; } }

.p-cta-block.-detail .p-cta-block__content {
  background-color: #e1ede8; }
  @media print, screen and (max-width: 63.9375em) {
    .p-cta-block.-detail .p-cta-block__content {
      padding-top: 20px;
      padding-right: 4.6875%;
      padding-bottom: 20px;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-cta-block.-detail .p-cta-block__content {
      padding-top: 56px;
      padding-right: 30px;
      padding-bottom: 52px;
      padding-left: 50px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-contact {
    padding-right: 50px;
    border-right: 1px solid #c8cccf;
    width: 64%; } }

.browser-is-ie .p-cta-block.-detail .p-cta-block__item.-contact {
  white-space: wrap; }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-document {
    padding-left: 50px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-document .p-cta-block__desc {
    width: 250px; } }

.browser-is-ie .p-cta-block.-detail .p-cta-block__item.-document .p-cta-block__desc {
  white-space: wrap; }

.p-cta-block.-detail .c-heading-cta {
  font-size: 1.375rem;
  color: #333; }

.p-cta-block.-detail .p-cta-block__desc {
  font-weight: normal; }
  @media print, screen and (min-width: 64em) {
    .p-cta-block.-detail .p-cta-block__desc {
      margin-top: 15px; } }
  .browser-is-ie .p-cta-block.-detail .p-cta-block__desc {
    width: 450px; }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__desc.-full {
    margin-top: 34px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-cta-block__action {
    margin-top: 25px; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-cta-block__action {
    margin-top: 25px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__action {
    margin-left: -24px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__action .p-cta-block__button {
    margin-top: 20px; } }

@media screen and (min-width: 1350px) {
  .p-cta-block.-detail .p-cta-block__action .p-cta-block__button {
    margin-top: 0; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-contact .p-cta-block__action,
  .p-cta-block.-detail .p-cta-block__item.-document .p-cta-block__action {
    margin-top: 22px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__button {
    max-width: 250px;
    margin-top: 0;
    margin-left: 24px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-cta-block__button > .c-button {
    width: 60%; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-cta-block__button > .c-button {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-tel-mod {
    margin-left: 24px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-tel-mod::before {
    top: 0.5em; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-tel-mod::before {
    top: 0.2em; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-tel-mod.-en .p-tel-mod__number {
    font-size: 2.125rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-tel-mod.-en::before {
    top: 0.5em; } }

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-tel-mod__number {
    font-size: 2.5rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta-block__content {
    padding-top: 18px;
    padding-bottom: 50px; } }

@media print, screen and (min-width: 48em) {
  .p-cta-block__content {
    max-width: 1200px;
    box-sizing: border-box;
    margin: 0 auto;
    padding-top: 54px;
    padding-bottom: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block__content-inner {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; } }

.p-cta-block__item {
  box-sizing: border-box; }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__item {
      box-sizing: border-box;
      width: 100%;
      position: relative;
      z-index: 1; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-cta-block__item.-contact {
      padding-bottom: 18px; } }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__item.-contact {
      -webkit-box-flex: 1;
              flex: 1;
      width: 100%;
      max-width: 640px; } }
  @media print, screen and (min-width: 64em) {
    .browser-is-ie .p-cta-block__item.-contact {
      -webkit-box-flex: 1;
              flex: auto; } }
  .p-cta-block__item.-document {
    margin-top: 24px; }
    @media print, screen and (min-width: 64em) {
      .p-cta-block__item.-document {
        position: relative;
        width: 100%;
        max-width: 320px;
        margin-top: 0; } }
    @media screen and (min-width: 1024px) and (max-width: 1355px) {
      .p-cta-block__item.-document {
        width: 50%; } }
  .p-cta-block__item .c-heading-cta {
    color: #009e6f; }
    @media print, screen and (max-width: 63.9375em) {
      .p-cta-block__item .c-heading-cta {
        font-size: 1rem; } }
    @media print, screen and (min-width: 64em) {
      .p-cta-block__item .c-heading-cta {
        font-size: 1.125rem; } }

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block__desc {
    margin-top: 18px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block__desc {
    font-weight: normal;
    width: 100%;
    margin-top: 10px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block__desc.-mt_26 {
    margin-top: 26px; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block__desc.-flex {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
            align-items: flex-end; } }

@media screen and (min-width: 1024px) and (max-width: 1355px) {
  .p-cta-block__desc.-flex {
    display: block; } }

.p-cta-block__desc.-flex .p-cta-block__link {
  color: #fff; }
  @media print, screen and (min-width: 48em) {
    .p-cta-block__desc.-flex .p-cta-block__link {
      flex-shrink: 0; }
      .p-cta-block__desc.-flex .p-cta-block__link:hover {
        color: #009e6f; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block__action {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    margin-top: 10px;
    margin-left: -28px; } }

@media screen and (min-width: 1024px) and (max-width: 1355px) {
  .p-cta-block__action {
    display: block; } }

.p-cta-block__item.-contact .p-cta-block__action {
  margin-top: 36px; }

.p-cta-block__button {
  margin-top: 20px; }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__button {
      width: 320px;
      box-sizing: border-box;
      margin-top: 20px;
      margin-left: 28px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-cta-block__button .c-button {
      width: 40%;
      margin: 0; } }
  @media only screen and (max-width: 47.9375em) {
    .p-cta-block__button .c-button {
      width: 100%; } }
  .p-cta-block__button .c-button .c-arrow {
    top: -1px; }
  .browser-is-ie .p-cta-block__button {
    width: auto; }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__button.-mt_l {
      margin-top: 20px; } }

.p-cta-block__tel {
  margin-top: 16px;
  line-height: 1;
  padding-left: 27px;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__tel {
      padding-left: 38px;
      margin-top: 20px;
      margin-left: 28px; } }
  .p-cta-block__tel:before {
    content: '';
    position: absolute;
    top: 0.5em;
    left: 0;
    width: 17px;
    height: 17px;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%232d2d2d%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
    @media print, screen and (min-width: 64em) {
      .p-cta-block__tel:before {
        width: 24px;
        height: 24px;
        top: 0.9em; } }

.p-cta-block__number {
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  /* -（ハイフン） */ }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__number {
      font-size: 2.25rem; } }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__number > span {
      position: relative;
      top: -2px; } }

.p-cta-block__hours {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 0.75rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta-block__hours {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-cta-block__hours {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 64em) {
    .p-cta-block__hours {
      font-size: 0.9375rem; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-contact-box-2 .p-contact-box__desc {
    margin-right: 0; } }

@media print, screen and (min-width: 64em) {
  .p-cta-block.-full .p-cta-block__item.-contact {
    max-width: 780px;
    padding-right: 100px;
    border-right: 1px solid #212121; }
    .p-cta-block.-full .p-cta-block__item.-contact .p-cta-block__action {
      margin-top: 10px;
      -webkit-box-pack: justify;
              justify-content: space-between; }
    .browser-is-ie .p-cta-block.-full .p-cta-block__item.-contact {
      width: 500px; }
  .p-cta-block.-full .p-cta-block__item.-document {
    max-width: 420px;
    padding-left: 100px; }
    .browser-is-ie .p-cta-block.-full .p-cta-block__item.-document {
      max-width: 500px; } }

/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-home-block__wrap {
  background-color: #2d2d2d;
  position: relative;
  z-index: 0; }

@media print, screen and (min-width: 64em) {
  .p-home-block {
    position: relative;
    overflow: hidden; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block:last-of-type .p-home-block__box {
    padding-bottom: 46px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-mt_1 {
    margin-top: 90px; } }

.p-home-block__box {
  clear: both; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__box {
      padding-top: 16px;
      padding-right: 4.6875%;
      padding-bottom: 0px;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__box {
      position: relative;
      z-index: 10;
      padding-top: 65px;
      padding-bottom: 65px;
      width: 72vw; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__box.-pb_sp {
      padding-bottom: 32px; } }

.p-home-block__name {
  position: relative;
  z-index: 1;
  color: #009e6f; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__name {
      line-height: 1.5; } }
  .p-home-block__name span.-ja {
    display: block;
    font-weight: bold;
    font-size: 1.125rem; }
    @media only screen and (max-width: 47.9375em) {
      .p-home-block__name span.-ja {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-home-block__name span.-ja {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block__name span.-ja {
        font-size: 1.125rem; } }
  .p-home-block__name span.-en {
    display: block;
    font-family: "Prompt", sans-serif;
    font-size: 1.125rem;
    line-height: 1; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block__name span.-en {
        font-size: 0.9375rem; } }

.p-home-block__title {
  margin-top: 1px;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__title {
      font-size: 1.25rem;
      line-height: 1.5;
      margin-top: 6px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__title {
      font-size: 1.75rem;
      margin-top: 14px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block__title br {
      display: none; } }
  @media screen and (max-width: 1199px) {
    .p-home-block__title br {
      display: none; } }
  @media screen and (min-width: 1300px) {
    .p-home-block__title br {
      display: block; } }

.p-home-block__link {
  display: inline-block;
  font-weight: bold;
  font-size: 1rem; }
  .p-home-block__link > i {
    display: inline-block;
    margin-right: 10px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__link {
      margin-top: 10px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__link {
      padding-left: 100px;
      margin-top: 15px; } }
  .p-home-block__half2-text .p-home-block__link {
    margin-top: 18px; }

.p-home-block__subtitle {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block__subtitle {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block__subtitle {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__subtitle {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__subtitle {
      font-size: 1rem; } }
  .p-home-block__subtitle + .c-image {
    margin-top: 20px; }

.p-home-block__lead {
  margin-top: 20px; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block__lead {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block__lead {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__lead {
      line-height: 1.625; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__lead {
      font-size: 1.125rem;
      font-weight: bold; } }

.p-home-block__visual {
  display: block; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__visual {
      margin-top: 46px;
      position: relative; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__visual {
      position: relative;
      z-index: 20;
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: end;
              justify-content: flex-end;
      -webkit-box-align: end;
              align-items: flex-end; } }
  .p-home-block__visual img {
    display: block; }
    @media print, screen and (min-width: 64em) {
      .p-home-block__visual img {
        width: 72vw; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block__visual img {
        width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__visual.-mt_1 {
      margin-top: 100px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__visual.-mt_sp_0 {
      margin-top: 0; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__visual::after {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__visual::after {
      display: block;
      content: '';
      position: absolute;
      z-index: -1;
      height: 50%;
      background-color: #e1ede8;
      width: 100%;
      top: 50%; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__sec {
    margin-top: 26px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__sec {
    margin-top: 48px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__sec.-mt_0 {
    margin-top: 0px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__sec.-mt_0 {
    margin-top: 48px; } }

.p-home-block__panel {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__panel {
      padding-top: 38px;
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__panel {
      padding-top: 80px;
      padding-bottom: 80px; } }

.p-home-block__button {
  margin-right: auto;
  margin-left: auto; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__button {
      margin-top: 45px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block__button {
      width: 250px;
      margin-top: 64px; } }
  .p-home-block__button.-left {
    margin-right: 0;
    margin-left: 0; }
  @media print, screen and (min-width: 48em) {
    .p-home-block.-support .p-home-block__button {
      margin-top: 40px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__name {
    padding-right: 0;
    padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__name {
    padding-right: 100px;
    padding-left: 100px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__title,
  .p-home-block__lead {
    padding-right: 4.6875%;
    padding-left: 4.6875%; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__title,
  .p-home-block__lead {
    padding-right: 100px;
    padding-left: 100px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__title br,
  .p-home-block__lead br {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__title br,
  .p-home-block__lead br {
    display: block; } }

@media print, screen and (min-width: 87.5em) {
  .p-home-block__title br,
  .p-home-block__lead br {
    display: none; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__title br.-pc,
  .p-home-block__lead br.-pc {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__title br.-pc,
  .p-home-block__lead br.-pc {
    display: block; } }

.p-home-block__bg-text {
  font-family: "Prompt", sans-serif;
  position: absolute;
  font-weight: normal;
  line-height: 0.65;
  font-size: 18.75rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: #000;
  z-index: -1;
  user-select: none; }

.p-home-block__bg {
  position: absolute;
  background-color: #e1ede8;
  display: block;
  content: '';
  z-index: -1;
  height: 100%;
  width: 100%;
  top: -1px;
  left: 0;
  overflow: hidden; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__bg {
      display: none; } }
  .p-home-block__bg .p-home-block__bg-text {
    font-size: 9vw;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    color: #c5d9d2;
    bottom: 0px;
    right: 0px;
    white-space: nowrap; }
    @media screen and (min-width: 1024) and (max-width: 1390px) {
      .p-home-block__bg .p-home-block__bg-text {
        font-size: 7.5rem; } }
    .browser-is-ie .p-home-block__bg .p-home-block__bg-text {
      width: 65vw; }

.p-home-block.-feature {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-feature {
      padding-top: 128px;
      padding-bottom: 95px; } }
  .p-home-block.-feature::after {
    display: none; }
  .p-home-block.-feature .p-home-block__bg-text {
    right: -13px;
    bottom: -47px; }

.p-home-block.-rooms-price .p-home-block__bg-text > img {
  width: 64vw;
  vertical-align: bottom;
  position: relative;
  bottom: -2px; }

.p-home-block.-common-area .p-home-block__bg-text > img {
  width: 62vw;
  vertical-align: bottom;
  position: relative;
  bottom: -2px; }
  .browser-is-ie .p-home-block.-common-area .p-home-block__bg-text > img {
    width: 100%; }

.browser-is-ie .p-home-block.-kiosk .p-home-block__bg-text {
  width: 36vw; }

.p-home-block.-kiosk .p-home-block__bg-text > img {
  width: 27vw;
  vertical-align: bottom;
  position: relative;
  bottom: -1px; }
  .browser-is-ie .p-home-block.-kiosk .p-home-block__bg-text > img {
    width: 100%; }

.p-home-block.-right {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-right {
      box-sizing: border-box; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-right .p-home-block__visual {
      top: 0;
      right: 0; } }
  .p-home-block.-right .p-home-block__visual::after {
    left: 0%;
    width: 72vw; }

.p-home-block.-left {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-left {
      box-sizing: border-box; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-left .p-home-block__visual {
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: start;
              justify-content: flex-start;
      -webkit-box-align: start;
              align-items: flex-start; } }
  .p-home-block.-left .p-home-block__visual::after {
    right: 0;
    width: 72vw; }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-left .p-home-block__box {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-left .p-home-block__box .p-home-block__name,
    .p-home-block.-left .p-home-block__box .p-home-block__title {
      width: 58vw; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-left .p-home-block__box .p-home-block__bg {
      width: 72vw;
      left: auto;
      right: 0; } }

.p-home-block.-half2 {
  background-color: #fff; }
  .p-home-block.-half2 .p-home-block__box {
    box-sizing: border-box;
    width: 100%;
    padding-top: 0;
    padding-bottom: 118px; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.-half2 .p-home-block__box {
        padding-right: 0;
        padding-bottom: 0;
        padding-left: 0; } }

@media print, screen and (min-width: 48em) {
  .p-home-block__half2-inner {
    display: -webkit-box;
    display: flex; } }

@media print, screen and (min-width: 48em) {
  .p-home-block__half2-item {
    width: 50%; } }

.p-home-block__half2-img {
  width: 100%; }
  .p-home-block__half2-img > img {
    width: 100%;
    vertical-align: bottom; }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__half2-text {
    padding-top: 16px;
    padding-right: 4.6875%;
    padding-bottom: 33px;
    padding-left: 4.6875%; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__half2-text {
    padding-top: 35px; } }

.p-home-block__logo-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 54px 1fr;
  -ms-grid-columns: 25% 0 25% 0 25% 0 25%;
      grid-template: 'logo1 logo2 logo3 logo4' auto 'logo5 logo6 logo7 logo8' 1fr /25% 25% 25% 25%;
  gap: 54px 0; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__logo-list {
      -ms-grid-rows: auto 27px 1fr 27px 1fr;
      -ms-grid-columns: 33% 0 33% 0 33%;
          grid-template: 'logo1 logo2 logo3' auto 'logo4 logo5 logo6' 1fr 'logo7 logo8 logo9' 1fr /33% 33% 33%;
      gap: 27px 0; } }
  .p-home-block__logo-list li:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: logo1; }
  .p-home-block__logo-list li:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: logo2; }
  .p-home-block__logo-list li:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    grid-area: logo3; }
  .p-home-block__logo-list li:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
    grid-area: logo4; }
  .p-home-block__logo-list li:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    grid-area: logo5; }
  .p-home-block__logo-list li:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
    grid-area: logo6; }
  .p-home-block__logo-list li:nth-child(7) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
    grid-area: logo7; }
  .p-home-block__logo-list li:nth-child(8) {
    -ms-grid-row: 3;
    -ms-grid-column: 7;
    grid-area: logo8; }
  @media print, screen and (max-width: 63.9375em){
    .p-home-block__logo-list li:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-home-block__logo-list li:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
    .p-home-block__logo-list li:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; }
    .p-home-block__logo-list li:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-home-block__logo-list li:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
    .p-home-block__logo-list li:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 5; }
    .p-home-block__logo-list li:nth-child(7) {
    -ms-grid-row: 5;
    -ms-grid-column: 1; }
    .p-home-block__logo-list li:nth-child(8) {
    -ms-grid-row: 5;
    -ms-grid-column: 3; } }
  .p-home-block__logo-list li {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: center;
            justify-content: center; }
    .p-home-block__logo-list li img {
      max-width: 100px;
      width: 100%; }

.p-home-block__sentence {
  margin-top: 30px; }
  .p-home-block__sentence:first-child {
    margin-top: 0; }

/* サービス以下
----------------------------------------------------------------- */
.p-home-block__inner {
  box-sizing: border-box;
  max-width: 1200px;
  box-sizing: border-box;
  margin-right: 100px;
  margin-left: 100px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__inner {
      padding-top: 58px;
      padding-right: 4.6875%;
      padding-left: 4.6875%;
      padding-bottom: 40px;
      margin-right: 0;
      margin-left: 0; } }
  @media print, screen and (min-width: 75em) {
    .p-home-block__inner {
      margin: 0 auto; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__name.-center {
    text-align: center; } }

.p-home-block.-service {
  background-color: #e1ede8; }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-service {
      padding-top: 110px;
      padding-bottom: 120px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-service:after {
      font-family: "Prompt", sans-serif;
      content: '';
      width: 41vw;
      color: #c5d9d2;
      display: block;
      position: absolute;
      z-index: 0;
      background-image: url("/img/bg_service.svg");
      background-repeat: no-repeat;
      padding-top: 24%;
      font-size: 11.875vw;
      top: 70px;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      line-height: 1;
      font-weight: normal;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none; }
      .browser-is-ie .p-home-block.-service:after {
        top: 0; } }
  @media print, screen and (min-width: 75em) {
    .p-home-block.-service:after {
      top: 70px; } }
  @media print, screen and (min-width: 100em) {
    .p-home-block.-service:after {
      width: 650px;
      height: 180px;
      font-size: 11.25rem;
      top: 61px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block.-service:after {
      display: none; } }
  .p-home-block.-service .p-home-block__title {
    color: #2d2d2d;
    position: relative;
    z-index: 1; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.-service .p-home-block__title {
        font-size: 1.375rem; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block.-service .p-home-block__title {
        font-size: 1.875rem;
        text-align: center; } }

.p-home-block.-example {
  z-index: -1;
  background-color: #e1ede8; }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-example {
      padding-top: 112px;
      padding-bottom: 20px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block.-example .p-home-block__inner {
      padding-top: 48px; } }
  .p-home-block.-example .p-home-block__title {
    color: #2d2d2d; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.-example .p-home-block__title {
        font-size: 1.375rem; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block.-example .p-home-block__title {
        font-size: 2.125rem;
        text-align: center; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block.-example .p-home-block__title:after {
        font-family: "Prompt", sans-serif;
        content: 'Case';
        color: #eeeeea;
        display: block;
        position: absolute;
        z-index: -1;
        font-size: 11.875vw;
        top: 40px;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        line-height: 1;
        font-weight: normal;
        -webkit-user-select: none;
           -moz-user-select: none;
            -ms-user-select: none;
                user-select: none; } }
    @media print, screen and (min-width: 75em) {
      .p-home-block.-example .p-home-block__title:after {
        font-size: 11.875rem; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.-example .p-home-block__title:after {
        display: none; } }

@media print, screen and (min-width: 48em) {
  .p-home-block.-support {
    padding-bottom: 120px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support {
    padding-bottom: 230px; } }

@media print, screen and (min-width: 75em) {
  .p-home-block.-support {
    padding-right: 100px;
    padding-left: 100px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-block.-support .p-home-block__inner {
    padding-right: 0;
    padding-left: 0; } }

@media print, screen and (min-width: 48em) {
  .p-home-block.-support .p-home-block__inner {
    max-width: 1400px;
    position: relative;
    padding-top: 120px;
    padding-bottom: 0; } }

@media print, screen and (min-width: 100em) {
  .p-home-block.-support .p-home-block__inner {
    max-width: 1400px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__inner .c-column {
    margin-left: -5.5%;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: justify;
            justify-content: space-between; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item.-w_400px {
    padding-top: 80px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item {
    margin-left: 8%;
    position: relative;
    z-index: 10; } }

@media print, screen and (min-width: 75em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item {
    margin-left: 5.5%; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item.-support-right {
    -webkit-box-flex: 0;
            flex: 0 1 800px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column + .c-column {
    margin-top: 60px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__inner .c-column + .c-column {
    margin-top: 120px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item + .c-column__item {
    margin-top: 0; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item.-sp_side {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 48%;
    margin-right: 0; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column .c-column__item.-sp_side {
    box-sizing: border-box;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .p-home-block.-support .p-home-block__inner .c-column.-sp_reverse {
    -webkit-box-pack: justify;
            justify-content: space-between; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column.-sp_reverse:nth-child(odd) .c-column__item:nth-child(2) {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 48%;
    margin-right: 0; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column.-sp_reverse:nth-child(odd) .c-column__item:nth-child(2) {
    width: 100%; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column.-sp_reverse:nth-child(even) .c-column__item:nth-child(2) {
    -webkit-box-flex: 0;
            flex: 0 1 auto;
    width: 48%;
    margin-right: 0; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-block.-support .p-home-block__inner .c-column.-sp_reverse:nth-child(even) .c-column__item:nth-child(2) {
    width: 100%; } }

.p-home-block.-support .p-home-block__name {
  text-align: left; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block.-support .p-home-block__name {
      margin-top: 17px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-support .p-home-block__name {
      padding: 0; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-support .p-home-block__name:after {
      font-family: "Prompt", sans-serif;
      content: '';
      width: 40vw;
      max-width: 636px;
      padding-top: 250px;
      background-image: url("/img/bg_support.svg");
      background-repeat: no-repeat;
      color: #f0f5f3;
      display: block;
      position: absolute;
      z-index: -1;
      font-size: 11.75vw;
      -webkit-user-select: none;
         -moz-user-select: none;
          -ms-user-select: none;
              user-select: none;
      top: -90px;
      left: -11px;
      line-height: 1;
      font-weight: normal;
      font-size: 10rem; } }
  @media print, screen and (min-width: 100em) {
    .p-home-block.-support .p-home-block__name:after {
      width: 636px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block.-support .p-home-block__name:after {
      display: none; } }
  .p-home-block.-support .p-home-block__name.-case:after {
    content: '';
    width: 20vw;
    max-width: 376px;
    padding-top: 160px;
    background-image: url("/img/bg_case.svg");
    background-repeat: no-repeat;
    left: auto; }
    @media print, screen and (min-width: 64em) {
      .p-home-block.-support .p-home-block__name.-case:after {
        right: -70px;
        top: -20px; } }
    @media print, screen and (min-width: 75em) {
      .p-home-block.-support .p-home-block__name.-case:after {
        right: 0; } }
    @media print, screen and (min-width: 100em) {
      .p-home-block.-support .p-home-block__name.-case:after {
        width: 376px; } }

.p-home-block.-support .p-home-block__title {
  position: relative;
  z-index: 1;
  color: #2d2d2d;
  text-align: left; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block.-support .p-home-block__title {
      font-size: 1.375rem; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block.-support .p-home-block__title {
      font-size: 1.75rem;
      padding: 0;
      line-height: 1.45; } }
  @media print, screen and (min-width: 75em) {
    .p-home-block.-support .p-home-block__title {
      font-size: 2.125rem; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__sec {
    margin-top: 34px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-support .p-home-block__sec.-mt-large {
    margin-top: 26px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block.-support .p-home-block__sec.-mt-large {
    margin-top: 60px; } }

.p-home-block.-support .c-image > img {
  width: 100%; }

.p-home-block__title.-case br {
  display: none; }
  @media screen and (min-width: 1250px) {
    .p-home-block__title.-case br {
      display: block; } }

.p-home-block.-news {
  background-color: #fff; }
  .p-home-block.-news .p-home-block__box {
    padding-top: 74px;
    padding-bottom: 0;
    width: 100%; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.-news .p-home-block__box {
        padding-top: 30px;
        box-sizing: border-box; } }

.p-home-block__news-inner {
  background-color: #e1ede8;
  width: 100%;
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__news-inner {
      box-sizing: border-box;
      padding-top: 20px;
      padding-left: 20px;
      padding-right: 20px; } }
  @media screen and (min-width: 1150px) and (max-width: 1480px) {
    .p-home-block__news-inner {
      max-width: 1100px;
      margin-left: 7%;
      margin-right: auto; } }

.p-home-block__news-text {
  color: #2d2d2d; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__news-text {
      padding-top: 16px;
      padding-bottom: 15px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-text {
      max-width: 1000px;
      margin-right: auto;
      padding-top: 21px;
      padding-right: 25px;
      padding-bottom: 20px;
      padding-left: 25px; } }
  @media print, screen and (min-width: 75em) {
    .p-home-block__news-text {
      max-width: 1400px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block__news-text .c-link {
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block__news-text .c-link {
      font-size: 1.125rem; } }
  .p-home-block__news-text .c-link.-no-link {
    pointer-events: none; }
  .p-home-block__news-text a:hover {
    color: #009e6f; }
  .p-home-block__news-text.-top_30 {
    margin-top: 30px; }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__news-sentence {
    margin-top: 11px;
    font-size: 0.9375rem; } }

@media print, screen and (min-width: 64em) {
  .p-home-block__news-sentence {
    margin-top: 14px;
    line-height: 1.5; } }

.p-home-block__news-title {
  font-weight: bold; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block__news-title {
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-title {
      font-size: 1.125rem; } }
  .p-home-block__news-title.-accent {
    color: #009e6f; }

.p-home-block__news-img {
  display: block;
  max-width: 960px;
  background: #fff;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  .p-home-block__news-img img {
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    display: block; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block__news-img img {
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block__news-img img {
        height: 100%;
        width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-img:hover img {
      opacity: 0.8;
      -webkit-filter: brightness(1);
              filter: brightness(1); } }
  .p-home-block__news-img + .p-home-block__news-img {
    margin-top: 10px; }

.p-home-block__news-youtube {
  margin-left: 25px; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block__news-youtube {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 56.25%;
      overflow: hidden;
      margin-bottom: 50px;
      margin-left: 0px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-youtube iframe {
    position: absolute;
    top: -40px; } }

@media print, screen and (max-width: 400px) {
  .p-home-block__news-youtube iframe {
    top: -70px; } }

.p-home-block__news-img {
  display: block;
  max-width: 960px;
  background: #fff;
  box-sizing: border-box;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-img {
      margin-left: 25px;
      overflow: hidden; } }
  .p-home-block__news-img img {
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    display: block; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block__news-img img {
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block__news-img img {
        height: 100%;
        width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-img:hover {
      box-shadow: 0 0 20px rgba(5, 23, 0, 0.3); } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-img:hover img {
      -webkit-transform: scale(1.02, 1.02);
              transform: scale(1.02, 1.02); } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-img:hover::before {
      content: '';
      display: block;
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      border: #ef753f solid 5px;
      z-index: 3;
      box-sizing: border-box;
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease;
      box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2); } }
  .p-home-block__news-img + .p-home-block__news-img {
    margin-top: 10px; }

.p-home-block__news-colmun2 {
  display: block;
  max-width: 960px;
  -webkit-box-pack: justify;
          justify-content: space-between; }
  @media print, screen and (min-width: 48em) {
    .p-home-block__news-colmun2 {
      display: -webkit-box;
      display: flex; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block__news-colmun2 {
      margin-top: 16px;
      margin-left: 25px; } }
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item {
    display: block;
    position: relative; }
    @media print, screen and (min-width: 48em) {
      .p-home-block__news-colmun2 .p-home-block__news-colmun2__item {
        width: calc(50% - 12px); } }
    @media print, screen and (min-width: 64em) {
      .p-home-block__news-colmun2 .p-home-block__news-colmun2__item {
        /*height: 338px;*/
        overflow: hidden; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block__news-colmun2 .p-home-block__news-colmun2__item:hover {
        box-shadow: 0 0 20px rgba(5, 23, 0, 0.3); }
        .p-home-block__news-colmun2 .p-home-block__news-colmun2__item:hover img {
          -webkit-transform: scale(1.02, 1.02);
                  transform: scale(1.02, 1.02); } }
    @media print, screen and (min-width: 64em) {
      .p-home-block__news-colmun2 .p-home-block__news-colmun2__item:hover::before {
        content: '';
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        border: #ef753f solid 5px;
        z-index: 3;
        box-sizing: border-box;
        -webkit-transition: all 0.2s ease;
        transition: all 0.2s ease; } }
    .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
      display: block;
      margin-top: 12px;
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease; }
      @media only screen and (max-width: 47.9375em) {
        .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
          width: 100%; } }
      @media print, screen and (min-width: 48em) {
        .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
          margin-right: 12px;
          width: 100%;
          height: 100%; } }
      @media print, screen and (min-width: 64em) {
        .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
          margin-top: 0px; } }
    .p-home-block__news-colmun2 .p-home-block__news-colmun2__item.-skyblue:hover::before {
      border: #3fcad8 solid 5px; }
    .p-home-block__news-colmun2 .p-home-block__news-colmun2__item.-brown:hover::before {
      border: #a18938 solid 5px; }

.p-home-block.-caption {
  width: 100%;
  background-color: #2d2d2d; }
  .p-home-block.-caption .p-home-block__box {
    width: 100%;
    padding-top: 74px;
    padding-bottom: 0;
    box-sizing: border-box; }

.p-home-panel-group {
  position: relative;
  box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15); }
  @media print, screen and (min-width: 64em) {
    .p-home-panel-group {
      width: 100%;
      max-width: 1200px; } }

.p-home-panel {
  display: block;
  background-color: #fff;
  margin-right: auto;
  margin-left: auto; }

.p-home-panel__content {
  grid-area: content; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__content {
      padding-top: 20px;
      padding-right: 4.6875%;
      padding-bottom: 20px;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__content {
      padding-top: 64px;
      padding-right: 9.375%;
      padding-bottom: 64px;
      padding-left: 9.375%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-panel__content {
      padding-top: 128px;
      padding-right: 60px;
      padding-bottom: 128px;
      padding-left: 60px; } }

.p-home-panel__heading span.-en {
  position: relative;
  padding-right: 30px;
  font-family: futura-pt, sans-serif;
  font-weight: 400;
  color: #009e6f;
  line-height: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__heading span.-en {
      font-size: 1.25rem; } }
  .p-home-panel__heading span.-en:after {
    content: '';
    position: absolute;
    top: calc(50% - 1px);
    width: 20px;
    height: 1px;
    right: 0;
    background-color: currentColor;
    opacity: 0.5; }

.p-home-panel__heading span.-ja {
  display: block;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__heading span.-ja {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__heading span.-ja {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__heading span.-ja {
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__heading span.-ja {
      font-size: 1.625rem; } }

.p-home-panel__description {
  line-height: 1.625; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__description {
      margin-top: 4px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__description {
      margin-top: 32px;
      font-weight: bold;
      font-size: 1.125rem; } }
  @media only screen and (min-width: 48em) and (max-width: 47.9375em) {
    .p-home-panel__description {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) and (min-width: 48em) {
    .p-home-panel__description {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-home-panel__more {
  display: -webkit-box;
  display: flex;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__more {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__more {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__more {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__more {
      margin-top: 34px; } }
  .p-home-panel__more .c-arrow {
    margin-right: 8px; }
    @media only screen and (max-width: 47.9375em) {
      .p-home-panel__more .c-arrow {
        top: 0.4em; } }
    @media print, screen and (min-width: 48em) {
      .p-home-panel__more .c-arrow {
        top: 0.3em; } }

.p-home-panel__thumb {
  grid-area: thumb;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-panel__thumb {
      width: 100%;
      padding-top: 75%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-panel__thumb {
      width: 100%;
      height: 100%;
      min-height: calc(100% * 0.73); } }
  .p-home-panel__thumb > span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%; }

@media print, screen and (min-width: 48em) {
  .p-home-panel:nth-child(odd) {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 1fr;
        grid-template: 'content thumb' 1fr / 1fr 1fr; }
  .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 2; } }

@media print, screen and (min-width: 64em) {
  .p-home-panel:nth-child(odd) {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 460px 1fr;
        grid-template: 'content thumb' 1fr / 460px 1fr; }
  .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 2; } }

@media print, screen and (min-width: 48em) {
  .p-home-panel:nth-child(even) {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 1fr;
        grid-template: 'thumb content' 1fr / 1fr 1fr; }
  .p-home-panel:nth-child(even) > .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
  .p-home-panel:nth-child(even) > .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 64em) {
  .p-home-panel:nth-child(even) {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 460px;
        grid-template: 'thumb content' 1fr / 1fr 460px; }
  .p-home-panel:nth-child(even) > .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
  .p-home-panel:nth-child(even) > .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 1; } }

.p-caption {
  width: 100%;
  max-width: 1400px;
  background-color: #fff; }
  @media print, screen and (min-width: 48em) {
    .p-caption {
      display: -webkit-box;
      display: flex; } }
  @media print, screen and (min-width: 64em) {
    .p-caption {
      width: 100%; } }
  @media print, screen and (min-width: 75em) {
    .p-caption {
      margin-right: auto;
      margin-left: auto; } }
  .p-caption.-border {
    background-color: #fff;
    border: 1px solid #c2cfc9; }
  @media print, screen and (min-width: 48em) {
    .p-caption.-home {
      max-width: 940px;
      margin: 0 auto; } }
  @media print, screen and (min-width: 64em) {
    .p-caption .p-caption__text {
      font-size: 1.0625rem; } }

.p-caption__lead {
  box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .p-caption__lead {
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 20px;
      padding-bottom: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-caption__lead {
      -webkit-box-flex: 1;
              flex: 1;
      padding-left: 24px;
      padding-right: 24px;
      padding-top: 26px;
      padding-bottom: 26px; } }
  @media print, screen and (min-width: 64em) {
    .p-caption__lead {
      padding-left: 30px;
      padding-right: 30px; } }
  .p-caption__lead .c-link {
    font-size: 1.125rem; }

.p-caption__text {
  display: block;
  margin-top: 14px; }
  @media only screen and (max-width: 47.9375em) {
    .p-caption__text {
      font-size: 0.875rem; } }

/* コピーライト
----------------------------------------------------------------- */
.p-copyright {
  margin-top: 30px;
  display: block;
  color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .p-copyright {
      font-size: 0.625rem; } }
  @media print, screen and (min-width: 48em) {
    .p-copyright {
      font-size: 0.75rem; } }
  .p-copyright.-form {
    margin-top: 0;
    text-align: center;
    color: #2d2d2d; }

.p-hamburger {
  display: block;
  border: none;
  z-index: 10000;
  position: relative;
  width: 20px;
  height: 12px;
  padding: 0;
  background-color: transparent;
  cursor: pointer; }
  .p-hamburger span {
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    position: absolute;
    top: 5px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    -webkit-transition: ease all 0.2s;
    transition: ease all 0.2s; }
    @media print, screen and (min-width: 64em) {
      .p-hamburger span {
        display: none; } }
  .p-hamburger:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    -webkit-transition: ease transform 0.2s;
    transition: ease transform 0.2s; }
  .p-hamburger:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    -webkit-transition: ease transform 0.2s;
    transition: ease transform 0.2s; }
  .p-main-menu-button.-active .p-hamburger span {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
    @media print, screen and (max-width: 63.9375em) {
      .p-main-menu-button.-active .p-hamburger span {
        opacity: 0;
        background-color: #fff; } }
  .p-main-menu-button.-active .p-hamburger:before {
    -webkit-transform: translateY(5px) rotate(-45deg);
            transform: translateY(5px) rotate(-45deg); }
    @media print, screen and (max-width: 63.9375em) {
      .p-main-menu-button.-active .p-hamburger:before {
        background-color: #fff; } }
  .p-main-menu-button.-active .p-hamburger:after {
    -webkit-transform: translateY(-5px) rotate(45deg);
            transform: translateY(-5px) rotate(45deg); }
    @media print, screen and (max-width: 63.9375em) {
      .p-main-menu-button.-active .p-hamburger:after {
        background-color: #fff; } }

/* ページトップリンク
----------------------------------------------------------------- */
.p-page-top {
  padding-right: 4.6875%;
  padding-bottom: 16px;
  padding-left: 4.6875%; }
  @media print, screen and (max-width: 63.9375em) {
    .p-page-top {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .p-page-top {
      background-color: #009e6f;
      display: block;
      padding: 0;
      opacity: 0;
      position: fixed;
      bottom: 20px;
      width: 50px;
      height: 50px;
      z-index: 10;
      visibility: hidden;
      -webkit-transition: all 0.2s 0s ease, visibility 0.2s 0s ease, -webkit-transform 0.2s ease;
      transition: all 0.2s 0s ease, visibility 0.2s 0s ease, -webkit-transform 0.2s ease;
      transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease;
      transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease, -webkit-transform 0.2s ease;
      -webkit-transform: translateY(10px);
              transform: translateY(10px);
      box-shadow: 0 3px 12px rgba(0, 0, 0, 0.16);
      right: 40px;
      bottom: 20px;
      border-radius: 4px;
      overflow: hidden; } }
  .p-page-top > a {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
    @media print, screen and (min-width: 64em) {
      .p-page-top > a {
        display: block;
        height: 100%;
        box-sizing: border-box;
        overflow: hidden;
        width: 100%;
        height: 100%;
        padding-top: 12px;
        background-color: #009e6f;
        border-radius: 4px;
        text-align: center; } }
    .p-page-top > a::before {
      box-sizing: border-box;
      display: block;
      position: absolute;
      z-index: 20;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #45bf7e;
      -webkit-transform: translate(0, 100%);
              transform: translate(0, 100%);
      -webkit-transition: all 0.2s 0s ease, visibility 0.2s 0s ease, -webkit-transform 0.2s ease;
      transition: all 0.2s 0s ease, visibility 0.2s 0s ease, -webkit-transform 0.2s ease;
      transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease;
      transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease, -webkit-transform 0.2s ease;
      content: ''; }
    .p-page-top > a::after {
      content: '';
      display: block;
      position: absolute;
      width: 13px;
      height: 13px;
      left: 50%;
      top: 20px;
      -webkit-transform: translate(-50%) rotate(-45deg);
              transform: translate(-50%) rotate(-45deg);
      border-top: 3px solid #fff;
      border-right: 3px solid #fff;
      z-index: 30; }
    @media print, screen and (min-width: 64em) {
      .p-page-top > a:hover:before {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
        z-index: 20; } }
  @media print, screen and (min-width: 64em) {
    .p-page-top.is-active {
      opacity: 1;
      visibility: visible;
      -webkit-transform: translateY(0) scale(1);
              transform: translateY(0) scale(1); } }

/* パンくずリスト
----------------------------------------------------------------- */
.p-breadcrumbs {
  width: 100%;
  padding-top: 13px;
  z-index: 4;
  display: none; }
  @media print, screen and (min-width: 69.6875em) {
    .p-breadcrumbs {
      display: -webkit-box;
      display: flex; } }
  @media print, screen and (min-width: 87.5em) {
    .p-breadcrumbs {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .p-breadcrumbs__inner {
    box-sizing: border-box;
    display: -webkit-box;
    display: flex;
    overflow: hidden;
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto; } }

.p-breadcrumbs__item {
  position: relative;
  font-size: 0.75rem;
  color: #2d2d2d;
  white-space: nowrap; }
  .p-breadcrumbs__item > a {
    -webkit-transition: color 0.1s 0s ease;
    transition: color 0.1s 0s ease;
    color: #2d2d2d; }
    @media print, screen and (min-width: 48em) {
      .p-breadcrumbs__item > a:hover {
        color: #009e6f;
        text-decoration: underline; } }
  .p-breadcrumbs__item br {
    display: none; }
  .p-breadcrumbs__item small {
    font-size: 0.8125rem;
    display: inline; }
  .p-breadcrumbs__item:last-child {
    overflow: hidden;
    text-overflow: ellipsis; }
    .p-breadcrumbs__item:last-child:after {
      display: none; }
  .p-breadcrumbs__item:after {
    content: '';
    display: inline-block;
    box-sizing: border-box;
    display: inline-block;
    position: relative;
    top: -0.1em;
    width: 6px;
    height: 6px;
    border-style: solid;
    border-width: 1px 1px 0 0;
    margin-left: 8px;
    border-color: #2d2d2d;
    -webkit-transform: translate(0, 0) rotate(45deg);
            transform: translate(0, 0) rotate(45deg);
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    content: '';
    top: -0.1em;
    margin-right: 10px;
    margin-left: 5px; }

.p-breadcrumbs.-on_visual {
  position: absolute; }
  .p-breadcrumbs.-on_visual .p-breadcrumbs__item {
    color: #fff; }
    .p-breadcrumbs.-on_visual .p-breadcrumbs__item > a {
      color: #fff; }
      .p-breadcrumbs.-on_visual .p-breadcrumbs__item > a:hover {
        color: #fff; }
    .p-breadcrumbs.-on_visual .p-breadcrumbs__item:after {
      border-color: #fff; }

.p-breadcrumbs.-absolute,
.p-breadcrumbs.-form {
  position: absolute;
  background-color: transparent; }
  .p-breadcrumbs.-absolute .p-breadcrumbs__item,
  .p-breadcrumbs.-form .p-breadcrumbs__item {
    color: #2d2d2d; }
    .p-breadcrumbs.-absolute .p-breadcrumbs__item > a,
    .p-breadcrumbs.-form .p-breadcrumbs__item > a {
      color: #2d2d2d; }
      .p-breadcrumbs.-absolute .p-breadcrumbs__item > a:hover,
      .p-breadcrumbs.-form .p-breadcrumbs__item > a:hover {
        color: #2d2d2d; }
    .p-breadcrumbs.-absolute .p-breadcrumbs__item:after,
    .p-breadcrumbs.-form .p-breadcrumbs__item:after {
      opacity: 0.5;
      border-color: #2d2d2d; }

.p-breadcrumbs.-form {
  position: static; }

/* カテトップページのメインビジュアル
----------------------------------------------------------------- */
.p-page-visual {
  position: relative; }
  @media print, screen and (min-width: 48em) {
    .p-page-visual {
      height: 200px; } }

.p-page-visual__image {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden; }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__image {
      position: absolute;
      top: calc(50% - 20px);
      left: 50%;
      height: calc(100% - 40px);
      -webkit-transform: translate3d(-50%, -50%, 0);
              transform: translate3d(-50%, -50%, 0); } }
  .p-page-visual__image > img {
    width: 100%;
    height: auto; }
    @media print, screen and (min-width: 48em) {
      .p-page-visual__image > img {
        min-width: 1400px; } }

.p-page-visual__inner {
  position: relative;
  z-index: 1;
  height: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
          align-items: flex-start;
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box; }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__inner {
      padding-right: 4.6875%;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-page-visual__inner {
      padding-right: 100px;
      padding-left: 100px; } }

.p-page-visual__title {
  display: inline-block;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #009e6f));
  background: linear-gradient(transparent 70%, #009e6f 0%); }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__title {
      margin-top: 24px;
      margin-right: 4.6875%;
      margin-bottom: 24px;
      margin-left: 4.6875%;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__title {
      margin-top: 140px;
      font-size: 2.5rem; } }

.p-page-visual__title > .-disc {
  font-size: 1.125rem;
  font-weight: bold;
  padding-left: 10px; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__title > .-disc {
      font-size: 0.875rem; } }

.p-page-visual__content {
  position: relative;
  box-sizing: border-box;
  max-width: 1200px;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__content {
      width: 100%;
      padding-top: 24px;
      padding-right: 4.6875%;
      padding-bottom: 24px;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__content {
      padding-top: 40px;
      padding-bottom: 40px;
      width: calc(100% - 100px);
      padding-right: 100px;
      -webkit-transform: translate3d(0, 40px, 0);
              transform: translate3d(0, 40px, 0); } }
  .p-page-visual__content:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100vw;
    height: 100%;
    background-color: #2d2d2d;
    z-index: -1; }

.p-select {
  display: inline-block;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    table + .p-select,
    .c-image + .p-select,
    .p-scrollable + .p-select {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .p-select,
    .c-image + .p-select,
    .p-scrollable + .p-select {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .p-select {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .p-select {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .p-select {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .p-select {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .p-select {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .p-select {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .p-select {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .p-select {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .p-select,
    .c-heading-2-1 + .p-select {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .p-select,
    .c-heading-2-1 + .p-select {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .p-select {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .p-select {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .p-select {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .p-select {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-select,
    .c-list + .p-select {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-select,
    .c-list + .p-select {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .p-select {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .p-select {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .p-select {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .p-select {
      margin-top: 14px; } }
  .p-select > select {
    position: relative;
    z-index: 1;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    line-height: 1.5;
    padding-top: 5px;
    padding-right: 32px;
    padding-bottom: 3px;
    padding-left: 14px;
    background: transparent;
    cursor: pointer;
    border-style: solid;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .p-select > select {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-select > select {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media only screen and (max-width: 47.9375em) {
      .p-select > select {
        height: 44px; } }
    .p-select > select::-ms-expand {
      display: none; }
  .p-select:after {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 8px;
    height: 8px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    top: calc(50% - 5px);
    left: calc(50% - 4px);
    border-color: #2d2d2d;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    content: '';
    left: auto;
    right: 15px; }
  .success .p-select {
    background: #fff; }
  .error .p-select select {
    border-color: #f75961; }

@media print, screen and (min-width: 48em) {
  .f-select--size_50per {
    width: 50%; } }

/* 部屋を一覧から探すテーブル
----------------------------------------------------------------- */
.p-room-table {
  margin-top: 30px; }
  @media only screen and (max-width: 47.9375em) {
    table + .p-room-table,
    .c-image + .p-room-table,
    .p-scrollable + .p-room-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .p-room-table,
    .c-image + .p-room-table,
    .p-scrollable + .p-room-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .p-room-table {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .p-room-table {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .p-room-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .p-room-table {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .p-room-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .p-room-table {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .p-room-table {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .p-room-table {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .p-room-table,
    .c-heading-2-1 + .p-room-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .p-room-table,
    .c-heading-2-1 + .p-room-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .p-room-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .p-room-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .p-room-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .p-room-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-room-table,
    .c-list + .p-room-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-room-table,
    .c-list + .p-room-table {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .p-room-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .p-room-table {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .p-room-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .p-room-table {
      margin-top: 14px; } }
  .p-room-table thead .c-note-number {
    margin-left: 8px; }
  .p-room-table > tbody > tr:nth-child(odd) {
    background-color: #e1ede8; }
  .p-room-table > tbody > tr:last-of-type {
    border-bottom: 1px solid #c2cfc9; }
  .p-room-table > tbody > tr th {
    padding-left: 20px; }
  .p-room-table > tbody > tr.-current {
    background-color: #dff5e2;
    color: #2b7443; }
  .p-room-table th {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    line-height: 1; }
    @media only screen and (max-width: 47.9375em) {
      .p-room-table th {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-room-table th {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media only screen and (max-width: 47.9375em) {
      .p-room-table th {
        padding-top: 16px;
        padding-bottom: 18px; } }
    @media print, screen and (min-width: 48em) {
      .p-room-table th {
        padding-top: 16px;
        padding-bottom: 14px; } }
    .p-room-table th.-align_r {
      text-align: right; }
  .p-room-table td {
    line-height: 1.5;
    text-align: right; }
    @media only screen and (max-width: 47.9375em) {
      .p-room-table td {
        padding-top: 13px;
        padding-bottom: 13px; } }
    @media print, screen and (min-width: 48em) {
      .p-room-table td {
        padding-top: 14px;
        padding-bottom: 12px; } }
    .p-room-table td:last-of-type {
      padding-right: 20px; }

.p-room-table__time {
  margin-top: 8px;
  display: block;
  font-size: 0.75rem; }

/* ドロップダウンメニューで使用 */
@media print, screen and (min-width: 64em) {
  .p-room-table.-dropdown {
    width: 100%;
    margin-top: 0px;
    margin-left: 50px; }
    .p-room-table.-dropdown tbody :last-of-type {
      border-bottom: none; }
      .p-room-table.-dropdown tbody :last-of-type th {
        padding-top: 30px;
        padding-bottom: 0; }
    .p-room-table.-dropdown tbody th .c-link {
      font-size: 1rem; } }

.p-room-table.-detail .-current {
  background-color: #dff5e2;
  color: #2b7443;
  font-weight: bold; }
  @media print, screen and (max-width: 63.9375em) {
    .p-room-table.-detail .-current {
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-room-table.-detail .-current {
      font-size: 1.125rem; } }
  .p-room-table.-detail .-current th {
    padding-left: 24px;
    text-align: left; }

@media print, screen and (min-width: 64em) {
  .p-room-table__hyphen {
    padding-left: 35px; } }

.p-room-table__small {
  font-size: 0.875rem;
  text-align: right; }

/* レンタル備品の表
----------------------------------------------------------------- */
.p-equipment-table {
  border-collapse: collapse;
  margin-top: 30px;
  width: 100%;
  border-bottom: 1px solid #c2cfc9; }
  @media only screen and (max-width: 47.9375em) {
    table + .p-equipment-table,
    .c-image + .p-equipment-table,
    .p-scrollable + .p-equipment-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .p-equipment-table,
    .c-image + .p-equipment-table,
    .p-scrollable + .p-equipment-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .p-equipment-table {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .p-equipment-table {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .p-equipment-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .p-equipment-table {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .p-equipment-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .p-equipment-table {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .p-equipment-table {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .p-equipment-table {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .p-equipment-table,
    .c-heading-2-1 + .p-equipment-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .p-equipment-table,
    .c-heading-2-1 + .p-equipment-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .p-equipment-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .p-equipment-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .p-equipment-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .p-equipment-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-equipment-table,
    .c-list + .p-equipment-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-equipment-table,
    .c-list + .p-equipment-table {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .p-equipment-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .p-equipment-table {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .p-equipment-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .p-equipment-table {
      margin-top: 14px; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table {
      display: table; } }
  .browser-is-ie .p-equipment-table {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: center;
            align-items: center; }

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__head {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .p-equipment-table__head {
    display: table-row-group;
    border-width: 1px 0 1px 0;
    border-color: #c2cfc9;
    border-style: solid; } }

@media print, screen and (min-width: 64em) {
  .p-equipment-table__head .p-equipment-table__row .p-equipment-table__header:first-of-type {
    padding-left: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-equipment-table__body {
    display: table-row-group; } }

@media only screen and (max-width: 47.9375em) {
  .p-equipment-table__body .p-equipment-table__row:first-child {
    margin-top: 0; } }

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__body .p-equipment-table__row {
    margin-top: 30px; } }

@media print, screen and (min-width: 64em) {
  .p-equipment-table__body .p-equipment-table__row:nth-child(even) {
    background-color: #e1ede8; } }

@media print, screen and (min-width: 64em) {
  .p-equipment-table__row {
    display: table-row; } }

.p-equipment-table__header {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  line-height: 1;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-equipment-table__header {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-equipment-table__header {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__header {
      display: table-cell;
      vertical-align: middle;
      padding-top: 18px;
      padding-bottom: 16px; } }
  .p-equipment-table__header span {
    display: inline-block;
    font-size: 0.5625rem; }
  .browser-is-ie .p-equipment-table__header {
    white-space: nowrap; }

.p-equipment-table__data {
  line-height: 1.5; }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data {
      display: -webkit-box;
      display: flex;
      flex-wrap: wrap;
      font-size: 0.75rem;
      border-bottom: 1px solid #c2cfc9;
      padding-top: 9px;
      padding-bottom: 9px; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data {
      box-sizing: border-box;
      display: table-cell;
      vertical-align: middle;
      padding-top: 13px;
      padding-right: 20px;
      padding-bottom: 13px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data:before {
      width: 90px;
      min-width: 90px;
      white-space: nowrap;
      display: block;
      font-feature-settings: 'palt' 1;
      letter-spacing: 0.01em;
      font-weight: bold; } }
  @media only screen and (max-width: 63.9375em) and (max-width: 47.9375em) {
    .p-equipment-table__data:before {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) and (min-width: 48em) {
    .p-equipment-table__data:before {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-name {
      width: 320px; } }
  .browser-is-ie .p-equipment-table__data.-name {
    display: block; }
  @media print, screen and (min-width: 64em) {
    .browser-is-ie .p-equipment-table__data.-name.-facility {
      width: 480px; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-category {
      width: 80px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-category:before {
      content: 'カテゴリ'; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-category.-en:before {
      content: 'Category'; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-maker {
      width: 140px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-maker:before {
      content: 'メーカー／仕様'; } }
  .p-equipment-table__data.-maker span {
    font-size: 0.8125rem;
    display: block;
    margin-top: 4px; }
    @media only screen and (max-width: 47.9375em) {
      .p-equipment-table__data.-maker span {
        font-size: 0.75rem;
        padding-left: 80px;
        width: 100%; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-maker.-en:before {
      white-space: pre;
      content: 'Features/\Aspecifications'; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-partNumber {
      width: 150px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-partNumber:before {
      content: '料金／1日'; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-partNumber.-en:before {
      content: 'Pricing/day'; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-price {
      width: 100px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-price:before {
      content: '料金／1日'; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-price.-en:before {
      content: 'Pricing/day'; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-number {
      width: 100px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-number:before {
      content: '数量'; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-number.-en:before {
      content: 'Quantity'; } }
  @media print, screen and (min-width: 64em) {
    .p-equipment-table__data.-remarks {
      width: 110px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-equipment-table__data.-remarks:before {
      content: '備考'; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-equipment-table {
    margin-top: 5px; } }

/* レンタル備品の備品名
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-equipment-title {
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .p-equipment-title {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; } }

.p-equipment-title > img {
  width: 100px; }
  @media only screen and (max-width: 47.9375em) {
    .p-equipment-title > img {
      width: 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-equipment-title > img {
      vertical-align: top; } }
  .browser-is-ie .p-equipment-title > img {
    width: auto;
    height: auto;
    display: block;
    max-width: 100px; }

@media only screen and (max-width: 47.9375em) {
  .p-equipment-title > span {
    display: -webkit-box;
    display: flex;
    margin-top: 9px; } }

@media print, screen and (min-width: 48em) {
  .p-equipment-title > span {
    display: inline-block;
    margin-left: 20px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title > span:before {
    display: block;
    width: 90px;
    min-width: 90px;
    content: '備品名';
    white-space: nowrap;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold; } }
  @media only screen and (max-width: 63.9375em) and (max-width: 47.9375em) {
    .p-equipment-title > span:before {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) and (min-width: 48em) {
    .p-equipment-title > span:before {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title.-en > span:before {
    content: 'Name'; } }

.p-scrollable {
  overflow-x: auto;
  box-shadow: -10px 0 10px -10px rgba(61, 99, 120, 0.25) inset, 10px 0 10px -10px rgba(61, 99, 120, 0.15) inset;
  margin-top: 30px; }
  @media print, screen and (min-width: 87.5em) {
    .p-scrollable {
      box-shadow: none; } }
  .p-scrollable .p-room-table {
    width: 1200px;
    margin-top: 0; }

/* カテトップページのメインビジュアル
----------------------------------------------------------------- */
.p-detail-visual {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  padding-right: 4.6875%;
  padding-left: 4.6875%; }
  @media print, screen and (max-width: 63.9375em) {
    .p-detail-visual {
      z-index: 0;
      height: 150px; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-visual {
      height: 230px;
      padding-right: 100px;
      padding-left: 100px; } }
  .p-detail-visual:after {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(0, 0, 0, 0.4)), to(transparent));
    background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 0, transparent 100%); }

.p-detail-visual__inner {
  position: relative;
  z-index: 2;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .p-detail-visual__inner {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }

.p-detail-visual__title {
  display: inline-block;
  font-weight: bold;
  color: #fff;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  letter-spacing: 0.05em;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-visual__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-visual__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-detail-visual__title {
      font-size: 1.75rem; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-visual__title {
      font-size: 2.25rem; } }
  @media print, screen and (min-width: 75em) {
    .p-detail-visual__title.-pc-size_l {
      font-size: 2.8125rem; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-visual__title.-sp-size_s {
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-visual__title.-pc_size_xl {
      font-size: 2.875rem; } }

.p-detail-visual__sub {
  display: block;
  color: #fff;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-visual__sub {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-visual__sub {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-detail-visual__sub {
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-visual__sub {
      font-size: 1.375rem; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-visual__sub.-sp-size_s {
      font-size: 0.875rem;
      line-height: 1.2;
      margin-top: 5px; } }

.p-detail-visual__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 1.42857vw 2fr 1.42857vw 1.5fr;
        grid-template: 'fm1-1 fm1-2 fm1-3'/ 1fr 2fr 1.5fr;
    gap: 1.42857vw; } }

.p-sitemap a {
  color: #fff; }
  @media print, screen and (min-width: 64em) {
    .p-sitemap a:hover {
      opacity: 0.8; } }

@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 4.64286vw 1fr 4.64286vw 1fr;
        grid-template: 'fm2-1 fm2-2 fm2-3' / 1fr 1fr 1fr;
    gap: 4.64286vw; } }

@media print, screen and (min-width: 87.5em) {
  .browser-is-ie .p-sitemap {
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 65px 1fr 65px 1fr;
        grid-template: 'fm2-1 fm2-2 fm2-3'/ 1fr 1fr 1fr;
    gap: 65px; } }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group > li {
    line-height: 1.25; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__group > li {
    line-height: 1.75; } }

@media print, screen and (min-width: 64em) {
  .p-sitemap__group > li {
    line-height: 1.25; } }

.p-sitemap__group > li + li {
  margin-top: 8px; }
  @media print, screen and (min-width: 48em) {
    .p-sitemap__group > li + li {
      margin-top: 10px; } }

.browser-is-ie .p-sitemap__group > li {
  width: 200px; }

.p-sitemap__group.-lv1 > li > a {
  font-weight: bold;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-size: 0.75rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-sitemap__group.-lv1 > li > a {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-sitemap__group.-lv1 > li > a {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-sitemap__group.-lv1 > li > a > .c-blank {
    margin-right: 8px; }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv1 > li + li {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__group.-lv1 > li + li {
    margin-top: 24px; } }

@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(1) {
    grid-area: fm1-1; } }

@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(1) {
    grid-area: fm2-1; } }

@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(2) {
    grid-area: fm1-2; } }

@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(2) {
    grid-area: fm2-2; } }

@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(3) {
    grid-area: fm1-3; } }

@media print, screen and (min-width: 48em){
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; } }

@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(3) {
    grid-area: fm2-3; } }

@media print, screen and (min-width: 48em){
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; } }

@media print, screen and (min-width: 87.5em){
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5; } }

@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(4) {
    grid-area: fm1-4; } }

@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(4) {
    grid-area: fm2-4; } }

@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(5) {
    grid-area: fm1-5; } }

@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(5) {
    grid-area: fm2-5; } }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv1 + .p-sitemap__group.-lv1 {
    margin-top: 16px; } }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv2 {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__group.-lv2 {
    margin-top: 24px; } }

.p-sitemap__group.-lv2 > li > a {
  display: -webkit-box;
  display: flex;
  font-size: 0.75rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-sitemap__group.-lv2 > li > a {
      font-size: 0.6875rem; } }
  .p-sitemap__group.-lv2 > li > a:before {
    margin-right: 8px;
    content: '-';
    font-size: 0.75rem;
    color: #009e6f; }

.p-sitemap__mini-head {
  display: block;
  color: #fff;
  font-size: 0.75rem; }

.p-company-info__logo > svg {
  display: block;
  width: auto;
  height: 40px;
  fill: #fff; }
  @media print, screen and (min-width: 48em) {
    .p-company-info__logo > svg {
      width: 100%;
      max-width: 289px; } }

.p-company-info__list {
  margin-top: 22px;
  color: #fff;
  font-size: 0.75rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-company-info__list {
      font-size: 0.75rem; } }
  .p-company-info__list li {
    color: #fff;
    font-size: 0.75rem; }
    @media only screen and (max-width: 47.9375em) {
      .p-company-info__list li {
        line-height: 1.8; } }
    @media print, screen and (min-width: 48em) {
      .p-company-info__list li {
        line-height: 1.75; } }
    @media print, screen and (min-width: 64em) {
      .p-company-info__list li {
        line-height: 1.8; } }
    .p-company-info__list li > a {
      color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .p-company-info__list br {
      display: block; } }
  @media print, screen and (min-width: 48em) {
    .p-company-info__list br {
      display: none; } }

.p-info-owner {
  display: block; }

.p-info-owner__inner {
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-top: 25px;
  padding-right: 4.6875%;
  padding-bottom: 20px;
  padding-left: 4.6875%; }
  @media print, screen and (min-width: 48em) {
    .p-info-owner__inner {
      display: -webkit-box;
      display: flex; } }
  @media print, screen and (min-width: 64em) {
    .p-info-owner__inner {
      max-width: 1400px;
      padding-top: 25px;
      padding-right: 100px;
      padding-bottom: 25px;
      padding-left: 100px; } }

.p-info-owner__head {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  -ms-grid-row-align: center;
      align-self: center;
  font-size: 1.125rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-info-owner__head {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-info-owner__head {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-info-owner__head {
      white-space: nowrap; } }

@media only screen and (max-width: 47.9375em) {
  .p-info-owner__image {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-info-owner__image {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    position: relative;
    margin-left: 45px;
    padding-left: 30px; } }

@media print, screen and (min-width: 64em) {
  .p-info-owner__image {
    margin-left: 90px;
    padding-left: 60px; } }

@media print, screen and (min-width: 48em) {
  .p-info-owner__image:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #e1e1e0; } }

.p-info-owner__image > img {
  display: block; }

@media only screen and (max-width: 47.9375em) {
  .p-info-owner__body {
    margin-top: 24px; } }

@media print, screen and (min-width: 48em) {
  .p-info-owner__body {
    margin-left: 60px; } }

.p-info-owner__name {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-info-owner__name {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-info-owner__name {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-info-owner__name {
      font-size: 1.125rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-info-owner__address {
    margin-top: 5px;
    font-size: 0.75rem; } }

@media print, screen and (min-width: 48em) {
  .p-info-owner__address {
    font-size: 0.875rem; } }

.p-info-owner:not(.-home) {
  display: none; }

.p-page-title {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 2.625rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-page-title {
      font-size: 1.875rem;
      padding-top: 12px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title {
      font-size: 1.25rem; } }

@media print, screen and (max-width: 63.9375em) {
  .p-page-title.-third-detail {
    font-size: 1.875rem; } }

@media print, screen and (min-width: 64em) {
  .p-page-title.-third-detail {
    font-size: 2.625rem; } }

.p-page-title.-third-detail .p-page-title__top {
  display: block;
  font-size: 1.125rem;
  color: #009e6f; }

@media only screen and (max-width: 47.9375em) {
  .p-page-title.-third-detail .p-page-title__deco {
    display: block;
    font-weight: bold;
    font-size: 1rem; } }

@media print, screen and (min-width: 64em) {
  .p-page-title.-third-detail .p-page-title__deco {
    display: inline-block; } }

.p-page-title.-article {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 1.875rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title.-article {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title.-article {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title.-article {
      font-size: 2.8125rem; } }

.p-contact-box {
  box-sizing: border-box;
  background-color: #f7f7f6;
  padding-top: 20px;
  padding-right: 4.6875%;
  padding-bottom: 4.6875%;
  padding-left: 20px; }
  @media print, screen and (min-width: 64em) {
    .p-contact-box {
      width: 550px;
      padding-top: 24px;
      padding-right: 40px;
      padding-bottom: 40px;
      padding-left: 30px; } }

.p-contact-box__title {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.375rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-contact-box__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-contact-box__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-contact-box__desc {
  margin-top: 4px; }
  .browser-is-ie .p-contact-box__desc {
    font-weight: bold; }

.p-contact-box__action {
  margin-top: 22px; }
  @media print, screen and (min-width: 75em) {
    .p-contact-box__action {
      display: -webkit-box;
      display: flex;
      -webkit-box-pack: justify;
              justify-content: space-between; } }

.p-contact-box__button {
  margin-top: 20px; }
  @media print, screen and (min-width: 75em) {
    .p-contact-box__button {
      -webkit-box-flex: 1;
              flex: 1;
      margin-top: 0;
      margin-left: 20px;
      max-width: 230px; } }

.p-contact-box-2 {
  box-sizing: border-box;
  background-color: #F2F5F4;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  padding-top: 20px;
  padding-right: 4.6875%;
  padding-bottom: 4.6875%;
  padding-left: 20px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-contact-box-2 {
      padding-top: 24px;
      padding-right: 40px;
      padding-bottom: 26px;
      padding-left: 30px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-contact-box-2 {
      display: block; } }
  @media print, screen and (min-width: 64em) {
    .p-contact-box-2 {
      padding-top: 40px;
      padding-right: 40px;
      padding-bottom: 40px;
      padding-left: 30px; } }
  .p-contact-box-2 .p-contact-box__desc {
    margin-top: 4px;
    margin-right: 30px;
    width: calc(42% - 30px);
    font-weight: 600; }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box__desc {
        font-size: 1.125rem;
        padding-left: 20px; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box__desc {
        font-size: 1rem;
        width: 100%;
        line-height: 1.5;
        padding-left: 0; } }
    @media print, screen and (min-width: 64em) {
      .p-contact-box-2 .p-contact-box__desc {
        font-size: 1.25rem;
        margin-right: 30px; } }
    .browser-is-ie .p-contact-box-2 .p-contact-box__desc {
      font-weight: bold; }
      @media print, screen and (min-width: 64em) {
        .browser-is-ie .p-contact-box-2 .p-contact-box__desc {
          margin-right: 20px;
          width: 340px; } }
    .p-contact-box-2 .p-contact-box__desc .browser-is-edge {
      font-weight: bold; }
  .p-contact-box-2 .p-contact-box-2__inner {
    -webkit-box-flex: 1;
            flex: 1;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center; }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner {
        display: block;
        padding-right: 20px;
        padding-left: 20px;
        -webkit-box-align: baseline;
                align-items: baseline; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner {
        display: block;
        padding-right: 0;
        padding-left: 0;
        margin-right: 0; } }
    .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
      margin-top: 20px;
      white-space: nowrap; }
      @media print, screen and (max-width: 63.9375em) {
        .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
          margin-top: 10px; } }
      @media only screen and (max-width: 47.9375em) {
        .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
          margin-top: 12px; } }
      @media print, screen and (min-width: 64em) {
        .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
          -webkit-box-flex: 1;
                  flex: 1;
          margin-top: 0;
          margin-left: 20px;
          max-width: 230px; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box {
        padding-left: 20px;
        margin-top: 7px; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box {
        margin-right: 30px; } }
    @media print, screen and (min-width: 64em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box {
        margin-right: 30px; } }
    .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: baseline;
              align-items: baseline; }
      @media print, screen and (max-width: 63.9375em) {
        .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
          display: block; } }
      @media only screen and (max-width: 47.9375em) {
        .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
          display: -webkit-box;
          display: flex;
          -webkit-box-align: baseline;
                  align-items: baseline; } }
      @media print, screen and (min-width: 64em) {
        .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
          display: block; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__number {
        font-size: 1.75rem; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__number {
        font-size: 1.25rem; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__hours {
        font-size: 0.875rem;
        margin-left: 10px; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__hours {
        font-size: 0.625rem;
        margin-top: 6px;
        white-space: nowrap; } }
    @media print, screen and (min-width: 64em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__hours {
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 64em) {
      .p-contact-box-2 .p-contact-box-2__inner .c-button {
        padding-right: 24px;
        padding-left: 24px; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .c-button {
        padding-right: 24px;
        padding-left: 24px; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod {
        width: auto; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod::before {
        top: 0.5em; } }
    @media only screen and (max-width: 47.9375em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod::before {
        width: 14px;
        height: 14px;
        top: 0.3em; } }
    @media print, screen and (min-width: 64em) {
      .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod::before {
        top: 0.5em; } }

.p-tel-mod {
  position: relative;
  line-height: 1;
  padding-left: 27px; }
  .p-tel-mod:before {
    content: '';
    position: absolute;
    top: 0.1em;
    left: 0;
    width: 17px;
    height: 17px;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%232d2d2d%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-tel-mod,
    .c-list + .p-tel-mod {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-tel-mod,
    .c-list + .p-tel-mod {
      margin-top: 26px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod + .c-sentence,
    .p-tel-mod + .c-list {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .p-tel-mod + .c-sentence,
    .p-tel-mod + .c-list {
      margin-top: 12px; } }

.p-tel-mod__number {
  display: -webkit-box;
  display: flex;
  font-family: "Prompt", sans-serif;
  font-weight: 500;
  /* -（ハイフン） */ }
  .p-tel-mod__number > span {
    position: relative;
    top: -2px; }
    @media only screen and (max-width: 47.9375em) {
      .p-tel-mod__number > span {
        margin-right: 4px;
        margin-left: 4px; } }
    @media print, screen and (min-width: 48em) {
      .p-tel-mod__number > span {
        margin-right: 1px;
        margin-left: 1px; } }

.p-tel-mod__hours {
  margin-top: 4px;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  letter-spacing: 0;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod__hours {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-tel-mod__hours {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod__hours {
      font-size: 0.625rem; } }
  @media print, screen and (min-width: 75em) {
    .p-tel-mod__hours {
      font-size: 0.75rem; } }

.p-tel-mod.-header {
  margin-top: 20px;
  margin-left: 18px;
  margin-top: 0px;
  font-size: 1.1875rem; }
  @media print, screen and (max-width: 63.9375em) {
    .p-tel-mod.-header {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod.-header {
      padding-left: 18px; } }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-header {
      padding-left: 14px;
      margin-left: 10px; } }
  @media screen and (min-width: 1136px) {
    .p-tel-mod.-header {
      padding-left: 20px;
      margin-left: 18px; } }
  @media print, screen and (min-width: 75em) {
    .p-tel-mod.-header {
      padding-left: 18px; } }
  .p-tel-mod.-header::before {
    top: 2px; }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-header::before {
        width: 10px;
        height: 10px; } }
    @media screen and (min-width: 1136px) {
      .p-tel-mod.-header::before {
        width: 12px;
        height: 12px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-tel-mod.-header .p-tel-mod__number {
      font-size: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-header .p-tel-mod__number {
      font-size: 0.8125rem; } }
  @media screen and (min-width: 1136px) {
    .p-tel-mod.-header .p-tel-mod__number {
      font-size: 1rem; } }
  @media print, screen and (min-width: 100em) {
    .p-tel-mod.-header .p-tel-mod__number {
      font-size: 1.1875rem; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-tel-mod.-header .p-tel-mod__hours {
      font-size: 1.09375rem; } }
  .p-tel-mod.-header:hover a {
    color: #2d2d2d; }

.p-tel-mod.-cta {
  margin-top: 12px; }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-cta {
      padding-left: 38px;
      margin-top: 20px;
      margin-left: 28px; } }
  .p-tel-mod.-cta:before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%23fff%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
    @media print, screen and (max-width: 63.9375em) {
      .p-tel-mod.-cta:before {
        width: 24px;
        height: 24px;
        top: 1em; } }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-cta:before {
        width: 24px;
        height: 24px;
        top: 0.7em; } }
  .p-tel-mod.-cta .p-tel-mod__number {
    font-size: 2.625rem;
    color: #fff; }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-cta .p-tel-mod__number {
        font-size: 2.625rem; } }
  .p-tel-mod.-cta .p-tel-mod__hours {
    color: #fff; }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-cta .p-tel-mod__hours {
        font-size: 1.0625rem; } }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod.-cta.-en:before {
      top: 0.5em;
      width: 20px;
      height: 20px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod.-cta.-en .p-tel-mod__number {
      font-size: 2.25rem; } }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-box {
    padding-left: 34px; } }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-box:before {
    width: 21px;
    height: 21px;
    top: 0.5em; } }

.p-tel-mod.-box .p-tel-mod__number {
  /* -（ハイフン） */ }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-box .p-tel-mod__number {
      font-size: 1.875rem; } }
  .p-tel-mod.-box .p-tel-mod__number > span {
    position: relative;
    top: -4px;
    margin-right: 3px;
    margin-left: 4px; }

.p-tel-mod.-box .p-tel-mod__hours {
  font-size: 0.875rem; }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail {
    margin-left: 25px;
    padding-left: 34px; } }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail:before {
    width: 21px;
    height: 21px;
    top: 0.5em; } }

.p-tel-mod.-detail .p-tel-mod__number {
  /* -（ハイフン） */ }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-detail .p-tel-mod__number {
      font-size: 2rem;
      letter-spacing: -0.5px; } }
  .p-tel-mod.-detail .p-tel-mod__number > span {
    position: relative;
    top: -5px;
    margin-right: 1px;
    margin-left: 1px; }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail .p-tel-mod__hours {
    font-size: 0.75rem; } }

.p-tel-mod.-home {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-home {
      padding-left: 30px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-tel-mod.-home {
      padding-left: 20px; } }
  .p-tel-mod.-home:before {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%232d2d2d%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
    @media print, screen and (max-width: 63.9375em) {
      .p-tel-mod.-home:before {
        width: 12px;
        height: 12px;
        top: auto; } }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-home:before {
        width: 18px;
        height: 18px;
        top: auto; } }
  .p-tel-mod.-home a {
    color: #2d2d2d; }
    @media print, screen and (max-width: 63.9375em) {
      .p-tel-mod.-home a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
      } }
    @media print, screen and (min-width: 100em) {
      .p-tel-mod.-home a {
        display: -webkit-box;
        display: flex;
        -webkit-box-align: center;
                align-items: center;
        flex-wrap: wrap;
        flex-wrap: nowrap; } }
  .p-tel-mod.-home .p-tel-mod__number {
    /* -（ハイフン） */ }
    @media print, screen and (max-width: 63.9375em) {
      .p-tel-mod.-home .p-tel-mod__number {
        font-size: 1.5625rem; } }
    @media only screen and (max-width: 47.9375em) {
      .p-tel-mod.-home .p-tel-mod__number {
        font-size: 1.5625rem; } }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-home .p-tel-mod__number {
        font-size: 2rem; } }
    .p-tel-mod.-home .p-tel-mod__number > span {
      position: relative;
      top: -3px;
      margin-right: 1px;
      margin-left: 1px; }
  .p-tel-mod.-home .p-tel-mod__hours {
    margin-left: 5px; }
    @media print, screen and (max-width: 63.9375em) {
      .p-tel-mod.-home .p-tel-mod__hours {
        font-size: 0.75rem;
        margin-top: 0;
        margin-left: 0; } }
    @media print, screen and (min-width: 64em) {
      .p-tel-mod.-home .p-tel-mod__hours {
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 100em) {
      .p-tel-mod.-home .p-tel-mod__hours {
        white-space: nowrap; } }

.p-tel-mod.-contact {
  margin-top: 8px;
  padding-left: 35px; }
  .p-tel-mod.-contact::before {
    width: 21px;
    height: 21px; }
  .p-tel-mod.-contact > a {
    display: -webkit-box;
    display: flex; }
  .p-tel-mod.-contact .p-tel-mod__number {
    font-size: 2.125rem;
    letter-spacing: -0.04em; }
  .p-tel-mod.-contact .p-tel-mod__hours {
    margin-top: auto;
    margin-bottom: 4px;
    margin-left: 8px;
    font-size: 1rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod.-contact.-en > a {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column; } }
  @media only screen and (max-width: 47.9375em) {
    .p-tel-mod.-contact.-en .p-tel-mod__hours {
      font-size: 0.875rem; } }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-faq {
    padding-left: 25px; } }

@media print, screen and (min-width: 64em) {
  .p-tel-mod.-faq:before {
    width: 14px;
    height: 14px;
    top: 0.25em;
    left: 3px; } }

@media print, screen and (min-width: 48em) {
  .p-tel-mod.-faq > a {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: baseline;
            align-items: baseline; } }

.p-tel-mod.-faq .p-tel-mod__number {
  /* -（ハイフン） */ }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-faq .p-tel-mod__number {
      font-size: 1.4375rem; } }
  .p-tel-mod.-faq .p-tel-mod__number > span {
    position: relative;
    top: -3px;
    margin-right: 1px;
    margin-left: 1px;
    font-size: 1.375rem; }

.p-tel-mod.-faq .p-tel-mod__hours {
  margin-left: -5px; }
  @media print, screen and (min-width: 64em) {
    .p-tel-mod.-faq .p-tel-mod__hours {
      font-size: 0.8125rem;
      margin-left: 8px; } }

.p-gallery {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em; }
  @media only screen and (max-width: 47.9375em) {
    table + .p-gallery,
    .c-image + .p-gallery,
    .p-scrollable + .p-gallery {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .p-gallery,
    .c-image + .p-gallery,
    .p-scrollable + .p-gallery {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .p-gallery {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .p-gallery {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .p-gallery {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .p-gallery {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .p-gallery {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .p-gallery {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .p-gallery {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .p-gallery {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .p-gallery,
    .c-heading-2-1 + .p-gallery {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .p-gallery,
    .c-heading-2-1 + .p-gallery {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .p-gallery {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .p-gallery {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .p-gallery {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .p-gallery {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-gallery,
    .c-list + .p-gallery {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-gallery,
    .c-list + .p-gallery {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .p-gallery {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .p-gallery {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .p-gallery {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .p-gallery {
      margin-top: 14px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-gallery {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery {
      background-color: #2d2d2d; } }

.p-gallery__inner {
  position: relative; }

.p-gallery__main {
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .p-gallery__main {
      background: linear-gradient to bottom, #afcc5b, #fff; } }

.p-gallery__main > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  -webkit-transition: all 1s ease 0s, z-index 0s;
  transition: all 1s ease 0s, z-index 0s;
  opacity: 0;
  z-index: 0; }
  .p-gallery__main > span:nth-child(1) {
    background-image: url("/img/img_visual_2.jpg"); }
  .p-gallery__main > span:nth-child(2) {
    background-image: url("/img/img_visual_6.jpg"); }
  .p-gallery__main > span:nth-child(3) {
    background-image: url("/img/img_visual_1.jpg"); }
  .p-gallery__main > span:nth-child(4) {
    background-image: url("/img/img_visual_3.jpg"); }
  .p-gallery__main > span:nth-child(5) {
    background-image: url("/img/img_visual_4.jpg"); }
  .p-gallery__main > span.-current {
    -webkit-transition: all 1s ease 0s, z-index 0s;
    transition: all 1s ease 0s, z-index 0s;
    opacity: 1;
    z-index: 1; }

.p-gallery__item {
  -webkit-transition: all 1s ease 0s, z-index 0s;
  transition: all 1s ease 0s, z-index 0s;
  opacity: 0;
  z-index: 0; }
  .p-gallery__item:first-of-type {
    position: relative; }
  .p-gallery__item:not(:first-of-type) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
  .p-gallery__item.-current {
    -webkit-transition: all 1s ease 0s, z-index 0s;
    transition: all 1s ease 0s, z-index 0s;
    opacity: 1;
    z-index: 1; }
  .p-gallery__item > img {
    width: 100%; }

.p-gallery__caption {
  width: 100%;
  background-color: #2d2d2d;
  display: block;
  position: absolute;
  bottom: 0;
  color: #fff;
  line-height: 30px;
  padding: 4px 20px 2px 20px;
  box-sizing: border-box;
  font-size: 0.875rem;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery__caption {
      font-size: 0.75rem; } }
  .browser-is-ie .p-gallery__caption {
    padding: 6px 20px 0px 20px; }

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__nav {
    display: -webkit-box;
    display: flex;
    padding-top: 12px; } }

@media print, screen and (min-width: 64em) {
  .p-gallery__nav {
    position: relative;
    z-index: 2;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between;
    margin-top: 50px;
    margin-right: -5px; } }

.p-gallery__nav > li {
  position: relative;
  width: 100px;
  margin-right: 10px;
  cursor: pointer; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__nav > li {
      width: 6px;
      height: 6px;
      margin-right: 4px;
      margin-left: 4px; } }
  .p-gallery__nav > li:before {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: #000;
    opacity: 0.5;
    border: 3px solid transparent;
    -webkit-transition: all 0.1s linear;
    transition: all 0.1s linear; }
    @media print, screen and (max-width: 63.9375em) {
      .p-gallery__nav > li:before {
        opacity: 1;
        background-color: #dddddd;
        border-radius: 50%; } }
  .p-gallery__nav > li > img {
    display: block;
    width: 100%;
    height: auto; }
    @media print, screen and (max-width: 63.9375em) {
      .p-gallery__nav > li > img {
        display: none; } }
  .p-gallery__nav > li:hover:before, .p-gallery__nav > li.-current:before {
    opacity: 1;
    border-color: #009e6f;
    background-color: transparent; }

@media print, screen and (min-width: 64em) {
  .p-gallery__nav.-start {
    -webkit-box-pack: start;
            justify-content: flex-start; } }

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__panorama {
    display: none; } }
/*
@media print, screen and (min-width: 64em) {
  .p-gallery__panorama {
    position: absolute;
    bottom: 100px;
    right: 20px;
    z-index: 2;
    width: 320px; } }
*/
.p-gallery__panorama-inner {
  background-color: #2d2d2d;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-transition: background-color 0.7s ease;
  transition: background-color 0.7s ease; }
  .p-gallery__panorama-inner:hover {
    background-color: #45bf7e;
    -webkit-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease; }

.p-gallery__panorama-img {
  width: 107px;
  height: 70px;
  background-color: red;
  margin-right: 17px;
  position: relative;
  overflow: hidden; }
  .p-gallery__panorama-img > img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: 50% 50%;
       object-position: 50% 50%; }
  .p-gallery__panorama-img::before {
    content: '';
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2252.263%22%20height%3D%2254.028%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20stroke-width%3D%222%22%3E%3Cg%3E%3Cpath%20d%3D%22M13.535%2025.45a3.313%203.313%200%20013.313-3.312h0a3.313%203.313%200%20010%206.625h0a3.312%203.312%200%20013.312%203.312v-.191a3.313%203.313%200%2001-3.312%203.313h0a3.313%203.313%200%2001-3.313-3.313%22%2F%3E%3Cpath%20%20d%3D%22M29.747%2025.45a3.313%203.313%200%2000-3.312-3.312h0a3.313%203.313%200%2000-3.312%203.312v6.434a3.313%203.313%200%20003.312%203.313h0a3.313%203.313%200%20003.312-3.313v-.248a3.313%203.313%200%2000-3.312-3.312h0a3.313%203.313%200%2000-3.312%203.312%22%2F%3E%3Cpath%20d%3D%22M39.335%2031.884a3.313%203.313%200%2001-3.313%203.313h0a3.312%203.312%200%2001-3.312-3.313V25.45a3.312%203.312%200%20013.312-3.312h0a3.313%203.313%200%20013.313%203.312z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M42.127%2022.138v1.879%22%2F%3E%3C%2Fg%3E%3Cg%20stroke-width%3D%221.5%22%3E%3Cpath%20d%3D%22M2.299%2027.376A24.616%2024.616%200%200133.246%204.795%22%2F%3E%3Cpath%20d%3D%22M39.906%2049.413A24.6%2024.6%200%20013.14%2034.9%22%2F%3E%3Cpath%20d%3D%22M39.904%207.654a24.614%2024.614%200%20014.362%2038.272%22%2F%3E%3Cpath%20d%3D%22M30.857%201.035l2.39%203.76-4.111%202.31%22%2F%3E%3Cpath%20d%3D%22M48.72%2045.801l-4.454.12.127-4.711%22%2F%3E%3Cpath%20d%3D%22M1.017%2038.819l2.123-3.917%204.016%202.465%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
    width: 50px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 10; }
  .p-gallery__panorama-img::after {
    content: '';
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: #000;
    opacity: 0.3;
    border: 3px solid transparent;
    -webkit-transition: all 0.1s linear;
    transition: all 0.1s linear; }

.p-gallery__panorama-text .c-blank {
  margin-left: 6px; }
  .p-gallery__panorama-text .c-blank::after {
    width: 7px;
    height: 6px;
    right: 8px;
    top: 3px; }
  .p-gallery__panorama-text .c-blank::before {
    width: 7px;
    height: 6px;
    bottom: 1px;
    left: -3px; }

.p-gallery__panorama-link {
  display: block; }

.p-gallery__panorama-text-top,
.p-gallery__panorama-text-bottom {
  color: #fff;
  display: block;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery__panorama-text-top,
    .p-gallery__panorama-text-bottom {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-gallery__panorama-text-top,
    .p-gallery__panorama-text-bottom {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-gallery__panorama-text-top {
  font-size: 0.6875rem;
  padding-top: 8px; }

.p-gallery__panorama-text-bottom {
  padding-bottom: 6px;
  line-height: 1.4;
  font-size: 0.9375rem; }
  .p-gallery__panorama-text-bottom span {
    font-size: 1.25rem; }
  .p-gallery__panorama-text-bottom .c-blank::before, .p-gallery__panorama-text-bottom .c-blank::after {
    -webkit-transition: background-color 0.4s ease, border-color 0.2s ease;
    transition: background-color 0.4s ease, border-color 0.2s ease; }
  .p-gallery__panorama-inner:hover .p-gallery__panorama-text-bottom .c-blank::before {
    border-color: #2d2d2d;
    -webkit-transition: border-color 0.2s ease;
    transition: border-color 0.2s ease; }
  .p-gallery__panorama-inner:hover .p-gallery__panorama-text-bottom .c-blank::after {
    background-color: #2d2d2d;
    -webkit-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease; }
  .p-gallery__panorama-text-bottom .p-gallery__panorama-text-bottom__desc--en {
    font-size: 0.75rem;
    display: block; }

.p-gallery__panorama-sp {
  position: absolute;
  bottom: -20px;
  right: 20px; }

.p-gallery__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  position: relative;
  z-index: 50000; }
  @media print, screen and (min-width: 64em) {
    .p-gallery__title {
      color: #fff;
      font-size: 2rem;
      line-height: 1.4;
      margin-bottom: 9px; } }
  @media print, screen and (min-width: 1420px) {
    .p-gallery__title {
      font-size: 34px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__title {
      position: relative;
      color: #2d2d2d;
      line-height: 1.5;
      font-size: 1.25rem;
      margin-top: 10px;
      padding-right: 4.6875%;
      padding-left: 4.6875%; } }
  .p-gallery__title span {
    display: block;
    line-height: 1.7;
    color: #fff; }
    @media print, screen and (min-width: 64em) {
      .p-gallery__title span + span {
        margin-top: -8px; } }
  .p-gallery__title .u-show-XS {
    display: none; }
    @media only screen and (max-width: 47.9375em) {
      .p-gallery__title .u-show-XS {
        display: block; } }
  .p-gallery__title .u-show-S {
    display: none; }
    @media print, screen and (min-width: 48em) {
      .p-gallery__title .u-show-S {
        display: block; } }
  .p-gallery__title .-en {
    font-size: 1.125rem;
    margin-top: 12px; }
  .p-gallery__title .-en_sp {
    font-size: 1.25rem; }

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__title-block {
    margin-top: 24px; } }

@media print, screen and (min-width: 64em) {
  .p-gallery__title-block {
    position: absolute;
    bottom: 148px;
    left: 100px; } }

@media print, screen and (min-width: 1200px) {
  .p-gallery__title-block {
    bottom: 148px; } }

.p-gallery__info-block {
  line-height: 1;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 25px;
  padding-right: 340px;
  -webkit-box-align: end;
          align-items: flex-end; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__info-block {
      display: block;
      position: relative;
      margin-top: 24px;
      margin-bottom: 28px;
      padding-right: 0; } }
  .p-gallery__info-block.-en {
    display: block; }

.p-gallery__info {
  display: block;
  position: relative;
  z-index: 50000;
  color: #fff;
  font-weight: bold;
  font-size: 1.125rem; }
  @media print, screen and (min-width: 1420px) {
    .p-gallery__info {
      font-size: 1.5rem; }
      .browser-is-ie .p-gallery__info {
        font-size: 1.125rem; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__info {
      color: #2d2d2d;
      padding-right: 4.6875%;
      padding-left: 4.6875%;
      font-size: 1rem; } }
  .p-gallery__info span {
    display: inline-block;
    font-size: 0.75rem;
    color: #fff;
    margin-right: 5px;
    padding-top: 5px;
    padding-right: 14px;
    padding-bottom: 4px;
    padding-left: 14px;
    background-color: #009e6f;
    position: relative;
    top: -2px;
    box-sizing: border-box; }
    @media print, screen and (max-width: 63.9375em) {
      .p-gallery__info span {
        font-size: 0.625rem;
        padding-right: 4px;
        padding-left: 4px;
        min-width: 50px;
        text-align: center; } }
    .p-gallery__info span.-access {
      height: 20px; }
      @media only screen and (max-width: 47.9375em) {
        .p-gallery__info span.-access {
          width: 98px; } }
    .p-gallery__info span.-en {
      width: 104px;
      text-align: center;
      white-space: nowrap;
      box-sizing: border-box;
      padding-left: 8px;
      padding-right: 8px; }
  @media screen and (max-width: 1150px) {
    .p-gallery__info + .p-gallery__info {
      margin-top: 8px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__info + .p-gallery__info {
      margin-top: 10px; } }
  @media print, screen and (min-width: 64em) {
    .p-gallery__info:first-child {
      margin-right: 40px; } }
  .p-gallery__info .p-gallery__info__flex {
    display: -webkit-box;
    display: flex; }
  .p-gallery__info.-en-m_top {
    margin-top: 8px; }
    @media only screen and (max-width: 47.9375em) {
      .p-gallery__info.-en-m_top {
        margin-top: 12px; } }

.p-gallery__info-text {
  display: inline-block;
  line-height: 1;
  position: relative;
  color: #fff; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__info-text {
      font-size: 0.875rem; } }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery__info-text.-en {
      line-height: 1.3; } }
  .p-gallery__info-text.-en .-en-br {
    display: none; }
    @media screen and (min-width: 1025px) and (max-width: 1400) {
      .browser-is-ie .p-gallery__info-text.-en .-en-br {
        display: block; } }
  .browser-is-ie .p-gallery__info-text .-en-br {
    display: none; }
    @media screen and (min-width: 1025px) and (max-width: 1400px) {
      .browser-is-ie .p-gallery__info-text .-en-br {
        display: block; } }

.p-gallery__panel {
  position: absolute;
  z-index: 50000;
  bottom: 0;
  left: 0;
  background-color: #fff;
  padding-top: 25px;
  padding-right: 40px;
  padding-left: 100px;
  box-sizing: border-box; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__panel {
      position: relative;
      bottom: 0;
      right: 0;
      padding-top: 0px;
      padding-right: 4.6875%;
      padding-left: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-gallery__panel {
      padding-right: 40px;
      box-sizing: border-box; } }
  @media print, screen and (min-width: 1420px) {
    .p-gallery__panel {
      max-width: 65%; } }
  .browser-is-ie .p-gallery__panel {
    box-sizing: border-box; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__panel.u-fade2 {
      opacity: 0;
      visibility: hidden; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__panel.is-active {
      visibility: visible; } }
  @media print, screen and (min-width: 64em) {
    .p-gallery__panel.-en {
      max-width: 800px; } }
  @media print, screen and (min-width: 1420px) {
    .p-gallery__panel.-en {
      max-width: 65%; } }

.p-gallery__panel-inner {
  display: -webkit-box;
  display: flex; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__panel-inner {
      display: block; } }
  @media print, screen and (max-width: 1420px) {
    .p-gallery__panel-inner {
      display: block; } }

.p-gallery__heading {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 0.8125rem;
  line-height: 1.6;
  margin-right: 30px;
  color: #2d2d2d; }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery__heading {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-gallery__heading {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__heading {
      border-top: 1px solid #212121;
      padding-top: 28px;
      margin-right: 0;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 64em) {
    .p-gallery__heading {
      margin-right: 10px; } }
  @media print, screen and (min-width: 1420px) {
    .p-gallery__heading {
      margin-right: 14px;
      font-size: 1rem;
      margin-right: 30px;
      padding-top: 15px; } }
  @media print, screen and (min-width: 1024px) and (max-width: 1420px) {
    .p-gallery__heading {
      position: absolute;
      top: 13px; } }
  .p-gallery__heading > span {
    color: #009e6f; }
  .p-gallery__heading.-en {
    font-family: "Prompt", sans-serif; }

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__action {
    margin-top: 3px; } }

@media print, screen and (min-width: 64em) {
  .p-gallery__action {
    display: -webkit-box;
    display: flex;
    -webkit-box-flex: 1;
            flex-grow: 1; } }

@media print, screen and (max-width: 1420px) {
  .p-gallery__action {
    -webkit-box-align: end;
            align-items: flex-end; } }

@media print, screen and (min-width: 100em) {
  .p-gallery__action {
    flex-shrink: 1; } }

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__action .c-button {
    padding-top: 10px;
    padding-bottom: 11px;
    margin-top: 15px; } }

@media print, screen and (min-width: 64em) {
  .p-gallery__action .c-button {
    box-sizing: border-box;
    margin-left: 40px;
    width: auto;
    padding-top: 12px;
    padding-right: 20px;
    padding-left: 19px;
    padding-bottom: 10px; }
    .browser-is-ie .p-gallery__action .c-button {
      padding-top: 10px;
      padding-bottom: 6px; } }

@media print, screen and (min-width: 1024px) and (max-width: 1420px) {
  .p-gallery__action .c-button {
    margin-bottom: 6px; } }

@media print, screen and (min-width: 75em) {
  .p-gallery__action .c-button {
    margin-left: 40px; } }

@media print, screen and (min-width: 87.5em) {
  .p-gallery__action .c-button {
    margin-left: 40px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__action .c-button > span {
    font-size: 1rem;
    color: #fff; } }

@media print, screen and (min-width: 64em) {
  .p-gallery__action.-en .c-button {
    margin-left: 80px; } }

@media print, screen and (min-width: 1420px) {
  .p-gallery__action.-en .c-button {
    margin-left: 40px; } }

.p-gallery.-top {
  position: relative;
  z-index: 1; }
  .p-gallery.-top .p-gallery__main {
    padding-top: 0; }
    @media only screen and (max-width: 47.9375em) {
      .p-gallery.-top .p-gallery__main {
        height: 50vw; } }
    @media print, screen and (min-width: 48em) {
      .p-gallery.-top .p-gallery__main {
        height: 50vh; } }
    @media print, screen and (min-width: 64em) {
      .p-gallery.-top .p-gallery__main {
        height: 88vh;
        min-height: 450px;
        max-height: 700px;
        box-sizing: border-box; } }
    .p-gallery.-top .p-gallery__main > span {
      background-position: 50% 50%; }
      .p-gallery.-top .p-gallery__main > span::after {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: -1;
        bottom: 0;
        left: 0;
        opacity: 0.9;
        background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#000));
        background: linear-gradient(to bottom, transparent, #000); }
        @media print, screen and (max-width: 63.9375em) {
          .p-gallery.-top .p-gallery__main > span::after {
            display: none; } }
        @media print, screen and (min-width: 64em) {
          .p-gallery.-top .p-gallery__main > span::after {
            height: 320px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery.-top .p-gallery__nav {
      margin-top: 0;
      padding-left: 4.6875%;
      padding-top: 24px; } }
  @media print, screen and (min-width: 64em) {
    .p-gallery.-top .p-gallery__nav {
      position: absolute;
      margin-top: -22px;
      bottom: 20px;
      right: 20px;
      z-index: 2; } }
  .p-gallery.-top .p-gallery__nav > li {
    position: relative;
    margin-right: 5px;
    cursor: pointer;
    overflow: hidden; }
    @media print, screen and (min-width: 64em) {
      .p-gallery.-top .p-gallery__nav > li {
        width: 60px;
        height: 60px; } }
    .p-gallery.-top .p-gallery__nav > li > img {
      -o-object-fit: cover;
         object-fit: cover;
      -o-object-position: 50% 50%;
         object-position: 50% 50%;
      width: auto; }

/* SPでのNEXT / PREVボタン */
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__trigger {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .p-gallery__trigger {
    display: none; } }

.p-gallery__trigger li {
  width: 24px;
  height: 36px; }

.p-gallery__trigger button {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #000000;
  border: none;
  cursor: pointer; }
  .p-gallery__trigger button:before, .p-gallery__trigger button:after {
    display: block;
    position: absolute;
    top: 50%;
    width: 10px;
    height: 2px;
    background-color: #fff;
    border-radius: 1px;
    content: ''; }
  .p-gallery__trigger button.-left:before, .p-gallery__trigger button.-left:after {
    left: 45%; }
  .p-gallery__trigger button.-left:before {
    -webkit-transform: translate(-50%, calc(-50% - 3px)) rotate(-45deg);
            transform: translate(-50%, calc(-50% - 3px)) rotate(-45deg); }
  .p-gallery__trigger button.-left:after {
    -webkit-transform: translate(-50%, calc(-50% + 3px)) rotate(45deg);
            transform: translate(-50%, calc(-50% + 3px)) rotate(45deg); }
  .p-gallery__trigger button.-right:before, .p-gallery__trigger button.-right:after {
    left: 55%; }
  .p-gallery__trigger button.-right:before {
    -webkit-transform: translate(-50%, calc(-50% - 3px)) rotate(-135deg);
            transform: translate(-50%, calc(-50% - 3px)) rotate(-135deg); }
  .p-gallery__trigger button.-right:after {
    -webkit-transform: translate(-50%, calc(-50% + 3px)) rotate(135deg);
            transform: translate(-50%, calc(-50% + 3px)) rotate(135deg); }

.p-gallery.-room {
  background-color: transparent; }
  @media print, screen and (min-width: 64em) {
    .p-gallery.-room .p-gallery__nav {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-gallery.-room {
      position: relative; }
      .p-gallery.-room .c-sentence.-room {
        position: absolute;
        bottom: -14px;
        right: 0; }
        .p-gallery.-room .c-sentence.-room .p-floor-map__nav-link {
          display: -webkit-box;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: reverse;
                  flex-direction: row-reverse;
          -webkit-box-align: center;
                  align-items: center; }
          .p-gallery.-room .c-sentence.-room .p-floor-map__nav-link span {
            font-size: 0.875rem;
            font-weight: normal; }
        .p-gallery.-room .c-sentence.-room .p-floor-map__nav-panorama {
          margin-left: 4px; }
          .p-gallery.-room .c-sentence.-room .p-floor-map__nav-panorama::before {
            top: 2px;
            width: 19px;
            height: 19px; } }

.p-gallery__banner {
  z-index: 50000;
  display: block; }
  @media print, screen and (max-width: 63.9375em) {
    .p-gallery__banner {
      width: 300px;
      position: relative;
      padding-left: 4.6875%;
      padding-right: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-gallery__banner {
      width: 400px;
      position: absolute;
      top: -73px; } }
  @media print, screen and (min-width: 75em) {
    .p-gallery__banner {
      width: 440px; } }
  .p-gallery__banner > img {
    display: block;
    width: 100%; }

.p-vr-link {
  display: inline-block;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-vr-link {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-vr-link {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-vr-link > i {
    display: inline-block;
    vertical-align: middle;
    width: 27px;
    height: 27px;
    margin-top: -4px;
    margin-right: 8px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228.035%22%20height%3D%2228.964%22%3E\a%20%20%20%20%3Cg%20fill%3D%22none%22%20stroke%3D%22%230b1f40%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.5%22%20transform%3D%22translate%281.017%201.035%29%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M257.168%2063.369a1.723%201.723%200%200%201%201.723-1.723%201.723%201.723%200%200%201%200%203.446%201.723%201.723%200%200%201%201.723%201.723v-.1a1.723%201.723%200%200%201-1.723%201.723%201.723%201.723%200%200%201-1.723-1.723%22%20transform%3D%22translate%28-250.657%20-50.669%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M272.739%2063.369a1.723%201.723%200%200%200-1.723-1.723%201.723%201.723%200%200%200-1.723%201.723v3.347a1.723%201.723%200%200%200%201.723%201.723%201.723%201.723%200%200%200%201.723-1.723v-.129a1.723%201.723%200%200%200-1.723-1.723%201.723%201.723%200%200%200-1.723%201.723%22%20transform%3D%22translate%28-257.794%20-50.669%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M284.864%2066.716a1.723%201.723%200%200%201-1.723%201.723%201.723%201.723%200%200%201-1.723-1.723v-3.347a1.723%201.723%200%200%201%201.723-1.723%201.723%201.723%200%200%201%201.723%201.723z%22%20transform%3D%22translate%28-264.932%20-50.669%29%22%2F%3E\a%20%20%20%20%20%20%3Cline%20y2%3D%22.977%22%20data-name%3D%22線%201%22%20transform%3D%22translate%2821.385%2010.977%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M242.959%2050.816a12.8%2012.8%200%200%201%2016.1-11.746%22%20transform%3D%22translate%28-242.292%20-37.114%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M263.147%2085.338a12.8%2012.8%200%200%201-19.125-7.549%22%20transform%3D%22translate%28-242.918%20-60.172%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M290.517%2043.328a12.8%2012.8%200%200%201%202.269%2019.906%22%20%20transform%3D%22translate%28-270.288%20-39.885%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M277.8%2034.957l1.243%201.956-2.137%201.2%22%20transform%3D%22translate%28-262.274%20-34.957%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M298.351%2088.156l-2.317.063.066-2.45%22%20transform%3D%22translate%28-273.536%20-64.869%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M241.337%2079.827l1.1-2.038%202.089%201.282%22%20transform%3D%22translate%28-241.337%20-60.172%29%22%2F%3E\a%20%20%20%20%3C%2Fg%3E\a%20%20%3C%2Fsvg%3E"); }

.p-price-table tr:first-child td {
  padding-top: 0; }

.p-price-table td {
  padding-top: 9px; }
  .p-price-table td:nth-child(2) {
    padding-left: 9px;
    text-align: right; }

@media print, screen and (min-width: 64em) {
  .p-price-table.-td_w_30 tr:first-child td {
    padding-top: 0;
    width: 30px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-price-table.-sp_2row td {
    display: block; } }

@media print, screen and (max-width: 63.9375em) {
  .p-price-table.-sp_2row td:nth-child(2) {
    padding-left: 0px;
    text-align: left; } }

.p-benefit {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap; }
  @media print, screen and (min-width: 48em) {
    .p-benefit {
      margin-top: 18px;
      margin-left: -30px; } }

.p-benefit__item {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-benefit__item {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-benefit__item {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-benefit__item {
      width: 100%;
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .p-benefit__item {
      margin-left: 30px;
      margin-top: 12px; } }
  .p-benefit__item:before {
    display: inline-block;
    content: '';
    margin-right: 9px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 0 0; }
    @media only screen and (max-width: 47.9375em) {
      .p-benefit__item:before {
        width: 30px; } }
  .p-benefit__item.-audio:before {
    height: 28px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2227.958%22%20height%3D%2228.779%22%3E\a%20%20%20%20%3Cpath%20d%3D%22M-1083.956%203749.031v-12.673a4.114%204.114%200%200%201-3.3-4.027%204.113%204.113%200%200%201%203.3-4.026v-6.436a.806.806%200%200%201%20.809-.808.805.805%200%200%201%20.808.808v6.436a4.1%204.1%200%200%201%203.3%204.02%204.113%204.113%200%200%201-3.3%204.026v12.679a.805.805%200%200%201-.808.809.806.806%200%200%201-.809-.808zm-1.678-16.7a2.488%202.488%200%200%200%202.487%202.486%202.488%202.488%200%200%200%202.486-2.486%202.488%202.488%200%200%200-2.486-2.486%202.488%202.488%200%200%200-2.487%202.486zm-8.167%2016.693v-5.884a4.114%204.114%200%200%201-3.295-4.027%204.114%204.114%200%200%201%203.295-4.026v-13.219a.806.806%200%200%201%20.809-.808.805.805%200%200%201%20.808.808v13.219a4.112%204.112%200%200%201%203.3%204.026%204.114%204.114%200%200%201-3.3%204.027v5.884a.805.805%200%200%201-.808.809.806.806%200%200%201-.808-.809zm-1.677-9.91a2.489%202.489%200%200%200%202.486%202.487%202.489%202.489%200%200%200%202.486-2.487%202.488%202.488%200%200%200-2.486-2.486%202.488%202.488%200%200%200-2.485%202.486zm-8.227%209.91v-12.666a4.114%204.114%200%200%201-3.3-4.027%204.113%204.113%200%200%201%203.3-4.026v-6.436a.805.805%200%200%201%20.808-.808.806.806%200%200%201%20.809.808v6.436a4.107%204.107%200%200%201%203.3%204.02%204.113%204.113%200%200%201-3.3%204.026v12.673a.806.806%200%200%201-.809.809.805.805%200%200%201-.803-.809zm-1.678-16.693a2.488%202.488%200%200%200%202.486%202.486%202.492%202.492%200%200%200%202.487-2.486%202.488%202.488%200%200%200-2.487-2.486%202.488%202.488%200%200%200-2.485%202.486z%22%20transform%3D%22translate%281107%20-3721.061%29%22%2F%3E\a%20%20%3C%2Fsvg%3E"); }
    @media print, screen and (min-width: 48em) {
      .p-benefit__item.-audio:before {
        width: 29px; } }
  .p-benefit__item.-wifi:before {
    height: 19px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2227.309%22%20height%3D%2219.691%22%3E\a%20%20%20%20%3Cpath%20stroke%3D%22%23000%22%20stroke-width%3D%22.8%22%20d%3D%22M10.492%2016.124a3.166%203.166%200%200%201%203.162-3.163%203.167%203.167%200%200%201%203.163%203.163%203.167%203.167%200%200%201-3.163%203.163%203.167%203.167%200%200%201-3.162-3.163zm.965%200a2.2%202.2%200%200%200%202.2%202.2%202.2%202.2%200%200%200%202.2-2.2%202.2%202.2%200%200%200-2.2-2.2%202.2%202.2%200%200%200-2.199%202.2zm-5.239-3.946a.481.481%200%200%201%200-.682%2010.446%2010.446%200%200%201%207.436-3.076%2010.446%2010.446%200%200%201%207.437%203.076.482.482%200%200%201%200%20.682.482.482%200%200%201-.341.142.482.482%200%200%201-.341-.142%209.491%209.491%200%200%200-6.755-2.793A9.491%209.491%200%200%200%206.9%2012.178a.48.48%200%200%201-.341.142.48.48%200%200%201-.341-.139zM3.379%209.34a.484.484%200%200%201%200-.683%2014.549%2014.549%200%200%201%2020.55%200%20.484.484%200%200%201%200%20.683.483.483%200%200%201-.683%200%2013.579%2013.579%200%200%200-19.184%200%20.484.484%200%200%201-.341.142.486.486%200%200%201-.341-.139zM.542%206.502a.481.481%200%200%201%200-.682A18.416%2018.416%200%200%201%2013.654.397%2018.419%2018.419%200%200%201%2026.767%205.82a.482.482%200%200%201%200%20.682.484.484%200%200%201-.341.142.482.482%200%200%201-.341-.142%2017.46%2017.46%200%200%200-12.431-5.14%2017.459%2017.459%200%200%200-12.43%205.14.48.48%200%200%201-.341.142.48.48%200%200%201-.341-.139z%22%20%2F%3E\a%20%20%3C%2Fsvg%3E"); }
    @media print, screen and (min-width: 48em) {
      .p-benefit__item.-wifi:before {
        width: 27px; } }
  .p-benefit__item.-chair:before {
    height: 29px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2238.187%22%20height%3D%2228.779%22%3E\a%20%20%20%20%3Cpath%20d%3D%22M-1418.654%203749.839a1.465%201.465%200%200%201-1.168-.574%201.466%201.466%200%200%201-.262-1.275l.182-.7a2.778%202.778%200%200%201%202.688-2.079h.478v-14.045h-7.346a1.8%201.8%200%200%201-1.405-.668%201.8%201.8%200%200%201-.371-1.51%203.5%203.5%200%200%201%203.415-2.785h1.448a.771.771%200%200%201%20.772.771.771.771%200%200%201-.772.772h-1.448a1.95%201.95%200%200%200-1.9%201.552.269.269%200%200%200%20.055.226.27.27%200%200%200%20.21.1h20.076a.268.268%200%200%200%20.21-.1.269.269%200%200%200%20.056-.226%201.951%201.951%200%200%200-1.9-1.552h-11.732a.772.772%200%200%201-.772-.772.771.771%200%200%201%20.772-.771h11.732a3.5%203.5%200%200%201%203.415%202.785%201.806%201.806%200%200%201-.371%201.51%201.807%201.807%200%200%201-1.406.668h-7.345v14.045h.477a2.779%202.779%200%200%201%202.689%202.079l.181.7a1.469%201.469%200%200%201-.261%201.275%201.467%201.467%200%200%201-1.169.574zm.246-2.157l-.16.614h9.049l-.159-.614a1.235%201.235%200%200%200-1.2-.923h-6.34a1.234%201.234%200%200%200-1.19.923zm3.216-2.467h2.3v-14.045h-2.3zm-8.691%204.078l-.9-2.927h-10.582l-.9%202.927a.771.771%200%200%201-.737.546.787.787%200%200%201-.226-.034.771.771%200%200%201-.512-.964l2.521-8.236a5.656%205.656%200%200%201-2.284-1.275%205.659%205.659%200%200%201-1.819-3.687l-1.054-12.006a2.381%202.381%200%200%201%20.614-1.809%202.378%202.378%200%200%201%201.749-.769h.7a3.512%203.512%200%200%201%203.518%203.222l.76%208.669a1.47%201.47%200%200%200%201.472%201.349h6.586a3.832%203.832%200%200%201%203.828%203.827v.38a2.315%202.315%200%200%201-2.312%202.312h-1.412l1.39%204.54v.01l1.063%203.471a.771.771%200%200%201-.512.964.786.786%200%200%201-.226.034.77.77%200%200%201-.725-.544zm-11.006-4.47h9.637l-1.225-4h-7.186zm-3.729-21.951a.818.818%200%200%200-.214.63l1.053%2012.006a4.1%204.1%200%200%200%203.626%203.739%204.163%204.163%200%200%200%20.487.029h10.212a.77.77%200%200%200%20.769-.769v-.38a2.287%202.287%200%200%200-2.285-2.285h-6.586a3%203%200%200%201-3.009-2.756l-.76-8.669a1.979%201.979%200%200%200-1.981-1.815h-.7a.819.819%200%200%200-.612.27z%22%20transform%3D%22translate%281440.378%20-3721.061%29%22%2F%3E\a%20%20%3C%2Fsvg%3E"); }
    @media print, screen and (min-width: 48em) {
      .p-benefit__item.-chair:before {
        width: 38px; } }

@media only screen and (max-width: 47.9375em) {
  .p-faq-module + .p-faq-module {
    margin-top: 25px; } }

@media print, screen and (min-width: 48em) {
  .p-faq-module + .p-faq-module {
    margin-top: 47px; } }

.p-faq-module__q {
  position: relative;
  padding-left: 40px;
  font-weight: bold;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq-module__q {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-faq-module__q {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-faq-module__q {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-faq-module__q {
      font-size: 1.5rem; } }
  .p-faq-module__q:before {
    position: absolute;
    left: 0;
    content: 'Q.';
    font-size: 1.875rem;
    line-height: 1;
    font-weight: 500;
    font-family: futura-pt, sans-serif; }
    @media only screen and (max-width: 47.9375em) {
      .p-faq-module__q:before {
        top: 0; } }
    @media print, screen and (min-width: 48em) {
      .p-faq-module__q:before {
        top: 0.2em; } }

.p-faq-module__a {
  position: relative;
  line-height: 1.75;
  padding-left: 40px; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq-module__a {
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq-module__a {
      margin-top: 10px; } }
  .p-faq-module__a:before {
    position: absolute;
    left: 3px;
    content: 'A.';
    font-size: 1.875rem;
    line-height: 1;
    font-weight: 500;
    color: #009e6f;
    font-family: futura-pt, sans-serif; }
    @media only screen and (max-width: 47.9375em) {
      .p-faq-module__a:before {
        top: -0.2em; } }
    @media print, screen and (min-width: 48em) {
      .p-faq-module__a:before {
        top: -0.1em; } }
  @media only screen and (max-width: 47.9375em) {
    .p-faq-module__a p + * {
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq-module__a p + * {
      margin-top: 20px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-faq-module__a br {
      display: none; } }

.p-faq-module__link {
  position: relative;
  font-weight: bold;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  padding-left: 15px;
  display: inline-block; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq-module__link {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-faq-module__link {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-faq-module__link > svg {
    position: absolute;
    top: 0.45em;
    left: 0;
    width: 5px;
    height: 10px; }

.p-faq-module__a__sub {
  position: relative;
  line-height: 1.75;
  padding-left: 40px; }

.p-term__title {
  position: relative;
  padding-left: 25px;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.125rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-term__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-term__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-term__title:before {
    content: '';
    position: absolute;
    top: 0.45em;
    left: 0;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215.896%22%20height%3D%2215.896%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M17.9%2010.391L9.5%202H2v7.505l8.387%208.395zM4.671%205.818a1.145%201.145%200%201%201%201.145-1.146%201.143%201.143%200%200%201-1.145%201.146z%22%20%20transform%3D%22translate%28-2%20-2%29%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E"); }

.p-term__list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 5px;
  margin-left: -10px; }
  .p-term__list > .c-badge {
    margin-top: 10px;
    margin-left: 10px; }

.p-term.-has_border {
  padding-bottom: 60px;
  border-bottom: 1px solid #c2cfc9; }

.p-step {
  display: -webkit-box;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .p-step {
      display: none; } }
  .p-step.-row .p-step__number {
    padding-right: 24px;
    padding-left: 24px;
    text-align: left; }

.p-step__item {
  -webkit-box-flex: 1;
          flex: 1; }
  .p-step__item + .p-step__item .p-step__number {
    position: relative; }
    .p-step__item + .p-step__item .p-step__number:before {
      content: '';
      position: absolute;
      top: -1px;
      left: -0.25em;
      bottom: -1px;
      width: 100%;
      background-size: auto 100%;
      background-repeat: no-repeat;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212.313%22%20height%3D%2251.593%22%20viewBox%3D%220%200%2012.313%2051.593%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M0%2C0%2C25.421%2C10.308%2C50.842%2C0%22%20transform%3D%22translate%280.927%2051.218%29%20rotate%28-90%29%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
  .p-step__item + .p-step__item .p-step__name {
    border-left: 1px solid #c2cfc9; }

.p-step__link {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column; }

.p-step__number {
  background-color: #2d2d2d;
  padding-top: 10px;
  padding-bottom: 10px;
  color: #009e6f;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  text-align: center; }
  .p-step__number > span {
    display: block;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold;
    color: #fff; }
    @media only screen and (max-width: 47.9375em) {
      .p-step__number > span {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-step__number > span {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-step__name {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  height: 132px;
  margin-top: 15px;
  box-sizing: border-box;
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.25; }
  @media only screen and (max-width: 47.9375em) {
    .p-step__name {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-step__name {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-step-detail__item {
  margin-top: 64px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-step-detail__item {
      margin-top: 35px; } }
  @media print, screen and (min-width: 64em) {
    .p-step-detail__item {
      display: -webkit-box;
      display: flex; } }
  .p-step-detail__item:last-child .p-step-detail__number:after {
    content: none; }

.p-step-detail__number {
  position: relative;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  font-size: 1.75rem;
  color: #009e6f;
  line-height: 1.25; }
  @media print, screen and (min-width: 64em) {
    .p-step-detail__number {
      width: 148px;
      top: -2px; } }
  @media print, screen and (min-width: 64em) {
    .p-step-detail__number:before {
      position: absolute;
      top: 0.45em;
      left: 94px;
      content: '';
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background-color: #009e6f;
      z-index: 1; } }
  @media print, screen and (min-width: 64em) {
    .p-step-detail__number:after {
      content: '';
      position: absolute;
      top: calc(0.45em + 5px);
      left: 98px;
      width: 2px;
      height: calc(100% + 64px);
      background-color: #c2cfc9; } }

.p-step-detail__content {
  -webkit-box-flex: 1;
          flex: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-step-detail__content {
      margin-top: 3px; } }

.p-step-detail__important {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-step-detail__important {
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-step-detail__important {
      font-size: 1.125rem; } }

.p-example__name {
  margin-top: 12px;
  font-weight: bold;
  font-size: 1.75rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-example__name {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-example__name {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-example__badge {
  margin-top: 6px; }
  .p-example__badge .c-badge + .c-badge {
    margin-left: 8px; }

.p-example__lead {
  margin-top: 50px; }

.p-example__visual {
  margin-top: 66px; }

.p-example__data {
  margin-top: 50px; }

.p-example__sub {
  font-size: 1.125rem;
  color: #009e6f;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-example__sub {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-example__sub {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-example-table {
  margin-top: 7px; }
  .p-example-table th {
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .p-example-table th {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-example-table th {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-example-table td {
    padding-left: 15px; }
  .p-example-table tr + tr th,
  .p-example-table tr + tr td {
    padding-top: 2px; }

@media only screen and (max-width: 47.9375em) {
  .p-location {
    padding-top: 13px; } }

@media print, screen and (min-width: 48em) {
  .p-location {
    padding-top: 28px; } }

@media only screen and (max-width: 47.9375em) {
  .p-location__name {
    font-size: 1rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-other-service {
    margin-top: 10px;
    padding-top: 7.25px;
    padding-bottom: 5px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-other-service {
    margin-top: 30px;
    padding-top: 15px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 64em) {
  .p-other-service {
    padding-top: 20px;
    padding-bottom: 14px; } }

.p-other-service__thumb {
  width: 30px;
  height: 34px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center; }
  .p-other-service__thumb > img {
    max-width: 100%; }
  @media print, screen and (max-width: 63.9375em) {
    .p-other-service__thumb {
      margin-right: 15px; } }

.p-other-service__title {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-other-service__title {
      font-weight: normal; } }

.p-voice {
  display: -webkit-box;
  display: flex; }
  .p-voice + .p-voice {
    margin-top: 40px; }

.p-voice__face {
  width: 94px; }

.p-voice__content {
  -webkit-box-flex: 1;
          flex: 1;
  padding-top: 33px;
  padding-right: 50px;
  padding-bottom: 35px;
  padding-left: 50px;
  background-color: #f7f7f6;
  border-radius: 4px; }

.p-voice__title {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.25rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-voice__meta {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 2px;
  margin-left: -20px; }
  .p-voice__meta dl {
    display: -webkit-box;
    display: flex;
    margin-left: 20px; }
  .p-voice__meta dt {
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .p-voice__meta dt {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-voice__meta dt {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-voice__meta dd {
    margin-left: 8px; }

.p-voice__desc {
  margin-top: 16px; }

.p-sightseeing .c-heading-6 {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: stretch;
          align-items: stretch; }
  .p-sightseeing .c-heading-6 > i {
    font-family: futura-pt, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 0.875rem;
    color: #fff;
    background-color: #2d2d2d;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    -webkit-box-pack: center;
            justify-content: center;
    line-height: 1;
    margin-top: 2px; }
  .p-sightseeing .c-heading-6 > span {
    margin-left: 9px;
    -webkit-box-flex: 1;
            flex: 1; }

.p-sightseeing .c-link {
  color: #009e6f;
  text-decoration: underline;
  font-weight: normal; }
  @media only screen and (max-width: 47.9375em) {
    .p-sightseeing .c-link {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-sightseeing .c-link {
      font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-sightseeing .c-sentence.-bold + .c-sentence.-bold {
  margin-top: 10px; }
  @media only screen and (max-width: 47.9375em) {
    .p-sightseeing .c-sentence.-bold + .c-sentence.-bold {
      margin-top: 2px; } }

/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-home-block-feature__wrap {
  background-color: #fff;
  position: relative;
  z-index: 0; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__wrap {
      padding-bottom: 60px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block-feature__wrap {
      padding-bottom: 0px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__wrap {
      padding-bottom: 118px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block-feature {
    position: relative;
    overflow: hidden; } }

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__box {
    padding-top: 44px;
    padding-right: 4.6875%;
    padding-bottom: 35px;
    padding-left: 4.6875%; } }

@media print, screen and (min-width: 64em) {
  .p-home-block-feature__box {
    position: relative;
    z-index: 10;
    width: 75vw; } }

@media print, screen and (min-width: 75em) {
  .p-home-block-feature__box {
    width: 64vw; } }

.p-home-block-feature__inner {
  box-sizing: border-box; }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__inner {
      max-width: 1400px;
      padding-right: 4.6875%;
      padding-left: 4.6875%;
      margin-right: auto;
      margin-left: auto; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__inner {
      padding-right: 100px;
      padding-left: 100px; } }

.p-home-block-feature__name {
  color: #009e6f; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__name {
      line-height: 1.5; } }
  .p-home-block-feature__name span.-ja {
    display: block;
    font-weight: bold;
    font-size: 1.125rem; }
    @media only screen and (max-width: 47.9375em) {
      .p-home-block-feature__name span.-ja {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-home-block-feature__name span.-ja {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block-feature__name span.-ja {
        font-size: 1rem; } }

.p-home-block-feature__title {
  margin-top: 4px;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block-feature__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block-feature__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__title {
      font-size: 1.375rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__title {
      font-size: 1.75rem; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block-feature__title br {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block-feature__title br {
      display: block; } }
  .p-home-block-feature__title .-three {
    display: none; }
    @media screen and (max-width: 1130px) {
      .p-home-block-feature__title .-three {
        display: block; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block-feature__title .-three {
        display: none; } }

.p-home-block-feature__link {
  display: inline-block;
  color: #fff;
  font-weight: bold;
  font-size: 1.125rem; }
  .p-home-block-feature__link > i {
    display: inline-block;
    margin-right: 10px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__link {
      font-size: 1rem;
      margin-top: 10px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__link {
      padding-left: 100px; } }

.p-home-block-feature__subtitle {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block-feature__subtitle {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block-feature__subtitle {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__subtitle {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__subtitle {
      font-size: 1rem; } }
  .p-home-block-feature__subtitle + .c-image {
    margin-top: 20px; }

.p-home-block-feature__lead {
  margin-top: 20px; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-block-feature__lead {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-block-feature__lead {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__lead {
      line-height: 1.625; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__lead {
      font-size: 1.125rem;
      font-weight: bold; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__lead br {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__lead br {
      display: block; } }
  @media print, screen and (min-width: 87.5em) {
    .p-home-block-feature__lead br {
      display: none; } }

.p-home-visual-main {
  display: block; }
  .p-home-visual-main img {
    display: block; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-visual-main img {
        position: relative;
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .p-home-visual-main img {
        width: 100%; } }

.p-home-block-feature__visual {
  display: block; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__visual {
      margin-top: 50px;
      position: relative;
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__visual {
      margin-top: 95px;
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__visual {
      position: absolute;
      z-index: 3;
      width: 72vw; } }
  .p-home-block-feature__visual > img {
    width: 100%;
    display: block; }

.p-home-block-feature__button {
  margin-right: auto;
  margin-left: auto; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__button {
      margin-top: 35px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature__button {
      width: 250px;
      margin-top: 52px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block-feature__name {
    padding-left: 100px; } }

@media print, screen and (min-width: 64em) {
  .p-home-block-feature__title,
  .p-home-block-feature__lead {
    padding-left: 100px; } }

.p-home-block-feature__bg-text {
  position: absolute;
  z-index: -1; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__bg-text {
      display: none; } }
  .p-home-block-feature__bg-text > img {
    width: 47vw;
    vertical-align: bottom; }
    .browser-is-ie .p-home-block-feature__bg-text > img {
      width: 100%; }

.p-home-block-feature__bg {
  position: relative;
  background-color: #212121;
  display: block;
  content: '';
  z-index: -1;
  height: 300px;
  background-color: #212121;
  width: 75vw;
  top: -222px;
  overflow: hidden; }
  @media print, screen and (max-width: 63.9375em) {
    .p-home-block-feature__bg {
      display: none; } }
  .p-home-block-feature__bg .p-home-block-feature__bg-text {
    font-size: 11.875rem;
    color: #2d2d2d;
    bottom: -33px;
    right: -13px; }

@media print, screen and (min-width: 64em) {
  .p-home-block-feature.-feature {
    padding-top: 114px;
    padding-bottom: 54px; } }

.p-home-block-feature.-feature::after {
  display: none; }

.p-home-block-feature.-feature .p-home-block-feature__bg-text {
  right: -5px;
  bottom: -2px; }
  .browser-is-ie .p-home-block-feature.-feature .p-home-block-feature__bg-text {
    width: 38vw; }

.p-home-block-feature.-example {
  background-color: #f2f2f1; }

@media print, screen and (min-width: 64em) {
  .p-home-block-feature.-support {
    padding-bottom: 110px; } }

.p-home-block-feature.-support .p-home-block-feature__name {
  text-align: left; }
  .p-home-block-feature.-support .p-home-block-feature__name span.-en {
    padding-left: 0; }
    .p-home-block-feature.-support .p-home-block-feature__name span.-en:before {
      display: none; }

.p-home-block-feature.-support .p-home-block-feature__title {
  text-align: left; }

.p-home-block-feature.-room_and_price {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature.-room_and_price {
      padding-top: 674px;
      padding-bottom: 144px;
      height: 948px;
      box-sizing: border-box; } }
  @media print, screen and (min-width: 64em) {
    .p-home-block-feature.-room_and_price .p-home-block-feature__visual {
      top: 0;
      right: 0;
      margin-top: 120px; } }
  .p-home-block-feature.-room_and_price .p-home-block-feature__visual::after {
    left: -50%; }

.p-home-block-feature-visual {
  display: block; }
  .p-home-block-feature-visual img {
    display: block; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block-feature-visual img {
        position: relative;
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .p-home-block-feature-visual img {
        width: 100%; } }

.p-dropdown-title {
  font-size: 1.5rem;
  color: #fff;
  font-weight: bold;
  position: relative; }
  @media print, screen and (max-width: 63.9375em) {
    .p-dropdown-title {
      font-size: 0.9375rem; } }

.p-floor-map__img {
  position: relative; }
  .p-floor-map__img img {
    width: 100%; }
  .p-floor-map__img > map > area:hover {
    background-color: #fff; }

.p-floor-map {
  position: relative; }

.p-floor-map__nav {
  margin-top: 14px; }
  @media print, screen and (min-width: 75em) {
    .p-floor-map__nav {
      margin-top: 0;
      position: absolute;
      bottom: 0; } }

.p-floor-map__nav-item {
  line-height: 1; }
  @media print, screen and (max-width: 63.9375em) {
    .p-floor-map__nav-item {
      margin-top: 8px; } }
  @media print, screen and (min-width: 64em) {
    .p-floor-map__nav-item {
      margin-top: 11px; } }
  .p-floor-map__nav-item:first-child {
    margin-top: 0; }

.p-floor-map__nav-link {
  display: block;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  line-height: 1; }
  @media print, screen and (min-width: 64em) {
    .p-floor-map__nav-link:hover span {
      color: #009e6f;
      -webkit-transition: color 0.2s;
      transition: color 0.2s; } }
  .p-floor-map__nav-link:focus {
    outline: none; }
  .p-floor-map__nav-link span {
    color: #2d2d2d;
    font-weight: bold;
    -webkit-transition: all 0.2s;
    transition: all 0.2s; }
    @media only screen and (max-width: 47.9375em) {
      .p-floor-map__nav-link span {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-floor-map__nav-link span {
        font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-floor-map__nav-parallel::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219.218%22%20height%3D%2218.445%22%3E%3Cg%3E%3Cg%3E%3Cpath%20d%3D%22M11.309%207.144H9.492a.341.341%200%2001-.341-.341V4.986a.341.341%200%2000-.341-.341H7.554a.341.341%200%2000-.341.341v1.817a.341.341%200%2001-.341.341H5.055a.341.341%200%2000-.341.341v1.259a.341.341%200%2000.341.341h1.817a.341.341%200%2001.341.341v1.817a.341.341%200%2000.341.341H8.81a.341.341%200%2000.341-.341V9.426a.341.341%200%2001.341-.341h1.817a.341.341%200%2000.341-.341V7.488a.341.341%200%2000-.341-.344z%22%20fill%3D%22%23009e6f%22%2F%3E%3Cpath%20d%3D%22M7.742.405a7.753%207.753%200%20108.149%207.337A7.753%207.753%200%20007.742.405zm.71%2013.549a5.814%205.814%200%20115.502-6.11%205.821%205.821%200%2001-5.502%206.11z%22%20fill%3D%22%23009e6f%22%2F%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-width%3D%222%22%20d%3D%22M13.185%2012.683l4.546%204.094%22%2F%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%222%22%20d%3D%22M14.094%2013.502l3.637%203.275%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  top: 4px;
  margin-right: 7px; }

.p-floor-map__nav-panorama::before {
  display: inline-block;
  content: "";
  width: 21px;
  height: 21px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.299%22%20height%3D%2220.959%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%3E%3Cpath%20d%3D%22M5.649%2010.007a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20010%202.416h0a1.208%201.208%200%20011.208%201.208v-.07a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208%22%2F%3E%3Cpath%20d%3D%22M11.561%2010.007a1.208%201.208%200%2000-1.208-1.208h0a1.208%201.208%200%2000-1.208%201.208v2.346a1.208%201.208%200%20001.208%201.208h0a1.208%201.208%200%20001.208-1.208v-.09a1.208%201.208%200%2000-1.209-1.21h0a1.208%201.208%200%2000-1.208%201.208%22%2F%3E%3Cpath%20d%3D%22M15.057%2012.353a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208v-2.346a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20011.208%201.208z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M16.076%208.799v.685%22%2F%3E%3Cpath%20d%3D%22M1.552%2010.71a8.977%208.977%200%200111.286-8.235%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.266%2018.746a8.973%208.973%200%2001-13.407-5.292%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.265%203.518a8.976%208.976%200%20011.591%2013.955%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M11.966%201.103l.872%201.371-1.5.842%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M18.48%2017.429l-1.624.044.046-1.718%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M1.084%2014.883l.774-1.429%201.464.9%22%20stroke-width%3D%221.6%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  top: 4px;
  margin-right: 7px; }

/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-service-block__wrap {
  background-color: #2d2d2d;
  position: relative;
  z-index: 0; }

@media print, screen and (min-width: 64em) {
  .p-service-block {
    position: relative;
    overflow: hidden; } }

@media print, screen and (max-width: 63.9375em) {
  .p-service-block:last-of-type .p-service-block__box {
    padding-bottom: 45px; } }

@media print, screen and (min-width: 64em) {
  .p-service-block:last-of-type .p-service-block__box {
    margin-bottom: 120px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__box {
    padding-top: 30px;
    padding-right: 4.6875%;
    padding-bottom: 0px; } }

@media print, screen and (min-width: 64em) {
  .p-service-block__box {
    box-sizing: border-box;
    position: relative;
    z-index: 10;
    padding-top: 65px;
    padding-bottom: 65px;
    width: 72vw;
    min-height: 425px;
    height: auto; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box {
    min-height: 525px;
    height: auto; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-online {
    min-height: 525px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-online .p-service-block__name,
  .p-service-block__box.-online .p-service-block__title,
  .p-service-block__box.-online .p-service-block__lead,
  .p-service-block__box.-online .p-service-block__text {
    padding-right: 60px;
    padding-left: 60px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-online .p-service-block__bg {
    top: -18px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-kiosk {
    min-height: 465px;
    padding-top: 85px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-kiosk .p-service-block__name,
  .p-service-block__box.-kiosk .p-service-block__title,
  .p-service-block__box.-kiosk .p-service-block__lead,
  .p-service-block__box.-kiosk .p-service-block__text {
    padding-right: 84px;
    padding-left: 84px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-kiosk .p-service-block__bg {
    top: -15px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-example {
    min-height: 465px;
    padding-top: 85px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-example .p-service-block__name,
  .p-service-block__box.-example .p-service-block__title,
  .p-service-block__box.-example .p-service-block__lead,
  .p-service-block__box.-example .p-service-block__text {
    padding-right: 60px;
    padding-left: 60px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-example .p-service-block__bg {
    top: -10px; } }

.p-service-block__name {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  color: #009e6f; }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__name {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__name {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__name {
      line-height: 1.5; } }
  .p-service-block__name span.-ja {
    display: block;
    font-weight: bold;
    font-size: 1rem; }
    @media only screen and (max-width: 47.9375em) {
      .p-service-block__name span.-ja {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-service-block__name span.-ja {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media only screen and (max-width: 47.9375em) {
      .p-service-block__name span.-ja {
        font-size: 1rem; } }
  .p-service-block__name span.-en {
    font-family: futura-pt, sans-serif;
    flex-wrap: 400; }
    .p-service-block__name span.-en.-online {
      font-size: 1.25rem; }

.p-service-block__title {
  margin-top: 4px;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__title {
      font-size: 1.375rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block__title {
      font-size: 1.75rem;
      margin-top: 10px;
      line-height: 1.5; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block__title.-kiosk {
      margin-top: 22px; } }

.p-service-block__text {
  font-size: 1rem;
  line-height: 1.625; }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__text {
      margin-top: 8px; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block__text {
      padding-right: 40px;
      padding-left: 40px;
      margin-top: 22px; } }
  @media print, screen and (min-width: 75em) {
    .p-service-block__text {
      padding-right: 100px;
      padding-left: 100px; } }

.p-service-block__subtitle {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__subtitle {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__subtitle {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__subtitle {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__subtitle {
      font-size: 1rem; } }
  .p-service-block__subtitle + .c-image {
    margin-top: 20px; }

.p-service-block__lead {
  margin-top: 20px; }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__lead {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__lead {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__lead {
      line-height: 1.625; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__lead {
      font-size: 1.125rem;
      font-weight: bold; } }

.p-service-block__visual {
  display: block; }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__visual {
      margin-top: 18px;
      position: relative;
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block__visual {
      position: relative;
      z-index: 20;
      display: -webkit-box;
      display: flex; }
      .browser-is-ie .p-service-block__visual {
        width: 100%; } }
  .p-service-block__visual img {
    display: block;
    max-width: 700px; }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block__visual img {
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .p-service-block__visual img {
        width: 43vw; } }
    @media screen and (min-width: 1400px) {
      .p-service-block__visual img {
        width: 50vw; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__visual::after {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block__visual::after {
      display: block;
      content: '';
      position: absolute;
      z-index: -1;
      height: 50%;
      background-color: #2d2d2d;
      top: 50%; } }

@media only screen and (max-width: 47.9375em) {
  .p-service-block__sec {
    margin-top: 26px; } }

@media print, screen and (min-width: 48em) {
  .p-service-block__sec {
    margin-top: 48px; } }

.p-service-block__panel {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__panel {
      padding-top: 38px;
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__panel {
      padding-top: 80px;
      padding-bottom: 80px; } }

.p-service-block__button {
  margin-right: auto;
  margin-left: auto; }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__button {
      margin-top: 35px; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__button {
      width: 250px;
      margin-top: 64px; } }

.p-service-block__name {
  line-height: 1; }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__name {
      padding-right: 4.6875%; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block__name {
      padding-right: 40px;
      padding-left: 40px; } }
  @media print, screen and (min-width: 75em) {
    .p-service-block__name {
      padding-right: 100px;
      padding-left: 100px; } }

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__title,
  .p-service-block__lead {
    padding-right: 4.6875%; } }

@media print, screen and (min-width: 64em) {
  .p-service-block__title,
  .p-service-block__lead {
    padding-right: 40px;
    padding-left: 40px; } }

@media print, screen and (min-width: 75em) {
  .p-service-block__title,
  .p-service-block__lead {
    padding-right: 100px;
    padding-left: 100px; } }

.p-service-block__bg-text {
  font-family: "Prompt", sans-serif;
  position: absolute;
  font-weight: normal;
  line-height: 1;
  font-size: 8.375rem;
  color: #d0e1db;
  z-index: -1; }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__bg-text {
      display: none; } }

.p-service-block__bg {
  position: absolute;
  display: block;
  content: '';
  z-index: -1;
  height: 100%;
  background-color: #e1ede8;
  width: 100%;
  top: -1px;
  left: 0;
  overflow: hidden; }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block__bg {
      display: none; } }
  .p-service-block__bg .p-service-block__bg-text {
    font-size: 12vw;
    line-height: 1;
    font-feature-settings: 'palt';
    letter-spacing: 4px;
    color: #d0e1db;
    font-weight: 300;
    bottom: -29px;
    right: 0;
    white-space: nowrap; }
    @media screen and (min-width: 1900px) {
      .p-service-block__bg .p-service-block__bg-text {
        font-size: 10vw; } }
    @media screen and (min-width: 2500px) {
      .p-service-block__bg .p-service-block__bg-text {
        font-size: 8vw; } }
    .p-service-block__bg .p-service-block__bg-text.-left {
      left: 0; }
  .p-service-block__bg.-online {
    background-color: #fff; }

.p-service-block.-feature {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-feature {
      padding-top: 128px;
      padding-bottom: 95px; } }
  .p-service-block.-feature::after {
    display: none; }
  .p-service-block.-feature .p-service-block__bg-text {
    right: -13px;
    bottom: -47px; }

.p-service-block.-left {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-left {
      display: -webkit-box;
      display: flex;
      padding-top: 90px;
      box-sizing: border-box; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-left .p-service-block__visual {
      top: 0;
      left: 0;
      margin-top: -80px;
      -webkit-box-pack: start;
              justify-content: flex-start;
      -webkit-box-align: start;
              align-items: flex-start; } }
  @media print, screen and (min-width: 87.5em) {
    .p-service-block.-left .p-service-block__visual {
      margin-top: -98px; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-left .p-service-block__box {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-left .p-service-block__box .p-service-block__bg {
      width: 54vw;
      left: auto;
      right: 0; } }
  @media screen and (min-width: 1900px) {
    .p-service-block.-left .p-service-block__box .p-service-block__bg {
      width: 42vw; } }
  @media screen and (min-width: 2500px) {
    .p-service-block.-left .p-service-block__box .p-service-block__bg {
      width: 36vw; } }
  .p-service-block.-left.-commitment01 .p-service-block__bg .p-service-block__bg-text {
    right: 0; }
  @media print, screen and (min-width: 87.5em) {
    .p-service-block.-left.-kiosk .p-service-block__visual {
      margin-top: -55px; } }

.p-service-block.-right {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-right {
      margin-top: 80px;
      display: -webkit-box;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
              flex-direction: row-reverse;
      padding-top: 90px;
      box-sizing: border-box;
      margin-bottom: 80px; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-right .p-service-block__visual {
      margin-top: -80px;
      -webkit-box-pack: start;
              justify-content: flex-start;
      -webkit-box-align: start;
              align-items: flex-start; } }
  @media print, screen and (min-width: 87.5em) {
    .p-service-block.-right .p-service-block__visual {
      margin-top: -98px; } }
  .p-service-block.-right .p-service-block__visual::after {
    left: 0; }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-right .p-service-block__box {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-right .p-service-block__box .p-service-block__bg {
      width: 54vw;
      left: 0; } }
  @media screen and (min-width: 1900px) {
    .p-service-block.-right .p-service-block__box .p-service-block__bg {
      width: 43vw; } }
  @media screen and (min-width: 2500px) {
    .p-service-block.-right .p-service-block__box .p-service-block__bg {
      width: 36vw; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-right.-mb_0 {
      margin-bottom: 0; } }
  @media print, screen and (min-width: 87.5em) {
    .p-service-block.-right.-kiosk .p-service-block__visual {
      margin-top: -55px; } }

@media print, screen and (min-width: 87.5em) {
  .p-service-block.-pt_60 {
    padding-top: 60px; } }

/* サービス以下
----------------------------------------------------------------- */
.p-service-block__inner {
  box-sizing: border-box; }
  @media print, screen and (min-width: 64em) {
    .p-service-block__inner {
      padding-top: 0;
      padding-right: 100px;
      padding-left: 100px;
      padding-bottom: 0; } }
  @media print, screen and (min-width: 48em) {
    .p-service-block__inner {
      max-width: 1400px;
      padding-top: 40px;
      padding-right: 4.6875%;
      padding-left: 4.6875%;
      padding-bottom: 40px;
      margin-right: auto;
      margin-left: auto; } }
  @media only screen and (max-width: 47.9375em) {
    .p-service-block__inner {
      padding-top: 40px;
      padding-right: 4.6875%;
      padding-bottom: 40px; } }

@media print, screen and (min-width: 64em) {
  .p-service-block__name.-center {
    text-align: center; } }

.p-service-block.-commitment {
  position: relative; }
  @media print, screen and (max-width: 63.9375em) {
    .p-service-block.-commitment {
      padding-top: 52px;
      padding-bottom: 0px; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-commitment {
      padding-top: 110px;
      padding-bottom: 56px; } }
  .p-service-block.-commitment .p-service-block__name {
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .p-service-block.-commitment .p-service-block__name {
        font-size: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .p-service-block.-commitment .p-service-block__name {
        font-size: 1.25rem;
        position: relative;
        z-index: 20; } }
  .p-service-block.-commitment .p-service-block__title {
    padding-right: 0;
    padding-left: 0; }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.-commitment .p-service-block__title {
        margin-top: 6px; } }
    @media print, screen and (min-width: 64em) {
      .p-service-block.-commitment .p-service-block__title {
        font-size: 2.125rem;
        text-align: center; } }
    @media print, screen and (min-width: 64em) {
      .p-service-block.-commitment .p-service-block__title:after {
        font-family: "Prompt", sans-serif;
        content: 'Commitment';
        font-weight: 300;
        color: #e1ede8;
        display: block;
        position: absolute;
        z-index: -1;
        font-size: 9vw;
        font-feature-settings: 'palt';
        letter-spacing: -1px;
        top: 68px;
        width: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        line-height: 1; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.-commitment .p-service-block__title:after {
        display: none; } }
  .p-service-block.-commitment .p-service-block__desc {
    font-size: 1rem; }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.-commitment .p-service-block__desc {
        text-align: left;
        margin-top: 8px;
        margin-bottom: 18px; } }
    @media print, screen and (min-width: 64em) {
      .p-service-block.-commitment .p-service-block__desc {
        text-align: center;
        margin-top: 18px; } }

.p-service-block.-commitment.-white .p-service-block__title {
  color: #2d2d2d; }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-commitment.-white .p-service-block__title {
      font-size: 2.125rem;
      text-align: center; } }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-commitment.-white .p-service-block__title:after {
      content: 'Operator';
      color: #e0ede8;
      width: 100%; } }

@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment.-white.-service {
    padding-top: 136px;
    padding-bottom: 0px; } }

.p-service-block.-commitment.-white.-service .p-service-block__title:after {
  content: 'Service';
  color: #d0e1db;
  width: 100%;
  top: -76px; }

@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment.-white.-QandA {
    padding-bottom: 20px;
    overflow: visible; } }

@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment.-white.-QandA .p-service-block__title:after {
    content: 'Q & A';
    width: 100%;
    top: -70px; } }

.p-service-block.-example {
  background-color: #f2f2f1; }
  @media print, screen and (min-width: 64em) {
    .p-service-block.-example {
      padding-top: 72px;
      padding-bottom: 128px;
      z-index: -2; } }
  .p-service-block.-example .p-service-block__title {
    color: #2d2d2d; }
    @media print, screen and (min-width: 64em) {
      .p-service-block.-example .p-service-block__title {
        font-size: 2.125rem;
        text-align: center; } }
    @media print, screen and (min-width: 64em) {
      .p-service-block.-example .p-service-block__title:after {
        font-family: futura-pt, sans-serif;
        content: 'Case';
        color: #eeeeea;
        display: block;
        position: absolute;
        z-index: -1;
        font-size: 11.875rem;
        top: 60px;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        line-height: 1;
        font-weight: normal; } }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.-example .p-service-block__title:after {
        display: none; } }

/* 以下事例トップページにて使用 */
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-example_top .p-service-block__visual img {
    width: 38vw; } }

.p-service-block.-example_top:last-of-type .p-service-block__box {
  margin-bottom: 50px; }

.p-service-block__bg-text.-lecture {
  font-size: 9vw;
  letter-spacing: -1px;
  bottom: -15px; }
  @media print, screen and (min-width: 75em) {
    .p-service-block__bg-text.-lecture {
      bottom: -22px; } }
  @media print, screen and (min-width: 100em) {
    .p-service-block__bg-text.-lecture {
      bottom: -25px; } }

.p-modal {
  box-sizing: border-box;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  z-index: 70000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .p-modal:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.18);
    content: ''; }
  .p-modal.-visible {
    visibility: visible;
    opacity: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-modal.-access {
      display: none; } }

.p-modal__close {
  box-sizing: border-box;
  display: block;
  position: absolute;
  right: 28px;
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: none;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  -webkit-box-align: baseline;
          align-items: baseline;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: color 0.1s 0s ease;
  transition: color 0.1s 0s ease; }
  @media only screen and (max-width: 47.9375em) {
    .p-modal__close {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-modal__close {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-modal__close {
      bottom: 19px; } }
  @media print, screen and (min-width: 48em) {
    .p-modal__close {
      top: 19px; } }
  @media print, screen and (min-width: 64em) {
    .p-modal__close:hover {
      color: #009e6f; } }
  .p-modal__close:focus {
    outline: none; }

.p-modal__panel {
  box-sizing: border-box;
  position: relative;
  width: auto;
  max-width: 960px;
  background-color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .p-modal__panel {
      padding-top: 24px;
      padding-bottom: 60px;
      padding-right: 24px;
      padding-left: 24px; } }
  @media print, screen and (min-width: 48em) {
    .p-modal__panel {
      padding-top: 60px;
      padding-bottom: 60px;
      padding-right: 60px;
      padding-left: 60px; } }

.p-modal__inner img {
  display: block;
  width: auto;
  max-width: 100%; }

.p-modal.-flor .p-modal__panel {
  max-width: 1200px; }
  @media print, screen and (min-width: 48em) {
    .p-modal.-flor .p-modal__panel {
      padding-top: 40px;
      padding-bottom: 40px;
      padding-right: 60px;
      padding-left: 60px; } }

.p-detail-fv {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  position: relative;
  z-index: 1; }
  @media only screen and (max-width: 47.9375em) {
    table + .p-detail-fv,
    .c-image + .p-detail-fv,
    .p-scrollable + .p-detail-fv {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .p-detail-fv,
    .c-image + .p-detail-fv,
    .p-scrollable + .p-detail-fv {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .p-detail-fv {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .p-detail-fv {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .p-detail-fv {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .p-detail-fv {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .p-detail-fv {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .p-detail-fv {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .p-detail-fv {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .p-detail-fv {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .p-detail-fv,
    .c-heading-2-1 + .p-detail-fv {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .p-detail-fv,
    .c-heading-2-1 + .p-detail-fv {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .p-detail-fv {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .p-detail-fv {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .p-detail-fv {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .p-detail-fv {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-detail-fv,
    .c-list + .p-detail-fv {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-detail-fv,
    .c-list + .p-detail-fv {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .p-detail-fv {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .p-detail-fv {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .p-detail-fv {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .p-detail-fv {
      margin-top: 14px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-fv {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-fv {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-detail-fv__inner {
  position: relative; }

.p-detail-fv__img > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  z-index: 0; }

.p-detail-fv__img {
  padding-top: 0; }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-fv__img {
      height: 75vw; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-fv__img {
      height: 100vh;
      min-height: 450px;
      max-height: 700px;
      box-sizing: border-box; } }
  .p-detail-fv__img > span {
    background-position: 50% 50%; }

.p-detail-heading {
  position: relative;
  z-index: 2; }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading {
      margin-top: 34px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading {
      width: 80%;
      margin-top: 55px; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-heading {
      padding-top: 54px;
      margin-top: -54px; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-heading::before {
      content: "";
      display: block;
      width: 100vw;
      height: 54px;
      position: absolute;
      top: 0;
      right: 0;
      background-color: #fff; } }
  @media only screen and (min-width: 64em) and (max-width: 47.9375em) {
    .p-detail-heading::before {
      width: 100%;
      right: auto;
      left: 0; } }

.p-detail-heading__main {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 2.25rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading__main {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading__main {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-detail-heading__main {
      font-size: 1.625rem; } }

.p-detail-heading__en {
  display: block;
  color: #009e6f;
  font-family: "Prompt", sans-serif;
  letter-spacing: 0.03em; }
  @media print, screen and (max-width: 63.9375em) {
    .p-detail-heading__en {
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 64em) {
    .p-detail-heading__en {
      font-size: 0.9375rem; } }

@media print, screen and (max-width: 63.9375em) {
  .p-language-menu {
    position: absolute;
    padding-right: 4.6875%;
    top: 20px;
    right: 0;
    padding-left: 14px;
    margin-left: 14px; } }

@media print, screen and (min-width: 69.6875em) {
  .p-language-menu {
    padding-left: 6px;
    margin-left: 8px;
    border-left: 1px solid #c2cfc9; } }

@media screen and (min-width: 1420px) {
  .p-language-menu {
    padding-left: 14px;
    margin-left: 14px; } }

.p-language-menu__button {
  position: relative;
  top: 3px;
  display: block; }

.p-language-menu__text {
  font-weight: bold;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-transition: all 0.1s 0s ease;
  transition: all 0.1s 0s ease; }
  @media print, screen and (max-width: 63.9375em) {
    .p-language-menu__text {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
              flex-direction: row;
      font-size: 0.9375rem; } }
  @media print, screen and (min-width: 69.6875em) {
    .p-language-menu__text {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
              flex-direction: column;
      font-size: 0.4375rem; } }
  @media screen and (min-width: 1420px) {
    .p-language-menu__text {
      font-size: 0.5625rem; } }
  .p-language-menu__text::before {
    content: '';
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%3E%3Cpath%20d%3D%22M14.475%203.3c-.1-.133-.195-.263-.3-.39a8%208%200%2000-12.35%200q-.158.191-.3.39a8%208%200%2000.007%209.407c.1.135.2.268.308.4a8%208%200%200012.34-.025c.108-.127.21-.26.306-.4a8%208%200%2000-.01-9.382zm.265%204.446h-2.685a11.917%2011.917%200%2000-.391-2.846%208.786%208.786%200%20001.806-.846%206.7%206.7%200%20011.27%203.695zM8.25%201.31c1.168.162%202.2%201.441%202.791%203.259a11.087%2011.087%200%2001-2.791.409zm-.5%200v3.668a11.087%2011.087%200%2001-2.791-.409C5.548%202.751%206.582%201.472%207.75%201.31zm0%204.168v2.271H4.444a11.379%2011.379%200%2001.375-2.7%2011.479%2011.479%200%20002.931.428zm0%202.772v2.272a11.549%2011.549%200%2000-2.928.44%2011.39%2011.39%200%2001-.377-2.712zm0%202.771v3.668c-1.166-.162-2.2-1.436-2.787-3.248a11.055%2011.055%200%20012.787-.42zm.5%203.668V11.02a11%2011%200%20012.792.4c-.589%201.824-1.623%203.106-2.792%203.268zm0-4.169V8.249h3.305a11.4%2011.4%200%2001-.372%202.693%2011.465%2011.465%200%2000-2.933-.422zm0-2.77V5.477a11.486%2011.486%200%20002.931-.431%2011.4%2011.4%200%2001.374%202.7zm4.916-4.086a8.327%208.327%200%2001-1.643.758%206.384%206.384%200%2000-1.794-2.945%206.734%206.734%200%20013.436%202.186zM6.27%201.477A6.386%206.386%200%20004.477%204.42a8.329%208.329%200%2001-1.642-.758A6.738%206.738%200%20016.27%201.477zM2.53%204.053a8.817%208.817%200%20001.8.846%2011.917%2011.917%200%2000-.391%202.851H1.26a6.7%206.7%200%20011.27-3.697zM1.26%208.249h2.684a11.9%2011.9%200%2000.394%202.861%208.852%208.852%200%2000-1.8.845A6.7%206.7%200%20011.26%208.249zm1.588%204.1a8.392%208.392%200%20011.634-.759%206.364%206.364%200%20001.792%202.933%206.735%206.735%200%2001-3.426-2.173zm6.878%202.173a6.375%206.375%200%20001.8-2.955%208.3%208.3%200%20011.648.759%206.754%206.754%200%2001-3.448%202.197zm3.754-2.588a8.777%208.777%200%2000-1.813-.846%2011.943%2011.943%200%2000.388-2.84h2.685a6.7%206.7%200%2001-1.26%203.687z%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E\a%20%20");
    display: block;
    -webkit-transition: all 0.1s 0s ease;
    transition: all 0.1s 0s ease; }
    @media print, screen and (max-width: 63.9375em) {
      .p-language-menu__text::before {
        margin-right: 4px;
        width: 12px;
        height: 12px;
        margin-bottom: 1px; } }
    @media print, screen and (min-width: 69.6875em) {
      .p-language-menu__text::before {
        width: 12px;
        height: 12px;
        margin-bottom: 2px; } }
    @media screen and (min-width: 1420px) {
      .p-language-menu__text::before {
        width: 16px;
        height: 16px; } }
  .p-language-menu__button:hover .p-language-menu__text {
    color: #009e6f; }
    .p-language-menu__button:hover .p-language-menu__text::before {
      background-repeat: no-repeat;
      background-size: contain;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%3E%3Cpath%20d%3D%22M14.475%203.3c-.1-.133-.195-.263-.3-.39a8%208%200%2000-12.35%200q-.158.191-.3.39a8%208%200%2000.007%209.407c.1.135.2.268.308.4a8%208%200%200012.34-.025c.108-.127.21-.26.306-.4a8%208%200%2000-.01-9.382zm.265%204.446h-2.685a11.917%2011.917%200%2000-.391-2.846%208.786%208.786%200%20001.806-.846%206.7%206.7%200%20011.27%203.695zM8.25%201.31c1.168.162%202.2%201.441%202.791%203.259a11.087%2011.087%200%2001-2.791.409zm-.5%200v3.668a11.087%2011.087%200%2001-2.791-.409C5.548%202.751%206.582%201.472%207.75%201.31zm0%204.168v2.271H4.444a11.379%2011.379%200%2001.375-2.7%2011.479%2011.479%200%20002.931.428zm0%202.772v2.272a11.549%2011.549%200%2000-2.928.44%2011.39%2011.39%200%2001-.377-2.712zm0%202.771v3.668c-1.166-.162-2.2-1.436-2.787-3.248a11.055%2011.055%200%20012.787-.42zm.5%203.668V11.02a11%2011%200%20012.792.4c-.589%201.824-1.623%203.106-2.792%203.268zm0-4.169V8.249h3.305a11.4%2011.4%200%2001-.372%202.693%2011.465%2011.465%200%2000-2.933-.422zm0-2.77V5.477a11.486%2011.486%200%20002.931-.431%2011.4%2011.4%200%2001.374%202.7zm4.916-4.086a8.327%208.327%200%2001-1.643.758%206.384%206.384%200%2000-1.794-2.945%206.734%206.734%200%20013.436%202.186zM6.27%201.477A6.386%206.386%200%20004.477%204.42a8.329%208.329%200%2001-1.642-.758A6.738%206.738%200%20016.27%201.477zM2.53%204.053a8.817%208.817%200%20001.8.846%2011.917%2011.917%200%2000-.391%202.851H1.26a6.7%206.7%200%20011.27-3.697zM1.26%208.249h2.684a11.9%2011.9%200%2000.394%202.861%208.852%208.852%200%2000-1.8.845A6.7%206.7%200%20011.26%208.249zm1.588%204.1a8.392%208.392%200%20011.634-.759%206.364%206.364%200%20001.792%202.933%206.735%206.735%200%2001-3.426-2.173zm6.878%202.173a6.375%206.375%200%20001.8-2.955%208.3%208.3%200%20011.648.759%206.754%206.754%200%2001-3.448%202.197zm3.754-2.588a8.777%208.777%200%2000-1.813-.846%2011.943%2011.943%200%2000.388-2.84h2.685a6.7%206.7%200%2001-1.26%203.687z%22%20fill%3D%22%23009e6f%22%2F%3E%3C%2Fsvg%3E\a%20%20"); }

.p-operating-company {
  color: #fff; }
  .p-operating-company a {
    color: #fff; }
  .p-operating-company .c-blank {
    width: 12px;
    height: 10px; }
    .p-operating-company .c-blank:after {
      position: absolute;
      display: inline-block;
      content: '';
      right: 0;
      top: 0;
      width: 8px;
      height: 6px;
      background-color: #009e6f;
      box-sizing: border-box;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .p-operating-company .c-blank:before {
      position: absolute;
      display: inline-block;
      content: '';
      bottom: 0;
      left: 0;
      width: 9px;
      height: 8px;
      border-style: solid;
      border-width: 0 0 2px 2px;
      border-color: #009e6f;
      border-radius: 0 0 0 2px;
      box-sizing: border-box;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .p-operating-company .c-blank::before {
      width: 9px;
      height: 8px;
      border-width: 0 0 1px 1px; }
    .p-operating-company .c-blank::after {
      width: 9px;
      height: 7px; }
  @media only screen and (max-width: 47.9375em) {
    .p-operating-company {
      margin-top: 16px;
      font-size: 0.75rem; } }
  @media print, screen and (min-width: 48em) {
    .p-operating-company {
      margin-top: 48px;
      font-size: 0.75rem; } }

.p-operating-company__head {
  font-weight: bold; }

.p-operating-company__list {
  margin-top: 10px; }
  @media only screen and (max-width: 47.9375em) {
    .p-operating-company__list li {
      line-height: 1.8; } }
  @media print, screen and (min-width: 48em) {
    .p-operating-company__list li {
      line-height: 1.75; } }
  @media print, screen and (min-width: 64em) {
    .p-operating-company__list li {
      line-height: 1.8; } }
  .p-operating-company__list li > a > span {
    margin-left: 8px; }

@media print, screen and (max-width: 63.9375em) {
  .p-panorama {
    color: #fff;
    font-size: 0.75rem;
    position: absolute;
    bottom: -31px;
    right: 4.6875%;
    display: -webkit-box;
    display: flex; }
    .p-panorama::after {
      content: '';
      display: block;
      width: 16px;
      height: 16px;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.299%22%20height%3D%2220.959%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%3E%3Cpath%20d%3D%22M5.649%2010.007a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20010%202.416h0a1.208%201.208%200%20011.208%201.208v-.07a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208%22%2F%3E%3Cpath%20d%3D%22M11.561%2010.007a1.208%201.208%200%2000-1.208-1.208h0a1.208%201.208%200%2000-1.208%201.208v2.346a1.208%201.208%200%20001.208%201.208h0a1.208%201.208%200%20001.208-1.208v-.09a1.208%201.208%200%2000-1.209-1.21h0a1.208%201.208%200%2000-1.208%201.208%22%2F%3E%3Cpath%20d%3D%22M15.057%2012.353a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208v-2.346a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20011.208%201.208z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M16.076%208.799v.685%22%2F%3E%3Cpath%20d%3D%22M1.552%2010.71a8.977%208.977%200%200111.286-8.235%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.266%2018.746a8.973%208.973%200%2001-13.407-5.292%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.265%203.518a8.976%208.976%200%20011.591%2013.955%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M11.966%201.103l.872%201.371-1.5.842%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M18.48%2017.429l-1.624.044.046-1.718%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M1.084%2014.883l.774-1.429%201.464.9%22%20stroke-width%3D%221.6%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      margin-left: 6px;
      position: relative;
      top: 2px; } }

@media print, screen and (min-width: 64em) {
  .p-panorama {
    display: none; } }

/* アクセス>料金表
----------------------------------------------------------------- */
.p-access-price-table {
  margin-top: 30px;
  font-size: 0.9375rem;
  box-sizing: border-box;
  white-space: nowrap; }
  @media only screen and (max-width: 47.9375em) {
    table + .p-access-price-table,
    .c-image + .p-access-price-table,
    .p-scrollable + .p-access-price-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    table + .p-access-price-table,
    .c-image + .p-access-price-table,
    .p-scrollable + .p-access-price-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-6 + .p-access-price-table {
      margin-top: 8px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-6 + .p-access-price-table {
      margin-top: 22px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 + .p-access-price-table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 + .p-access-price-table {
      margin-top: 36px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 + .p-access-price-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 + .p-access-price-table {
      margin-top: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 + .p-access-price-table {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 + .p-access-price-table {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 + .p-access-price-table,
    .c-heading-2-1 + .p-access-price-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 + .p-access-price-table,
    .c-heading-2-1 + .p-access-price-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-title + .p-access-price-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-title + .p-access-price-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-detail-heading + .p-access-price-table {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-detail-heading + .p-access-price-table {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence + .p-access-price-table,
    .c-list + .p-access-price-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence + .p-access-price-table,
    .c-list + .p-access-price-table {
      margin-top: 35px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence--cap + .p-access-price-table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence--cap + .p-access-price-table {
      margin-top: 52px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-bold + .p-access-price-table {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-bold + .p-access-price-table {
      margin-top: 14px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-access-price-table {
      display: none; } }
  @media screen and (min-width: 769px) and (max-width: 1000px) {
    .p-access-price-table {
      font-size: 0.875rem; } }
  .p-access-price-table thead .c-note-number {
    margin-left: 8px; }
  .p-access-price-table > tbody > tr:nth-child(1) {
    background-color: #e1ede8; }
  .p-access-price-table > tbody > tr:last-of-type {
    border-bottom: 1px solid #c2cfc9; }
  .p-access-price-table > tbody > tr:first-of-type {
    border-top: 1px solid #c2cfc9; }
  .p-access-price-table > tbody > tr.-current {
    background-color: #dff5e2;
    color: #2b7443; }
  .p-access-price-table th {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    line-height: 1;
    border: 1px solid #c2cfc9; }
    @media only screen and (max-width: 47.9375em) {
      .p-access-price-table th {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-access-price-table th {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-access-price-table th {
        padding-top: 16px;
        padding-left: 10px;
        padding-bottom: 14px; } }
  .p-access-price-table td {
    line-height: 1.5;
    border: 1px solid #c2cfc9; }
    @media print, screen and (min-width: 48em) {
      .p-access-price-table td {
        padding-top: 14px;
        padding-left: 12px;
        padding-bottom: 12px;
        padding-right: 12px; } }
    .p-access-price-table td:last-of-type {
      padding-right: 20px; }

.p-access-price-table__time {
  margin-top: 8px;
  display: block;
  font-size: 0.75rem; }

.p-health-figure {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: end;
          align-items: end;
  margin-right: -10px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-health-figure {
      display: block;
      margin-right: 0px; } }

.p-health-figure__item {
  width: calc(50% - 10px);
  margin-right: 10px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-health-figure__item {
      width: 100%;
      margin-right: 0; } }
  .p-health-figure__item.-icons {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    margin-top: -10px; }
    @media print, screen and (max-width: 63.9375em) {
      .p-health-figure__item.-icons {
        margin-top: 12px;
        margin-left: -10px;
        width: calc(100% + 10px); } }
    @media only screen and (max-width: 47.9375em) {
      .p-health-figure__item.-icons {
        display: block;
        width: 100%;
        margin-left: 0; } }

.p-health-figure__desc {
  margin-top: 14px; }

.p-health-figure__img img {
  display: block;
  width: 100%; }

.p-health-icon {
  width: calc(33.3% - 10px);
  margin-top: 10px;
  margin-left: 10px;
  padding-top: 16px;
  padding-right: 16px;
  padding-left: 16px;
  padding-bottom: 20px;
  box-sizing: border-box;
  background-color: #e1ede8;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center; }
  @media print, screen and (max-width: 63.9375em) {
    .p-health-icon {
      margin-top: 10px;
      margin-left: 10px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-health-icon {
      width: 100%;
      margin-left: 0; } }

.p-health-icon__head {
  font-size: 1rem;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.2; }
  @media only screen and (max-width: 47.9375em) {
    .p-health-icon__head {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-health-icon__head {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-health-icon__text {
  font-size: 0.75rem;
  text-align: center;
  line-height: 1.4;
  margin-top: 10px; }
  .browser-is-ie .p-health-icon__text {
    width: 100%; }

.p-video {
  display: block;
  width: 100%;
  padding-top: 45.25%;
  position: relative; }

.p-video__inner {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  @media screen and (min-width: 1277px) {
    .p-video__inner {
      height: 542px;
      width: 960px; } }

.p-video__player {
  width: 100%;
  height: 100%; }

.p-measures-item {
  border-bottom: 2px solid #c2cfc9;
  box-sizing: border-box;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-measures-item {
      display: -webkit-box;
      display: flex;
      padding-bottom: 15px;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
              flex-direction: row-reverse;
      -webkit-box-align: center;
              align-items: center; } }
  @media print, screen and (min-width: 48em) {
    .p-measures-item {
      padding-bottom: 16px; } }

.p-measures-item__thumb {
  display: block; }
  @media print, screen and (min-width: 48em) {
    .p-measures-item__thumb {
      width: 70px; } }
  @media print, screen and (min-width: 64em) {
    .p-measures-item__thumb {
      width: 122px; } }

@media only screen and (max-width: 47.9375em) {
  .p-measures-item__content {
    -webkit-box-flex: 1;
            flex: 1;
    margin-right: 18px; } }

.p-measures-item__title {
  display: block;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-top: 14px; }
  @media only screen and (max-width: 47.9375em) {
    .p-measures-item__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-measures-item__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-measures-item__text {
  line-height: 1.6; }
  @media only screen and (max-width: 47.9375em) {
    .p-measures-item__text {
      margin-top: 5px; } }
  @media print, screen and (min-width: 48em) {
    .p-measures-item__text {
      margin-top: 16px; } }

.p-eating-rule {
  border: 1px solid #c2cfc9;
  border-radius: 4px;
  min-height: 250px;
  box-sizing: border-box;
  position: relative;
  padding-top: 22px;
  padding-right: 20px;
  padding-left: 20px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-eating-rule {
      height: 100%;
      padding-top: 16px;
      padding-right: 12px;
      padding-left: 12px;
      padding-bottom: 16px; } }

.p-eating-rule__img {
  position: absolute;
  right: 30px;
  bottom: 30px;
  z-index: -1; }

.p-eating-rule__number {
  color: #009e6f;
  font-size: 2.5rem;
  font-family: "Prompt", sans-serif;
  font-weight: normal;
  line-height: 1; }

.p-eating-rule__title {
  font-size: 1.125rem;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 11px; }
  @media only screen and (max-width: 47.9375em) {
    .p-eating-rule__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-eating-rule__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-eating-rule__title br {
    display: none; }
    @media print, screen and (min-width: 64em) {
      .p-eating-rule__title br {
        display: block; } }

.p-eating-rule__sec {
  margin-top: 12px; }

.p-wifi-feature {
  margin-top: 10px; }

.p-wifi-feature__row {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 93px 1fr;
  grid-template-columns: 93px 1fr;
  gap: 0 17px;
  border-bottom: 1px solid #dcdfe0;
  -webkit-box-align: center;
          align-items: center;
  padding-top: 19px;
  padding-bottom: 20px; }
  @media only screen and (max-width: 47.9375em) {
    .p-wifi-feature__row {
      padding-top: 8px;
      padding-bottom: 9px; } }
  .browser-is-ie .p-wifi-feature__row {
    display: -webkit-box;
    display: flex; }

.p-wifi-feature__heading {
  font-size: 0.875rem;
  color: #fff;
  background-color: #009e6f;
  text-align: center;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 2px;
  height: 26px; }
  @media only screen and (max-width: 47.9375em) {
    .p-wifi-feature__heading {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-wifi-feature__heading {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-wifi-feature__desc {
  font-size: 1.125rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-wifi-feature__desc {
      font-size: 1rem; } }
  .browser-is-ie .p-wifi-feature__desc {
    margin-left: 12px; }

.p-online-block {
  position: relative; }

.p-online-block__bg-block {
  /* background-color: #fff; */
  background-color: #f2f5f4;
  width: 860px;
  padding-top: 56px;
  padding-left: 62px;
  padding-bottom: 52px;
  box-sizing: border-box; }
  @media print, screen and (max-width: 63.9375em) {
    .p-online-block__bg-block {
      display: block;
      width: 100%;
      padding-top: 20px;
      padding-right: 12px;
      padding-left: 12px;
      padding-bottom: 10px; } }

.p-online-block__text-block {
  width: 400px; }
  @media print, screen and (min-width: 64em) {
    .p-online-block__text-block {
      width: 340px; } }
  @media print, screen and (min-width: 87.5em) {
    .p-online-block__text-block {
      width: 540px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-online-block__text-block {
      width: 100%; } }

.p-online-block__heading {
  font-size: 1.75rem;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.4; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-block__heading {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-online-block__heading {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-online-block__heading {
      font-size: 1.375rem; } }
  .p-online-block__heading br {
    display: none; }
    @media print, screen and (min-width: 64em) {
      .p-online-block__heading br {
        display: block; } }

.p-online-block__desc {
  margin-top: 32px; }
  @media print, screen and (max-width: 63.9375em) {
    .p-online-block__desc {
      margin-top: 16px; } }

.p-online-block__img {
  position: absolute;
  top: 60px;
  right: 0; }
  @media print, screen and (min-width: 64em) {
    .p-online-block__img {
      right: 0px;
      width: 400px; } }
  @media print, screen and (min-width: 75em) {
    .p-online-block__img {
      width: 570px; } }
  @media print, screen and (max-width: 63.9375em) {
    .p-online-block__img {
      position: relative;
      display: block;
      top: 0;
      margin-top: 18px; } }
  .p-online-block__img img {
    display: block;
    width: 100%; }
  .p-online-block__img::before {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    background-color: #fff;
    content: '';
    display: block;
    z-index: 1;
    border-radius: 50%;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16); }
    @media print, screen and (max-width: 63.9375em) {
      .p-online-block__img::before {
        width: 60px;
        height: 60px; } }
    @media print, screen and (min-width: 64em) {
      .p-online-block__img::before {
        width: 80px;
        height: 80px; } }
  .p-online-block__img::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: calc(50% + 4px);
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent transparent transparent #2d2d2d;
    z-index: 2;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    @media print, screen and (max-width: 63.9375em) {
      .p-online-block__img::after {
        border-width: 15px 0 15px 18px; } }
    @media print, screen and (min-width: 64em) {
      .p-online-block__img::after {
        border-width: 18px 0 18px 24px; } }

.p-online-block__button:after {
  content: '';
  opacity: 0.5;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: all 0.1s 0s ease;
  transition: all 0.1s 0s ease; }

@media print, screen and (min-width: 64em) {
  .p-online-block__img:hover::after {
    border-color: transparent transparent transparent #009e6f;
    z-index: 2; } }

@media print, screen and (min-width: 64em) {
  .p-online-block__img:hover .p-online-block__button:after {
    background-color: #009e6f; } }

.p-online-event__item {
  border: 1px solid #dcdfe0;
  box-sizing: border-box;
  position: relative;
  padding-top: 36px;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 20px; }
  .p-online-event__item::before, .p-online-event__item::after {
    content: '';
    display: block;
    width: 30px;
    /*バツ線の長さ*/
    height: 2px;
    /*バツ線の太さ*/
    background: #009e6f;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transform-origin: 0% 50%;
            transform-origin: 0% 50%;
    position: absolute;
    top: calc(50% - 15px);
    right: -45px; }
  .p-online-event__item::after {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%;
    left: auto;
    right: -35px; }
  .p-online-event__item:last-of-type::before, .p-online-event__item:last-of-type::after {
    display: none; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-event__item {
      padding-top: 16px;
      padding-right: 20px;
      padding-left: 20px;
      padding-bottom: 10px; }
      .p-online-event__item + .p-online-event__item {
        margin-top: 42px; }
      .p-online-event__item::before, .p-online-event__item::after {
        top: auto;
        bottom: -12px;
        right: 50%;
        -webkit-transform: translateX(50%) rotate(45deg);
                transform: translateX(50%) rotate(45deg); }
      .p-online-event__item::after {
        bottom: -12px;
        right: calc(50% + 10px);
        -webkit-transform: translateX(50%) rotate(-45deg);
                transform: translateX(50%) rotate(-45deg); } }

.p-online-event__head {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  border-bottom: 1px solid #dcdfe0;
  padding-bottom: 22px; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-event__head {
      padding-bottom: 12px; } }

.p-online-event__icon {
  margin-right: 20px; }
  .p-online-event__icon img {
    display: block;
    width: 100%; }

.p-online-event__title {
  font-size: 1.0625rem;
  font-weight: bold; }

.p-online-event__body {
  padding-top: 19px; }

.p-online-event__contents + .p-online-event__contents {
  margin-top: 13px; }

.p-online-event__tag {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  background-color: #dcdfe0;
  display: inline-block;
  padding-top: 4px;
  padding-right: 8px;
  padding-left: 8px;
  padding-bottom: 4px;
  font-size: 0.875rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-event__tag {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-online-event__tag {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-online-event__desc {
  margin-top: 3px; }

.p-online-event__message {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  color: #009e6f;
  font-size: 1.125rem;
  margin-top: 18px; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-event__message {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-online-event__message {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-delivery-icon {
  background-color: #f2f5f4;
  padding-top: 20px;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
  display: -webkit-box;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-icon {
      display: block; } }

@media only screen and (max-width: 47.9375em) {
  .p-delivery-icon__icon {
    width: 30px;
    height: 30px; } }

.p-delivery-icon__contents {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center; }
  .p-delivery-icon__contents + .p-delivery-icon__contents {
    margin-left: 80px;
    position: relative; }
    .p-delivery-icon__contents + .p-delivery-icon__contents::before, .p-delivery-icon__contents + .p-delivery-icon__contents::after {
      content: '';
      display: block;
      background-color: #333;
      border-radius: 10px;
      position: absolute;
      width: 20px;
      height: 2px;
      top: 20px;
      left: -49px; }
    .p-delivery-icon__contents + .p-delivery-icon__contents::before {
      width: 2px;
      height: 21px;
      top: 10px;
      left: -40px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-icon__contents + .p-delivery-icon__contents {
      margin-left: 0;
      margin-top: 46px; }
      .p-delivery-icon__contents + .p-delivery-icon__contents::before, .p-delivery-icon__contents + .p-delivery-icon__contents::after {
        width: 16px;
        top: -20px;
        left: 40px; }
      .p-delivery-icon__contents + .p-delivery-icon__contents::before {
        width: 2px;
        height: 17px;
        left: 47px;
        top: -28px; } }

.p-delivery-icon__text {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-left: 10px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-icon__text {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-delivery-icon__text {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-delivery-plan__item {
  border: 3px solid #009e6f;
  box-sizing: border-box;
  padding-top: 18px;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 16px; }
  @media print, screen and (min-width: 64em) {
    .p-delivery-plan__item.-pt_l {
      padding-top: 36px; } }

.p-delivery-plan__title {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.75rem;
  color: #009e6f; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-delivery-plan__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-delivery-plan__text.-bold {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__text.-bold {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-delivery-plan__text.-bold {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-delivery-plan__price-block {
  display: -webkit-box;
  display: flex; }

.p-delivery-plan__price-head {
  display: block; }
  @media print, screen and (min-width: 75em) {
    .p-delivery-plan__price-head {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center; } }

.p-delivery-plan__price-title {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-right: 24px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__price-title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-delivery-plan__price-title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-delivery-plan__price {
  font-size: 1.75rem;
  margin-right: 24px;
  color: #009e6f;
  line-height: 1.2; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__price {
      margin-right: 16px; } }
  @media print, screen and (min-width: 48em) {
    .p-delivery-plan__price {
      font-size: 2rem; } }
  @media print, screen and (min-width: 64em) {
    .p-delivery-plan__price {
      font-size: 2.5rem; } }
  @media print, screen and (min-width: 75em) {
    .p-delivery-plan__price {
      font-size: 3.125rem; } }
  .p-delivery-plan__price.-mr_10 {
    margin-right: 10px; }

.p-delivery-plan__price-sub {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: end;
          align-items: flex-end;
  flex-wrap: nowrap;
  padding-bottom: 6px;
  color: #009e6f;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__price-sub {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-delivery-plan__price-sub {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__price-sub {
      padding-bottom: 0; } }

.p-delivery-plan__yen {
  font-size: 1.25rem;
  margin-right: 4px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__yen {
      font-size: 1rem; } }

.p-delivery-plan__supplement {
  font-size: 1rem;
  padding-bottom: 2px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__supplement {
      padding-bottom: 0; } }

.p-delivery-plan__day {
  color: #000;
  font-size: 1.25rem;
  margin-left: 8px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__day {
      font-size: 1rem; } }

.p-delivery-plan__list {
  background-color: #f2f5f4;
  padding-top: 16px;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 14px;
  margin-top: 6px; }
  .p-delivery-plan__list .-accent {
    color: #009e6f;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .p-delivery-plan__list .-accent {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-delivery-plan__list .-accent {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-delivery-plan__mini-list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
          align-items: baseline; }
  .p-delivery-plan__mini-list li {
    font-size: 0.875rem; }
  .p-delivery-plan__mini-list ul + ul {
    margin-left: 12px; }
  @media only screen and (max-width: 47.9375em) {
    .p-delivery-plan__mini-list {
      display: block;
      margin-top: 8px; }
      .p-delivery-plan__mini-list ul + ul {
        margin-left: 0; } }

.p-delivery-plan__info {
  margin-top: 4px;
  font-size: 0.875rem; }

.p-delivery-plan__item.-standard {
  border-color: #888888; }
  .p-delivery-plan__item.-standard .p-delivery-plan__title {
    color: #888888; }
  .p-delivery-plan__item.-standard .p-delivery-plan__price {
    color: #888888; }
  .p-delivery-plan__item.-standard .p-delivery-plan__price-sub {
    color: #888888; }

.p-online-performance + .p-online-performance {
  margin-top: 30px; }

.p-online-performance__item {
  border: 1px solid #dcdfe0;
  box-sizing: border-box;
  text-align: center;
  padding-top: 30px;
  padding-bottom: 24px; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-performance__item {
      padding-top: 16px;
      padding-bottom: 12px; } }

.p-online-performance__icon {
  height: 70px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center; }

.p-online-performance__category {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-top: 12px; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-performance__category {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-online-performance__category {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-online-performance__title {
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.375rem;
  line-height: 1.2;
  margin-top: 3px; }
  @media only screen and (max-width: 47.9375em) {
    .p-online-performance__title {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media print, screen and (min-width: 48em) {
    .p-online-performance__title {
      font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  @media only screen and (max-width: 47.9375em) {
    .p-online-performance__title {
      font-size: 1.125rem; } }

.p-toc {
  background-color: #f2f5f4;
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 20px; }
  @media print, screen and (min-width: 48em) {
    .p-toc {
      padding-top: 20px;
      padding-left: 40px;
      padding-right: 40px;
      padding-bottom: 20px; } }
  .p-toc__head {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; }
  .p-toc__title {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold;
    font-size: 1.375rem; }
    @media only screen and (max-width: 47.9375em) {
      .p-toc__title {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-toc__title {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-toc__action {
    position: relative;
    white-space: nowrap; }
    @media print, screen and (min-width: 64em) {
      .p-toc__action {
        position: relative;
        border-bottom: none; } }
    .p-toc__action a,
    .p-toc__action button {
      cursor: pointer; }
      @media print, screen and (min-width: 64em) {
        .p-toc__action a,
        .p-toc__action button {
          padding-right: 3px;
          padding-left: 3px; } }
      @media screen and (min-width: 1136px) {
        .p-toc__action a,
        .p-toc__action button {
          padding-right: 5px;
          padding-left: 5px; } }
      @media screen and (min-width: 1420px) {
        .p-toc__action a,
        .p-toc__action button {
          padding-right: 9px;
          padding-left: 9px; } }
    .p-toc__action:first-child {
      padding-left: 0; }
    .p-toc__action > button {
      padding: 0;
      margin: 0;
      background-color: transparent;
      border: none; }
    .p-toc__action > a,
    .p-toc__action > button {
      display: -webkit-box;
      display: flex;
      -webkit-box-align: center;
              align-items: center;
      -webkit-box-pack: justify;
              justify-content: space-between;
      font-size: 0.875rem;
      color: #666666;
      line-height: 1.75;
      height: 100%; }
      @media only screen and (max-width: 47.9375em) {
        .p-toc__action > a,
        .p-toc__action > button {
          font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
      @media print, screen and (min-width: 48em) {
        .p-toc__action > a,
        .p-toc__action > button {
          font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
      @media print, screen and (max-width: 63.9375em) {
        .p-toc__action > a,
        .p-toc__action > button {
          padding-top: 10px;
          padding-right: 20px;
          padding-bottom: 10px; } }
      @media print, screen and (min-width: 64em) {
        .p-toc__action > a,
        .p-toc__action > button {
          -webkit-transition: color 0s;
          transition: color 0s; } }
      @media print, screen and (min-width: 64em) {
        .p-toc__action > a:hover,
        .p-toc__action > button:hover {
          color: #009e6f; } }
    .p-toc__action.-dropdown > button {
      position: relative; }
      @media print, screen and (max-width: 63.9375em) {
        .p-toc__action.-dropdown > button {
          padding-left: 0;
          width: 100%; } }
      @media print, screen and (min-width: 64em) {
        .p-toc__action.-dropdown > button {
          padding-right: 15px;
          padding-left: 9px; } }
      @media print, screen and (min-width: 75em) {
        .p-toc__action.-dropdown > button {
          padding-right: 19px;
          padding-left: 9px; } }
      @media print, screen and (max-width: 63.9375em) {
        .p-toc__action.-dropdown > button span {
          padding-right: 18px;
          position: relative; } }
      .p-toc__action.-dropdown > button span:after {
        content: '';
        box-sizing: border-box;
        display: block;
        position: absolute;
        width: 8px;
        height: 8px;
        border-style: solid;
        border-width: 2px 0 0 2px;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        top: calc(50% - 5px);
        left: calc(50% - 4px);
        border-color: "#666666";
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        content: '';
        left: auto;
        right: 2px;
        -webkit-transition: -webkit-transform 0.2s;
        transition: -webkit-transform 0.2s;
        transition: transform 0.2s;
        transition: transform 0.2s, -webkit-transform 0.2s;
        top: calc(50% - 4px); }
      @media print, screen and (min-width: 48em) {
        .p-toc__action.-dropdown > button:hover span::after {
          border-color: #009e6f; } }
    .p-toc__action.-dropdown.-active > button span:after {
      content: '';
      left: auto;
      right: 2px;
      -webkit-transform: rotate(225deg);
              transform: rotate(225deg);
      -webkit-transition: -webkit-transform 0.2s;
      transition: -webkit-transform 0.2s;
      transition: transform 0.2s;
      transition: transform 0.2s, -webkit-transform 0.2s; }
    @media print, screen and (min-width: 48em) {
      .p-toc__action.-dropdown.-active > button:hover span::after {
        border-color: #009e6f; } }
  .p-toc__row {
    border-bottom: 1px solid #dcdfe0;
    padding-top: 14px;
    padding-bottom: 14px; }
    .p-toc__row:last-child {
      border-bottom: none; }
  .p-toc__text {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold;
    font-size: 1rem; }
    @media only screen and (max-width: 47.9375em) {
      .p-toc__text {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-toc__text {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-toc__text {
        font-size: 1.125rem; } }

.p-article-info {
  font-size: 0.875rem;
  margin-top: 5px; }
  .p-article-info__time {
    margin-right: 20px; }
  @media print, screen and (min-width: 48em) {
    .p-article-info {
      font-size: 1rem; } }

.p-article-recommend {
  background-color: #f2f5f4;
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 30px; }
  @media print, screen and (min-width: 48em) {
    .p-article-recommend {
      padding-top: 20px;
      padding-left: 30px;
      padding-right: 30px;
      padding-bottom: 30px; } }
  .p-article-recommend__inner {
    display: -webkit-box;
    display: flex;
    margin-top: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column; }
    @media print, screen and (min-width: 48em) {
      .p-article-recommend__inner {
        display: -webkit-box;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
                flex-direction: row; } }
  .p-article-recommend__image {
    font-size: 0; }
    .p-article-recommend__image > img {
      width: 100%; }
      @media print, screen and (min-width: 48em) {
        .p-article-recommend__image > img {
          width: auto;
          max-width: 325px; } }
  .p-article-recommend__body {
    margin-top: 20px;
    margin-left: 0; }
    @media print, screen and (min-width: 48em) {
      .p-article-recommend__body {
        margin-top: 0;
        margin-left: 20px; } }
  .p-article-recommend__title {
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold;
    font-size: 1.375rem;
    line-height: 1.5; }
    @media only screen and (max-width: 47.9375em) {
      .p-article-recommend__title {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-article-recommend__title {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .p-article-recommend__title {
        line-height: 1.7; } }
  .p-article-recommend__text {
    font-size: 1rem;
    margin-top: 5px; }
  .p-article-recommend__link {
    margin-top: 10px; }
    @media print, screen and (min-width: 48em) {
      .p-article-recommend__link {
        margin-top: 32px; } }

@media print, screen and (min-width: 100em) {
  .u-hide-full {
    display: none; } }

@media print, screen and (min-width: 87.5em) {
  .u-hide-XL {
    display: none; } }

@media print, screen and (min-width: 75em) {
  .u-hide-L {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .u-hide-M {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .u-hide-S {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .u-hide-XS {
    display: none; } }

@media print {
  .u-hide-print {
    display: none; } }

@media print, screen and (max-width: 63.9375em) {
  .u-hide-underM {
    display: none; } }

.u-show-XS {
  display: none; }
  @media only screen and (max-width: 47.9375em) {
    .u-show-XS {
      display: block; } }

.u-show-S {
  display: none; }
  @media print, screen and (min-width: 48em) {
    .u-show-S {
      display: block; } }

.u-show-S_inline {
  display: none; }
  @media print, screen and (min-width: 48em) {
    .u-show-S_inline {
      display: inline; } }

.u-show-M {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .u-show-M {
      display: block; } }
  @media print, screen and (min-width: 75em) {
    .u-show-M.-L {
      display: none; } }

.u-show-L {
  display: none; }
  @media print, screen and (min-width: 75em) {
    .u-show-L {
      display: block; } }

.u-show-XL {
  display: none; }
  @media print, screen and (min-width: 87.5em) {
    .u-show-XL {
      display: block; } }

.u-show-full {
  display: none; }
  @media print, screen and (min-width: 100em) {
    .u-show-full {
      display: block; } }

/*
 * アニメーションのみ行うクラス
 */
@-webkit-keyframes slideToRight {
  0% {
    right: 100%; }
  30% {
    right: 0; }
  40% {
    right: 0; }
  100% {
    right: -100%; } }
@keyframes slideToRight {
  0% {
    right: 100%; }
  30% {
    right: 0; }
  40% {
    right: 0; }
  100% {
    right: -100%; } }

@-webkit-keyframes slideToRight-content {
  0% {
    right: 100%; }
  50% {
    right: 0; } }

@keyframes slideToRight-content {
  0% {
    right: 100%; }
  50% {
    right: 0; } }

@-webkit-keyframes slideToLeft {
  0% {
    left: 100%; }
  30% {
    left: 0; }
  40% {
    left: 0; }
  100% {
    left: -100%; } }

@keyframes slideToLeft {
  0% {
    left: 100%; }
  30% {
    left: 0; }
  40% {
    left: 0; }
  100% {
    left: -100%; } }

@-webkit-keyframes slideToLeft-content {
  0% {
    left: 100%; }
  50% {
    left: 0; } }

@keyframes slideToLeft-content {
  0% {
    left: 100%; }
  50% {
    left: 0; } }

/* ベース */
.u-fade {
  opacity: 0;
  -webkit-transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1); }
  @media print, screen and (min-width: 64em) {
    .u-fade {
      opacity: 0;
      -webkit-transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1); } }
  .u-fade.is-active,
  .u-anime-group.is-active .u-fade {
    opacity: 1; }
    @media print, screen and (min-width: 64em) {
      .u-fade.is-active,
      .u-anime-group.is-active .u-fade {
        opacity: 1; } }
  .u-fade.-fast {
    -webkit-transition: all 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 0.35s cubic-bezier(0.215, 0.61, 0.355, 1); }
    @media print, screen and (min-width: 64em) {
      .u-fade.-fast {
        -webkit-transition: all 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: all 0.35s cubic-bezier(0.215, 0.61, 0.355, 1); } }

/* 下から上 */
.u-fade.-up {
  -webkit-transform: translate3d(0, 50px, 0);
          transform: translate3d(0, 50px, 0); }
  @media print, screen and (min-width: 64em) {
    .u-fade.-up {
      -webkit-transform: translate3d(0, 50px, 0);
              transform: translate3d(0, 50px, 0); } }
  .u-fade.-up.is-active,
  .u-anime-group.is-active .u-fade.-up {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
    @media print, screen and (min-width: 64em) {
      .u-fade.-up.is-active,
      .u-anime-group.is-active .u-fade.-up {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0); } }

/* 右から左 */
.u-fade.-left {
  -webkit-transform: translate3d(50px, 0, 0);
          transform: translate3d(50px, 0, 0); }
  @media print, screen and (min-width: 64em) {
    .u-fade.-left {
      -webkit-transform: translate3d(50px, 0, 0);
              transform: translate3d(50px, 0, 0); } }
  .u-fade.-left.is-active,
  .u-anime-group.is-active .u-fade.-left {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
    @media print, screen and (min-width: 64em) {
      .u-fade.-left.is-active,
      .u-anime-group.is-active .u-fade.-left {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0); } }

/* 複数カラムのコンテンツを左から順に表示 */
.u-anime-group.is-active .u-fade:nth-of-type(1) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(1) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; } }

.u-anime-group.is-active .u-fade:nth-of-type(2) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(2) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s; } }

.u-anime-group.is-active .u-fade:nth-of-type(3) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(3) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s; } }

.u-anime-group.is-active .u-fade:nth-of-type(4) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(4) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }

.u-anime-group.is-active .u-fade:nth-of-type(5) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(5) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; } }

.u-anime-group.is-active .u-fade:nth-of-type(6) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(6) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; } }

.u-anime-group.is-active .u-fade:nth-of-type(7) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(7) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s; } }

.u-anime-group.is-active .u-fade:nth-of-type(8) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(8) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s; } }

.u-anime-group.is-active .u-fade:nth-of-type(9) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.9s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.9s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(9) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.9s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.9s; } }

.u-anime-group.is-active .u-fade:nth-of-type(10) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(10) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s; } }

.u-anime-group.is-active .u-fade:nth-of-type(11) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.1s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.1s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(11) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.1s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.1s; } }

.u-anime-group.is-active .u-fade:nth-of-type(12) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.2s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.2s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(12) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.2s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.2s; } }

.u-anime-group.is-active .u-fade:nth-of-type(13) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(13) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s; } }

.u-anime-group.is-active .u-fade:nth-of-type(14) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.4s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.4s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(14) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.4s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.4s; } }

.u-anime-group.is-active .u-fade:nth-of-type(15) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(15) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s; } }

.u-anime-group.is-active .u-fade:nth-of-type(16) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.6s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.6s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(16) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.6s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.6s; } }

.u-anime-group.is-active .u-fade:nth-of-type(17) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.7s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.7s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(17) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.7s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.7s; } }

.u-anime-group.is-active .u-fade:nth-of-type(18) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.8s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.8s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(18) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.8s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.8s; } }

.u-anime-group.is-active .u-fade:nth-of-type(19) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.9s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.9s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(19) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.9s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.9s; } }

.u-anime-group.is-active .u-fade:nth-of-type(20) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(20) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2s; } }

.u-anime-group.is-active .u-fade:nth-of-type(21) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.1s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.1s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(21) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.1s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.1s; } }

.u-anime-group.is-active .u-fade:nth-of-type(22) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.2s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.2s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(22) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.2s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.2s; } }

.u-anime-group.is-active .u-fade:nth-of-type(23) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.3s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.3s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(23) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.3s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.3s; } }

.u-anime-group.is-active .u-fade:nth-of-type(24) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.4s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.4s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(24) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.4s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.4s; } }

.u-anime-group.is-active .u-fade:nth-of-type(25) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.5s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.5s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(25) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.5s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.5s; } }

.u-anime-group.is-active .u-fade:nth-of-type(26) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.6s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.6s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(26) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.6s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.6s; } }

.u-anime-group.is-active .u-fade:nth-of-type(27) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.7s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.7s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(27) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.7s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.7s; } }

.u-anime-group.is-active .u-fade:nth-of-type(28) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.8s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.8s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(28) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.8s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.8s; } }

.u-anime-group.is-active .u-fade:nth-of-type(29) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.9s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.9s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(29) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.9s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.9s; } }

.u-anime-group.is-active .u-fade:nth-of-type(30) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(30) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3s; } }

.u-anime-group.is-active .u-fade:nth-of-type(31) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.1s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.1s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(31) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.1s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.1s; } }

.u-anime-group.is-active .u-fade:nth-of-type(32) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.2s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.2s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(32) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.2s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.2s; } }

.u-anime-group.is-active .u-fade:nth-of-type(33) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.3s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.3s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(33) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.3s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.3s; } }

.u-anime-group.is-active .u-fade:nth-of-type(34) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.4s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.4s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(34) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.4s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.4s; } }

.u-anime-group.is-active .u-fade:nth-of-type(35) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.5s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.5s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(35) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.5s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.5s; } }

.u-anime-group.is-active .u-fade:nth-of-type(36) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.6s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.6s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(36) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.6s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.6s; } }

.u-anime-group.is-active .u-fade:nth-of-type(37) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.7s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.7s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(37) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.7s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.7s; } }

.u-anime-group.is-active .u-fade:nth-of-type(38) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.8s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.8s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(38) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.8s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.8s; } }

.u-anime-group.is-active .u-fade:nth-of-type(39) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.9s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.9s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(39) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.9s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.9s; } }

.u-anime-group.is-active .u-fade:nth-of-type(40) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(40) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4s; } }

.u-anime-group.is-active .u-fade:nth-of-type(41) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.1s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.1s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(41) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.1s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.1s; } }

.u-anime-group.is-active .u-fade:nth-of-type(42) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.2s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.2s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(42) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.2s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.2s; } }

.u-anime-group.is-active .u-fade:nth-of-type(43) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.3s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.3s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(43) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.3s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.3s; } }

.u-anime-group.is-active .u-fade:nth-of-type(44) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.4s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.4s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(44) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.4s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.4s; } }

.u-anime-group.is-active .u-fade:nth-of-type(45) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.5s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.5s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(45) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.5s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.5s; } }

.u-anime-group.is-active .u-fade:nth-of-type(46) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.6s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.6s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(46) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.6s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.6s; } }

.u-anime-group.is-active .u-fade:nth-of-type(47) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.7s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.7s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(47) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.7s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.7s; } }

.u-anime-group.is-active .u-fade:nth-of-type(48) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.8s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.8s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(48) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.8s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.8s; } }

.u-anime-group.is-active .u-fade:nth-of-type(49) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.9s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.9s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(49) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.9s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.9s; } }

.u-anime-group.is-active .u-fade:nth-of-type(50) {
  -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 5s;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 5s; }
  @media print, screen and (min-width: 64em) {
    .u-anime-group.is-active .u-fade:nth-of-type(50) {
      -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 5s;
      transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 5s; } }

.u-button-animation {
  position: relative;
  overflow: hidden; }
  .u-button-animation::before {
    content: '';
    position: absolute;
    background-color: #45bf7e;
    width: 100%;
    height: 100%;
    z-index: 10;
    top: 0;
    right: -100%;
    border-radius: 4px; }
  .u-button-animation .c-button {
    opacity: 0; }
  .u-button-animation.is-active::before {
    -webkit-animation: slideToRight 0.8s ease 1 normal;
            animation: slideToRight 0.8s ease 1 normal; }
  .u-button-animation.is-active .c-button {
    -webkit-animation: slideToRight-content 0.8s ease 1 normal;
            animation: slideToRight-content 0.8s ease 1 normal;
    opacity: 1; }

.u-slide-left {
  position: relative;
  overflow: hidden; }
  .u-slide-left img {
    opacity: 0;
    position: relative;
    -webkit-transform: translate3d(70px, 0, 0);
            transform: translate3d(70px, 0, 0);
    -webkit-transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
    transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
    transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
    transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98), -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98); }
    @media print, screen and (max-width: 63.9375em) {
      .u-slide-left img {
        -webkit-transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
        transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
        transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
        transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98), -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98); } }
  .u-slide-left::before {
    content: '';
    position: absolute;
    top: 0;
    right: 100%;
    width: 100%;
    height: 100%;
    background-color: #D0E1DB;
    z-index: 20; }
  .u-slide-left.-support::before {
    background-color: #D0E1DB; }
  .p-home-block.is-active .u-slide-left::before {
    -webkit-animation: slideToLeft 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
            animation: slideToLeft 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.is-active .u-slide-left::before {
        -webkit-animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
                animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; } }
  .p-home-block.is-active .u-slide-left img {
    -webkit-animation: slideToLeft-content 0.75s ease-out 1 normal;
            animation: slideToLeft-content 0.75s ease-out 1 normal;
    opacity: 1;
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0); }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.is-active .u-slide-left img {
        -webkit-animation: slideToLeft-content 1s ease-out 1 normal;
                animation: slideToLeft-content 1s ease-out 1 normal; } }
  .p-service-block.is-active .u-slide-left::before {
    -webkit-animation: slideToLeft 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
            animation: slideToLeft 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.is-active .u-slide-left::before {
        -webkit-animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
                animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; } }
  .p-service-block.is-active .u-slide-left img {
    -webkit-animation: slideToLeft-content 0.75s ease-out 1 normal;
            animation: slideToLeft-content 0.75s ease-out 1 normal;
    opacity: 1;
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0); }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.is-active .u-slide-left img {
        -webkit-animation: slideToLeft-content 1s ease-out 1 normal;
                animation: slideToLeft-content 1s ease-out 1 normal; } }

.u-slide-right {
  position: relative;
  overflow: hidden; }
  .u-slide-right img {
    opacity: 0;
    position: relative;
    -webkit-transform: translate3d(-70px, 0, 0);
            transform: translate3d(-70px, 0, 0);
    -webkit-transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
    transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
    transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
    transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98), -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98); }
    @media print, screen and (max-width: 63.9375em) {
      .u-slide-right img {
        -webkit-transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
        transition: -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
        transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
        transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98), -webkit-transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98); } }
  .u-slide-right::before {
    content: '';
    position: absolute;
    top: 0;
    right: 100%;
    width: 100%;
    height: 100%;
    background-color: #D0E1DB;
    z-index: 20; }
  .u-slide-right.-support::before {
    background-color: #D0E1DB; }
  .p-home-block.is-active .u-slide-right::before {
    -webkit-animation: slideToRight 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
            animation: slideToRight 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.is-active .u-slide-right::before {
        -webkit-animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
                animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; } }
  .p-home-block.is-active .u-slide-right img {
    -webkit-animation: slideToRight-content 0.75s ease-out 1 normal;
            animation: slideToRight-content 0.75s ease-out 1 normal;
    opacity: 1;
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0); }
    @media print, screen and (max-width: 63.9375em) {
      .p-home-block.is-active .u-slide-right img {
        -webkit-animation: slideToRight-content 1s ease-out 1 normal;
                animation: slideToRight-content 1s ease-out 1 normal; } }
  .p-service-block.is-active .u-slide-right::before {
    -webkit-animation: slideToRight 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
            animation: slideToRight 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.is-active .u-slide-right::before {
        -webkit-animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
                animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal; } }
  .p-service-block.is-active .u-slide-right img {
    -webkit-animation: slideToRight-content 0.75s ease-out 1 normal;
            animation: slideToRight-content 0.75s ease-out 1 normal;
    opacity: 1;
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0); }
    @media print, screen and (max-width: 63.9375em) {
      .p-service-block.is-active .u-slide-right img {
        -webkit-animation: slideToRight-content 1s ease-out 1 normal;
                animation: slideToRight-content 1s ease-out 1 normal; } }

.u-slide-left-support {
  position: relative;
  overflow: hidden; }
  .u-slide-left-support img {
    opacity: 0;
    position: relative;
    -webkit-transform: translate3d(90px, 0, 0);
            transform: translate3d(90px, 0, 0);
    -webkit-transition: -webkit-transform 1s 0s ease;
    transition: -webkit-transform 1s 0s ease;
    transition: transform 1s 0s ease;
    transition: transform 1s 0s ease, -webkit-transform 1s 0s ease; }
    @media print, screen and (max-width: 63.9375em) {
      .u-slide-left-support img {
        -webkit-transition: -webkit-transform 0.75s 0s ease;
        transition: -webkit-transform 0.75s 0s ease;
        transition: transform 0.75s 0s ease;
        transition: transform 0.75s 0s ease, -webkit-transform 0.75s 0s ease; } }
  .u-slide-left-support::before {
    content: '';
    position: absolute;
    top: 0;
    right: 100%;
    width: 100%;
    height: 100%;
    background-color: #D0E1DB;
    z-index: 20; }
  .c-column.-sp_reverse.is-active .u-slide-left-support::before {
    -webkit-animation: slideToLeft 0.75s ease-out 1 normal;
            animation: slideToLeft 0.75s ease-out 1 normal; }
    @media print, screen and (max-width: 63.9375em) {
      .c-column.-sp_reverse.is-active .u-slide-left-support::before {
        -webkit-animation: slideToLeft 0.75s ease-out 1 normal;
                animation: slideToLeft 0.75s ease-out 1 normal; } }
  .c-column.-sp_reverse.is-active .u-slide-left-support img {
    -webkit-animation: slideToLeft-content 0.75s ease-out 1 normal;
            animation: slideToLeft-content 0.75s ease-out 1 normal;
    opacity: 1;
    -webkit-transform: translate3d(0px, 0, 0);
            transform: translate3d(0px, 0, 0); }
    @media print, screen and (max-width: 63.9375em) {
      .c-column.-sp_reverse.is-active .u-slide-left-support img {
        -webkit-animation: slideToLeft-content 0.75s ease-out 1 normal;
                animation: slideToLeft-content 0.75s ease-out 1 normal; } }

.u-fade.-slow {
  opacity: 1;
  -webkit-transition: all 0.95s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.95s cubic-bezier(0.215, 0.61, 0.355, 1); }
  @media print, screen and (min-width: 64em) {
    .u-fade.-slow {
      opacity: 1;
      -webkit-transition: all 0.95s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: all 0.95s cubic-bezier(0.215, 0.61, 0.355, 1); } }

/* ベース */
.u-fade2 {
  opacity: 1;
  -webkit-transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1); }
  @media print, screen and (min-width: 64em) {
    .u-fade2 {
      opacity: 1;
      -webkit-transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
      transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1); } }
  .u-fade2.is-active,
  .u-anime-group.is-active .u-fade2 {
    opacity: 1; }
    @media print, screen and (min-width: 64em) {
      .u-fade2.is-active,
      .u-anime-group.is-active .u-fade2 {
        opacity: 1; } }

/* 下から上 */
.u-fade2.-up2 {
  -webkit-transform: translate3d(0, 130px, 0);
          transform: translate3d(0, 130px, 0); }
  @media print, screen and (min-width: 64em) {
    .u-fade2.-up2 {
      -webkit-transform: translate3d(0, 130px, 0);
              transform: translate3d(0, 130px, 0); } }
  .u-fade2.-up2.is-active,
  .u-anime-group.is-active .u-fade2.-up2 {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
    @media print, screen and (min-width: 64em) {
      .u-fade2.-up2.is-active,
      .u-anime-group.is-active .u-fade2.-up2 {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0); } }

.u-no-break {
  display: inline-block; }

@media print, screen and (min-width: 64em) {
  .u-no-break_M {
    display: inline-block; } }

@media print, screen and (min-width: 75em) {
  .u-no-break_L {
    display: inline-block; } }

.p-gallery__heading .u-no-break_L {
  color: #2d2d2d; }

.u-page-break {
  page-break-before: always; }

.u-mt-0 {
  margin-top: 0px; }

.u-mr-0 {
  margin-right: 0px; }

.u-mb-0 {
  margin-bottom: 0px; }

.u-ml-0 {
  margin-left: 0px; }

.u-pt-0 {
  padding-top: 0px; }

.u-pr-0 {
  padding-right: 0px; }

.u-pb-0 {
  padding-bottom: 0px; }

.u-pl-0 {
  padding-left: 0px; }

.u-mt-1 {
  margin-top: 5px; }

.u-mr-1 {
  margin-right: 5px; }

.u-mb-1 {
  margin-bottom: 5px; }

.u-ml-1 {
  margin-left: 5px; }

.u-pt-1 {
  padding-top: 5px; }

.u-pr-1 {
  padding-right: 5px; }

.u-pb-1 {
  padding-bottom: 5px; }

.u-pl-1 {
  padding-left: 5px; }

.u-mt-2 {
  margin-top: 10px; }

.u-mr-2 {
  margin-right: 10px; }

.u-mb-2 {
  margin-bottom: 10px; }

.u-ml-2 {
  margin-left: 10px; }

.u-pt-2 {
  padding-top: 10px; }

.u-pr-2 {
  padding-right: 10px; }

.u-pb-2 {
  padding-bottom: 10px; }

.u-pl-2 {
  padding-left: 10px; }

.u-mt-3 {
  margin-top: 15px; }

.u-mr-3 {
  margin-right: 15px; }

.u-mb-3 {
  margin-bottom: 15px; }

.u-ml-3 {
  margin-left: 15px; }

.u-pt-3 {
  padding-top: 15px; }

.u-pr-3 {
  padding-right: 15px; }

.u-pb-3 {
  padding-bottom: 15px; }

.u-pl-3 {
  padding-left: 15px; }

.u-mt-4 {
  margin-top: 20px; }

.u-mr-4 {
  margin-right: 20px; }

.u-mb-4 {
  margin-bottom: 20px; }

.u-ml-4 {
  margin-left: 20px; }

.u-pt-4 {
  padding-top: 20px; }

.u-pr-4 {
  padding-right: 20px; }

.u-pb-4 {
  padding-bottom: 20px; }

.u-pl-4 {
  padding-left: 20px; }

.u-mt-5 {
  margin-top: 25px; }

.u-mr-5 {
  margin-right: 25px; }

.u-mb-5 {
  margin-bottom: 25px; }

.u-ml-5 {
  margin-left: 25px; }

.u-pt-5 {
  padding-top: 25px; }

.u-pr-5 {
  padding-right: 25px; }

.u-pb-5 {
  padding-bottom: 25px; }

.u-pl-5 {
  padding-left: 25px; }

/* ==========================================================================
Form
========================================================================== */
@media only screen and (max-width: 47.9375em) {
  .f-content-block__head {
    margin-bottom: 18px; } }

@media print, screen and (min-width: 48em) {
  .f-content-block__head {
    margin-bottom: 32px; } }

.f-content-block__item + .f-content-block__item {
  margin-top: 36px; }

.f-content-block__item.success .f-input-text {
  position: relative; }

.f-content-block__item.error .f-input-text {
  position: relative; }

@media print, screen and (min-width: 48em) {
  .f-content-block__item--column_2 {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
            justify-content: space-between; } }

@media only screen and (max-width: 47.9375em) {
  .f-content-block__item--column_2 > * {
    margin-top: 22px; } }

@media print, screen and (min-width: 48em) {
  .f-content-block__item--column_2 > * {
    width: calc(50% - 20px); } }

.f-container {
  margin-top: 50px;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  padding-bottom: calc(80px);
  padding-right: 4.6875%;
  padding-left: 4.6875%; }
  @media print, screen and (min-width: 48em) {
    .f-container {
      max-width: 800px;
      margin-right: auto;
      margin-left: auto; } }

.c-content-block {
  margin-top: 40px; }
  .c-content-block .f-container {
    padding-bottom: 0; }

.f-input-block {
  border: none; }
  @media print, screen and (min-width: 48em) {
    .f-input-block {
      min-height: 25px; } }
  @media print, screen and (min-width: 64em) {
    .f-input-block.-input .f-input-block__head {
      padding-top: 0.4em; } }

@media only screen and (max-width: 47.9375em) {
  .f-input-block__head {
    margin-bottom: 15px; } }

@media print, screen and (min-width: 48em) {
  .f-input-block__head {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: baseline;
            align-items: baseline;
    flex-wrap: wrap;
    margin-bottom: 15px; } }

@media print, screen and (min-width: 64em) {
  .f-input-block__head {
    box-sizing: border-box;
    margin-bottom: 0; } }

.f-content-block--type_check .f-input-block__head {
  margin-bottom: 27px; }
  @media only screen and (max-width: 47.9375em) {
    .f-content-block--type_check .f-input-block__head {
      margin-bottom: 14px; } }

.f-input-block__heading {
  position: relative;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .f-input-block__heading {
      display: inline-block; } }
  @media print, screen and (min-width: 48em) {
    .f-input-block__heading {
      font-size: 1.125rem; } }
  .f-input-block__heading span.-note {
    font-weight: normal;
    font-size: 1rem; }

.f-input-block__sub-heading {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .f-input-block__sub-heading {
      display: inline-block; } }
  @media print, screen and (min-width: 48em) {
    .f-input-block__sub-heading {
      font-size: 0.875rem; } }

.f-input-block__body {
  margin-top: 12px;
  position: relative; }
  .f-input-block__body::before {
    display: block;
    position: absolute;
    content: '';
    background-repeat: no-repeat;
    width: 19px;
    height: 18px;
    right: 12px;
    top: 12px;
    visibility: hidden;
    opacity: 0; }
  .f-input-block.success .f-input-block__body::before {
    display: block;
    position: absolute;
    content: '';
    background-image: url("/common/img/icon_success.svg");
    background-repeat: no-repeat;
    width: 19px;
    height: 18px;
    right: 12px;
    top: 12px;
    z-index: 20;
    visibility: visible;
    opacity: 1; }
  .f-input-block.error .f-input-block__body::before {
    display: block;
    position: absolute;
    content: '';
    background-image: url("/common/img/icon_error.svg");
    background-repeat: no-repeat;
    width: 24px;
    height: 23px;
    right: 12px;
    top: 15px;
    z-index: 20;
    visibility: visible;
    opacity: 1; }

.f-input-block__body--type_postal-code {
  width: 200px; }

.f-input-block__body-item {
  display: -webkit-box;
  display: flex;
  display: -webkit-flex;
  width: 100%;
  margin-left: 10px; }
  @media only screen and (max-width: 47.9375em) {
    .f-input-block__body-item {
      margin-left: 0;
      margin-bottom: 10px; } }
  .f-input-block__body-item:first-child {
    margin-left: 0; }
  @media only screen and (max-width: 47.9375em) {
    .f-input-block__body-item:last-child {
      margin-bottom: 0; } }
  .f-input-block__body-item > .f-input-inner-text {
    line-height: 2.5; }

@media print, screen and (min-width: 48em) {
  .f-input-block--lv_2 {
    margin-top: 10px; } }

.f-required {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: bold;
  color: #e31515; }

.f-input-text {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  background: #fff;
  position: relative;
  border-width: 1px;
  border-style: solid;
  border-color: #e3e3e0;
  border-radius: 4px;
  background-color: #f7f7f7;
  padding-top: 9px;
  padding-right: 14px;
  padding-bottom: 9px;
  padding-left: 14px;
  z-index: 0;
  box-sizing: border-box;
  -webkit-transition: background-color 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: background-color 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 100%;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  font-size: 1rem; }
  @media only screen and (max-width: 47.9375em) {
    .f-input-text:hover {
      cursor: default; } }
  @media print, screen and (min-width: 48em) {
    .f-input-text:hover {
      background-color: #fff; } }
  .success .f-input-text {
    background-color: #fff; }
  .error .f-input-text {
    background: #f6dcdc;
    border-color: #e31515; }
  .f-input-text[type='number']::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .f-input-text[type='number']::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .f-input-text[type='number'] {
    -moz-appearance: textfield; }
  .f-input-text::-webkit-input-placeholder {
    color: #ccc; }
  .f-input-text::-moz-placeholder {
    color: #ccc; }
  .f-input-text:-ms-input-placeholder {
    color: #ccc; }
  .f-input-text::-ms-input-placeholder {
    color: #ccc; }
  .f-input-text::placeholder {
    color: #ccc; }
  .f-input-text .browser-is-edge:-ms-input-placeholder,
  .browser-is-ie .f-input-text:-ms-input-placeholder {
    color: #ccc; }

.f-input-text--type_calendar {
  background-image: url("/inquiry/img/icon_calendar.svg");
  background-repeat: no-repeat;
  background-position: right 14px top 11px; }
  @media print, screen and (min-width: 48em) {
    .f-input-text--type_calendar {
      width: 339px; } }

.f-textarea {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  background-color: #f7f7f7;
  border-width: 1px;
  border-style: solid;
  border-color: #e3e3e0;
  border-radius: 4px;
  padding-top: 9px;
  padding-right: 14px;
  padding-bottom: 9px;
  padding-left: 14px;
  box-sizing: border-box;
  -webkit-transition: all 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 100%;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  font-size: 1rem; }
  @media only screen and (max-width: 47.9375em) {
    .f-textarea {
      height: 180px; } }
  @media print, screen and (min-width: 48em) {
    .f-textarea {
      height: 300px;
      width: 100%; } }
  .browser-is-ie .f-textarea {
    overflow: auto; }
  @media only screen and (max-width: 47.9375em) {
    .f-textarea:hover {
      cursor: default; } }
  @media print, screen and (min-width: 48em) {
    .f-textarea:hover {
      background-color: #fff; } }
  .success .f-textarea {
    background-color: #fff; }
  .error .f-textarea {
    background-color: #f6dcdc; }

.f-select {
  display: block;
  position: relative;
  background: #fff;
  width: 100%; }
  .f-select > select {
    position: relative;
    z-index: 1;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    line-height: 1.5;
    padding-top: 9px;
    padding-right: 50px;
    padding-bottom: 10px;
    padding-left: 14px;
    background: transparent;
    cursor: pointer;
    border-width: 1px;
    border-style: solid;
    border-color: #e3e3e0;
    border-radius: 4px;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
    font-size: 1rem; }
    @media only screen and (max-width: 47.9375em) {
      .f-select > select {
        height: 44px; } }
    .f-select > select::-ms-expand {
      display: none; }
  .f-select:before {
    position: absolute;
    content: '';
    top: 0;
    right: 0;
    width: 40px;
    height: calc(100%);
    border-radius: 0 4px 4px 0;
    z-index: 2;
    pointer-events: none; }
  .f-select:after {
    position: absolute;
    content: '';
    top: calc(50% - 2px);
    right: 17px;
    width: 8px;
    height: 8px;
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-bottom: 0px transparent solid;
    border-right: 5px transparent solid;
    border-left: 5px transparent solid;
    border-top: 5px #2d2d2d solid;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    content: '';
    z-index: 3; }
  .success .f-select {
    background: #fff; }
  .error .f-select {
    background: #f6dcdc; }
    .error .f-select select {
      border-color: #f75961; }

@media print, screen and (min-width: 48em) {
  .f-select--size_50per {
    width: 50%; } }

.f-continue-block {
  margin-top: 20px; }

.f-continue-block__button {
  width: 250px;
  margin-right: auto;
  margin-left: auto; }
  @media only screen and (max-width: 47.9375em) {
    .f-continue-block__button {
      width: 220px; } }

.f-check {
  padding-right: 90px;
  padding-left: 90px;
  text-align: center; }
.checkbox_layout .f-check{/*202306佐藤*/
  padding-right: 0;
  padding-left: 0;
  text-align: left;
}
  @media only screen and (max-width: 47.9375em) {
    .f-check {
      padding-right: 20px;
      padding-left: 20px; } }
  .f-check > label {
    display: inline-block;
    cursor: pointer;
    position: relative;
    padding-left: 30px;
    font-size: 1.125rem; }
    .f-check > label:before {
      content: '';
      position: absolute;
      left: 0;
      width: 20px;
      height: 20px;
      border: 2px solid currentColor;
      box-sizing: border-box;
      color: #cdcdcd;
      background-color: #fff;
      top: 0.3em; }
      .browser-is-ie .f-check > label:before {
        top: 0.25em; }
      .device-is-ios .f-check > label:before {
        top: 0.25em; }
    .f-check > label:after {
      content: '';
      position: absolute;
      display: block;
      color: transparent;
      top: calc(0.3em + 9px);
      width: 6px;
      height: 12px;
      box-sizing: border-box;
      left: 7px;
      border: solid 3px currentColor;
      border-left: 0;
      border-top: 0;
      -webkit-transform: translateY(-40%) rotate(30deg);
              transform: translateY(-40%) rotate(30deg); }
      .browser-is-ie .f-check > label:after {
        top: calc(0.25em + 8px); }
      .device-is-ios .f-check > label:after {
        top: calc(0.25em + 8px); }
  .f-check > input {
    display: block;
    width: 0;
    height: 0;
    opacity: 0; }
    .f-check > input:checked + label:before {
      border-color: #009e6f; }
    .f-check > input:checked + label:after {
      color: #009e6f;
      -webkit-transform: translateY(-50%) rotate(45deg);
      transform: translateY(-50%) rotate(45deg); }


.f-check-group {
  background-color: #f2f2f2;
  padding-top: 30px;
  padding-bottom: 30px;
  margin-top: 60px; }
  .f-check-group.checkbox_layout {/*202306佐藤*/
    background-color: #fff;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
}

div.js-validation:has(#other_keyword) {/*202306佐藤*/
    padding-bottom: 36px;
}   

.f-radio > input {
  width: 0;
  height: 0;
  opacity: 0; }
  .f-radio > input:focus + label:before {
    outline: -webkit-focus-ring-color auto 1px; }
  .f-radio > input:checked + label:before {
    color: #009e6f; }
  .f-radio > input:checked + label:after {
    color: #009e6f; }

.f-radio > input + label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0 0 0 26px;
  margin-bottom: 5px; }
  .f-text-line-block .f-radio > input + label {
    margin-bottom: 0; }
  .f-radio > input + label:before {
    content: '';
    position: absolute;
    left: 0;
    width: 20px;
    height: 20px;
    background: #fff;
    border: 2px solid currentColor;
    box-sizing: border-box;
    color: #cdcdcd;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    border-radius: 50%;
    top: 4px; }
  .f-radio > input + label:after {
    content: '';
    position: absolute;
    display: block;
    color: transparent;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    left: 4px;
    width: 12px;
    height: 12px;
    background: currentColor;
    border-radius: 50%;
    box-sizing: border-box;
    top: 8px; }

.f-radio > ul {
  padding-left: 28px;
  margin-top: 5px; }
  @media only screen and (max-width: 47.9375em) {
    .f-radio > ul {
      margin-bottom: 10px; } }

.f-radio > .f-input-annotation {
  padding-left: 28px;
  margin-top: 5px;
  margin-bottom: 0; }

.error .f-radio label:before {
  background-color: #f6dcdc;
  border-color: #e31515; }

.f-radio .f-select + label,
.f-radio.-has_margin label {
  display: inline-block;
  margin-top: 18px; }

.f-radio-group {
  padding-top: 0.4em; }

.f-counter {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  z-index: 60000;
  pointer-events: none;
  opacity: 0; }
  @media print, screen and (min-width: 64em) {
    .f-counter {
      max-width: 1248px;
      margin-right: auto;
      margin-left: auto;
      -webkit-transform: none;
              transform: none; } }
  .f-counter.-active {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  .f-counter p {
    display: block;
    z-index: 1000;
    position: relative;
    line-height: 1.8;
    color: #fff;
    font-size: 1.125rem; }
    @media print, screen and (min-width: 75em) {
      .f-counter p {
        color: #009e6f; } }
    .f-counter p br {
      display: none; }
      @media print, screen and (min-width: 64em) {
        .f-counter p br {
          display: block; } }
  .f-counter span {
    margin-right: 5px;
    font-size: 1rem;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .f-counter span {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 48em) {
      .f-counter span {
        font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    @media print, screen and (min-width: 64em) {
      .f-counter span {
        margin-right: 0; } }
  .f-counter em {
    margin-right: 2px;
    margin-left: 4px;
    font-family: futura-pt, sans-serif;
    font-size: 2.8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1; }

@media print, screen and (max-width: 63.9375em) {
  .f-counter__inner {
    position: relative;
    background-color: #009e6f;
    color: #fff;
    text-align: center; } }

@media print, screen and (min-width: 64em) {
  .f-counter__inner {
    position: relative;
    background-color: #009e6f;
    color: #fff;
    text-align: center; } }

@media print, screen and (min-width: 75em) {
  .f-counter__inner {
    border: 2px solid #009e6f;
    background-color: #fff;
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
            align-items: center;
    text-align: center;
    min-width: 120px;
    padding-top: 18px;
    padding-right: 22px;
    padding-bottom: 16px;
    padding-left: 22px;
    white-space: nowrap;
    margin-right: 0; } }

.f-label-msg {
  width: 100%;
  color: #e31515;
  font-size: 0.875rem;
  display: none; }
  @media print, screen and (min-width: 48em) {
    .f-label-msg {
      width: auto; } }
  .f-label-msg.-error {
    position: relative;
    padding-left: 28px;
    margin-top: 12px;
    color: #e31515; }
    .f-label-msg.-error:before {
      position: absolute;
      top: 0.15em;
      left: 0;
      content: '!';
      width: 18px;
      height: 18px;
      display: block;
      background-color: #e31515;
      border-radius: 50%;
      color: #fff;
      text-align: center;
      font-size: 12px;
      font-weight: bold;
      font-feature-settings: 'palt' 1;
      letter-spacing: 0.01em;
      text-indent: 1px; }
      @media only screen and (max-width: 47.9375em) {
        .f-label-msg.-error:before {
          font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
      @media print, screen and (min-width: 48em) {
        .f-label-msg.-error:before {
          font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .error .f-label-msg.-error {
      display: block; }

.f-step {
  display: -webkit-box;
  display: flex;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  border-style: solid;
  border-color: #ddd;
  border-width: 1px 0 1px 0;
  padding-top: 10px;
  padding-bottom: 8px; }

.f-step__item {
  font-size: 1rem;
  position: relative;
  color: #aaa;
  margin-left: 85px; }
  .f-step__item.-active {
    color: #222;
    font-weight: bold;
    font-feature-settings: 'palt' 1; }
  .f-step__item:first-child {
    margin-left: 0; }
    .f-step__item:first-child:before {
      display: none; }
  .f-step__item:before {
    content: '';
    left: -45px;
    display: block;
    position: absolute;
    top: 10px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #aaa;
    border-right: 2px solid #aaa;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

/* ==========================================================================
Print
========================================================================== */
@media print {
  body {
    padding-left: 0;
    width: 1400px;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0; }
    body.browser-is-ff {
      -webkit-transform: none;
      transform: none;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%; }
    body.browser-is-ie {
      -webkit-transform: none;
      transform: none;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      zoom: 0.77; }
    body.browser-is-edge {
      -webkit-transform: none;
      transform: none;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      zoom: 0.6; }
    body.-map_print .l-header,
    body.-map_print .p-main-menu-button,
    body.-map_print .p-breadcrumbs,
    body.-map_print .p-detail-visual,
    body.-map_print .c-block__inner > section,
    body.-map_print .c-block__inner > div,
    body.-map_print .p-page-top,
    body.-map_print .l-footer {
      display: none; }
    body.-map_print .c-block__inner #print_area,
    body.-map_print .c-block__inner #print_area_2 {
      display: block; }
    body.-map_print .c-block__inner #print_area_2 .c-image {
      display: -webkit-box;
      display: flex; } }

/*20211012出崎追記*/
.p-home-block__news-colmun2 {
    padding-bottom: 50px;
}
.text_right {
    text-align: right;
    margin-top: 10px;
}
/*
.event {
    width: 90%;
    padding-top: 50px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
}
@media print, screen and (min-width: 69.6875em) {
.event {
    width: 100%;
    max-width: 1100px;
    margin-right: auto;
    margin-left: auto;
}
}
.event img{
    width: 100%;
}
*/
span.sub_title {
    font-size: 0.78rem;
}
.c-ex {
    display: inline-block;
    width: 23px;
    height: 23px;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("/common/img/excel.png"); }

.c-ex.-right.-inline {
    margin-right: 8px; }
.c-card__button .c-ex {
    position: relative;
    top: 4px;
    margin-right: 8px; }

@media print, screen and (min-width: 48em) {
.blank {
    padding-top: 25px;
    }}
.andmore {
    margin-top: 15px;
    color: #009e6f;
    font-weight: bold;
    border-bottom: solid;
    border-color: #009e6f;
    border-width: 2px;
}
.c-section-a {
    margin-top: 60px;
    margin-bottom: 100px;
}
@media print, screen and (max-width: 63.9375em) {
    .sp_none {
        display: none;
 } }
@media print, screen and (min-width: 48em) {
span.awards {
    font-size: 12.5px;
    } }

/*20221130渡邉追記 利用事例：it-trend */
@media print, screen and (min-width: 48em) {
  #example .c-column.-mx_30.-S-3-XS-1 > .c-column__item {
    width: calc(20% - 60px);
    margin-top: 54px;
  }
}
#example .c-section-2 > iframe {
  width: 100%;
}
@media only screen and (max-width: 47.9375em) {
  #example .c-section-2 > iframe {
    height: 315px;
  }
}
@media only screen and (max-width: 69.6875em) {
  #example .c-card.-zoom .c-card__zoom span {
    font-size: 12px;
    line-height: 1.4;
  }
  #example .c-link .c-zoom {
    min-width: auto;
    margin-right: 4px;
    top: 0.5em;
  }
}
/*20230202desakiバナー追加 */
.event {
    padding-top: 50px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
}
.event img {
    width: 100%;
    max-width: 1000px;
}
.event p {
    font-weight: bold;
}
.event p.red {
    color: red;
    font-size: 1.75rem;
}
@media print, screen and (max-width: 63.9375em) {
    .event p.red {
        font-size: 1.375rem;
    }}
/*20230209 youube対応 */
.youtube_area {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_area iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*20230323 TOPパノラマ修正 */
.p-gallery__panorama-group {
    position: absolute;
}
@media print, screen and (min-width: 64em) {
    .p-gallery__panorama-group {
        bottom: 100px;
        right: 20px;
        z-index: 999999;
        width: 320px;
    }}
.p-gallery__panorama + .p-gallery__panorama {
    margin-top: 10px;
}
.p-panorama__group {
    position: absolute;
    bottom: -50px;
    right: 4.6875%;
}
@media print, screen and (max-width: 63.9375em) {
    .p-gallery.-top .p-gallery__nav {
        margin-top: 43px;
    }}
@media print, screen and (max-width: 63.9375em) {
    .p-gallery__nav {
        justify-content: center;
    }}
@media print, screen and (max-width: 63.9375em) {
    .p-panorama {
        position: static;
    }}
span.p-gallery__panorama-text-area {
    display: block;
    color: #fff;
}

/* 20230825長井 */
span.sub_title.document_sub_text{
  display: block;
  line-height: 1;
}

/*20230921hikaru*/
.c-card__button .c-excel, .c-card__button .c-pdf {
    position: relative;
    top: 0.18em;
    margin-right: 8px;
}
.c-excel {
    display: inline-block;
    width: 15px;
    height: 18px;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215.876%22%20height%3D%2215.506%22%20viewBox%3D%220%200%2015.876%2015.506%22%3E%3Cg%20id%3D%22ダウンロード%22%20transform%3D%22translate%28-14353.855%2015630.072%29%22%3E%3Crect%20id%3D%22長方形_873980%22%20data-name%3D%22長方形%20873980%22%20width%3D%2216.313%22%20height%3D%2214.053%22%20transform%3D%22translate%2814354.718%20-15628.511%29%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20id%3D%22パス_1114900%22%20data-name%3D%22パス%201114900%22%20d%3D%22M14.059%2C14.2H11.535V12.934h2.524Zm0%2C.721H11.535v1.262h2.524Zm0-5.951H11.535v1.262h2.524Zm0%2C1.983H11.535v1.263h2.524Zm0%2C5.951H11.535v1.262h2.524ZM15.8%2C19.386c-.075.377-.523.384-.824.4H9.371v1.623H8.252L0%2C19.965V7.347L8.3%2C5.9h1.07V7.34h5.414a1.657%2C1.657%2C0%2C0%2C1%2C.9.173%2C1.657%2C1.657%2C0%2C0%2C1%2C.18.912l-.008%2C9.386a8.231%2C8.231%2C0%2C0%2C1-.06%2C1.577ZM6.611%2C16.559c-.5-1.009-1-2.012-1.5-3.021q.735-1.474%2C1.455-2.955-.614.029-1.226.075c-.3.741-.66%2C1.462-.9%2C2.228-.221-.723-.515-1.419-.784-2.124q-.6.032-1.19.069c.418.923.863%2C1.834%2C1.269%2C2.762-.478.9-.925%2C1.815-1.388%2C2.722.395.017.789.032%2C1.184.038.281-.718.631-1.408.876-2.14a21.281%2C21.281%2C0%2C0%2C0%2C.9%2C2.263Q5.961%2C16.523%2C6.611%2C16.559Zm8.4-8.362H9.371v.77h1.443v1.262H9.371v.718h1.443v1.266H9.371v.721h1.443V14.2H9.371v.721h1.443v1.262H9.371v.72h1.443V18.16H9.371v.834H15.01Z%22%20transform%3D%22translate%2814353.855%20-15635.972%29%22%20fill%3D%22%23618e4d%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E);
}

/*20240208hikaru*/
.catering＿btn {
	position: relative;
	width: 250px;
	height: 250px;
	margin: 0 auto;
	display: block;
	overflow: hidden;
	cursor: pointer;
}
.catering＿btn img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}
.catering＿btn:hover img:nth-of-type(2) {
	opacity: 0;
}

/*******************************************************
/* 20230608開始のTOP改修 ここから
/*******************************************************/

.p-gallery__title{
  font-family:"Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
}
@media print, screen and (min-width: 64em) {
  .p-gallery__title{
     text-shadow: 0 0 0.2em rgb(0 0 0);
  }
}

@keyframes bg-slider {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -5060px 0; /* ← x:画像の横のサイズのマイナス y:0 */
    }
}

.bg_slide {
  width: auto;
  height: 80px;
  margin-top: 30px;
  /* animation: bg-slider 60s linear infinite; */
  animation: bg-slider 84s linear infinite;
  background: url(/img/company/scroll-logo.jpg) repeat-x 50%;
  position: relative;
  z-index:999;
}


@media print, screen and (max-width: 768px) {
  .feature_content .feature_image{
    margin-top:20px;
  }
}


/*                section
======================================================= */
.home_section {
  padding: 90px 0 90px;
}

@media only screen and (max-width: 768px) {
  .home_section {
    padding: 70px 0 80px;
  }
}

@media only screen and (max-width: 480px) {
  .home_section {
    padding: 60px 0 0;
  }
}

.home_section_title {
  color: #1a1a1a;
  text-align: center;
}

.home_section_title h2 {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.1;
}

@media only screen and (max-width: 1024px) {
  .home_section_title h2 {
    font-size: 20px;
    padding: 0.75em 0;
  }
}

@media only screen and (max-width: 768px) {
  .home_section_title h2 {
    padding: 0.75em 0;
  }
}

@media only screen and (max-width: 480px) {
  .home_section_title h2 {
    font-size: 18px;
    padding: 0.5em 0;
  }
}

.home_section_title .en_title {
  margin-bottom: 16px;
  text-align: center;
  color: #009e6f;
  width: 100%;
  line-height: 1em;
  opacity: 0.15;
  font-size: 86px;
  font-weight: 900;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Noto Serif JP", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HGS明朝E", serif;
  letter-spacing: -0.075em;
}

@media only screen and (max-width: 1115px) {
  .home_section_title .en_title {
    font-size: 7.7125vw;
  }
}

@media only screen and (max-width: 1024px) {
  .home_section_title .en_title {
    font-size: 5vw;
    left: 75%;
  }
}

@media only screen and (max-width: 768px) {
  .home_section_title .en_title {}
}

.section_read {
  padding: 2em 0 0;
}

.section_read p {
  color: #009e6f;
  text-align: center;
  font-size: 28px;
  letter-spacing: 0.015em;
  line-height: 1.5;
}

.section_read p>span {
  display: inline-block;
}

.section_read p.sub_text {
  margin-top: 0.5em;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
}

@media only screen and (max-width: 1024px) {
  .section_read p {
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .section_read {
    padding: 0.75em 0 1.25em;
  }

  .section_read p {
    font-size: 18px;
  }
}

@media only screen and (max-width: 480px) {
  .section_read p {
    font-size: 16px;
  }
}


.main_width {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding-right: 50px;
  padding-left: 50px;
  box-sizing:border-box;
  width: 100%;
}

.features_head_copy .main_width{
  width:auto;
}

@media only screen and (max-width: 1500px) {
  .main_width {
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media only screen and (max-width: 1115px) {
  .main_width {
    padding-right: 4.6875%;
    padding-left: 4.6875%;
  }
}

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

 .corporate-logo {
  margin-top: 30px;
}

.corporate-logo p{
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
}

@media only screen and (min-width: 769px) {
  .corporate-logo {
    text-align: right;
  }
}
@media only screen and (max-width: 768px) {
  .corporate-logo p {
    text-align: center;
    margin-top: 15px;
  }
}

.logotitle {
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  font-weight: bold;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .logotitle {
    display: block;
  }
}
.logotitle::before {
  display: inline-block;
  border-top: 1px solid #009e6f;
  content: "";
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-right: 30px;
  margin-left: 30px;
}
@media only screen and (max-width: 768px) {
  .logotitle::before {
    display: none;
  }
}
.logotitle::after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 48px;
  background-color: #009e6f;
  position: absolute;
  right: -15px;
  top: 0;
}
@media only screen and (max-width: 768px) {
  .logotitle::after {
    display: none;
  }
}

.logotitle2 {
  color: #009e6f;
  font-weight: bold;
}

.logotext {
  line-height: 1.5;
  font-size: 17px;
  padding-right: 20px;
}
@media only screen and (max-width: 768px) {
  .logotext {
    font-size: 1pc;
    padding-right:0;
  }
}

/*                #features
======================================================= */
#features {
  padding-top: 120px;
  padding-bottom: 90px;
}
@media only screen and (max-width: 768px) {
  #features {
    padding-top: 70px;
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 480px) {
  #features {
    padding-top: 50px;
    padding-bottom: 0px;
  }
}

.features_head {
  background-color: #f7f6f6;
}

.features_head_copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.features_head_copy p {
  text-align: center;
  margin: 18px auto;
  font-size: 32px;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  border-radius: 4px;
  letter-spacing: 0.02em;
}
@media only screen and (min-width: 769px) {
  .features_head_copy p {
    padding: 0.25em 0.75em 0.35em;
    font-size: 29px;
  }
}
.features_head_copy p > span > span {
  display: inline-block;
  color: #2d2d2d;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"
}
@media only screen and (max-width: 1300px) {
  .features_head_copy p {
    margin: 0.5em auto;
    font-size: 32px;
    font-size: 2.4vw;
  }
}
@media only screen and (max-width: 768px) {
  .features_head_copy .main_width {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .features_head_copy p {
    color: #009e6f;
    margin: 0.5em auto;
    font-size: 21px;
  }
  .features_head_copy p > span > span {
    display: block;
  }
}
@media only screen and (max-width: 480px) {
  .features_head_copy p {
    margin: 0.5em auto;
    font-size: 4.25vw;
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 350px) {
  .features_head_copy p {
    font-size: 4.5vw;
  }
}

.features_head_title {
  background-color: #009e6f;
  text-align: center;
  color: #fff;
}
.features_head_title .head_title_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.features_head_title .head_title_flex p {
  text-align: center;
  font-size: 25px;
  line-height: 1.5;
  font-weight: bold;
}
.features_head_title .head_title_flex p > span {
  display: block;
  font-size: 20px;
}

.features_head_title .head_title_flex h2 {
  padding: 0.2em 0.5em;
  text-align: left;
  font-size: 65px;
  font-family: "Noto Serif JP", serif;;
  font-weight: 700;
  -webkit-transform: skewX(-11.5deg);
          transform: skewX(-11.5deg);
  letter-spacing: 0.02em;
}
@media print, screen and (min-width: 64em) {
  .features_head_title .head_title_flex h2 {
      font-size: 2rem;
  } 
}
@media print, screen and (min-width: 1420px) {
  .features_head_title .head_title_flex h2 {
    font-size: 34px; 
  } 
}
@media print, screen and (max-width: 63.9375em) {
  .features_head_title .head_title_flex h2 {
    font-size: 1.25rem;      
  } 
}
  

@media only screen and (max-width: 1300px) {
  .features_head_title .head_title_flex p {
    font-size: 1.8vw;
  }
  .features_head_title .head_title_flex h2 {
    font-size: 4vw;
  }
}
@media only screen and (max-width: 768px) {
  .features_head_title .head_title_flex {
    padding: 10px 0;
    display: block;
  }
  .features_head_title .head_title_flex p {
    font-size: 16px;
  }
  .features_head_title .head_title_flex h2 {
    padding: 0.1em 0;
    text-align: center;
    font-size: 30px;
  }
}
@media only screen and (max-width: 480px) {
  .features_head_title .head_title_flex {
    padding: 10px 0;
  }
  .features_head_title .head_title_flex p {
    font-size: 14px;
  }
  .features_head_title .head_title_flex h2 {
    font-size: 26px;
  }
}
@media only screen and (max-width: 350px) {
  .features_head_title .head_title_flex {
    padding: 10px 0;
  }
  .features_head_title .head_title_flex p {
    font-size: 14px;
    font-size: 4.25vw;
  }
  .features_head_title .head_title_flex h2 {
    font-size: 7.5vw;
  }
}

.feature_detail {
  /* overflow: hidden; */
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 1720px;
  padding: 160px 0 120px;
  position: relative;
}

@media only screen and (max-width: 1115px) {
  .feature_detail {
    padding: 100px 0 80px;
  }
}

@media only screen and (max-width: 768px) {
  .feature_detail {
    padding: 50px 0 16px;
  }
}

.feature_detail .detail_head {
  position: relative;
  padding-left: 170px;
}

.feature_detail .detail_head .js-animation {
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
  opacity: 0;
}

.feature_detail .detail_head .js-animation.is-active {
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
  opacity: 1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.feature_detail .detail_head .num {
  position: absolute;
  left: 40px;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100px;
  height: 74px;
}

.feature_detail .detail_head .num:before {
  position: absolute;
  display: block;
  content: "";
  background-color: #009e6f;
  right: 0;
  top: 0;
  width: 4px;
  height: 100%;
}

.feature_detail .detail_head .num span {
  display: block;
  line-height: 1;
  text-align: center;
  font-size: 70px;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 500;
  -webkit-transform: skewX(-11.5deg);
  transform: skewX(-11.5deg);
  color: #009e6f;
  opacity: 0.2;
}



@media only screen and (min-width: 48em){
  .p-home-block__button.-wide{
    width :360px;
  }
}

@media only screen and (max-width: 47.9375em){
  .p-home-block__button.-wide .c-button.-main>span{
    font-size:14px;
  }
  .p-home-block__button.-wide .c-button.-main>span>span{
    display: inline-block;
  }
}



@media only screen and (max-width: 1115px) {
  .feature_detail .detail_head {
    padding-left: 130px;
  }

  .feature_detail .detail_head .num {
    left: 0px;
    width: 100px;
  }

  .feature_detail .detail_head .num span {
    font-size: 50px;
  }
}

@media only screen and (max-width: 1024px) {
  .feature_detail .detail_head {
    padding-left: 90px;
  }

  .feature_detail .detail_head .num {
    left: -20px;
    width: 80px;
    height: 60px;
  }

  .feature_detail .detail_head .num:before {
    width: 3px;
  }

  .feature_detail .detail_head .num span {
    font-size: 40px;
  }
}

@media only screen and (max-width: 768px) {
  .feature_detail .detail_head {
    padding-left: 0;
  }

  .feature_detail .detail_head .num {
    position: relative;
    left: auto;
    width: 100%;
    height: 50px;
    margin-bottom: 2em;
  }

  .feature_detail .detail_head .num:before {
    width: 1.6em;
    height: 2px;
    top: auto;
    bottom: -0.5em;
    right: 50%;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
  }

  .feature_detail .detail_head .num span {
    font-size: 44px;
    text-indent: 0.15em;
  }
}

.feature_detail .detail_title+div {
  margin-top: .5em;
}

.feature_detail .detail_title .brackets {
  margin-left: -0.25em;
  margin-right: -0.25em;
}

.feature_detail .detail_title .meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.feature_detail .detail_title .icon {
  font-size: 20px;
  font-weight: normal;
  background: #009e6f;
  color: #fff;
  line-height: 1.1;
  padding: 0.1em 1.75em;
  border-radius: 7px;
  margin-right: 1em;
  text-align: center;
  box-sizing: border-box;
}

.feature_detail .detail_title .icon span {
  vertical-align: text-bottom;
  font-weight: bold;
}

.feature_detail .detail_title .catch {
  font-size: 20px;
  font-weight: 700;
  color: #009e6f;
}

.feature_detail .detail_title .catch>span>span {
  display: inline-block;
}

.feature_detail .detail_title > h3 {
  font-size: 29px;
  font-weight: 700;
  padding: .15em 0 .3em;
}

.feature_detail .detail_title>h3.indent {
  margin-left: -0.25em;
}

@media only screen and (max-width: 1115px) {
  .feature_detail .detail_title .meta {
    display: block;
  }

  .feature_detail .detail_title .icon {
    display: inline-block;
    margin-bottom: 0.3em;
    font-size: 16px;
    border-radius: 6px;
    margin-right: auto;
  }

  .feature_detail .detail_title .catch {
    font-size: 18px;
  }

  .feature_detail .detail_title>h3 {
    font-size: 24px;
    padding: 0;
  }
}

@media only screen and (max-width: 1024px) {
  .feature_detail .detail_title .icon {
    font-size: 14px;
    border-radius: 4px;
    margin-right: auto;
  }

  .feature_detail .detail_title>h3 {
    font-size: 22px;
    padding: 0.15em 0 0;
  }
}

@media only screen and (max-width: 768px) {
  .feature_detail .detail_title {
    text-align: center;
  }

  .feature_detail .detail_title+div {
    margin-top: 1.5em;
  }

  .feature_detail .detail_title .icon {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    font-size: 19px;
    border-radius: 6px;
    margin-bottom: 0.8em;
    padding: 0.2em 0.15em 0.25em;
  }

  .feature_detail .detail_title .icon>span>span {
    display: inline-block;
  }

  .feature_detail .detail_title .catch {
    text-align: center;
    font-size: 19px;
    line-height: 1.5;
    margin: 0 -0.5em;
  }

  .feature_detail .detail_title>h3 {
    text-align: center;
    font-size: 19px;
    padding: 0.5em 0 0;
    line-height: 1.5;
    margin: 0 -0.75em;
  }
}

@media only screen and (max-width: 350px) {
  .feature_detail .detail_title {
    text-align: center;
  }

  .feature_detail .detail_title .catch>span>span {
    display: inline-block;
  }

  .feature_detail .detail_title>h3>span>span {
    display: inline-block;
  }

  .feature_detail .detail_title>h3>span>span.sp_none {
    display: none;
  }
}

@media only screen and (max-width: 768px) {
  .sp_block {
    display: block;
  }

  .sp_inline {
    display: inline;
  }

  .sp_none {
    display: none;
  }
}

.feature_detail .detail_text {
  font-size: 18px;
  max-width: 61.5em;
}

.feature_detail .detail_text p {
  line-height: 1.6;
  letter-spacing: 0.02em;
  font-weight:bold;
}

@media only screen and (max-width: 1115px) {
  .feature_detail .detail_text {
    font-size: 16px;
  }
}

.feature_detail .en_title {
  color: #009e6f;
  position: absolute;
  left: 50%;
  bottom: .25rem;
  width: 100%;
  line-height: 1em;
  opacity: 0.15;
  font-size: 86px;
  font-weight: 900;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Noto Serif JP", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HGS明朝E", serif;
  letter-spacing: -0.075em;
}

.feature_detail .en_title--international{
  left:30%
}

.feature_detail .en_title--left-30{
  left: 30%;
}

.feature_detail .en_title--left-20{
  left: 20%;
}

@media only screen and (max-width: 1600px) {
  .feature_detail .en_title {
    font-size: 5.5vw;
  }

  .feature_detail .en_title--international{
    left:20%
  }

  .feature_detail .en_title--cleanliness{
    left: 20%;
  }
}

@media only screen and (max-width: 1300px) {
  .feature_detail .en_title {
    bottom: .5rem;
    left: 46%;
  }

    .feature_detail .en_title--international{
    left:20%
  }

  .feature_detail .en_title--cleanliness{
    left: 20%;
  }
}

@media only screen and (max-width: 1024px) {
  .feature_detail .en_title {
    font-size: 5vw;
    left: 50%;
  }

  .feature_detail .en_title--international{
  left:30%
}

.feature_detail .en_title--cleanliness{
  left: 30%;
}
}

@media only screen and (max-width: 768px) {
  .feature_detail .en_title {
    display: none;
  }
}

.feature_image.twin_image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.feature_image.twin_image>div {
  width: 50%;
}

@media only screen and (max-width: 350px) {
  .feature_image.twin_image {
    display: block;
  }

  .feature_image.twin_image>div {
    width: 100%;
  }

  .feature_image.twin_image>div+div {
    margin-top: 15px;
  }
}

.feature_image.three_image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.feature_image.three_image>div {
  width: 33.3333%;
}

@media only screen and (max-width: 350px) {
  .feature_image.three_image>div {
    width: 100%;
  }

  .feature_image.three_image>div+div {
    width: 50%;
  }
}

.feature_image.tripleset_image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.feature_image.tripleset_image>div {
  width: 67.2%;
}

.feature_image.tripleset_image>div+div {
  width: 32.8%;
}

.feature_image.tripleset_image.reverse>div {
  width: 32.8%;
}

.feature_image.tripleset_image.reverse>div+div {
  width: 67.2%;
}

.feature_image.tripleset_image.tiered>div {
  width: 67.2%;
}

.feature_image.tripleset_image.tiered>div+div {
  width: 32.8%;
}


/*                #access
======================================================= */

#access .home_section_title .bottom_text{
  font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
}
.access_map {
  margin-top: 42px;
  background-color: #f7f6f6;
}

.access_map .gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.access_map .gmap iframe,
.access_map .gmap object,
.access_map .gmap embed {
  border: none !important;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media only screen and (min-width: 769px) {
  .access_map .gmap {
    padding-bottom: 22.5%;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .access_map .gmap {
    padding-bottom: 38.75%;
  }
}

.access_info {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 1360px;
  margin: 90px auto 0;
  padding-bottom: 32px;
}

@media only screen and (max-width: 768px) {
  .access_info {
    margin-top: 60px;
  }
} 

.access_info .train_list {
  padding-left: 1em;
}

@media only screen and (max-width: 1024px) {
  .access_info {
    display: block;
  }

  .access_info .access_info_cont:not(:first-child) {
    margin-top: 40px;
  }
}

.access_info .map_text dt {
  font-size: 28px;
  font-weight: bold;
}

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

  .access_info .map_text dt span,
  .access_info .map_text dd span {
    display: block;
  }
}

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

  .access_info .map_text dt span,
  .access_info .map_text dd span {
    display: inline;
  }
}

.access_info .map_text dd {
  font-size: 22px;
}

.access_info .map_text p {
  margin-top: .5em;
  padding-left: .25em;
  font-size: 22px;
}

.access_info .map_text p .c-blank,
.access_info .map_text p .c-blank::before,
.access_info .map_text p .c-blank::after {
  transform: scale(1.5);
}

.access_info .map_text p .c-blank+span {
  padding-left: 1em;
}

.access_info .map_text .p-home-block__button {
  margin-top: 40px;
}

.access_info .train_list .station {
  position: relative;
  font-size: 18px;
}

.access_info .train_list .station:not(:first-child) {
  margin-top: 30px;
}

@media only screen and (max-width: 1024px) {
  .access_info .train_list .station:not(:first-child) {
    margin-top: 16px;
  }
}

.access_info .train_list .station span {
  padding: 0 .1em;
  font-size: 24px;
  font-weight: bold;
}

.access_info .train_list .station::before {
  content: "";
  display: block;
  background-color: #c3d0c9;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  top: 18px;
  left: -1em;
}

.access_info .train_list .station .line {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: flex-start;
  padding-left: 1.5em;
  font-size: 16px;
}

.access_info .train_list .station .line li {
  position: relative;
}

.access_info .train_list .station .line li:not(:last-child) {
  margin-right: 3em;
}

.access_info .train_list .station .line li::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: -1.25em;
  transform: translateY(-50%);
}

.access_info .train_list .station .line li.ginza::before {
  background: radial-gradient(circle, transparent 30%, #f39700 33%);
  border-radius: 50%;
}

.access_info .train_list .station .line li.marunouchi::before {
  background: radial-gradient(circle, transparent 30%, #e60012 33%);
  border-radius: 50%;
}

.access_info .train_list .station .line li.hibiya::before {
  background: radial-gradient(circle, transparent 30%, #9caeb7 33%);
  border-radius: 50%;
}

.access_info .train_list .station .line li.chiyoda::before {
  background: radial-gradient(circle, transparent 30%, #009944 33%);
  border-radius: 50%;
}

.access_info .train_list .station .line li.mita::before {
  background: radial-gradient(circle, transparent 30%, #0079c2 33%);
  border-radius: 50%;
}

.access_info .train_list .station .line li.keihintohoku::before {
  background-color: #00bae8;
  border-radius: 4px;
}

.access_info .train_list .station .line li.yamanote::before {
  background-color: #99cc00;
  border-radius: 4px;
}

.access_info .train_list .station .line li.tokaido::before {
  background-color: #f68b1e;
  border-radius: 4px;
}

@media only screen and (max-width: 1115px) {
  .access_info .map_text dt {
    font-size: 24px;
  }

  .access_info .map_text dd,
  .access_info .map_text p {
    font-size: 20px;
  }

  .access_info .map_text p .c-blank,
  .access_info .map_text p .c-blank::before,
  .access_info .map_text p .c-blank::after {
    transform: scale(1.25);
  }

  .access_info .map_text p .c-blank+span {
    padding-left: .75em;
  }

  .access_info .map_text .p-home-block__button {
    margin-top: 20px;
  }

  .access_info .train_list .station {
    font-size: 14px;
  }

  .access_info .train_list .station span {
    font-size: 20px;
  }

  .access_info .train_list .station::before {
    top: 14px;
  }

  .access_info .train_list .station .line {
    padding-left: 1.25em;
    font-size: 14px;
  }

  .access_info .train_list .station .line li::before {
    width: 14px;
    height: 14px;
  }
}

@media only screen and (max-width: 768px) {
  .access_info .map_text dt {
    font-size: 16px;
  }

  .access_info .map_text dd,
  .access_info .map_text p {
    font-size: 14px;
  }
  .access_info .train_list .station span {
    font-size: 16px;
  }
  .access_info .train_list .station::before {
    top: 12px;
  }
}


.list_out_links{
  margin: 30px 0 15px;
  display:inline-block;
}



 @media print, screen and (max-width: 63.9375em){
  #rooms_price{
  padding-bottom: 0px;
  }
}

/* ギャラリー */
.p-gallery__main {
  position: relative;
  width: 100%;
}

.p-gallery__main.-home {
  padding-top: 34.375%;
}


@media print, screen and (min-width: 64em) {
  .p-gallery__nav-group{
    max-width: 1200px;
    margin: 40px auto 50px;
  }
}

.p-gallery__nav.-under-main {
  margin-top: 20px;
  margin-right: -11px;
  flex-wrap: wrap;
  justify-content: flex-start;
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__nav.-under-main {
    padding: 20px 0;
    margin-top:0;
    justify-content: center;
  }
}

.p-gallery__nav.-under-main {
  margin-right: -11px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 64em) {
.p-gallery__nav.-under-main > li {
  width: calc(10% - 11px);
  margin-right: 11px;
  margin-bottom: 10px;
  height: 100%;
}
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-home {
    margin-top: 20px;
  }
}

@media print, screen and (min-width: 64em) {
  .p-gallery.-home {
    margin-top: 60px;
  }
}

.feature_image.-right{
  width: 72vw;
}


@media print, screen and (min-width: 64em){
  .facility_grid_wrap{
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 1720px;
    position: relative;
  }
}

@media only screen and (max-width: 47.9375em){
  .facility_grid_wrap{
    margin-top: 15px;
  }
}

.p-grid {
  display: -ms-grid;
  display: grid;
  -moz-column-gap: var(--gap-x);
  -webkit-column-gap: var(--gap-x);
  column-gap: var(--gap-x);
  row-gap: var(--gap-y);
  grid-template-columns: repeat(var(--col-number),1fr)
}

.p-grid.-gap-m-40 {
  --gap-y: 40px;
  --gap-x: 40px;
}


@media only screen and (max-width: 47.9375em){
  #building .feature_detail{
    padding-top:40px;
  }
}

#facility .c-card__image img{
  width:100%;
  height:auto;
}

@media print, screen and (max-width: 63.9375em){
  .p-grid.-gap-xm-30 {
    --gap-y: 30px;
    --gap-x: 30px;
  }

  .c-card.-service .c-card__title {
    font-size:1rem;
  }

}

@media print, screen and (min-width: 48em) {
  .p-grid.-col-4 {
    --col-number: 2;
  }
}

@media print, screen and (min-width: 64em) {
  .p-grid.-col-4 {
    --col-number: 4;
  }
}

@media only screen and (max-width: 47.9375em) {
  .p-grid.-col-4 {
    --col-number: 1;
  }

  .c-card.-service .c-card__body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 20px;
  }

}

.p-home-block.-info{
  margin-top: 50px;
}

@media print,screen and (max-width: 64em){
  .p-home-block.-info{
    margin-top:30px;
  }
  .p-home-block.-info .p-home-block__inner{
    padding-top:0;
    padding-bottom: 0;
  }
}

.info_list_wrap{
  border: solid 1px #000;
  padding:10px 20px 20px;
  max-width:768px;
  margin:auto;
}

.info_list_head{
  font-size:20px;
}

.info_list__item{

}

.info_list{
  overflow: auto;
  max-height:120px;
  margin-top: 10px;
}

@media only screen and (max-width: 47.9375em) {
  .info_list{
    max-height:210px;
  }
}

.info_list__item_cont{
  display:flex;
  padding: 5px 0;
  border-bottom: dashed 1px #ccc;
}

.info_list__date{
  min-width: 130px;
  position:relative;
}
.info_list__date:before{
  position:absolute;
  content:"＞";
  right:1em;
  font-weight:bold;
}

.info_list__title{
  width:calc(100% - 130px);
}

@media only screen and (max-width: 47.9375em) {

  .info_list_wrap{
    padding:20px 15px ;
  }

  .info_list__item_cont{
    flex-direction:column;
  }

  .info_list__date:before{
    content:none;
  }

  .info_list__date{
    min-width: none;
    width:100%;
  }

  .info_list__title{
    width:100%;
  }
}

.p-home-block__visual::after{
height:100%;
top:0;
}

@media only screen and (max-width: 480px){
  #gallery {
    padding-bottom: 40px;
  }
}

@media print, screen and (max-width: 350px) {
  #cleanliness .feature_image.three_image{
    flex-wrap: nowrap;
  }
  #cleanliness .feature_image.three_image>div+div{
    width:100%;
  }
}


.p-home-block.-facility .p-home-block__map{
  margin-top:30px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-facility .p-home-block__map {
    margin-top:0px;
  }
}

@media print, screen and (max-width: 63.9375em){
  #rooms_price .p-home-block__inner {
    padding-top:20px
  }
}

.p-home-block.-facility .p-floor-map.--flex{
  display:flex;
  margin:0 -150px;
}

.p-home-block.-facility .p-floor_map__item{
    padding: 0 20px 60px;
}

.p-home-block.-facility .p-floor-map.--flex .floor_head{
  font-weight: bold;
  margin-bottom:15px;

}

@media screen and (max-width: 1500px){
  .p-home-block.-facility .p-floor-map.--flex{
    margin:0 -20px;
  }
}

@media screen and (max-width: 768px){
  .p-home-block.-facility .p-floor-map.--flex{
    margin:0;
    flex-direction: column;
  }

  .p-home-block.-facility .p-floor_map__item{
    padding:0;
  }
  .p-home-block.-facility .p-floor_map__item + .p-floor_map__item{
    margin-top: 30px;
  }
}


h2.-small{
  font-size: 24px;
  color: #009e6f;
}

@media only screen and (max-width: 47.9375em){
  h2.-small{
    font-size:18px;
  }
}


.home_section_title .bottom_text{
  margin-top: 15px;
  font-size:30px;
  font-weight: bold;
  text-align: center;
  line-height: 1.8;
}

@media print, screen and (max-width: 63.9375em){  
  .home_section_title .bottom_text{
    font-size: 18px;
  }
}
@media only screen and (max-width: 47.9375em){
  .home_section_title .bottom_text{
    font-size: 16px;
  }
}



.access_info__route{
  display:flex;
  padding:15px 0;
  border-bottom: solid 1px #c3d0c9;
}

.access_info__route:first-child{
  border-top: solid 1px #c3d0c9;
}

.access_info__route_name{
  width:100px;
  min-width: 100px;
}
.access_info__route_name p{
  font-weight:bold;
}

.access_info__route_cont{
  margin-left: 20px;
  width:100%
}

.access_info__route_cont .station{
  font-weight:bold;
}

.access_info .train_list .station .line li.nanboku::before {
  background: radial-gradient(circle, transparent 30%, #00ada9 33%);
  border-radius: 50%;
}

.access_inro__notes{
  margin-top:2em;
}

.train_list__notes{
  margin-top:1em;
}

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


.p-gallery__main > span:nth-child(1) {
  background-image: url("/img/img_visual_2.jpg"); 
}
.p-gallery__main > span:nth-child(2) {
  background-image: url("/img/img_visual_7.jpg"); 
}
.p-gallery__main > span:nth-child(3) {
  background-image: url("/img/img_visual_8.jpg"); 
}
.p-gallery__main > span:nth-child(4) {
  background-image: url("/img/img_visual_6.jpg"); 
}
.p-gallery__main > span:nth-child(5) {
  background-image: url("/img/img_visual_9.jpg"); 
}


/* thumbs_cont */
.feature_image.thumbs_cont {
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: #fff;
}

.feature_image.thumbs_cont>div {
  width: 50%;
}

@media only screen and (max-width: 768px) {
  .feature_image.thumbs_cont {
    display: block;
  }

  .feature_image.thumbs_cont>div {
    width: 100%;
  }
}

.feature_image.thumbs_cont .thumbs_set {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.feature_image.thumbs_cont .thumbs_set>div {
  width: 50%;
}

.feature_image.thumbs_cont .thumbs_set .text_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  padding: 8%;
  height: 100%;
  -ms-flex-line-pack: center;
  align-content: center;
  box-sizing: border-box;
  text-align: left;
  line-height: 1.3;
}

.feature_image.thumbs_cont .thumbs_set .text_inner h4,
.feature_image.thumbs_cont .thumbs_set .text_inner p {
  text-align: left;
  width: 100%;
}

.feature_image.thumbs_cont .thumbs_set .text_inner h4 {
  font-size: 1.3725vw;
  font-weight: 700;
  position: relative;
  line-height: 1.5;
  letter-spacing: -0.1em;
  padding-bottom: 0.25em;
  margin-bottom: 0.8em;
}

.feature_image.thumbs_cont .thumbs_set .text_inner h4:before {
  position: absolute;
  display: block;
  content: "";
  width: 1em;
  height: 1px;
  bottom: 0;
  background: #1a1a1a;
}

.feature_image.thumbs_cont .thumbs_set .text_inner h4>span {
  display: block;
}

.feature_image.thumbs_cont .thumbs_set .text_inner h4>span>span {
  display: inline-block;
}

.feature_image.thumbs_cont .thumbs_set .text_inner p.en {
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Noto Serif JP", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HGS明朝E", serif;
  letter-spacing: -0.075em;
  font-size: 1.003vw;
}

@media only screen and (min-width: 1920px) {
  .feature_image.thumbs_cont .thumbs_set .text_inner h4 {
    font-size: 26px;
  }

  .feature_image.thumbs_cont .thumbs_set .text_inner p.en {
    font-size: 19px;
  }
}

@media only screen and (max-width: 1115px) {
  .feature_image.thumbs_cont .thumbs_set .text_inner h4 {
    font-size: 1.5vw;
  }

  .feature_image.thumbs_cont .thumbs_set .text_inner p.en {
    font-size: 1.15vw;
  }
}

@media only screen and (max-width: 768px) {
  .feature_image.thumbs_cont .thumbs_set .text_inner h4 {
    font-size: 3.294vw;
  }

  .feature_image.thumbs_cont .thumbs_set .text_inner p.en {
    font-size: 2vw;
  }
}

@media only screen and (max-width: 480px) {
  .feature_image.thumbs_cont .thumbs_set .text_inner {
    padding: 10px;
  }

  .feature_image.thumbs_cont .thumbs_set .text_inner h4 {
    font-size: 14px;
    line-height: 1.35;
    padding-bottom: 0.3em;
    margin-bottom: 0.5em;
  }

  .feature_image.thumbs_cont .thumbs_set .text_inner p.en {
    font-size: 10px;
  }
}

.feature_image.thumbs_cont .thumbs_set.image_left .thumbs_text {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.feature_image.thumbs_cont .thumbs_set.image_left .thumbs_image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.feature_image.thumbs_cont .thumbs_set.image_left .text_inner h4,
.feature_image.thumbs_cont .thumbs_set.image_left .text_inner p {
  text-align: left;
}

.feature_image.thumbs_cont .thumbs_set.image_left .text_inner h4:before {
  left: 0.1em;
}

.feature_image.thumbs_cont .thumbs_set.image_right .thumbs_text {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.feature_image.thumbs_cont .thumbs_set.image_right .thumbs_image {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.feature_image.thumbs_cont .thumbs_set .thumbs_image img{
  vertical-align: top;
}


.feature_image.thumbs_cont .thumbs_set.image_right .text_inner h4,
.feature_image.thumbs_cont .thumbs_set.image_right .text_inner p {
  text-align: right;
}

.feature_image.thumbs_cont .thumbs_set.image_right .text_inner h4:before {
  right: 0.1em;
}


.feature_image.thumbs_cont .thumbs_set.js-animation {
  position: relative;
}

.feature_image.thumbs_cont .thumbs_set.js-animation:before {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  content: "";
  background-color: #fff;
  z-index: 1;
}

.feature_image.thumbs_cont .thumbs_set.js-animation.image_left:before {
  right: 0;
}

.feature_image.thumbs_cont .thumbs_set.js-animation.image_right:before {
  left: 0;
}

.feature_image.thumbs_cont .thumbs_set.js-animation.is-active:before {
  width: 0%;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
/* thumbs_cont  end*/


.p-home-block__button_set{
  display: flex;
}

.button_set__item + .button_set__item{
  margin-left: 20px;
}


@media screen and (max-width:768px){
  .p-home-block__button_set{
    flex-direction: column;
    padding-left: 0;
    margin-top: 45px;
  }
  .button_set__item + .button_set__item{
    margin-top: 20px;
    margin-left: 0;
  }
  .p-home-block__button_set .p-home-block__button {
    margin-top: 0;
  }
}

@media only screen and (max-width:480px){
  .feature_image.twin_image>div {
    width: 100%;
   }

  .feature_image.twin_image{
   display: block;
  }
}


@media print, screen and (min-width: 64em){
  .p-home-block__visual img {
    width: 60vw;
  }
}
/*******************************************************
/* 20230608開始のTOP改修 ここまで
/*******************************************************/
/* 20240325 でさきついか */
li.red {
    color: #f94141;
}

/*20240404 facility*/
.p-room-table.-red .c-thead-light{
  border-color: #f9cfc5;
}
.p-room-table.-red > tbody > tr:last-of-type{
  border-bottom: 1px solid #f9cfc5;
}
.p-room-table.-red > tbody > tr:nth-child(odd){
  background-color: #f9cfc5;
}
.c-arrow.-red{
  /*background-color: #ee3911;*/
  background-color: #EDAEA3;
}

/*.p-floor-map__btn-wrap{
  position: absolute;
  top: 0;
  right: -64px;
}*/
.p-floor-map__btn{
  background: #2d2d2d;
  color: #fff;
  /*padding: 6px 10px 6px 6px;
  font-size: 12px;
  line-height: 1.4;*/
  padding: 8px 30px 8px 8px;
  font-size: 14px;
  line-height: 1.5;
  position: relative;
  min-width: 132px;
}
.p-floor-map__btn .c-arrow{
  margin-left: auto;
  position: absolute;
  /*bottom: 4px;
  right: 4px;*/
  bottom: 10px;
  right: 8px;
}
/*.p-floor-map__btn + .p-floor-map__btn{
  margin-top: 10px;
}*/
@media print, screen and (min-width: 64em){
  .p-room-table.-red a:hover{
    color: #ee3911;
  }
  a:hover .c-arrow.-red, button:hover .c-arrow.-red {
    /*background-color: #ee3911;*/
    background-color: #EDAEA3;
  }
  .p-floor-map map:hover{
    cursor : pointer;
  }
}
/*@media screen and (max-width: 1024px){
  .p-floor-map__img.u-show-M{
    position: relative;
    padding-right: 40px;
  }
}*/

/* 20240419 add start */
.info_block span {
  border: solid 1px #009e6f;
  padding: 0px 16px;
  color: #009e6f;
  font-weight: 700;
  font-size: 18px;
}


.info_block.-en span,
.info_block.-en p{
  color: red;
}
.info_block.-en span{  
  border: solid 1px red;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 160px;
  max-width: 200px;
  font-size: 16px;
}
.info_block.-en p{
  font-size: 16px;
}

@media only screen and (max-width:1023px){
  .p-notice-info--en{
    margin-top: 20px;
  }
  .info_block.-en span{
    margin:auto;
  }
  .info_block.-en p{
    margin-top: 5px;
  }
}

@media only screen and (max-width:480px){
  .info_block.-en span,
  .info_block.-en p{
    font-size: 14px;
  }

}

.info_block p {
  font-weight: 700;
  font-size: 18px;
}
.info_block a,
.info_block_no-link {
  display: flex;
  justify-content: center;
  align-items: center;
}
.info_block.download a {
  display: flex;
  justify-content: normal;
}

.p-home-block.-news{
  margin-top: 60px;
  z-index: 1;
}

@media only screen and (max-width: 1024px) {
  .top_banner_area {
    display: block;
  }
  .cont_btn_area {
    margin-top: 30px;
    margin-left: auto;
  }
  .info_block span {
    font-size: 16px;
  }
  .info_block p {
    font-size: 16px;
  }
  .info_block a,
  .info_block_no-link {
    display: block;
  }
  .info_block.download a {
    display: block;
  }
  .info_block {
    text-align: center;  
  }
  .info_block.download {
    text-align: left;  
  }
  .top_banner_area .download {
    margin-bottom: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .info_block p {
    padding-left: 20px;
  }
}

@media only screen and (max-width:480px){
  .info_block p {
    font-size: 14px;
  }
}

#features{
  padding-top: 50px;
}


.c-flex-layout{
  display:flex;
  align-items: center;
}
.c-flex-layout__item + .c-flex-layout__item{
  margin-left: 20px;
}
@media only screen and (max-width:1023px){
  .c-flex-layout{
    flex-direction: column-reverse;
    align-items: flex-start;
  }
  .c-flex-layout__item + .c-flex-layout__item{
    margin-left: 0;
    margin-bottom:30px;

  }

  .p-notice-info{
    align-self: center;
  }
}
/* 20240419 add end */

/* 20240516 add start */
.p-room-table td.-align_l{
  text-align: left;
}
@media print, screen and (min-width: 64em){
  .p-floor-map__btn:hover{
    cursor : pointer;
  }
}
@media only screen and (max-width:1023px){
  .c-flex-layout__item:has(.p-floor-map__btn-wrap) {
    display: none;
  }
}

/* 20240516 add end */

/*add 20240726*/
#default-hiddn{
  display: none;
}
#default-hiddn.active{
  display: block;
}
/*add 20240726 end*/

/*desaki追記 20240920*/
@media print, screen and (min-width: 48em) {
.carrying2 {
  display: flex;
}}
@media only screen and (max-width: 47.9375em) {
  .pc_only {
    display: none;
  }}
  /*desaki end*/

  /*add 20241206 gnavi装飾*/
  .p-sitemap__group.-lv1 > li > span{
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
    font-weight: bold;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.01em;
    font-size: 0.75rem;
    color: #fff;
  }
  
  body.facility .p-main-menu .p-main-menu__item:nth-child(2) .js-dropdown-trigger{
    color: #009e6f!important;
  }
  body.facility .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(2).-dropdown > button::after{
    border-color: #009e6f!important;
  }
  body.facility .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(2):after {
    content: '';
    position: absolute;
    height: 3px;
    width: calc(100% - 12px);
    left: 6px;
    top: -3px;
    background-color: #009e6f;
  }

  body.service .p-main-menu .p-main-menu__item:nth-child(3) .js-dropdown-trigger{
    color: #009e6f!important;
  }

  body.service .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(3).-dropdown > button::after{
    border-color: #009e6f!important;
  }

  body.service .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(3):after {
    content: '';
    position: absolute;
    height: 3px;
    width: calc(100% - 12px);
    left: 6px;
    top: -3px;
    background-color: #009e6f;
  }

  /*set start*/
  body.catering .p-main-menu .p-main-menu__item:nth-child(4) .js-dropdown-trigger{
    color: #009e6f!important;
  }

  body.catering .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(4).-dropdown > button::after{
    border-color: #009e6f!important;
  }

  body.catering .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(4):after {
    content: '';
    position: absolute;
    height: 3px;
    width: calc(100% - 12px);
    left: 6px;
    top: -3px;
    background-color: #009e6f;
  }
  /*set end*/
  /*set start*/
  body.access .p-main-menu .p-main-menu__item:nth-child(5) .js-dropdown-trigger{
    color: #009e6f!important;
  }

  body.access .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(5).-dropdown > button::after{
    border-color: #009e6f!important;
  }

  body.access .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(5):after {
    content: '';
    position: absolute;
    height: 3px;
    width: calc(100% - 12px);
    left: 6px;
    top: -3px;
    background-color: #009e6f;
  }
  /*set end*/
  /*set start*/
  body.example .p-main-menu .p-main-menu__item:nth-child(6) .js-dropdown-trigger{
    color: #009e6f!important;
  }

  body.example .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(6).-dropdown > button::after{
    border-color: #009e6f!important;
  }

  body.example .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(6):after {
    content: '';
    position: absolute;
    height: 3px;
    width: calc(100% - 12px);
    left: 6px;
    top: -3px;
    background-color: #009e6f;
  }
  body.example .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(6) a, .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(6) button{
    color: #009e6f!important;
  }
  /*set end*/
  /*set start*/
    body.useful .p-main-menu .p-main-menu__item:nth-child(7) .js-dropdown-trigger{
      color: #009e6f!important;
    }
  
    body.useful .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(7).-dropdown > button::after{
      border-color: #009e6f!important;
    }
  
    body.useful .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(7):after {
      content: '';
      position: absolute;
      height: 3px;
      width: calc(100% - 12px);
      left: 6px;
      top: -3px;
      background-color: #009e6f;
    }
    body.useful .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(7) a, .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(7) button{
      color: #009e6f!important;
    }
    /*set end*/
    /*set start*/
      body.document .p-main-menu .p-main-menu__item:nth-child(8) .js-dropdown-trigger{
        color: #009e6f!important;
      }
    
      body.document .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(8).-dropdown > button::after{
        border-color: #009e6f!important;
      }
    
      body.document .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(8):after {
        content: '';
        position: absolute;
        height: 3px;
        width: calc(100% - 12px);
        left: 6px;
        top: -3px;
        background-color: #009e6f;
      }
      body.document .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(8) a, .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(8) button{
        color: #009e6f!important;
      }
      /*set end*/
      /*set start*/
      body.document .p-main-menu .p-main-menu__item:nth-child(9) .js-dropdown-trigger{
        color: #009e6f!important;
      }
    
      body.document .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(9).-dropdown > button::after{
        border-color: #009e6f!important;
      }
    
      body.document .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(9):after {
        content: '';
        position: absolute;
        height: 3px;
        width: calc(100% - 12px);
        left: 6px;
        top: -3px;
        background-color: #009e6f;
      }
      body.document .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(9) a, .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(9) button{
        color: #009e6f!important;
      }
      /*set end*/
      /*set start*/
      body.home .p-main-menu .p-main-menu__item:nth-child(1) .js-dropdown-trigger{
        color: #009e6f!important;
      }
    
      body.home .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(1).-dropdown > button::after{
        border-color: #009e6f!important;
      }
    
      body.home .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(1):after {
        content: '';
        position: absolute;
        height: 3px;
        width: calc(100% - 12px);
        left: 6px;
        top: -3px;
        background-color: #009e6f;
      }
      body.home .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(1) a, .l-header:not(.-home) .p-main-menu .p-main-menu__item:nth-child(1) button{
        color: #009e6f!important;
      }
      /*set end*/

/*20250324追記*/
.c-card__note{
  /*position: relative;
  padding-left: 1em;*/
  font-size: 12px;
  color: red;
}
/*.c-card__note::before{
  position: absolute;
  content: "※";
  left: 0;
}*/
.c-card__note-item:first-child{
  font-weight: bold;
}
.c-card__link.-catering .c-card__sec{
  margin-bottom: auto;
}

.c-annotation.txt_bold{
  font-size: 1rem;
  padding-left: 18px;
  font-weight: 700;
}

/*add20250825*/
.c-list li > span{
  color: #f94141;
}
@media only screen and (max-width: 767px){
  .catering＿btn.sp-fix{
    width: 100%;
    position: relative;
    height: 0;
    padding-top: 75%;
  }
  .c-card__title.sp-fix{
    margin-top: -6px;
  }
}