@charset "UTF-8";
/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* 基本設定
---------------------------------------------------------------------------*/
/* responsive */
/* サイズ */
/* flexbox */
/* フォント */
/* regular: 400, medium: 500, semibold: 600, bold: 700 */
/*@mixin font-min {
  font-family: "Zen Old Mincho", serif;
  font-weight: 400;
  font-style: normal;
}*/
/* regular: 400, medium: 500, bold: 700 */
/*@mixin font-hdl {
  font-family: fot-udkakugo-large-pr6n, sans-serif;
  font-style: normal;
  font-weight: 600;
}*/
/* regular: 500 */
/* regular: 400 */
/* 色 */
/* グラデ背景色 */
/* 中央揃え */
/* objectfit */
/* ホバーアクション */
/* 角丸 */
/* ボタン */
/* ボタンの中のspan */
/* フォントサイズ */
/* padding margin */
/* 縦書き */
/* 内径 */
/* 基本設定
---------------------------------------------------------------------------*/
/* reboot */
/*!
 * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-size: 625%; }

@-ms-viewport {
  width: device-width; }
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, Noto Sans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: .16rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: left; }

[tabindex="-1"]:focus {
  outline: 0 !important; }


h1 {
  margin: 0;
  font-weight: normal;
  font-style: inherit; }
h2{
  margin-top: 0!important; }
p {
  margin: 0;
  padding: 0; }

ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }

ul ul {
  margin-bottom: 0;
  padding: 0; }

blockquote {
  margin: 0 0 1rem; }

b,
strong {
  font-weight: bolder; }

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent; }

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none; }

a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none; }

a:not([href]):not([tabindex]):focus {
  outline: 0; }

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em; }

img {
  vertical-align: middle;
  border-style: none; }

/* basic layout */
/* 全体の設定
---------------------------------------------------------------------------*/
/* chromeで表示される謎の青枠を消す */
*:focus {
  outline: none; }

/* 電話番号のリンク */
@media (min-width: 769px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }
a.notel {
  pointer-events: none;
  cursor: default;
  text-decoration: none; }

/* 共通設定
---------------------------------------------------------------------------*/
#wrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow: hidden; }

@media screen and (max-width: 768px) {
  #wrap {
    margin-top: 0; } }

/* iOSでのデフォルトスタイルをリセット
---------------------------------------------------------------------------*/
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box; }
  input[type="submit"]::-webkit-search-decoration,
  input[type="button"]::-webkit-search-decoration {
    display: none; }
  input[type="submit"]::focus,
  input[type="button"]::focus {
    outline-offset: -2px; }

button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

/* レスポンシブ */
@media screen and (max-width: 480px) {
  .view-pc {
    display: none; } }

.view-tab {
  display: none; }
  @media screen and (max-width: 768px) {
    .view-tab {
      display: block; } }
  @media screen and (max-width: 480px) {
    .view-tab {
      display: none; } }

.view-sp {
  display: none; }
  @media screen and (max-width: 480px) {
    .view-sp {
      display: block; } }

/* 画像 */
img {
  max-width: 100%;
  height: auto; }

/* ------------------------------------------------------------------------*/
/* レイアウト
---------------------------------------------------------------------------*/
body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  background-color: #ffffff;
  font-size: 18px;
  line-height: 1.1;
  letter-spacing: 0;
  color: #00285f; }
  @media screen and (max-width: 1300px) {
    body {
      font-size: 1.3846153846vw; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 3.6vw; } }
  @media screen and (max-width: 480px) {
    body {
      font-size: 3.6vw; } }
  body.scrollnone {
    overflow: hidden; }

#wrap {
  overflow: hidden;
  position: relative; }

body#top #wrap {
  padding-top: 0; }

* {
  outline: none; }

img {
  display: block;
  width: auto;
  height: auto; }

a,
button,
input[type="submit"] {
  transition-property: all;
  transition: 0.3s linear;
  color: inherit!important; }

@media screen and (min-width: 481px) {
  a:hover,
  button:hover
  input[type="submit"]:hover {
    opacity: .6;
    text-decoration: none; } }

@keyframes fadein {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.wrap {
  /* 1280 */
  position: relative;
  width: 1280px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 1300px) {
    .wrap {
      width: 98.4615384615vw; } }
  @media screen and (max-width: 480px) {
    .wrap {
      width: 93.3333333333vw; } }

.wrap-min {
  /* 1080 */
  position: relative;
  width: 1080px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 1300px) {
    .wrap-min {
      width: 83.0769230769vw; } }
  @media screen and (max-width: 480px) {
    .wrap-min {
      width: 86.6666666667vw; } }

.wrap-minest {
  /* 980 */
  width: 980px;
  margin-left: auto;
  margin-right: auto; }
  @media screen and (max-width: 1300px) {
    .wrap-minest {
      width: 75.3846153846vw; } }
  @media screen and (max-width: 480px) {
    .wrap-minest {
      width: 86.6666666667vw; } }

/* カラム
---------------------------------------------------------------------------*/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.f-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.f-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.f-middle {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.f-bottom {
  -webkit-align-items: flex-end;
  align-items: flex-end; }

.f-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }

.f-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.f-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.f-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.f-start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start; }

@media screen and (max-width: 480px) {
  .sp-f-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }

  .sp-f-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }

  .sp-f-column-reverse {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse; }

  .sp-f-top {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }

  .sp-f-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start; }

  .sp-f-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }

