@charset "UTF-8";
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP:300,500,600,700,900");
@import url("https://fonts.googleapis.com/css?family=Roboto:100,200,300,400,500,700,900");
/* ブレイクポイント参考

PC:インナーコンテンツサイズ以上
Laptop-HiDPI:1440
Laptop-MDPI :1280
iPad Pro(10.5inch):834
iPad Pro(12.9inch):1024
iPad:601
SP:600

*/
/* レスポンシブサイト非表示 */
/*共通の処理*/
@media screen and (min-width: 599px) {
  .sp {
    display: none !important; } }
@media screen and (min-width: 1025px) {
  .tb-sp {
    display: none !important; } }
@media screen and (max-width: 600px) {
  .tb-pc {
    display: none !important; } }
@media screen and (max-width: 1280px) {
  .only1280 {
    display: none !important; } }
@media screen and (max-width: 1024px) {
  .pc {
    display: none !important; } }
@media screen and (min-width: 1025px) {
  a[href^="tel:"] {
    pointer-events: none; } }
/* =========================================================
  Copyright (c) 2011, Yahoo! Inc. All rights reserved.
  Code licensed under the BSD License:
  http://developer.yahoo.com/yui/license.html
  version: 2.9.0
  
  reset.css
========================================================= */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

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

fieldset,
img {
  border: 0; }

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

ol,
ul {
  list-style: none; }

caption,
th {
  text-align: left; }

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

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

abbr,
acronym {
  border: 0; }

/* =========================================================
  Copyright (c) 2011, Yahoo! Inc. All rights reserved.
  Code licensed under the BSD License:
  http://developer.yahoo.com/yui/license.html
  version: 2.9.0
  
  fonts.css
  ---------------------------------
  font-size:1	for setting 10px
========================================================= */
html {
  background: #ffffff;
  overflow-x: hidden;
  font-size: 62.5%; }

body {
  margin: 0;
  padding: 0;
  font: 10px/1.6 "游ゴシック", Yu Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-style: normal;
  font-weight: 500;
  /* for IE6/7 */
  *font-size: small;
  /* for IE Quirks Mode */
  *font: x-small;
  color: #333; }

select,
input,
textarea,
button {
  font: 99% arial, helvetica, clean, sans-serif; }

table {
  font-size: inherit;
  font: 100%; }

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%; }

/* HTML5 reset */
del,
ins,
var,
article,
aside,
canvas,
details,
span,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  /*background: transparent;*/
  margin: 0;
  padding: 0; }

article,
aside,
details,
dialog,
figure,
footer,
header,
hgroup,
legend,
nav,
section,
menu {
  display: block;
  zoom: 1; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700; }

del {
  text-decoration: line-through; }

/* Reset */
body {
  -webkit-text-size-adjust: none; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

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

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

legend {
  color: #000; }

a {
  color: #003764;
  text-decoration: underline;
  cursor: pointer;
  _cursor: hand;
  outline: none; }

a:hover {
  color: #003764;
  text-decoration: none; }

embed,
object {
  display: block;
  outline: none; }

object,
a:focus {
  -moz-outline-style: none; }

hr {
  display: none; }

div {
  position: relative;
  zoom: 1; }

dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
table {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden; }

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0; }

/*クリアフィックス*/
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: '';
    display: block;
    clear: both;
    height: 0;
    line-height: 0;
    visibility: hidden; }

img {
  width: 100%; }

a {
  text-decoration: none;
  transition: 0.5s; }

p, h1, h2, h3, h4, h5, dt, dd, a {
  font-display: swap; }

/*マージン*/
.mlr-05 {
  margin-right: -0.5em;
  margin-left: -0.5em; }

.mlr-03 {
  margin-right: -0.3em;
  margin-left: -0.3em; }

.mlr-01 {
  margin-right: -0.1em;
  margin-left: -0.1em; }

.mb00 {
  margin-bottom: 0px !important; }
  @media screen and (max-width: 599px) {
    .mb00 {
      margin-bottom: 0px !important; } }

.mb05 {
  margin-bottom: 5px !important; }
  @media screen and (max-width: 599px) {
    .mb05 {
      margin-bottom: 5px !important; } }

.mb10 {
  margin-bottom: 10px !important; }
  @media screen and (max-width: 599px) {
    .mb10 {
      margin-bottom: 5px !important; } }

.mb15 {
  margin-bottom: 15px !important; }
  @media screen and (max-width: 599px) {
    .mb15 {
      margin-bottom: 10px !important; } }

.mb20 {
  margin-bottom: 20px !important; }
  @media screen and (max-width: 599px) {
    .mb20 {
      margin-bottom: 10px !important; } }

.mb30 {
  margin-bottom: 30px !important; }
  @media screen and (max-width: 1024px) {
    .mb30 {
      margin-bottom: 25px !important; } }
  @media screen and (max-width: 599px) {
    .mb30 {
      margin-bottom: 20px !important; } }

.mb40 {
  margin-bottom: 40px !important; }
  @media screen and (max-width: 1024px) {
    .mb40 {
      margin-bottom: 30px !important; } }
  @media screen and (max-width: 599px) {
    .mb40 {
      margin-bottom: 20px !important; } }

.mb50 {
  margin-bottom: 50px !important; }
  @media screen and (max-width: 599px) {
    .mb50 {
      margin-bottom: 25px !important; } }

.mb70 {
  margin-bottom: 70px !important; }
  @media screen and (max-width: 1024px) {
    .mb70 {
      margin-bottom: 40px !important; } }
  @media screen and (max-width: 599px) {
    .mb70 {
      margin-bottom: 30px !important; } }

.mb80 {
  margin-bottom: 80px !important; }
  @media screen and (max-width: 1024px) {
    .mb80 {
      margin-bottom: 40px !important; } }
  @media screen and (max-width: 599px) {
    .mb80 {
      margin-bottom: 30px !important; } }

.anchor {
  margin-top: -80px;
  padding-top: 80px;
  display: block; }
  @media screen and (max-width: 1024px) {
    .anchor {
      margin-top: -80px;
      padding-top: 80px; } }
  @media screen and (max-width: 599px) {
    .anchor {
      margin-top: -50px;
      padding-top: 50px; } }

@media print {
  .sp {
    display: none !important; }

  body {
    width: 1140px;
    -webkit-print-color-adjust: exact; }

  /*　------- ↓その他参考例　---------
  .header {
      position: relative !important; //ヘッダー固定fixedを解除
  }
  .header .header-inner {
      width: 100% !important; //サイト幅を解除
  }
  .page-title {
      margin-top: 0px !important; //固定ヘッダー時のマージンTOP分を解除
      width: 100% !important; //サイト幅を解除
  }
  .breadcrumbs-list {
      width: 100% !important; //サイト幅を解除
  }
  .global-nav {
      width: 100%; //サイト幅を解除
  }
  ------- ↑その他参考　---------*/ }
@page {
  size: A4;
  margin: 12.7mm 9.7mm; }