/* font
---------------------------------------------------------------------------*/
/* font-family */
.font-en {
  font-family: "Carter One", system-ui;
  font-weight: 400;
  font-style: normal; }
  .group .font-en {
  color: #00285f; }

  .group .flex p {
  color: #00285f; }

.font-deco {
  font-family: "Tilt Warp", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "XROT" 0, "YROT" 0;
  font-size: 18px;
  color: #00285f; }

.font-go {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal; }

.name,.addr{
  color: #00285f;
}
/* font-size */
.fs14 {
  font-size: 14px; }
  @media screen and (max-width: 1300px) {
    .fs14 {
      font-size: 1.0769230769vw; } }
  @media screen and (max-width: 480px) {
    .fs14 {
      font-size: 2.8vw; } }

.fs16 {
  font-size: 16px; }
  @media screen and (max-width: 1300px) {
    .fs16 {
      font-size: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .fs16 {
      font-size: 3.2vw; } }

.fs18 {
  font-size: 18px; }
  @media screen and (max-width: 1300px) {
    .fs18 {
      font-size: 1.3846153846vw; } }
  @media screen and (max-width: 480px) {
    .fs18 {
      font-size: 3.6vw; } }

.fs20 {
  font-size: 20px; }
  @media screen and (max-width: 1300px) {
    .fs20 {
      font-size: 1.5384615385vw; } }
  @media screen and (max-width: 480px) {
    .fs20 {
      font-size: 4vw; } }

.fs22 {
  font-size: 22px; }
  @media screen and (max-width: 1300px) {
    .fs22 {
      font-size: 1.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .fs22 {
      font-size: 4.4vw; } }

.fs24 {
  font-size: 24px; }
  @media screen and (max-width: 1300px) {
    .fs24 {
      font-size: 1.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .fs24 {
      font-size: 4.8vw; } }

.fs26 {
  font-size: 26px; }
  @media screen and (max-width: 1300px) {
    .fs26 {
      font-size: 2vw; } }
  @media screen and (max-width: 480px) {
    .fs26 {
      font-size: 5.2vw; } }

.fs28 {
  font-size: 28px; }
  @media screen and (max-width: 1300px) {
    .fs28 {
      font-size: 2.1538461538vw; } }
  @media screen and (max-width: 480px) {
    .fs28 {
      font-size: 5.6vw; } }

.fs30 {
  font-size: 30px; }
  @media screen and (max-width: 1300px) {
    .fs30 {
      font-size: 2.3076923077vw; } }
  @media screen and (max-width: 480px) {
    .fs30 {
      font-size: 6vw; } }

.fs36 {
  font-size: 36px; }
  @media screen and (max-width: 1300px) {
    .fs36 {
      font-size: 2.7692307692vw; } }
  @media screen and (max-width: 480px) {
    .fs36 {
      font-size: 7.2vw; } }

.fs40 {
  font-size: 40px; }
  @media screen and (max-width: 1300px) {
    .fs40 {
      font-size: 3.0769230769vw; } }
  @media screen and (max-width: 480px) {
    .fs40 {
      font-size: 8vw; } }

.fs48 {
  font-size: 48px; }
  @media screen and (max-width: 1300px) {
    .fs48 {
      font-size: 3.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .fs48 {
      font-size: 9.6vw; } }

.fs50 {
  font-size: 50px; }
  @media screen and (max-width: 1300px) {
    .fs50 {
      font-size: 3.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .fs50 {
      font-size: 10vw; } }

.fs56 {
  font-size: 56px; }
  @media screen and (max-width: 1300px) {
    .fs56 {
      font-size: 4.3076923077vw; } }
  @media screen and (max-width: 480px) {
    .fs56 {
      font-size: 11.2vw; } }

.fs64 {
  font-size: 64px; }
  @media screen and (max-width: 1300px) {
    .fs64 {
      font-size: 4.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .fs64 {
      font-size: 12.8vw; } }

/* font-weight */
.fw300 {
  font-weight: 300; }

.fw400 {
  font-weight: 400; }

.fw500 {
  font-weight: 500; }

.fw700 {
  font-weight: 700; }

.fw900 {
  font-weight: 900; }

/* line-height */
.lh140 {
  line-height: 1.4; }

.lh160 {
  line-height: 1.6; }

.lh180 {
  line-height: 1.8; }

.lh210 {
  line-height: 2.1111; }

.lh270 {
  line-height: 2.7; }

/* 文字色 */
.clr-str {
  color: #fe011d; }

.clr-w {
  color: #ffffff; }

.clr-tx {
  color: #00285f!important; }

.clr-rose {
  color: #fe808e; }

.clr-turquoise {
  color: #9bdcdc; }

.clr-aqua {
  color: #37b9b9; }

/* 文字揃え */
.al-center {
  text-align: center !important; }
.al-left {
  text-align: left !important; }
.al-right {
  text-align: right !important; }
@media screen and (max-width: 480px) {
  .al-sp-center {
    text-align: center !important; } }

/* 余白
---------------------------------------------------------------------------*/
.mb8 {
  margin-bottom: 8px; }
  @media screen and (max-width: 1300px) {
    .mb8 {
      margin-bottom: 0.6153846154vw; } }
  @media screen and (max-width: 480px) {
    .mb8 {
      margin-bottom: 1.0666666667vw; } }

.mb12 {
  margin-bottom: 12px; }
  @media screen and (max-width: 1300px) {
    .mb12 {
      margin-bottom: 0.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .mb12 {
      margin-bottom: 1.6vw; } }

.mb24 {
  margin-bottom: 24px; }
  @media screen and (max-width: 1300px) {
    .mb24 {
      margin-bottom: 1.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .mb24 {
      margin-bottom: 3.2vw; } }

.mb32 {
  margin-bottom: 32px; }
  @media screen and (max-width: 1300px) {
    .mb32 {
      margin-bottom: 2.4615384615vw; } }
  @media screen and (max-width: 480px) {
    .mb32 {
      margin-bottom: 4.2666666667vw; } }

.mb40 {
  margin-bottom: 40px; }
  @media screen and (max-width: 1300px) {
    .mb40 {
      margin-bottom: 3.0769230769vw; } }
  @media screen and (max-width: 480px) {
    .mb40 {
      margin-bottom: 5.3333333333vw; } }

.mb48 {
  margin-bottom: 48px; }
  @media screen and (max-width: 1300px) {
    .mb48 {
      margin-bottom: 3.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .mb48 {
      margin-bottom: 6.4vw; } }

.mb64 {
  margin-bottom: 64px; }
  @media screen and (max-width: 1300px) {
    .mb64 {
      margin-bottom: 4.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .mb64 {
      margin-bottom: 8.5333333333vw; } }

.mb96 {
  margin-bottom: 96px; }
  @media screen and (max-width: 1300px) {
    .mb96 {
      margin-bottom: 7.3846153846vw; } }
  @media screen and (max-width: 480px) {
    .mb96 {
      margin-bottom: 12.8vw; } }

.mb104 {
  margin-bottom: 104px; }
  @media screen and (max-width: 1300px) {
    .mb104 {
      margin-bottom: 8vw; } }
  @media screen and (max-width: 480px) {
    .mb104 {
      margin-bottom: 13.8666666667vw; } }

.mb128 {
  margin-bottom: 128px; }
  @media screen and (max-width: 1300px) {
    .mb128 {
      margin-bottom: 9.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .mb128 {
      margin-bottom: 17.0666666667vw; } }

.mb146 {
  margin-bottom: 146px; }
  @media screen and (max-width: 1300px) {
    .mb146 {
      margin-bottom: 11.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .mb146 {
      margin-bottom: 19.4666666667vw; } }

.mb160 {
  margin-bottom: 160px; }
  @media screen and (max-width: 1300px) {
    .mb160 {
      margin-bottom: 12.3076923077vw; } }
  @media screen and (max-width: 480px) {
    .mb160 {
      margin-bottom: 21.3333333333vw; } }

.mb192 {
  margin-bottom: 192px; }
  @media screen and (max-width: 1300px) {
    .mb192 {
      margin-bottom: 14.7692307692vw; } }
  @media screen and (max-width: 480px) {
    .mb192 {
      margin-bottom: 25.6vw; } }

.pt8 {
  padding-top: 8px; }
  @media screen and (max-width: 1300px) {
    .pt8 {
      padding-top: 0.6153846154vw; } }
  @media screen and (max-width: 480px) {
    .pt8 {
      padding-top: 1.0666666667vw; } }

.pt16 {
  padding-top: 16px; }
  @media screen and (max-width: 1300px) {
    .pt16 {
      padding-top: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .pt16 {
      padding-top: 2.1333333333vw; } }

.pt24 {
  padding-top: 24px; }
  @media screen and (max-width: 1300px) {
    .pt24 {
      padding-top: 1.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .pt24 {
      padding-top: 3.2vw; } }

.pt32 {
  padding-top: 32px; }
  @media screen and (max-width: 1300px) {
    .pt32 {
      padding-top: 2.4615384615vw; } }
  @media screen and (max-width: 480px) {
    .pt32 {
      padding-top: 4.2666666667vw; } }

.pt48 {
  padding-top: 48px; }
  @media screen and (max-width: 1300px) {
    .pt48 {
      padding-top: 3.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .pt48 {
      padding-top: 6.4vw; } }

.pt64 {
  padding-top: 64px; }
  @media screen and (max-width: 1300px) {
    .pt64 {
      padding-top: 4.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .pt64 {
      padding-top: 8.5333333333vw; } }

.pt96 {
  padding-top: 96px; }
  @media screen and (max-width: 1300px) {
    .pt96 {
      padding-top: 7.3846153846vw; } }
  @media screen and (max-width: 480px) {
    .pt96 {
      padding-top: 12.8vw; } }

.pt128 {
  padding-top: 128px; }
  @media screen and (max-width: 1300px) {
    .pt128 {
      padding-top: 9.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .pt128 {
      padding-top: 17.0666666667vw; } }

.pb16 {
  padding-bottom: 16px; }
  @media screen and (max-width: 1300px) {
    .pb16 {
      padding-bottom: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .pb16 {
      padding-bottom: 2.1333333333vw; } }

.pb24 {
  padding-bottom: 24px; }
  @media screen and (max-width: 1300px) {
    .pb24 {
      padding-bottom: 1.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .pb24 {
      padding-bottom: 3.2vw; } }

.pb32 {
  padding-bottom: 32px; }
  @media screen and (max-width: 1300px) {
    .pb32 {
      padding-bottom: 2.4615384615vw; } }
  @media screen and (max-width: 480px) {
    .pb32 {
      padding-bottom: 4.2666666667vw; } }

.pb48 {
  padding-bottom: 48px; }
  @media screen and (max-width: 1300px) {
    .pb48 {
      padding-bottom: 3.6923076923vw; } }
  @media screen and (max-width: 480px) {
    .pb48 {
      padding-bottom: 6.4vw; } }

.pb64 {
  padding-bottom: 64px; }
  @media screen and (max-width: 1300px) {
    .pb64 {
      padding-bottom: 4.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .pb64 {
      padding-bottom: 8.5333333333vw; } }

.pb96 {
  padding-bottom: 96px; }
  @media screen and (max-width: 1300px) {
    .pb96 {
      padding-bottom: 7.3846153846vw; } }
  @media screen and (max-width: 480px) {
    .pb96 {
      padding-bottom: 12.8vw; } }

.pb124 {
  padding-bottom: 124px; }
  @media screen and (max-width: 1300px) {
    .pb124 {
      padding-bottom: 9.5384615385vw; } }
  @media screen and (max-width: 480px) {
    .pb124 {
      padding-bottom: 16.5333333333vw; } }

.pb128 {
  padding-bottom: 128px; }
  @media screen and (max-width: 1300px) {
    .pb128 {
      padding-bottom: 9.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .pb128 {
      padding-bottom: 17.0666666667vw; } }

.pb150 {
  padding-bottom: 150px; }
  @media screen and (max-width: 1300px) {
    .pb150 {
      padding-bottom: 11.5384615385vw; } }
  @media screen and (max-width: 480px) {
    .pb150 {
      padding-bottom: 20vw; } }

.pb192 {
  padding-bottom: 192px; }
  @media screen and (max-width: 1300px) {
    .pb192 {
      padding-bottom: 14.7692307692vw; } }
  @media screen and (max-width: 480px) {
    .pb192 {
      padding-bottom: 25.6vw; } }

/* scroll_fadein
---------------------------------------------------------------------------*/
.scroll_fadein {
  opacity: 0;
  visibility: hidden; }

body.scroll .scroll_fadein {
  opacity: 1;
  visibility: visible;
  animation: fadein 0.5s ease; }

/* btn
---------------------------------------------------------------------------*/
.btn-def {
  color: #ffffff;
  font-size: 16px; }
  @media screen and (max-width: 1300px) {
    .btn-def {
      font-size: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .btn-def {
      font-size: 3.2vw; } }
  .btn-def > *:first-child {
    color: #ffffff;
    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;
    border-radius: 10px;
    width: 100%;
    height: 50px; }
    @media screen and (max-width: 1300px) {
      .btn-def > *:first-child {
        border-radius: 0.7692307692vw;
        height: 3.8461538462vw; } }
    @media screen and (max-width: 480px) {
      .btn-def > *:first-child {
        height: 16vw;
        border-radius: 1.3333333333vw; } }
    .btn-def > *:first-child.f-start {
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; }
    .btn-def > *:first-child > span {
      font-weight: 500;
      display: block;
      position: relative;
      padding-left: 32px; }
      @media screen and (max-width: 1300px) {
        .btn-def > *:first-child > span {
          padding-left: 2.4615384615vw; } }
      @media screen and (max-width: 480px) {
        .btn-def > *:first-child > span {
          padding-left: 8.5333333333vw; } }
      .btn-def > *:first-child > span::before {
        position: absolute;
        content: "";
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 24px;
        height: 24px; }
        @media screen and (max-width: 1300px) {
          .btn-def > *:first-child > span::before {
            width: 1.8461538462vw;
            height: 1.8461538462vw; } }
        @media screen and (max-width: 480px) {
          .btn-def > *:first-child > span::before {
            width: 6.4vw;
            height: 6.4vw; } }
      .btn-def > *:first-child > span.none {
        padding-left: 0; }
      .btn-def > *:first-child > span.mail::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-mail-vit.png); }
      .btn-def > *:first-child > span.mail.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-mail-mnd.png); }
      .btn-def > *:first-child > span.cal::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-cal-vit.png); }
      .btn-def > *:first-child > span.cal.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-cal-mnd.png); }
      .btn-def > *:first-child > span.cal.white::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-cal-white.png); }
      .btn-def > *:first-child > span.apple::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-apple-vit.png); }
      .btn-def > *:first-child > span.apple.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-apple-mnd.png); }
      .btn-def > *:first-child > span.car::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-car-vit.png); }
      .btn-def > *:first-child > span.car.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-car-mnd.png); }
      .btn-def > *:first-child > span.car.white::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-car-white.png); }
      .btn-def > *:first-child > span.guide::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-guide-vit.png); }
      .btn-def > *:first-child > span.guide.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-guide-mnd.png); }
      .btn-def > *:first-child > span.sigh::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-sigh-vit.png); }
      .btn-def > *:first-child > span.sigh.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-sigh-mnd.png); }
      .btn-def > *:first-child > span.shop::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-shop-vit.png); }
      .btn-def > *:first-child > span.shop.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-shop-mnd.png); }
      .btn-def > *:first-child > span.note_02::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-note-vit.png); }
      .btn-def > *:first-child > span.note_02.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-note-mnd.png); }
      .btn-def > *:first-child > span.pin::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-pin-vit.png); }
      .btn-def > *:first-child > span.pin.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-pin-mnd.png); }
      .btn-def > *:first-child > span.tel::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-tel-vit.png); }
      .btn-def > *:first-child > span.tel.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-tel-mnd.png); }
      .btn-def > *:first-child > span.fax::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-fax-vit.png); }
      .btn-def > *:first-child > span.fax.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-fax-mnd.png); }
      .btn-def > *:first-child > span.info::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-info-vit.png); }
      .btn-def > *:first-child > span.info.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-info-mnd.png); }
      .btn-def > *:first-child > span.pdf::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-pdf-vit.png); }
      .btn-def > *:first-child > span.pdf.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-pdf-mnd.png); }
      .btn-def > *:first-child > span.site::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-site-vit.png); }
      .btn-def > *:first-child > span.site.mnd::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-site-mnd.png); }
      .btn-def > *:first-child > span.heart::before {
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-heart-vit.png); }
  .btn-def-red > * {
    background-color: #fe011d; }
  .btn-def-white > * {
    background-color: #ffffff; }
  .btn-def.fs18 {
    font-size: 18px; }
    @media screen and (max-width: 1300px) {
      .btn-def.fs18 {
        font-size: 1.3846153846vw; } }
    @media screen and (max-width: 480px) {
      .btn-def.fs18 {
        font-size: 3.6vw; } }
  .btn-def.text > *:first-child {
    height: auto; }
  .btn-def.btn-detail {
    width: 380px; }
    @media screen and (max-width: 1300px) {
      .btn-def.btn-detail {
        width: 29.2307692308vw; } }
    @media screen and (max-width: 480px) {
      .btn-def.btn-detail {
        width: 76vw; } }
    .btn-def.btn-detail > *:first-child {
      position: relative;
      background-color: #00285f;
      height: 80px; }
      @media screen and (max-width: 1300px) {
        .btn-def.btn-detail > *:first-child {
          height: 6.1538461538vw; } }
      @media screen and (max-width: 480px) {
        .btn-def.btn-detail > *:first-child {
          height: 16vw; } }
      .btn-def.btn-detail > *:first-child::after {
        position: absolute;
        content: "";
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        width: 10px;
        height: 12px;
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/btn-arw.png);
        right: 14px;
        top: 50%;
        transform: translateY(-50%); }
        @media screen and (max-width: 1300px) {
          .btn-def.btn-detail > *:first-child::after {
            width: 0.7692307692vw;
            height: 0.9230769231vw;
            right: 1.0769230769vw; } }
        @media screen and (max-width: 480px) {
          .btn-def.btn-detail > *:first-child::after {
            width: 2.6666666667vw;
            height: 3.2vw;
            right: 3.7333333333vw; } }
      .btn-def.btn-detail > *:first-child > span {
        font-size: 18px; }
        @media screen and (max-width: 1300px) {
          .btn-def.btn-detail > *:first-child > span {
            font-size: 1.3846153846vw; } }
        @media screen and (max-width: 480px) {
          .btn-def.btn-detail > *:first-child > span {
            font-size: 3.6vw; } }
        .btn-def.btn-detail > *:first-child > span i {
          font-style: normal;
          font-size: 16px;
          margin-left: 1em; }
          @media screen and (max-width: 1300px) {
            .btn-def.btn-detail > *:first-child > span i {
              font-size: 1.2307692308vw; } }
          @media screen and (max-width: 480px) {
            .btn-def.btn-detail > *:first-child > span i {
              font-size: 3.2vw; } }
    .btn-def.btn-detail.btn-white {
      color: #00285f; }
      .btn-def.btn-detail.btn-white > *:first-child {
        background-color: #ffffff; }
        .btn-def.btn-detail.btn-white > *:first-child::after {
          background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/btn-arw-mnd.png); }
    .btn-def.btn-detail.btn-str > *:first-child {
      background-color: #fe011d; }
  .btn-def.btn-reser > *:first-child {
    background-color: #fe011d; }

.btn-more {
  color: #ffffff; }
  .btn-more > *:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    width: 100%;
    height: 50px;
    border-radius: 10px;
    padding: 0 16px;
    background-color: #00285f; }
    @media screen and (max-width: 1300px) {
      .btn-more > *:first-child {
        height: 3.8461538462vw;
        border-radius: 0.7692307692vw;
        padding: 0 1.2307692308vw; } }
    @media screen and (max-width: 480px) {
      .btn-more > *:first-child {
        height: 10vw;
        border-radius: 1.3333333333vw;
        padding: 0 3.2vw; } }
    .btn-more > *:first-child > span {
      position: relative;
      display: block;
      width: 100%;
      white-space: nowrap;
      text-align: center;
      font-size: 22px;
      font-family: "Tilt Warp", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal;
      font-variation-settings: "XROT" 0, "YROT" 0; }
      @media screen and (max-width: 1300px) {
        .btn-more > *:first-child > span {
          font-size: 1.6923076923vw; } }
      @media screen and (max-width: 480px) {
        .btn-more > *:first-child > span {
          font-size: 4.4vw; } }
      .btn-more > *:first-child > span::after {
        position: absolute;
        content: "";
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        width: 10px;
        height: 12px;
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/btn-arw.png);
        right: 0;
        top: 50%;
        transform: translateY(-50%); }
        @media screen and (max-width: 1300px) {
          .btn-more > *:first-child > span::after {
            width: 0.7692307692vw;
            height: 0.9230769231vw; } }
        @media screen and (max-width: 480px) {
          .btn-more > *:first-child > span::after {
            width: 1.8666666667vw;
            height: 2.4vw; } }

/* a underline */
a.underline {
  text-decoration: underline; }

/* img
---------------------------------------------------------------------------*/
.imgbdr {
  border-radius: 25px; }
  @media screen and (max-width: 1300px) {
    .imgbdr {
      border-radius: 1.9230769231vw; } }
  @media screen and (max-width: 480px) {
    .imgbdr {
      border-radius: 3.3333333333vw; } }

/* head
---------------------------------------------------------------------------*/
.mainhd {
  padding: 22px 0 24px; }
  @media screen and (max-width: 1300px) {
    .mainhd {
      padding: 1.6923076923vw 0 1.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .mainhd {
      padding: 6.1333333333vw 0 0; } }
  @media screen and (max-width: 480px) {
    .mainhd .wrap {
      width: 93.3333333333vw; } }
  .mainhd-hd {
    color: #fe011d; }
  .mainhd-logo {
    width: 540px; }
    @media screen and (max-width: 1300px) {
      .mainhd-logo {
        width: 41.5384615385vw; } }
    @media screen and (max-width: 480px) {
      .mainhd-logo {
        width: 37.3333333333vw; } }
    .mainhd-logo .atag {
      width: 180px;
      margin-right: 20px; }
      @media screen and (max-width: 1300px) {
        .mainhd-logo .atag {
          width: 13.8461538462vw;
          margin-right: 1.5384615385vw; } }
      @media screen and (max-width: 480px) {
        .mainhd-logo .atag {
          width: 100%;
          margin-right: 0; } }
    @media screen and (max-width: 480px) {
      .mainhd-logo-tx {
        display: none; } }
    .mainhd-logo-tx h1 {
      color: #fe011d;
      font-size: 18px;
      font-weight: 700;
      white-space: nowrap;
      margin: 0; }
      @media screen and (max-width: 1300px) {
        .mainhd-logo-tx h1 {
          font-size: 1.3846153846vw; } }
      @media screen and (max-width: 480px) {
        .mainhd-logo-tx h1 {
          font-size: 3.6vw; } }
    .mainhd-logo-tx p {
      color: #fe011d;
      font-family: "Carter One", system-ui;
      font-weight: 400;
      font-style: normal;
      font-size: 30px;
      padding-top: 0.1em;
      line-height: 1.2;
      }
      @media screen and (max-width: 1300px) {
        .mainhd-logo-tx p {
          font-size: 2.3076923077vw; } }
      @media screen and (max-width: 480px) {
        .mainhd-logo-tx p {
          font-size: 6vw; } }
  .mainhd-tel {
    margin-right: 14px; }
    @media screen and (max-width: 1300px) {
      .mainhd-tel {
        margin-right: 1.0769230769vw; } }
    .mainhd-tel a {
      color: #fe011d;
      display: block;
      position: relative;
      padding-left: 28px;
      font-family: "Tilt Warp", sans-serif;
      font-optical-sizing: auto;
      font-weight: 400;
      font-style: normal;
      font-variation-settings: "XROT" 0, "YROT" 0;
      font-size: 40px; }
      @media screen and (max-width: 1300px) {
        .mainhd-tel a {
          font-size: 3.0769230769vw; } }
      @media screen and (max-width: 480px) {
        .mainhd-tel a {
          font-size: 8vw; } }
      @media screen and (max-width: 1300px) {
        .mainhd-tel a {
          padding-left: 2.1538461538vw; } }
      .mainhd-tel a::before {
        position: absolute;
        content: "";
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 22px;
        height: 32px;
        background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-tel-str.png); }
        @media screen and (max-width: 1300px) {
          .mainhd-tel a::before {
            width: 1.6923076923vw;
            height: 2.4615384615vw; } }
  @media screen and (max-width: 480px) {
    .mainhd-btn-def {
      display: none; } }
  .mainhd-btn-def ul {
    gap: 12px; }
    @media screen and (max-width: 1300px) {
      .mainhd-btn-def ul {
        gap: 0.9230769231vw; } }
    .mainhd-btn-def ul li {
      width: 180px; }
      @media screen and (max-width: 1300px) {
        .mainhd-btn-def ul li {
          width: 13.8461538462vw; } }
  .mainhd .mega-btns {
    display: none; }
    @media screen and (max-width: 480px) {
      .mainhd .mega-btns {
        display: flex; } }
  .mainhd-ft {
    width: 100%;
    height: 80px;
    margin-top: 22px;
    border-radius: 15px;
    background-color: #00285f;
    color: #ffffff;
    padding: 0 24px; }
    @media screen and (max-width: 1300px) {
      .mainhd-ft {
        height: 6.1538461538vw;
        margin-top: 1.6923076923vw;
        border-radius: 1.1538461538vw;
        padding: 0 1.9230769231vw; } }
    @media screen and (max-width: 480px) {
      .mainhd-ft {
        display: none; } }

/* glnv */
.glnv li {
  position: relative;
  font-size: 16px; }
  @media screen and (max-width: 1300px) {
    .glnv li {
      font-size: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .glnv li {
      font-size: 3.2vw; } }
  .glnv li:not(.nobdr)::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 30px;
    background-color: #ffffff;
    right: 0;
    top: 50%;
    transform: translateY(-50%); }
    @media screen and (max-width: 1300px) {
      .glnv li:not(.nobdr)::after {
        height: 2.3076923077vw; } }
  .glnv li a {
    padding: 0 58px;
    white-space: nowrap; }
    @media screen and (max-width: 1300px) {
      .glnv li a {
        padding: 0 4.4615384615vw; } }
  .glnv li.con a {
    border: 1px solid #ffffff; }

/* サブメニュー用 */
.nav-parent {
  position: relative; }
  .nav-parent a {
    cursor: pointer; }

.nav-children {
  display: none;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 100%;
  background-color: #e5e9ef;
  color: #00285f;
  white-space: nowrap;
  opacity: 0;
  z-index: 100;
  border-radius: 10px;
  border: 1px solid #ffffff;
  overflow: hidden; }
  @media screen and (max-width: 1300px) {
    .nav-children {
      border-radius: 0.7692307692vw; } }
  @media screen and (max-width: 480px) {
    .nav-children {
      position: relative;
      width: 100%;
      border-radius: 1.3333333333vw;
      margin-bottom: 7.4666666667vw; } }
  .nav-children p a {
    display: block;
    padding: 14px 22px;
    color: inherit;
    background-color: rgba(242, 244, 247, 0); }
    .nav-children p a:hover {
      opacity: 1;
      background-color: #f2f4f7; }
  .nav-children p + p {
    border-top: 1px solid #ffffff; }
  .nav-children.open {
    display: block;
    opacity: 1;
    visibility: visible;
    animation: fadein 0.5s ease; }

/* fixedhd
---------------------------------------------------------------------------*/
.fixedhd {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  height: 60px;
  background-color: #ffffff;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25);
  z-index: 1000; }
  @media screen and (max-width: 1300px) {
    .fixedhd {
      height: 4.6153846154vw; } }
  @media screen and (max-width: 480px) {
    .fixedhd {
      display: none; } }
  .fixedhd-logo {
    padding-left: 14px; }
    @media screen and (max-width: 1300px) {
      .fixedhd-logo {
        padding-left: 1.0769230769vw; } }
    .fixedhd-logo div {
      width: 104px;
      margin-right: 12px; }
      @media screen and (max-width: 1300px) {
        .fixedhd-logo div {
          width: 8vw;
          margin-right: 0.9230769231vw; } }
    .fixedhd-logo p {
      color: #fe011d;
      font-size: 18px;
      font-weight: 700; }
      @media screen and (max-width: 1300px) {
        .fixedhd-logo p {
          font-size: 1.3846153846vw; } }
      @media screen and (max-width: 480px) {
        .fixedhd-logo p {
          font-size: 3.6vw; } }
  .fixedhd .glnv li.btn-def {
    color: #00285f; }
  .fixedhd .glnv li > a {
    color: inherit;
    padding: 0 12px;
    height: 60px; }
    @media screen and (max-width: 1300px) {
      .fixedhd .glnv li > a {
        padding: 0 0.9230769231vw;
        height: 4.6153846154vw; } }
  .fixedhd .glnv li:not(.nobdr)::after {
    background-color: #d9dfe7; }
  .fixedhd .glnv li.reser {
    color: #ffffff; }
    .fixedhd .glnv li.reser a {
      background-color: #fe011d;
      border-radius: 0;
      border: none; }

/* foot
---------------------------------------------------------------------------*/
.foot {
  background-color: #e5e9ef; }
  .foot-hd {
    position: relative;
    border-bottom: 1px solid #00285f; }
    @media screen and (max-width: 480px) {
      .foot-hd {
        -webkit-flex-direction: column-reverse;
        flex-direction: column-reverse; } }
    .foot-hd::after {
      position: absolute;
      content: "";
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/foot-car.png);
      width: 38px;
      height: 26px;
      right: 100px;
      bottom: 0; }
      @media screen and (max-width: 1300px) {
        .foot-hd::after {
          width: 2.9230769231vw;
          height: 2vw;
          right: 7.6923076923vw; } }
      @media screen and (max-width: 480px) {
        .foot-hd::after {
          width: 7.4666666667vw;
          height: 5.0666666667vw;
          right: 8.8vw; } }
  .foot-img {
    width: 600px; }
    @media screen and (max-width: 1300px) {
      .foot-img {
        width: 46.1538461538vw; } }
    @media screen and (max-width: 480px) {
      .foot-img {
        width: 100%; } }
  .foot-tx {
    width: 640px; }
    @media screen and (max-width: 1300px) {
      .foot-tx {
        width: 49.2307692308vw; } }
    @media screen and (max-width: 480px) {
      .foot-tx {
        width: 100%;
        margin-bottom: 6.4vw; } }
    .foot-tx-logo {
      color: #fe011d; }
      .foot-tx-logo a {
        width: 180px;
        margin-right: 20px; }
        @media screen and (max-width: 1300px) {
          .foot-tx-logo a {
            width: 13.8461538462vw;
            margin-right: 1.5384615385vw; } }
        @media screen and (max-width: 480px) {
          .foot-tx-logo a {
            width: 30.9333333333vw;
            margin-right: 3.4666666667vw; } }
      .foot-tx-logo-tx h1 {
        font-size: 18px;
        font-weight: 700; }
        @media screen and (max-width: 1300px) {
          .foot-tx-logo-tx h1 {
            font-size: 1.3846153846vw; } }
        @media screen and (max-width: 480px) {
          .foot-tx-logo-tx h1 {
            font-size: 3.6vw; } }
        @media screen and (max-width: 480px) {
          .foot-tx-logo-tx h1 {
            font-size: 3.0666666667vw; } }
      .foot-tx-logo-tx p {
        font-family: "Carter One", system-ui;
        font-weight: 400;
        font-style: normal;
        font-size: 30px;
        padding-top: 0.2em; }
        @media screen and (max-width: 1300px) {
          .foot-tx-logo-tx p {
            font-size: 2.3076923077vw; } }
        @media screen and (max-width: 480px) {
          .foot-tx-logo-tx p {
            font-size: 6vw; } }
        @media screen and (max-width: 480px) {
          .foot-tx-logo-tx p {
            font-size: 5.1466666667vw; } }
    .foot-tx-data {
      line-height: 2.11; }
      .foot-tx-data .addr {
        margin-right: 1em; }
      .foot-tx-data .mailaddr {
        margin-top: 0.6em; }
        .foot-tx-data .mailaddr img {
          width: 274px; }
          @media screen and (max-width: 1300px) {
            .foot-tx-data .mailaddr img {
              width: 21.0769230769vw; } }
          @media screen and (max-width: 480px) {
            .foot-tx-data .mailaddr img {
              width: 54.6666666667vw; } }
  @media screen and (max-width: 480px) {
    .foot-ft ul {
      display: none; } }
  .foot-ft ul li + li {
    margin-left: 26px; }
    @media screen and (max-width: 1300px) {
      .foot-ft ul li + li {
        margin-left: 2vw; } }
  @media screen and (max-width: 480px) {
    .foot-copy {
      width: 100%;
      text-align: right;
      font-size: 3.6vw; } }

img.mailaddr {
  width: 274px; }
  @media screen and (max-width: 1300px) {
    img.mailaddr {
      width: 21.0769230769vw; } }
  @media screen and (max-width: 480px) {
    img.mailaddr {
      width: 54.6666666667vw; } }

/* group
---------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  .group ul {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 91.7333333333vw;
    margin-left: auto;
    margin-right: auto;
    gap: 4vw 0; } }
.group li {
  width: 336px; }
  @media screen and (max-width: 1300px) {
    .group li {
      width: 25.8461538462vw; } }
  @media screen and (max-width: 480px) {
    .group li {
      width: 44.8vw; }
      .group li p.fs16 {
        font-size: 2.1333333333vw; } }

.gap16 {
    gap: 16px;
}

/* spft
---------------------------------------------------------------------------*/
.spft {
  display: none; }
  @media screen and (max-width: 480px) {
    .spft {
      display: block;
      position: fixed;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 13.3333333333vw;
      border-top: 1px solid #00285f;
      z-index: 10; }
      .spft li {
        width: 25%; }
        .spft li a {
          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: 100%;
          height: 13.3333333333vw;
          text-align: center;
          background-color: #ffffff; }
          .spft li a span {
            position: relative;
            padding-left: 7.2vw; }
            .spft li a span::before {
              position: absolute;
              content: "";
              background-repeat: no-repeat;
              background-position: center;
              background-size: contain;
              left: 0;
              top: 50%;
              transform: translateY(-50%);
              width: 6.4vw;
              height: 6.6666666667vw; }
        .spft li:nth-of-type(1) a span::before {
          background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/spft01.png); }
        .spft li:nth-of-type(2) {
          border-left: 1px solid #d9dfe7; }
          .spft li:nth-of-type(2) a span::before {
            background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/spft02.png); }
        .spft li:nth-of-type(3) {
          color: #ffffff; }
          .spft li:nth-of-type(3) a {
            background-color: #fe011d; }
            .spft li:nth-of-type(3) a span::before {
              background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/spft03.png); }
        .spft li:nth-of-type(4) {
          color: #ffffff; }
          .spft li:nth-of-type(4) a {
            background-color: #00285f; }
            .spft li:nth-of-type(4) a span::before {
              background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/spft04.png); } }

/* mega
---------------------------------------------------------------------------*/
.mega {
  display: none; }
  @media screen and (max-width: 480px) {
    .mega {
      position: fixed;
      width: 100%;
      height: 100%;
      overflow: scroll;
      top: 0;
      left: 0;
      z-index: 95000;
      display: none;
      padding: 6.1333333333vw 3.3333333333vw 32vw;
      background-color: #ffffff; }
      .mega-logo {
        width: 37.3333333333vw; }
      .mega-btns {
        width: 44vw; }
        .mega-btns li {
          width: 13.3333333333vw; }
      .mega-hd-tx {
        margin-top: 4vw;
        margin-bottom: 4.8vw; }
        .mega-hd-tx span:nth-of-type(1) {
          font-size: 3.4666666667vw; }
        .mega-hd-tx span:nth-of-type(2) {
          font-size: 4.8vw; } }
  .mega-bd {
    background-color: #00285f;
    border-radius: 2vw;
    color: #ffffff;
    padding: 0 6.4vw 8vw; }
    .mega-bd .mega-glnv {
      margin-bottom: 6.6666666667vw; }
      .mega-bd .mega-glnv li {
        border-bottom: 1px solid #ffffff; }
      .mega-bd .mega-glnv .btn-def {
        font-size: 4.8vw; }
        .mega-bd .mega-glnv .btn-def.btn-detail {
          width: 100%; }
        .mega-bd .mega-glnv .btn-def > *:first-child {
          height: 17.3333333333vw;
          padding-left: 4.5333333333vw; }
          .mega-bd .mega-glnv .btn-def > *:first-child > span {
            width: 100%;
            font-size: 4.8vw; }
        .mega-bd .mega-glnv .btn-def.nav-parent > *:first-child::after {
          width: 3.3333333333vw;
          height: 3.3333333333vw;
          background-image: url(https://car-rental.jp/marueicars-nbs/base_layout/img/icn-plus.png); }
    .mega-bd .btn-reser {
      width: 74.6666666667vw;
      margin-bottom: 2.6666666667vw; }
      .mega-bd .btn-reser > *:first-child {
        height: 16vw;
        font-size: 4.2666666667vw; }
    .mega-bd .mega-sub .btn-def {
      width: 100%; }
      .mega-bd .mega-sub .btn-def > *:first-child {
        height: 10.6666666667vw;
        padding-left: 3vw; }
        .mega-bd .mega-sub .btn-def > *:first-child > span {
          width: 100%;
          font-size: 4.2666666667vw; }

/* pagetop
---------------------------------------------------------------------------*/
.pagetop {
  position: fixed;
  right: 16px;
  bottom: 16px;
  width: 70px;
  z-index: 9900; }
  @media screen and (max-width: 1300px) {
    .pagetop {
      width: 5.3846153846vw;
      right: 1.2307692308vw;
      bottom: 1.2307692308vw; } }
  @media screen and (max-width: 480px) {
    .pagetop {
      width: 9.3333333333vw;
      bottom: 15.4666666667vw;
      right: 2.1333333333vw; } }
      
.i-detail {
    color: #FFF;
}
.i-detail:before {
    color: #FFF;
}

.btn-more-wp .btn-lg {
    color: #FFF!important;
}