.header-wrapper {
  top: 0;
  right: 0;
  width: 100%;
  height: 80px;
  background-color: #fff;
  position: fixed;
  z-index: 10; }
  @media screen and (max-width: 599px) {
    .header-wrapper {
      height: 50px; } }
  .header-wrapper__logo {
    top: 20px;
    left: 70px;
    width: 250px;
    position: absolute; }
    @media screen and (max-width: 1200px) {
      .header-wrapper__logo {
        left: 50px;
        width: 220px; } }
    @media screen and (max-width: 1024px) {
      .header-wrapper__logo {
        left: 40px; } }
    @media screen and (max-width: 599px) {
      .header-wrapper__logo {
        top: 13px;
        left: 10px;
        width: 160px; } }
    .header-wrapper__logo__link {
      opacity: 1; }
      .header-wrapper__logo__link:hover {
        opacity: 0.7; }
        @media screen and (max-width: 1024px) {
          .header-wrapper__logo__link:hover {
            opacity: 1; } }
  .header-wrapper__nav {
    margin-top: 30px;
    margin-right: 50px;
    text-align: right;
    float: right; }
    @media screen and (max-width: 1024px) {
      .header-wrapper__nav {
        display: none; } }
    .header-wrapper__nav__item {
      margin-left: 40px;
      display: inline-block; }
      @media screen and (max-width: 1200px) {
        .header-wrapper__nav__item {
          margin-left: 25px; } }
      .header-wrapper__nav__item:first-child {
        margin-left: 0; }
      .header-wrapper__nav__item__link {
        font-size: 16px;
        line-height: 1.01;
        color: #345;
        font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
        font-weight: 700;
        position: relative; }
        .header-wrapper__nav__item__link::before {
          content: '';
          bottom: 0px;
          left: -3px;
          width: 0;
          height: 8px;
          background-color: #f5ce13;
          position: absolute;
          z-index: -1;
          transition: 0.5s; }
        .header-wrapper__nav__item__link:hover::before {
          width: calc( 100% + 6px ); }
        .header-wrapper__nav__item__link--now::before {
          width: calc( 100% + 6px ); }
  .header-wrapper__menu-wrapper {
    top: 80px;
    width: 80px;
    height: calc( 100vh - 80px );
    position: relative;
    float: right;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    background-color: rgba(51, 68, 85, 0);
    display: none;
    transition: 0.25s; }
    @media screen and (max-width: 1024px) {
      .header-wrapper__menu-wrapper {
        display: block; } }
    @media screen and (max-width: 599px) {
      .header-wrapper__menu-wrapper {
        top: 50px;
        width: 50px;
        height: calc( 100vh - 50px ); } }
    .header-wrapper__menu-wrapper__btn-menu {
      top: 0;
      right: 0;
      width: 80px;
      height: 80px;
      background-color: #f5ce13;
      display: block;
      cursor: pointer;
      transition: 0.5s;
      position: fixed;
      z-index: 30;
      display: none; }
      @media screen and (max-width: 1024px) {
        .header-wrapper__menu-wrapper__btn-menu {
          display: block; } }
      @media screen and (max-width: 599px) {
        .header-wrapper__menu-wrapper__btn-menu {
          width: 50px;
          height: 50px; } }
      .header-wrapper__menu-wrapper__btn-menu span {
        top: calc( 50% - 1px );
        left: calc( 50% - 15px );
        width: 30px;
        height: 2px;
        background-color: #fff;
        position: absolute;
        display: none; }
        @media screen and (max-width: 1024px) {
          .header-wrapper__menu-wrapper__btn-menu span {
            display: block; } }
        .header-wrapper__menu-wrapper__btn-menu span::before {
          content: '';
          top: -10px;
          left: 0;
          width: 100%;
          height: 100%;
          background-color: #fff;
          position: absolute;
          transition: 0.5s; }
        .header-wrapper__menu-wrapper__btn-menu span::after {
          content: '';
          bottom: -10px;
          left: 0;
          width: 100%;
          height: 100%;
          background-color: #fff;
          position: absolute;
          transition: 0.5s; }
        @media screen and (max-width: 599px) {
          .header-wrapper__menu-wrapper__btn-menu span {
            left: calc( 50% - 10px );
            width: 20px; }
            .header-wrapper__menu-wrapper__btn-menu span::before {
              top: -6px; }
            .header-wrapper__menu-wrapper__btn-menu span::after {
              bottom: -6px; } }
    .header-wrapper__menu-wrapper__inner {
      top: 80px;
      right: 0;
      width: 0;
      height: calc( 100vh - 80px );
      background-color: #334455;
      transition: 0.25s;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      position: fixed;
      z-index: 20;
      display: none; }
      @media screen and (max-width: 1024px) {
        .header-wrapper__menu-wrapper__inner {
          top: 80px;
          display: block; } }
      @media screen and (max-width: 599px) {
        .header-wrapper__menu-wrapper__inner {
          top: 50px;
          height: calc( 100vh - 50px ); } }
      .header-wrapper__menu-wrapper__inner__box {
        margin: 0 auto;
        width: 100%;
        display: none; }
      .header-wrapper__menu-wrapper__inner__item {
        border-bottom: 1px dotted #fff; }
        .header-wrapper__menu-wrapper__inner__item__link {
          padding: 20px 15px;
          font-size: 16px;
          line-height: 1.01em;
          color: #fff;
          font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
          font-weight: 400;
          display: block;
          position: relative; }
          @media screen and (max-width: 599px) {
            .header-wrapper__menu-wrapper__inner__item__link {
              padding: 15px;
              font-size: 14px; } }
          .header-wrapper__menu-wrapper__inner__item__link::before {
            content: '';
            top: calc( 50% - 6px );
            right: 20px;
            width: 12px;
            height: 12px;
            border-width: 2px 2px 0 0;
            border-style: solid;
            border-color: #f5ce13 #f5ce13 transparent transparent;
            transform: rotate(45deg);
            position: absolute;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            -o-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box; }
          .header-wrapper__menu-wrapper__inner__item__link:hover {
            color: #fff;
            background-color: #345; }
            @media screen and (max-width: 1024px) {
              .header-wrapper__menu-wrapper__inner__item__link:hover {
                background-color: transparent; } }
        .header-wrapper__menu-wrapper__inner__item__sub__item {
          border-top: 1px dotted #fff; }
          .header-wrapper__menu-wrapper__inner__item__sub__item__link {
            padding: 18px 20px 18px 30px;
            font-size: 16px;
            line-height: 1.01em;
            color: #fff;
            font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
            font-weight: 400;
            display: block;
            position: relative; }
            @media screen and (max-width: 599px) {
              .header-wrapper__menu-wrapper__inner__item__sub__item__link {
                padding: 15px 15px 15px 30px;
                font-size: 14px; } }
            .header-wrapper__menu-wrapper__inner__item__sub__item__link::before {
              content: '';
              top: calc( 50% - 1px );
              left: 13px;
              width: 12px;
              height: 2px;
              background-color: #fff;
              position: absolute; }
            .header-wrapper__menu-wrapper__inner__item__sub__item__link:hover {
              color: #fff;
              background-color: #345; }
              @media screen and (max-width: 1024px) {
                .header-wrapper__menu-wrapper__inner__item__sub__item__link:hover {
                  background-color: transparent; } }

.btn-input {
  display: none; }

input[type=checkbox].btn-input:checked + .header-wrapper__menu-wrapper {
  width: 100vw;
  background-color: rgba(51, 68, 85, 0.6); }
  input[type=checkbox].btn-input:checked + .header-wrapper__menu-wrapper .header-wrapper__menu-wrapper__inner {
    width: 320px; }
    @media screen and (max-width: 599px) {
      input[type=checkbox].btn-input:checked + .header-wrapper__menu-wrapper .header-wrapper__menu-wrapper__inner {
        width: 100vw; } }
  input[type=checkbox].btn-input:checked + .header-wrapper__menu-wrapper .header-wrapper__menu-wrapper__inner__box {
    display: block; }
  input[type=checkbox].btn-input:checked + .header-wrapper__menu-wrapper .header-wrapper__menu-wrapper__btn-menu span::before {
    top: 0; }
  input[type=checkbox].btn-input:checked + .header-wrapper__menu-wrapper .header-wrapper__menu-wrapper__btn-menu span::after {
    bottom: 0; }

.cv-nav {
  top: 50%;
  right: 11px;
  position: fixed;
  z-index: 10;
  transform: translateY(-50%); }
  @media screen and (max-width: 1024px) {
    .cv-nav {
      top: auto;
      right: 0;
      bottom: 0;
      width: 100%;
      transform: translateY(0); } }
  .cv-nav__item {
    margin-top: 5px; }
    .cv-nav__item:first-child {
      margin-top: 0; }
    @media screen and (max-width: 1024px) {
      .cv-nav__item {
        margin-top: 0;
        width: 50%;
        box-sizing: border-box;
        float: right; }
        .cv-nav__item:first-child {
          border-right: 1px solid #fff;
          float: left; } }
    @media screen and (max-width: 1024px) {
      .cv-nav__item--w100 {
        width: 100%;
        border-right: none;
        float: none; } }
    .cv-nav__item__link {
      padding: 15px 7px;
      width: auto;
      height: auto;
      font-size: 14px;
      line-height: 1.01;
      color: #789;
      font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
      font-weight: 700;
      text-align: center;
      background-color: #fff;
      -moz-border-radius: 15px;
      -webkit-border-radius: 15px;
      -o-border-radius: 15px;
      -ms-border-radius: 15px;
      border-radius: 15px;
      display: block;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl; }
      .cv-nav__item__link:hover {
        color: #fff;
        background-color: #f5ce13; }
      @media screen and (max-width: 1024px) {
        .cv-nav__item__link {
          padding: 0;
          width: 100%;
          height: 50px;
          font-size: 16px;
          line-height: 50px;
          color: #fff;
          font-weight: 500;
          background-color: #789;
          -moz-border-radius: 0;
          -webkit-border-radius: 0;
          -o-border-radius: 0;
          -ms-border-radius: 0;
          border-radius: 0;
          position: relative;
          -webkit-writing-mode: horizontal-tb;
          -ms-writing-mode: lr-tb;
          writing-mode: horizontal-tb; }
          .cv-nav__item__link::before {
            content: '';
            top: calc( 50% - 5px );
            right: 20px;
            width: 10px;
            height: 10px;
            border-width: 2px 2px 0 0;
            border-style: solid;
            border-color: #f5ce13 #f5ce13 transparent transparent;
            transform: rotate(45deg);
            position: absolute;
            -moz-box-sizing: border-box;
            -webkit-box-sizing: border-box;
            -o-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box; }
          .cv-nav__item__link:hover {
            color: #fff;
            background-color: #789; } }
      @media screen and (max-width: 599px) {
        .cv-nav__item__link {
          height: 40px;
          font-size: 14px;
          line-height: 40px; }
          .cv-nav__item__link::before {
            content: '';
            top: calc( 50% - 4px );
            right: 12px;
            width: 8px;
            height: 8px;
            border-width: 2px 2px 0 0; } }

.footer-wrapper {
  margin: 0 50px;
  width: auto;
  height: 60px; }
  @media screen and (max-width: 1024px) {
    .footer-wrapper {
      margin: 0 20px 50px;
      height: 50px; } }
  @media screen and (max-width: 599px) {
    .footer-wrapper {
      margin: 0 0 40px;
      padding: 30px 20px;
      height: auto; } }
  .footer-wrapper__text-wrapper {
    float: left; }
    @media screen and (max-width: 599px) {
      .footer-wrapper__text-wrapper {
        float: none; } }
    .footer-wrapper__text-wrapper__name {
      font-size: 14px;
      line-height: 60px;
      color: #345;
      font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
      font-weight: 700;
      display: inline-block; }
      @media screen and (max-width: 1024px) {
        .footer-wrapper__text-wrapper__name {
          line-height: 50px; } }
      @media screen and (max-width: 599px) {
        .footer-wrapper__text-wrapper__name {
          margin-bottom: 10px;
          font-size: 14px;
          line-height: 1.01;
          text-align: center;
          display: block; } }
    .footer-wrapper__text-wrapper__address {
      margin-left: 5px;
      font-size: 14px;
      line-height: 60px;
      color: #345;
      font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
      font-weight: 400;
      display: inline-block; }
      @media screen and (max-width: 1024px) {
        .footer-wrapper__text-wrapper__address {
          line-height: 50px; } }
      @media screen and (max-width: 599px) {
        .footer-wrapper__text-wrapper__address {
          margin-bottom: 15px;
          font-size: 14px;
          line-height: 1.01;
          text-align: center;
          display: block; } }
    .footer-wrapper__text-wrapper__link {
      margin-left: 10px;
      padding: 0 15px 0 35px;
      height: 36px;
      font-size: 14px;
      line-height: 36px;
      color: #fff;
      font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
      font-weight: 400;
      background-color: #cb5;
      -moz-border-radius: 2px;
      -webkit-border-radius: 2px;
      -o-border-radius: 2px;
      -ms-border-radius: 2px;
      border-radius: 2px;
      background-image: url(../common/icon_face.svg);
      background-repeat: no-repeat;
      background-position: 10px 50%;
      background-size: 17px auto;
      display: inline-block;
      position: relative;
      box-sizing: border-box; }
      .footer-wrapper__text-wrapper__link:hover {
        color: #fff;
        background-color: #345; }
        @media screen and (max-width: 1024px) {
          .footer-wrapper__text-wrapper__link:hover {
            background-color: #cb5; } }
      @media screen and (max-width: 1024px) {
        .footer-wrapper__text-wrapper__link {
          height: 30px;
          line-height: 30px; } }
      @media screen and (max-width: 599px) {
        .footer-wrapper__text-wrapper__link {
          margin: 0 auto;
          width: 90%;
          height: 40px;
          line-height: 40px;
          font-size: 13px;
          text-align: center;
          display: block; } }
  .footer-wrapper__copyright {
    font-size: 14px;
    line-height: 60px;
    color: #345;
    font-family: "Roboto", sans-serif !important;
    font-weight: 400;
    float: right; }
    @media screen and (max-width: 1024px) {
      .footer-wrapper__copyright {
        line-height: 50px; } }
    @media screen and (max-width: 599px) {
      .footer-wrapper__copyright {
        margin-top: 25px;
        line-height: 1.01;
        text-align: center;
        display: block;
        float: none; } }

.btn {
  margin: 0 auto;
  width: 280px;
  height: 50px;
  font-size: 14px;
  line-height: 48px;
  color: #789;
  font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
  font-weight: 700;
  text-align: center;
  background-color: #fff;
  border: 1px solid #fff;
  display: block;
  position: relative;
  box-sizing: border-box; }
  @media screen and (max-width: 599px) {
    .btn {
      max-width: 100%;
      height: 40px;
      font-size: 13px;
      line-height: 38px; } }
  .btn::before {
    content: '';
    top: 50%;
    right: -15px;
    width: 30px;
    height: 1px;
    background-color: #f5ce13;
    position: absolute; }
  .btn::after {
    content: '';
    top: calc( 50% - 3px );
    right: -15px;
    border-width: 3px 0 0 5px;
    border-style: solid;
    border-color: transparent transparent transparent #f5ce13;
    position: absolute; }
  .btn:hover {
    color: #fff;
    background-color: #789;
    border: 1px solid #789; }
    @media screen and (max-width: 1024px) {
      .btn:hover {
        color: #789;
        background-color: #fff;
        border: 1px solid #fff; } }
  .btn--ml0 {
    margin: 0; }
    @media screen and (max-width: 1024px) {
      .btn--ml0 {
        margin: 0 auto; } }
  .btn--line {
    border: 1px solid #789; }
    .btn--line:hover {
      color: #fff;
      background-color: #789;
      border: 1px solid #789; }
      @media screen and (max-width: 1024px) {
        .btn--line:hover {
          color: #789;
          background-color: #fff;
          border: 1px solid #789; } }

.title-en {
  margin: 0 auto 30px;
  padding-bottom: 25px;
  font-size: 52px;
  line-height: 1.01;
  color: #345;
  font-family: "Roboto", sans-serif !important;
  font-weight: 100;
  text-align: center;
  position: relative; }
  .title-en::before {
    content: '';
    bottom: 0;
    left: calc( 50% - 3px );
    width: 6px;
    height: 6px;
    background-color: #345;
    position: absolute; }
  @media screen and (max-width: 1200px) {
    .title-en {
      font-size: 46px; } }
  @media screen and (max-width: 1024px) {
    .title-en {
      font-size: 42px; } }
  @media screen and (max-width: 599px) {
    .title-en {
      margin-bottom: 15px;
      padding-bottom: 20px;
      font-size: 30px; } }
  .title-en__jp {
    margin-top: 5px;
    font-size: 16px;
    line-height: 1.01;
    font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
    font-weight: 500;
    text-align: center;
    display: block; }
    .title-en__jp::before {
      content: '';
      bottom: 0;
      left: calc( 50% - 15px );
      width: 6px;
      height: 6px;
      background-color: #f5ce13;
      position: absolute; }
    .title-en__jp::after {
      content: '';
      bottom: 0;
      right: calc( 50% - 15px );
      width: 6px;
      height: 6px;
      background-color: #f5ce13;
      position: absolute; }
    @media screen and (max-width: 1024px) {
      .title-en__jp {
        font-size: 14px; } }
    @media screen and (max-width: 599px) {
      .title-en__jp {
        font-size: 12px; } }

.side-nav-wrapper {
  top: 80px;
  width: 300px;
  height: 100vh;
  background-color: #eef3f7;
  position: -webkit-sticky;
  position: sticky;
  float: left;
  box-sizing: border-box; }
  @media screen and (max-width: 1024px) {
    .side-nav-wrapper {
      top: 0;
      width: auto;
      height: auto;
      position: -webkit-relative;
      position: relative;
      border-top: 1px solid #ddd;
      float: none; } }
  .side-nav-wrapper__nav {
    margin-top: -80px;
    padding-top: 80px; }
    @media screen and (max-width: 1024px) {
      .side-nav-wrapper__nav {
        margin-top: 0;
        padding-top: 0; } }
    .side-nav-wrapper__nav__item {
      border-bottom: 1px solid #ddd; }
      .side-nav-wrapper__nav__item__link {
        padding: 25px 20px;
        font-size: 16px;
        line-height: 1.01;
        color: #345;
        font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
        font-weight: 400;
        display: block;
        position: relative; }
        @media screen and (max-width: 599px) {
          .side-nav-wrapper__nav__item__link {
            padding: 20px 20px;
            font-size: 14px; } }
        .side-nav-wrapper__nav__item__link::before {
          content: '';
          top: 50%;
          right: 0;
          width: 30px;
          height: 1px;
          background-color: #f5ce13;
          position: absolute;
          transition: 0.5s; }
          @media screen and (max-width: 599px) {
            .side-nav-wrapper__nav__item__link::before {
              width: 20px; } }
        .side-nav-wrapper__nav__item__link:hover {
          color: #49b; }
          .side-nav-wrapper__nav__item__link:hover::before {
            right: -15px; }
          @media screen and (max-width: 1024px) {
            .side-nav-wrapper__nav__item__link:hover {
              color: #345; }
              .side-nav-wrapper__nav__item__link:hover::before {
                right: 0; } }

.contents-wrapper {
  width: calc( 100% - 300px );
  float: right; }
  @media screen and (max-width: 1024px) {
    .contents-wrapper {
      width: 100%;
      float: none; } }

.pagetitle {
  margin-top: 80px;
  width: calc( 100% - 50px ); }
  @media screen and (max-width: 1024px) {
    .pagetitle {
      width: 100%; } }
  @media screen and (max-width: 599px) {
    .pagetitle {
      margin-top: 50px; } }
  .pagetitle--location .pagetitle__photo {
    background-image: url(../location/img/pagetitle.jpg); }
  .pagetitle--location .pagetitle__text-wrapper {
    background-image: url(../common/icon_build.svg);
    background-size: 31px auto;
    background-position: 50% 41px; }
    @media screen and (max-width: 1024px) {
      .pagetitle--location .pagetitle__text-wrapper {
        background-size: calc( 31px * 0.9 ) auto;
        background-position: 50% calc( 41px * 0.9 ); } }
    @media screen and (max-width: 599px) {
      .pagetitle--location .pagetitle__text-wrapper {
        background-size: calc( 31px * 0.7 ) auto;
        background-position: 50% calc( 41px * 0.5 ); } }
  .pagetitle--rooms .pagetitle__photo {
    background-image: url(../rooms/img/pagetitle.jpg); }
  .pagetitle--rooms .pagetitle__text-wrapper {
    background-image: url(../common/icon_room.svg);
    background-size: 26px auto;
    background-position: 50% 39px; }
    @media screen and (max-width: 1024px) {
      .pagetitle--rooms .pagetitle__text-wrapper {
        background-size: calc( 26px * 0.9 ) auto;
        background-position: 50% calc( 39px * 0.9 ); } }
    @media screen and (max-width: 599px) {
      .pagetitle--rooms .pagetitle__text-wrapper {
        background-size: calc( 26px * 0.7 ) auto;
        background-position: 50% calc( 39px * 0.5 ); } }
  .pagetitle--rental .pagetitle__photo {
    background-image: url(../rental/img/pagetitle.jpg); }
  .pagetitle--rental .pagetitle__text-wrapper {
    background-image: url(../common/icon_rental.svg);
    background-size: 45px auto;
    background-position: 50% 40px; }
    @media screen and (max-width: 1024px) {
      .pagetitle--rental .pagetitle__text-wrapper {
        background-size: calc( 45px * 0.9 ) auto;
        background-position: 50% calc( 40px * 0.9 ); } }
    @media screen and (max-width: 599px) {
      .pagetitle--rental .pagetitle__text-wrapper {
        background-size: calc( 45px * 0.7 ) auto;
        background-position: 50% calc( 40px * 0.5 ); } }
  .pagetitle__photo {
    width: calc( 100% - 300px );
    height: 180px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
    position: relative;
    float: right; }
    @media screen and (max-width: 1024px) {
      .pagetitle__photo {
        width: calc( 100% - 240px );
        height: 160px; } }
    @media screen and (max-width: 599px) {
      .pagetitle__photo {
        width: calc( 100% - 180px );
        height: 100px; } }
  .pagetitle__text-wrapper {
    padding-top: 89px;
    width: 300px;
    height: 180px;
    font-size: 20px;
    line-height: 1.01;
    color: #fff;
    font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
    font-weight: 500;
    text-align: center;
    background-color: #345;
    background-repeat: no-repeat;
    box-sizing: border-box;
    float: left; }
    @media screen and (max-width: 1024px) {
      .pagetitle__text-wrapper {
        width: 240px;
        height: 160px;
        padding-top: 75px;
        font-size: 16px; } }
    @media screen and (max-width: 599px) {
      .pagetitle__text-wrapper {
        width: 180px;
        height: 100px;
        padding-top: 53px;
        font-size: 12px; } }
    .pagetitle__text-wrapper__en {
      margin-top: 10px;
      font-size: 12px;
      line-height: 1.01;
      color: #f5ce13;
      font-family: "Roboto", sans-serif !important;
      font-weight: 700;
      text-align: center;
      display: block; }
      @media screen and (max-width: 1024px) {
        .pagetitle__text-wrapper__en {
          font-size: 11px; } }
      @media screen and (max-width: 599px) {
        .pagetitle__text-wrapper__en {
          margin-top: 5px;
          font-size: 10px; } }

.text-standard {
  font-size: 16px;
  line-height: 2.0;
  color: #345;
  text-align: justify; }
  @media screen and (max-width: 1200px) {
    .text-standard {
      font-size: 15px; } }
  @media screen and (max-width: 599px) {
    .text-standard {
      font-size: 14px;
      line-height: 1.8; } }
  .text-standard--center {
    text-align: center; }
    @media screen and (max-width: 1024px) {
      .text-standard--center {
        text-align: justify; } }

.copy-standard {
  margin-bottom: 20px;
  font-size: 24px;
  line-height: 1.5;
  color: #345;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
  font-weight: 300;
  text-align: center; }
  @media screen and (max-width: 1200px) {
    .copy-standard {
      margin-bottom: 17px;
      font-size: 20px; } }
  @media screen and (max-width: 599px) {
    .copy-standard {
      margin-bottom: 12px;
      font-size: 18px; } }
  @media screen and (max-width: 320px) {
    .copy-standard {
      font-size: 16px; } }

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

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

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

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  display: none; }

.slick-next {
  display: none; }

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

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

.top-main-wrapper {
  margin: 80px 50px 50px;
  position: relative; }
  @media screen and (max-width: 1024px) {
    .top-main-wrapper {
      margin: 80px 0 0; } }
  @media screen and (max-width: 599px) {
    .top-main-wrapper {
      margin: 50px 0 0; } }
  .top-main-wrapper__item {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%; }
    .top-main-wrapper__item::before {
      content: '';
      padding-top: 50.667%;
      display: block; }
    .top-main-wrapper__item--01 {
      background-image: url(../img/main01.jpg); }
    .top-main-wrapper__item--02 {
      background-image: url(../img/main02.jpg); }
  .top-main-wrapper__copy {
    top: 8%;
    left: 40%;
    width: 20%;
    position: absolute;
    z-index: 9; }
    @media screen and (max-width: 1024px) {
      .top-main-wrapper__copy {
        left: 39%;
        width: 22%; } }
    @media screen and (max-width: 599px) {
      .top-main-wrapper__copy {
        left: 35%;
        width: 30%; } }
  .top-main-wrapper__scroll {
    left: calc( 50% - 50px );
    bottom: 45px;
    padding-top: 50px;
    width: 100px;
    position: absolute; }
    @media screen and (max-width: 1024px) {
      .top-main-wrapper__scroll {
        bottom: 25px; } }
    @media screen and (max-width: 599px) {
      .top-main-wrapper__scroll {
        display: none; } }
    .top-main-wrapper__scroll__figure {
      top: 0;
      left: calc( 50% - 13px );
      width: 26px;
      height: 40px;
      border: 2px solid #fff;
      box-sizing: border-box;
      -moz-border-radius: 13px;
      -webkit-border-radius: 13px;
      -o-border-radius: 13px;
      -ms-border-radius: 13px;
      border-radius: 13px;
      position: absolute; }
      .top-main-wrapper__scroll__figure::before {
        content: '';
        width: 6px;
        height: 6px;
        left: calc( 50% - 3px );
        background-color: #fff;
        -moz-border-radius: 50%;
        -webkit-border-radius: 50%;
        -o-border-radius: 50%;
        -ms-border-radius: 50%;
        border-radius: 50%;
        position: absolute;
        animation-duration: 2.0s;
        animation-name: mouse-movie;
        transition-timing-function: linear;
        animation-iteration-count: infinite; }
@keyframes mouse-movie {
  0% {
    top: 7px;
    opacity: 1; }
  30% {
    top: 7px;
    opacity: 1; }
  100% {
    top: 30px;
    opacity: 0; } }
    .top-main-wrapper__scroll__text {
      padding-left: 0.5em;
      font-size: 14px;
      line-height: 1.01;
      color: #fff;
      font-family: "Roboto", sans-serif !important;
      font-weight: 700;
      letter-spacing: 0.5em;
      text-align: center; }
      @media screen and (max-width: 1024px) {
        .top-main-wrapper__scroll__text {
          font-size: 12px; } }

.bx-wrapper {
  position: relative;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.bx-wrapper img {
  max-width: 100%;
  display: block; }

.bxslider {
  margin: 0;
  padding: 0; }

ul.bxslider {
  list-style: none; }

.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0); }

/** THEME
===================================*/
.bx-wrapper {
  background: #fff; }

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%; }

/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url("images/bx_loader.gif") center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000; }

/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px; }

.bx-wrapper .bx-pager.bx-default-pager a {
  background: #666;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px; }

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #000; }

.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  vertical-align: bottom;
  *zoom: 1;
  *display: inline; }

.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0; }

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
  background: url("images/controls.png") no-repeat 0 -32px; }

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 0; }

.bx-wrapper .bx-next {
  right: 10px;
  background: url("images/controls.png") no-repeat -43px -32px; }

.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: -43px 0; }

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9999; }

.bx-wrapper .bx-controls-direction a.disabled {
  display: none; }

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center; }

.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url("images/controls.png") -86px -11px no-repeat;
  margin: 0 3px; }

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
  background-position: -86px 0; }

.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url("images/controls.png") -86px -44px no-repeat;
  margin: 0 3px; }

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
  background-position: -86px -33px; }

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%; }

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px; }

/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666;
  background: rgba(80, 80, 80, 0.75);
  width: 100%; }

.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px; }

.top-location-wrapper {
  margin: 0 50px;
  background-color: #e7eeee; }
  @media screen and (max-width: 1024px) {
    .top-location-wrapper {
      margin: 0; } }
  .top-location-wrapper__text-wrapper {
    padding: 50px 0 0 50px;
    width: 50%;
    float: right;
    box-sizing: border-box; }
    @media screen and (max-width: 1024px) {
      .top-location-wrapper__text-wrapper {
        padding: 60px 80px 80px;
        width: auto;
        float: none; } }
    @media screen and (max-width: 599px) {
      .top-location-wrapper__text-wrapper {
        padding: 30px 20px 40px; } }
    .top-location-wrapper__text-wrapper__copy {
      margin-bottom: 15px;
      font-size: 32px;
      line-height: 1.6;
      color: #345;
      font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
      font-weight: 300; }
      @media screen and (max-width: 1200px) {
        .top-location-wrapper__text-wrapper__copy {
          font-size: 29px; } }
      @media screen and (max-width: 1024px) {
        .top-location-wrapper__text-wrapper__copy {
          font-size: 23px;
          text-align: center; } }
      @media screen and (max-width: 599px) {
        .top-location-wrapper__text-wrapper__copy {
          margin-bottom: 10px;
          font-size: 18px;
          text-align: justify; } }
    .top-location-wrapper__text-wrapper__text {
      margin-bottom: 30px;
      font-size: 16px;
      line-height: 2.0;
      color: #345; }
      @media screen and (max-width: 1200px) {
        .top-location-wrapper__text-wrapper__text {
          font-size: 14px; } }
      @media screen and (max-width: 1024px) {
        .top-location-wrapper__text-wrapper__text {
          margin: 0 auto 30px;
          max-width: 800px;
          font-size: 16px;
          text-align: justify; } }
      @media screen and (max-width: 599px) {
        .top-location-wrapper__text-wrapper__text {
          margin: 0 auto 15px;
          font-size: 14px;
          text-align: justify; } }
  .top-location-wrapper__photos {
    margin-top: -4px;
    padding-right: 4px;
    width: 50%;
    background-color: #fff;
    box-sizing: border-box;
    float: left; }
    @media screen and (max-width: 1024px) {
      .top-location-wrapper__photos {
        margin: 0;
        padding: 0;
        width: 100%;
        float: none;
        background-color: transparent; } }
    .top-location-wrapper__photos__item {
      margin-top: 4px;
      width: calc( 50% - 2px );
      height: 240px;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-size: cover;
      float: left; }
      .top-location-wrapper__photos__item:nth-child(even) {
        float: right; }
      @media screen and (max-width: 1024px) {
        .top-location-wrapper__photos__item {
          margin-top: 0;
          width: 25%;
          height: auto;
          float: left; }
          .top-location-wrapper__photos__item:nth-child(even) {
            float: left; }
          .top-location-wrapper__photos__item::before {
            content: '';
            padding-top: 64.3%;
            display: block; } }
      @media screen and (max-width: 599px) {
        .top-location-wrapper__photos__item {
          width: 50%; }
          .top-location-wrapper__photos__item:nth-child(even) {
            float: right; } }
      .top-location-wrapper__photos__item--01 {
        background-image: url(../img/photo01-1.jpg); }
      .top-location-wrapper__photos__item--02 {
        background-image: url(../img/photo01-2.jpg); }
      .top-location-wrapper__photos__item--03 {
        background-image: url(../img/photo01-3.jpg); }
      .top-location-wrapper__photos__item--04 {
        background-image: url(../img/photo01-4.jpg); }

.top-rooms-wrapper {
  padding: 80px; }
  @media screen and (max-width: 1024px) {
    .top-rooms-wrapper {
      padding: 50px 40px 60px; } }
  @media screen and (max-width: 599px) {
    .top-rooms-wrapper {
      padding: 30px 20px 40px; } }
  .top-rooms-wrapper__copy {
    margin-bottom: 25px;
    font-size: 24px;
    line-height: 1.01;
    color: #345;
    font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
    font-weight: 300;
    text-align: center; }
    @media screen and (max-width: 599px) {
      .top-rooms-wrapper__copy {
        margin-bottom: 10px;
        font-size: 20px;
        line-height: 1.5; } }
  .top-rooms-wrapper__text {
    margin-bottom: 50px;
    font-size: 16px;
    line-height: 2.0;
    color: #345;
    text-align: center; }
    @media screen and (max-width: 1024px) {
      .top-rooms-wrapper__text {
        margin-bottom: 30px; } }
    @media screen and (max-width: 599px) {
      .top-rooms-wrapper__text {
        margin: 0 auto 15px;
        font-size: 14px;
        text-align: justify; } }
  .top-rooms-wrapper__btn {
    margin: 0 auto;
    width: 600px; }
    @media screen and (max-width: 599px) {
      .top-rooms-wrapper__btn {
        width: 100%; } }
    .top-rooms-wrapper__btn__item {
      width: 280px;
      float: right; }
      @media screen and (max-width: 599px) {
        .top-rooms-wrapper__btn__item {
          width: 100%;
          float: none; } }
      .top-rooms-wrapper__btn__item:first-child {
        float: left; }
        @media screen and (max-width: 599px) {
          .top-rooms-wrapper__btn__item:first-child {
            margin-bottom: 10px;
            float: none; } }

.top-rooms-photos {
  margin: 0 50px 50px; }
  @media screen and (max-width: 1024px) {
    .top-rooms-photos {
      margin: 0; } }
  .top-rooms-photos__item {
    width: calc( 99.9% / 4 );
    float: left; }
    @media screen and (max-width: 599px) {
      .top-rooms-photos__item {
        width: 50%; }
        .top-rooms-photos__item:nth-child(even) {
          float: right; } }

.top-rental-wrapper {
  margin: 0 50px;
  padding: 80px 80px 120px;
  background-color: #f3f7f7; }
  @media screen and (max-width: 1024px) {
    .top-rental-wrapper {
      margin: 0;
      padding: 50px 40px 80px; } }
  @media screen and (max-width: 599px) {
    .top-rental-wrapper {
      padding: 30px 20px 40px; } }
  .top-rental-wrapper__photos {
    margin: 0 auto 50px; }
    @media screen and (max-width: 1024px) {
      .top-rental-wrapper__photos {
        margin-bottom: 30px; } }
    @media screen and (max-width: 599px) {
      .top-rental-wrapper__photos {
        margin-bottom: 15px; } }
    .top-rental-wrapper__photos__item {
      width: calc( 50% - 2px );
      float: right; }
      .top-rental-wrapper__photos__item:first-child {
        float: left; }
      @media screen and (max-width: 1024px) {
        .top-rental-wrapper__photos__item {
          width: calc( 50% - 1px ); } }
      @media screen and (max-width: 599px) {
        .top-rental-wrapper__photos__item {
          width: 50%; } }
  .top-rental-wrapper__copy {
    margin-bottom: 15px;
    font-size: 24px;
    line-height: 1.7;
    color: #345;
    font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", "YuMincho", "FP-ヒラギノ明朝 StdN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", "メイリオ", Meiryo, "ＭＳ ゴシック", serif;
    font-weight: 300;
    text-align: center; }
    @media screen and (max-width: 599px) {
      .top-rental-wrapper__copy {
        margin-bottom: 10px;
        font-size: 17px;
        text-align: justify; } }
  .top-rental-wrapper__text {
    margin-bottom: 50px;
    font-size: 16px;
    line-height: 2.0;
    color: #345;
    text-align: center; }
    @media screen and (max-width: 1024px) {
      .top-rental-wrapper__text {
        margin-bottom: 30px;
        text-align: justify; } }
    @media screen and (max-width: 599px) {
      .top-rental-wrapper__text {
        margin: 0 auto 15px;
        font-size: 14px; } }

.location-wrapper {
  padding: 80px 40px 60px; }
  @media screen and (max-width: 1200px) {
    .location-wrapper {
      padding: 60px 40px 40px; } }
  @media screen and (max-width: 599px) {
    .location-wrapper {
      padding: 30px 20px 20px; } }
  .location-wrapper__inner {
    margin: 0 auto;
    width: 100%;
    max-width: 780px; }

.location-photos {
  width: calc( 100% - 50px ); }
  @media screen and (max-width: 1024px) {
    .location-photos {
      width: 100%; } }
  .location-photos__photo01 {
    width: 52%;
    float: right; }
    @media screen and (max-width: 599px) {
      .location-photos__photo01 {
        width: 100%;
        float: none; } }
  .location-photos__photo02 {
    width: 48%;
    float: left; }
    @media screen and (max-width: 599px) {
      .location-photos__photo02 {
        width: 100%;
        float: none; } }

.location-common-wrapper {
  padding: 80px 50px 0 50px;
  position: relative; }
  @media screen and (max-width: 1024px) {
    .location-common-wrapper {
      padding: 60px 40px 0; } }
  @media screen and (max-width: 599px) {
    .location-common-wrapper {
      padding: 40px 10px 0; } }
  .location-common-wrapper__credit {
    top: 10px;
    left: 10px;
    font-size: 13px;
    line-height: 1.01;
    color: #345;
    position: absolute; }
    @media screen and (max-width: 599px) {
      .location-common-wrapper__credit {
        top: 5px;
        right: 5px;
        left: 0;
        font-size: 11px;
        text-align: right; } }
  .location-common-wrapper__inner__item {
    margin-bottom: 30px;
    margin-left: 30px;
    width: calc( ( 99.9% - 60px ) / 3 );
    float: left; }
    @media screen and (max-width: 1200px) {
      .location-common-wrapper__inner__item {
        margin-bottom: 30px;
        margin-left: 20px;
        width: calc( ( 99.9% - 40px ) / 3 ); } }
    @media screen and (max-width: 1024px) {
      .location-common-wrapper__inner__item {
        margin-bottom: 20px; } }
    .location-common-wrapper__inner__item:nth-child(3n-2) {
      margin-left: 0; }
    @media screen and (max-width: 599px) {
      .location-common-wrapper__inner__item {
        margin-bottom: 15px;
        margin-left: 0;
        width: calc( 50% - 2px ); }
        .location-common-wrapper__inner__item:nth-child(even) {
          float: right; } }
    .location-common-wrapper__inner__item__link {
      margin-bottom: 10px;
      display: block; }
      .location-common-wrapper__inner__item__link:hover {
        opacity: 0.7; }
        @media screen and (max-width: 1024px) {
          .location-common-wrapper__inner__item__link:hover {
            opacity: 1; } }
      @media screen and (max-width: 599px) {
        .location-common-wrapper__inner__item__link {
          margin-bottom: 5px; } }
    .location-common-wrapper__inner__item__caption {
      font-size: 14px;
      line-height: 1.3;
      color: #345;
      text-align: center;
      display: block; }
      @media screen and (max-width: 1200px) {
        .location-common-wrapper__inner__item__caption {
          font-size: 13px; } }
      @media screen and (max-width: 599px) {
        .location-common-wrapper__inner__item__caption {
          font-size: 11px; } }
  .location-common-wrapper__caution {
    font-size: 15px;
    line-height: 1.4;
    color: #789;
    text-align: right;
    display: block; }
    @media screen and (max-width: 1024px) {
      .location-common-wrapper__caution {
        font-size: 13px; } }
    @media screen and (max-width: 599px) {
      .location-common-wrapper__caution {
        padding-left: 1em;
        font-size: 12px;
        text-indent: -1em;
        text-align: justify; } }
    .location-common-wrapper__caution--mb {
      margin-bottom: 80px; }
      @media screen and (max-width: 1024px) {
        .location-common-wrapper__caution--mb {
          margin-bottom: 60px; } }
      @media screen and (max-width: 599px) {
        .location-common-wrapper__caution--mb {
          margin-bottom: 40px; } }

.location-map-wrapper {
  padding: 80px 50px 60px; }
  @media screen and (max-width: 1024px) {
    .location-map-wrapper {
      padding: 60px 40px 40px; } }
  @media screen and (max-width: 599px) {
    .location-map-wrapper {
      padding: 40px 0 0; } }
  .location-map-wrapper__inner {
    margin: -10px auto 0;
    width: 100%;
    max-width: 700px;
    box-sizing: border-box; }
    @media screen and (max-width: 1200px) {
      .location-map-wrapper__inner {
        max-width: 620px; } }
    @media screen and (max-width: 599px) {
      .location-map-wrapper__inner {
        margin-top: 0;
        padding: 10px 30px 20px;
        background-color: #f7f7f7; } }
    @media screen and (max-width: 320px) {
      .location-map-wrapper__inner {
        padding: 10px 20px 20px; } }
    .location-map-wrapper__inner__item {
      margin-top: 10px;
      width: 50%;
      font-size: 16px;
      line-height: 1.2;
      color: #345;
      text-align: justify;
      float: left; }
      .location-map-wrapper__inner__item:nth-child(even) {
        float: right; }
      @media screen and (max-width: 1400px) {
        .location-map-wrapper__inner__item {
          font-size: 15px; } }
      @media screen and (max-width: 1200px) {
        .location-map-wrapper__inner__item {
          font-size: 14px; } }
      @media screen and (max-width: 1024px) {
        .location-map-wrapper__inner__item {
          font-size: 14px; } }
      @media screen and (max-width: 599px) {
        .location-map-wrapper__inner__item {
          padding-left: 1em;
          width: auto;
          float: none;
          position: relative; } }
  @media screen and (max-width: 599px) and (max-width: 320px) {
    .location-map-wrapper__inner__item {
      font-size: 12px; } }
      @media screen and (max-width: 599px) {
          .location-map-wrapper__inner__item::before {
            content: '';
            top: 4px;
            left: 0px;
            width: 6px;
            height: 6px;
            background-color: #f5ce13;
            position: absolute; }
          .location-map-wrapper__inner__item:nth-child(even) {
            float: none; } }

.location-map {
  width: calc( 100% - 50px );
  height: auto;
  position: relative; }
  .location-map::before {
    content: '';
    padding-top: 35%;
    display: block; }
    @media screen and (max-width: 599px) {
      .location-map::before {
        padding-top: 55%; } }
  @media screen and (max-width: 1024px) {
    .location-map {
      width: 100%; } }
  .location-map iframe {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute; }

.location-management-wrapper {
  margin-right: 50px;
  padding: 80px 50px 120px;
  background-color: #f3f7f7; }
  @media screen and (max-width: 1024px) {
    .location-management-wrapper {
      margin-right: 0;
      padding: 60px 40px 80px; } }
  @media screen and (max-width: 599px) {
    .location-management-wrapper {
      padding: 40px 10px 40px; } }
  .location-management-wrapper__inner {
    margin: 0 auto 0;
    width: 100%;
    max-width: 900px;
    box-sizing: border-box; }
    .location-management-wrapper__inner__box {
      margin-bottom: 50px;
      padding: 30px;
      background-color: #fff; }
      @media screen and (max-width: 1024px) {
        .location-management-wrapper__inner__box {
          margin-bottom: 25px; } }
      @media screen and (max-width: 599px) {
        .location-management-wrapper__inner__box {
          margin-bottom: 15px;
          padding: 20px; } }
      .location-management-wrapper__inner__box__text-wrapper {
        width: 50%;
        box-sizing: border-box;
        float: left; }
        @media screen and (max-width: 1200px) {
          .location-management-wrapper__inner__box__text-wrapper {
            margin-bottom: 20px;
            width: auto;
            float: none; } }
        .location-management-wrapper__inner__box__text-wrapper__title {
          padding-bottom: 10px;
          font-size: 19px;
          color: #345;
          font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
          font-weight: 500;
          border-bottom: 1px solid #ddd; }
          @media screen and (max-width: 599px) {
            .location-management-wrapper__inner__box__text-wrapper__title {
              padding-bottom: 7px;
              font-size: 16px; } }
        .location-management-wrapper__inner__box__text-wrapper__list {
          margin-top: 15px; }
          @media screen and (max-width: 599px) {
            .location-management-wrapper__inner__box__text-wrapper__list {
              margin-top: 10px; } }
          .location-management-wrapper__inner__box__text-wrapper__list__title {
            padding-left: 1em;
            width: 110px;
            font-size: 16px;
            line-height: 1.1;
            color: #345;
            box-sizing: border-box;
            float: left;
            position: relative; }
            @media screen and (max-width: 599px) {
              .location-management-wrapper__inner__box__text-wrapper__list__title {
                margin-bottom: 5px;
                width: auto;
                font-size: 14px;
                float: none; } }
            .location-management-wrapper__inner__box__text-wrapper__list__title::before {
              content: '';
              top: 4px;
              left: 0px;
              width: 6px;
              height: 6px;
              background-color: #f5ce13;
              position: absolute; }
          .location-management-wrapper__inner__box__text-wrapper__list__text {
            width: calc( 100% - 110px );
            font-size: 16px;
            line-height: 1.1;
            color: #345;
            float: right; }
            @media screen and (max-width: 599px) {
              .location-management-wrapper__inner__box__text-wrapper__list__text {
                padding-left: 1em;
                width: auto;
                font-size: 14px;
                float: none; } }
      .location-management-wrapper__inner__box__photo {
        width: 50%;
        float: right; }
        @media screen and (max-width: 1200px) {
          .location-management-wrapper__inner__box__photo {
            width: 100%;
            float: none; } }

.rooms-wrapper {
  padding: 80px 40px 40px; }
  @media screen and (max-width: 1200px) {
    .rooms-wrapper {
      padding: 60px 40px 30px; } }
  @media screen and (max-width: 599px) {
    .rooms-wrapper {
      padding: 30px 20px 20px; } }
  .rooms-wrapper__inner {
    margin: 0 auto;
    width: 100%;
    max-width: 780px; }
    .rooms-wrapper__inner__text {
      margin-bottom: 40px; }
      @media screen and (max-width: 1200px) {
        .rooms-wrapper__inner__text {
          margin-bottom: 30px; } }
      @media screen and (max-width: 599px) {
        .rooms-wrapper__inner__text {
          margin-bottom: 20px; } }

.rooms-madori-wrapper {
  margin-right: 50px;
  padding: 40px 25px;
  background-color: #f3f7f7; }
  @media screen and (max-width: 1024px) {
    .rooms-madori-wrapper {
      margin-right: 0;
      padding: 30px 10px; } }
  @media screen and (max-width: 599px) {
    .rooms-madori-wrapper {
      padding: 20px 10px; } }
  .rooms-madori-wrapper__item {
    margin: 0  15px;
    width: calc( 50% - 15px ); }
    @media screen and (max-width: 1024px) {
      .rooms-madori-wrapper__item {
        margin: 0  10px;
        width: calc( 50% - 5px ); } }
    @media screen and (max-width: 599px) {
      .rooms-madori-wrapper__item {
        width: 100%; } }

.rental-about-wrapper {
  padding: 80px 40px 60px; }
  @media screen and (max-width: 1200px) {
    .rental-about-wrapper {
      padding: 60px 40px 40px; } }
  @media screen and (max-width: 599px) {
    .rental-about-wrapper {
      padding: 30px 20px 20px; } }
  .rental-about-wrapper__inner {
    margin: 0 auto;
    width: 100%;
    max-width: 780px; }

.rental-photos {
  width: calc( 100% - 50px ); }
  @media screen and (max-width: 1024px) {
    .rental-photos {
      width: 100%; } }
  .rental-photos__item {
    margin-top: 1px;
    margin-left: 1px;
    width: calc( ( 99.9% - 2px ) / 3 );
    float: left;
    box-sizing: border-box; }
    .rental-photos__item:nth-child(3n-2) {
      margin-left: 0; }
    @media screen and (max-width: 599px) {
      .rental-photos__item {
        margin-left: 0;
        margin-bottom: 2px;
        width: calc( 50% - 1px ); }
        .rental-photos__item:nth-child(even) {
          float: right; } }

.rental-price-wrapper {
  margin-right: 50px;
  padding: 80px 50px 120px;
  background-color: #f3f7f7; }
  @media screen and (max-width: 1024px) {
    .rental-price-wrapper {
      margin-right: 0;
      padding: 60px 40px 80px; } }
  @media screen and (max-width: 599px) {
    .rental-price-wrapper {
      padding: 40px 20px 40px; } }
  .rental-price-wrapper__inner {
    margin: 0 auto 0;
    width: 100%;
    max-width: 900px;
    box-sizing: border-box; }
    .rental-price-wrapper__inner__table {
      margin-bottom: 50px;
      width: 100%;
      background-color: #fff;
      border-right: 1px solid #ddd;
      border-bottom: 1px solid #ddd;
      border-collapse: collapse; }
      @media screen and (max-width: 1024px) {
        .rental-price-wrapper__inner__table {
          margin-bottom: 30px; } }
      @media screen and (max-width: 599px) {
        .rental-price-wrapper__inner__table {
          margin-bottom: 15px; } }
      .rental-price-wrapper__inner__table th {
        padding: 20px 0 18px;
        width: 160px;
        font-size: 15px;
        line-height: 1.5;
        color: #fff;
        font-family: "Noto Sans Japanese", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
        font-weight: 300;
        text-align: center;
        background-color: #9bc;
        border-top: 1px solid #ddd;
        border-left: 1px solid #ddd; }
        @media screen and (max-width: 1200px) {
          .rental-price-wrapper__inner__table th {
            width: 110px;
            font-size: 14px; } }
        @media screen and (max-width: 599px) {
          .rental-price-wrapper__inner__table th {
            padding: 7px 0 6px;
            width: auto;
            display: block; } }
      .rental-price-wrapper__inner__table td {
        padding: 20px 25px 18px;
        width: calc( 100% - 160px );
        font-size: 15px;
        line-height: 1.5;
        color: #345;
        text-align: justify;
        border-top: 1px solid #ddd;
        border-left: 1px solid #ddd; }
        @media screen and (max-width: 1200px) {
          .rental-price-wrapper__inner__table td {
            padding: 20px 20px 18px;
            width: calc( 100% - 110px );
            font-size: 14px; } }
        @media screen and (max-width: 599px) {
          .rental-price-wrapper__inner__table td {
            padding: 15px;
            width: auto;
            display: block; } }
        @media screen and (max-width: 599px) {
          .rental-price-wrapper__inner__table td.td-center {
            text-align: center; } }
