@charset "UTF-8";
/* ++++++++++++++++++++++++++++++++++++++++++
	Site Name: アマノエスエス
	Description: 脱WordPress静的PHPサイト（2026-08移行）
	Version: 02
++++++++++++++++++++++++++++++++++++++++++++++ */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-weight: normal;
}

span {
  font-weight: inherit;
}

body {
  line-height: 1;
}

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

ul,
ol {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

th {
  text-align: left;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/* --------------------------------------------------
	Form
-------------------------------------------------- */
input,
select {
  vertical-align: middle;
}

button {
  background: none;
  border: none;
  outline: none;
  appearance: none;
}

fieldset {
  border: none;
}

input {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: middle;
  outline: none;
  border: none;
}

textarea,
select,
label {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: middle;
  outline: none;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

textarea {
  resize: vertical;
}

legend {
  display: none;
}

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

img {
  vertical-align: bottom;
}

img.responsive {
  width: 100%;
}

img.svg {
  width: auto;
}

/* ============================================
   @font-face（サイトごとに設定）
   本サイトは Google Fonts（Noto Sans JP 400/500/700）を
   header.php の<link>で読み込むため @font-face 定義なし
============================================ */
/* ============================================
   サイト宣言変数
   SITE_CONFIG.md と必ず同期させること
============================================ */
/**************************
  カラーパレット
  ※旧テーマから継承。命名は新標準＋旧名エイリアス（移植コードのgrep可能性維持）
**************************/
/* ============================================
   関数（定義はこのファイルだけ。mixinファイル内での重複定義禁止）
============================================ */
/*-- mixinフォルダの中の_index.scss --*/
/* ============================================
   正本mixin（棚卸し確定版 2026-03）
   これ以外の旧mixinは _m-archive.scss にあり、新規使用禁止
============================================ */
/*------------------------------------
 メディアクエリ MIXIN
---------------------------------*/
/*---------------------
 ★ 文字関連一括指定【全テキスト必須】
-----------------------*/
/*---------------------
 ★ 数値プロパティのvwシームレス可変
-----------------------*/
/*---------------------
 ★ リンク文字色 固定
-----------------------*/
/*---------------------
 ★ コンテナ
-----------------------*/
/*-------------------------------------
   レイアウト汎用（pp- = page-parts）
---------------------------------------*/
/*-----------------------------------
 上下余白（レスポンシブ2値）
-----------------------------------*/
/*-----------------------------------
 左余白（レスポンシブ）※左柱レイアウト採用サイトのみ
-----------------------------------*/
/*-----------------------------------
 改行制御
-----------------------------------*/
/*--------------------------------------------
 行数丸め…省略（複数行対応）
----------------------------------------------*/
/*-----------------------------------
 連続要素の間隔（段落間隔）
-----------------------------------*/
/* ============================================
   英字見出し用フォント ff-系mixin
   サイトごとに中身を差し替える（枠組みは維持）
   ※本サイトでは現状未使用（旧Roboto指定はcontact/privacypolicyのみで廃止済み）
============================================ */
/*-- mixinフォルダの中の_index.scss --*/
/* ============================================
   サイト固有・移行互換mixin（2026-08 脱WP移行）
   旧テーマのCSS出力と同一値を保つための互換実装。
   新規コードでは正本mixin（_m-mixin.scss）を優先すること。
============================================ */
/*------------------------------------
 SPグローバルメニュー切り替え
---------------------------------*/
/*------------------------------------
 リンクhover 20%明色化（旧linkColorのhover仕様）
 正本linkColor（色固定）の後置で使う
---------------------------------*/
/*------------------------------------
 Fontサイズ vw可変（旧font-vs互換）
 旧remベース出力をpxに置換（計算値同一）
 新規コードは property-vw を使うこと
---------------------------------*/
/*-----------------------------------
 幅を数字指定　中央寄せ（旧pp-cc）
-----------------------------------*/
/*-----------------------------------
 段落間隔（旧pp-txtBlock互換）
 旧 :not(:first-of-type) 実装を保持（出力同一のため）。
 新規コードは正本 pp-txtBlock（p + p 方式）を使うこと
-----------------------------------*/
/*-----------------------------------
 ブロック末尾の全幅下線（旧end-line）
-----------------------------------*/
/*-----------------------------------
 左空白右寄せコンテンツ（旧left-block）
-----------------------------------*/
/*-----------------------------------
 リスト頭「・」装飾（旧list_style）
 ※旧実装は引数を内部固定していたため出力は常に ・/1.5em
-----------------------------------*/
/*-----------------------------------
 汎用ボタン 青ベース白文字 右矢印（旧bt-v2）
 HTML: .bt>a>div.cta-bt_inner>span.txt
 ※hover内 media の calc( p-width / 2px ) は旧テーマのタイポ由来
   （ブラウザは無効宣言として無視＝描画同一のため踏襲）
-----------------------------------*/
/* ++++++++++++++++++++++++++++++++++++++++++
   グローバル既定（サイト固有ベース含む）
++++++++++++++++++++++++++++++++++++++++++*/
/*---------------------
 ★ html / body / main
-----------------------*/
html {
  overflow-x: hidden;
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  position: relative;
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: inherit;
  line-height: 1.75;
  background-color: #ffffff;
  overflow: hidden;
  display: flex;
  flex-flow: column;
  min-height: 100vh;
}

main {
  margin: 0;
  flex: 1 1 auto;
  overflow-x: hidden;
}

/*---------------------
 ★ 画像（旧テーマ踏襲・サイト固有）
-----------------------*/
img {
  max-width: 100%;
  width: 100%;
  height: auto;
}

img {
  vertical-align: bottom;
}

img.svg {
  width: auto;
}

.img-responsive-center {
  display: block;
  margin: 0 auto;
}

/*---------------------
 ★ 太字強調
-----------------------*/
.b {
  font-weight: bold;
}

/*---------------------
 ★ リンク既定: 下線消去+色固定
 hover系は旧テーマ踏襲で20%明るく（linkColor後置上書き）
-----------------------*/
a {
  color: #151e2f;
  text-decoration: none;
}
a:visited, a:hover, a:active, a:focus {
  color: #151e2f;
  text-decoration: none;
}
a:visited, a:hover, a:active, a:focus {
  color: rgb(52.5, 75, 117.5);
}

/*---------------------
 ★ リンク無効
-----------------------*/
a.link-none {
  pointer-events: none !important;
}

/*---------------------
 ★ 改行制御（旧テーマ踏襲）
-----------------------*/
span.block {
  display: inline-block;
}

/*-- componentフォルダの中の_index.scss --*/
/* *****************************************************************************

 ★ パンくず（旧Breadcrumb NavXTプラグイン互換マークアップ）

***************************************************************************** */
.breadcrumbs-area {
  padding: 0;
  width: 100%;
  text-align: right;
  margin-top: 27px;
  font-size: 14px;
}

.breadcrumbs {
  width: 100%;
  margin: auto;
  font-style: normal;
  font-weight: 500;
  font-size: calc(12 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0em;
  line-height: calc(19 / 12);
}

@media only screen and (max-width: 768px) {
  .breadcrumbs-area {
    margin-top: 14px;
    font-size: 12px;
  }
  .breadcrumbs {
    display: none;
  }
}
/*---------------------
 ★ PAGE 汎用パーツ（旧_page.scss ほか）
-----------------------*/
.page-header {
  position: relative;
}
.page-header .page-header_img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 11.44vw;
  max-height: 160px;
  z-index: -5;
}
.page-header .page-header_img > img {
  width: 100%;
  height: 11.44vw;
  max-height: 160px;
  object-fit: cover;
}
.page-header .page-header-container {
  max-width: 1450px;
  width: auto;
  margin: 0 auto;
  padding: 0 25px;
  position: relative;
}
.page-header .page-header_ttl {
  position: relative;
  padding-top: 5.72vw;
  font-style: normal;
  font-weight: 700;
  font-size: calc(36 / 16 * 1rem);
  color: #036c9f;
  letter-spacing: 0.02em;
  line-height: calc(51 / 36);
  font-size: 26px;
}
@media screen and (min-width: 320px) {
  .page-header .page-header_ttl {
    font-size: calc(2.2321428571vw + 18.8571428571px);
  }
}
@media screen and (min-width: 768px) {
  .page-header .page-header_ttl {
    font-size: 36px;
  }
}
@media only screen and (min-width: 1450px) {
  .page-header .page-header_ttl {
    padding-top: 119px;
  }
}
.page-header .page-header_ttl span {
  display: block;
  text-transform: uppercase;
  font-style: normal;
  font-weight: 700;
  font-size: calc(12 / 16 * 1rem);
  color: #036c9f;
  letter-spacing: 0.1em;
  line-height: calc(19.2 / 12);
}
@media screen and (max-width: 768px) {
  .page-header {
    padding-bottom: 5vw;
    border-bottom: #ddd 1px solid;
  }
}

/*---------------------
 ★ //各ページ汎用
-----------------------*/
.page-subttl_v1 {
  font-style: normal;
  font-weight: 700;
  font-size: calc(28 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(47.6 / 28);
  font-size: 20px;
}
@media screen and (min-width: 320px) {
  .page-subttl_v1 {
    font-size: calc(1.7857142857vw + 14.2857142857px);
  }
}
@media screen and (min-width: 768px) {
  .page-subttl_v1 {
    font-size: 28px;
  }
}
@media screen and (max-width: 680px) {
  .page-subttl_v1 br {
    display: none;
  }
}
.page-subttl_v1::before {
  content: "";
  display: block;
  margin-bottom: 18px;
  width: 108px;
  border-top: #036c9f solid 3px;
}
@media screen and (max-width: 768px) {
  .page-subttl_v1::before {
    width: 50px;
  }
}
.page-subttl_v1::after {
  content: "";
  display: block;
  margin-top: 18px;
  width: 100%;
  border-top: #036c9f solid 1px;
}

.page-subttl-deco {
  font-style: normal;
  font-weight: 400;
  font-size: calc(18 / 16 * 1rem);
  color: #036c9f;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  font-size: 16px;
}
@media screen and (min-width: 320px) {
  .page-subttl-deco {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  .page-subttl-deco {
    font-size: 18px;
  }
}

.page-subttl_v2 {
  font-style: normal;
  font-weight: 700;
  font-size: calc(28 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(47.6 / 28);
  font-size: 20px;
}
@media screen and (min-width: 320px) {
  .page-subttl_v2 {
    font-size: calc(1.7857142857vw + 14.2857142857px);
  }
}
@media screen and (min-width: 768px) {
  .page-subttl_v2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 680px) {
  .page-subttl_v2 br {
    display: none;
  }
}
.page-subttl_v2::before {
  content: "";
  display: block;
  margin-bottom: 18px;
  width: 108px;
  border-top: #036c9f solid 3px;
}
@media screen and (max-width: 768px) {
  .page-subttl_v2::before {
    width: 50px;
  }
}

.page-subttl_v3 {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 18px;
}
@media screen and (min-width: 320px) {
  .page-subttl_v3 {
    font-size: calc(1.3392857143vw + 13.7142857143px);
  }
}
@media screen and (min-width: 768px) {
  .page-subttl_v3 {
    font-size: 24px;
  }
}
.page-subttl_v3::after {
  content: "";
  display: block;
  margin-top: 18px;
  width: 100%;
  border-top: #eeeae0 solid 1px;
}

.page-layout-v1 {
  max-width: 980px;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
.page-layout-v1 .page-layout-v1-wrapper {
  display: flex;
}
.page-layout-v1 .page-layout-v1-wrapper .l-cont {
  margin-top: 40px;
  flex: 0 0 450px;
}
.page-layout-v1 .page-layout-v1-wrapper .r-cont {
  margin-top: 40px;
  flex: 1;
}
.page-layout-v1 .page-layout-v1-wrapper .r-cont .page-layout-v1-txt p:not(:first-of-type) {
  margin-top: 20px;
}
.page-layout-v1 .page-layout-v1-wrapper .r-cont .page-layout-v1-txt p {
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .page-layout-v1 .page-layout-v1-wrapper .r-cont .page-layout-v1-txt p {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .page-layout-v1 .page-layout-v1-wrapper .r-cont .page-layout-v1-txt p {
    font-size: 16px;
  }
}
@media screen and (max-width: 980px) {
  .page-layout-v1 .page-layout-v1-wrapper .r-cont .page-layout-v1-txt p br {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .page-layout-v1 .page-layout-v1-wrapper {
    display: block;
  }
}
.page-layout-v1 .page-layout-v1-wrapper .l-cont figure {
  max-width: 380px;
}
@media screen and (max-width: 768px) {
  .page-layout-v1 .page-layout-v1-wrapper .l-cont figure {
    margin: 0 auto;
  }
}
.page-layout-v1 .page-layout-v1-note {
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .page-layout-v1 .page-layout-v1-note {
    margin-top: 40px;
  }
}
.page-layout-v1 .page-layout-v1-note p:not(:first-of-type) {
  margin-top: 20px;
}
.page-layout-v1 .page-layout-v1-note p {
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .page-layout-v1 .page-layout-v1-note p {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .page-layout-v1 .page-layout-v1-note p {
    font-size: 16px;
  }
}
@media screen and (max-width: 980px) {
  .page-layout-v1 .page-layout-v1-note p br {
    display: none;
  }
}

.dltable-set {
  position: relative;
  border-bottom: solid 1px #eeeae0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .dltable-set {
    display: block;
  }
  .dltable-set::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 4px;
    border-bottom: #036c9f solid 4px;
  }
}
.dltable-set > dt {
  font-style: normal;
  font-weight: 500;
  font-size: calc(18 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  flex: 0 0 200px;
  padding: 45px 40px 45px 0px;
  align-self: stretch;
  font-size: 16px;
}
@media screen and (min-width: 320px) {
  .dltable-set > dt {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  .dltable-set > dt {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .dltable-set > dt {
    padding: 22.5px 23px 22.5px;
    background-color: #f5f5f5;
  }
}
.dltable-set > dd {
  flex: 1;
  padding: 45px 40px 45px 0px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .dltable-set > dd {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .dltable-set > dd {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .dltable-set > dd {
    padding-bottom: 33px;
  }
}

.unit-dltable-set-v2 .dltable-set {
  position: relative;
  border-bottom: solid 1px #eeeae0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .unit-dltable-set-v2 .dltable-set {
    display: block;
  }
  .unit-dltable-set-v2 .dltable-set::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 4px;
    border-bottom: #036c9f solid 4px;
  }
}
.unit-dltable-set-v2 .dltable-set > dt {
  font-style: normal;
  font-weight: 700;
  font-size: calc(18 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  flex: 0 0 330px;
  padding: 45px 40px 45px 0px;
  align-self: stretch;
  font-size: 16px;
}
@media screen and (min-width: 320px) {
  .unit-dltable-set-v2 .dltable-set > dt {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  .unit-dltable-set-v2 .dltable-set > dt {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .unit-dltable-set-v2 .dltable-set > dt {
    padding: 22.5px 23px 22.5px;
    background-color: #f5f5f5;
  }
}
.unit-dltable-set-v2 .dltable-set > dd {
  flex: 1;
  padding: 45px 40px 45px 0px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .unit-dltable-set-v2 .dltable-set > dd {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .unit-dltable-set-v2 .dltable-set > dd {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .unit-dltable-set-v2 .dltable-set > dd {
    padding: 20px 18px 33px 18px;
  }
}

.unit-layout-v1 .txt-block {
  margin-top: 20px;
}
.unit-layout-v1 .txt-block p:not(:first-of-type) {
  margin-top: 20px;
}
.unit-layout-v1 .txt-block p {
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .unit-layout-v1 .txt-block p {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .unit-layout-v1 .txt-block p {
    font-size: 16px;
  }
}
@media screen and (max-width: 980px) {
  .unit-layout-v1 .txt-block p br {
    display: none;
  }
}

.under-note {
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  text-align: right;
  font-size: 12px;
}
@media screen and (min-width: 320px) {
  .under-note {
    font-size: calc(0.8928571429vw + 9.1428571429px);
  }
}
@media screen and (min-width: 768px) {
  .under-note {
    font-size: 16px;
  }
}
@media only screen and (max-width: 768px) {
  .under-note {
    text-align: left;
  }
}

/*---------
バブル風横並びリスト
-----------*/
.bubble-list {
  margin-top: -20px;
  margin-left: -20px;
}
.bubble-list li {
  margin-top: 20px;
  margin-left: 20px;
  display: inline-block;
  padding: 0.8em 1.5em;
  border: solid 1px #036c9f;
  border-radius: 25px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #036c9f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .bubble-list li {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .bubble-list li {
    font-size: 16px;
  }
}

/* *********************************

  //GoogleMap対応

*************************************/
.access-map {
  margin-top: 20px;
  position: relative;
  width: auto;
  padding-top: 60%;
}
.access-map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/*---------------------
 ★ //CTAブロック v1（TEL CTA。全ページ下部）
-----------------------*/
.cta-v1-area {
  margin-top: 80px;
  padding-top: 80px;
  padding-bottom: 100px;
  background: #fff;
  background: linear-gradient(0deg, #002d46 0%, #002d46 30%, #fff 30%, #fff 100%);
}
@media only screen and (max-width: 768px) {
  .cta-v1-area {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .cta-v1-area {
    padding-top: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .cta-v1-area {
    padding-bottom: 80px;
  }
}
.cta-v1-area .cta-v1-wrapper {
  background-color: #fff;
  display: block;
  position: relative;
}
.cta-v1-area .cta-v1-wrapper .inner {
  border: solid 1px #eeeae0;
  padding: 70px 80px;
}
@media screen and (max-width: 670px) {
  .cta-v1-area .cta-v1-wrapper .inner {
    padding: 35px 30px;
  }
}
.cta-v1-area .cta-v1-wrapper::before, .cta-v1-area .cta-v1-wrapper::after {
  content: "";
  display: block;
  width: 64px;
  height: 64px;
}
.cta-v1-area .cta-v1-wrapper::before {
  position: absolute;
  top: 0;
  left: 0;
  border-top: #002d46 solid 4px;
  border-left: #002d46 solid 4px;
}
.cta-v1-area .cta-v1-wrapper::after {
  position: absolute;
  top: 0;
  right: 0;
  border-top: #002d46 solid 4px;
  border-right: #002d46 solid 4px;
}
.cta-v1-area .cta-v1-ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(36 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(51 / 36);
  font-size: 26px;
}
@media screen and (min-width: 320px) {
  .cta-v1-area .cta-v1-ttl {
    font-size: calc(2.2321428571vw + 18.8571428571px);
  }
}
@media screen and (min-width: 768px) {
  .cta-v1-area .cta-v1-ttl {
    font-size: 36px;
  }
}
.cta-v1-area .cta-v1-ttl br {
  display: none;
}
@media screen and (max-width: 1180px) {
  .cta-v1-area .cta-v1-ttl br {
    display: block;
  }
}
.cta-v1-area .cta-v1-txt {
  margin-top: 35px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(18 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  font-size: 16px;
}
@media only screen and (max-width: 768px) {
  .cta-v1-area .cta-v1-txt {
    margin-top: 25px;
  }
}
@media screen and (min-width: 320px) {
  .cta-v1-area .cta-v1-txt {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  .cta-v1-area .cta-v1-txt {
    font-size: 18px;
  }
}
.cta-v1-area .cta-v1-column {
  margin-top: 35px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .cta-v1-area .cta-v1-column {
    margin-top: 25px;
  }
}
.cta-v1-area .cta-v1-column .l-cont {
  flex: 0 0 50%;
}
@media screen and (max-width: 1160px) {
  .cta-v1-area .cta-v1-column .l-cont {
    margin: 0 auto;
    display: table;
  }
}
.cta-v1-area .cta-v1-column .r-cont {
  flex: 0 0 50%;
}
@media screen and (max-width: 1160px) {
  .cta-v1-area .cta-v1-column .r-cont {
    margin: 0 auto;
    margin-top: 40px;
  }
}
@media screen and (max-width: 1160px) {
  .cta-v1-area .cta-v1-column {
    display: block;
  }
}
.cta-v1-area .l-cont .tel {
  max-width: 440px;
}
.cta-v1-area .r-cont {
  max-width: 480px;
}

/*-- utilityフォルダの中の_index.scss --*/
/*--------------------

汎用 margin / padding（旧テーマ踏襲・クラス名維持）

----------------------*/
.m5px {
  margin: 5px auto;
}

.mt5px {
  margin-top: 5px;
}

.mb5px {
  margin-bottom: 5px;
}

.p5px-a {
  padding: 5px auto;
}

.p5px {
  padding: 5px;
}

.pt5px {
  padding-top: 5px;
}

.pb5px {
  padding-bottom: 5px;
}

.m10px {
  margin: 10px auto;
}

.mt10px {
  margin-top: 10px;
}

.mb10px {
  margin-bottom: 10px;
}

.p10px-a {
  padding: 10px auto;
}

.p10px {
  padding: 10px;
}

.pt10px {
  padding-top: 10px;
}

.pb10px {
  padding-bottom: 10px;
}

.m15px {
  margin: 15px auto;
}

.mt15px {
  margin-top: 15px;
}

.mb15px {
  margin-bottom: 15px;
}

.p15px-a {
  padding: 15px auto;
}

.p15px {
  padding: 15px;
}

.pt15px {
  padding-top: 15px;
}

.pb15px {
  padding-bottom: 15px;
}

.m20px {
  margin: 20px auto;
}

.mt20px {
  margin-top: 20px;
}

.mb20px {
  margin-bottom: 20px;
}

.p20px-a {
  padding: 20px auto;
}

.p20px {
  padding: 20px;
}

.pt20px {
  padding-top: 20px;
}

.pb20px {
  padding-bottom: 20px;
}

.m25px {
  margin: 25px auto;
}

.mt25px {
  margin-top: 25px;
}

.mb25px {
  margin-bottom: 25px;
}

.p25px-a {
  padding: 25px auto;
}

.p25px {
  padding: 25px;
}

.pt25px {
  padding-top: 25px;
}

.pb25px {
  padding-bottom: 25px;
}

.m30px {
  margin: 30px auto;
}

.mt30px {
  margin-top: 30px;
}

.mb30px {
  margin-bottom: 30px;
}

.p30px-a {
  padding: 30px auto;
}

.p30px {
  padding: 30px;
}

.pt30px {
  padding-top: 30px;
}

.pb30px {
  padding-bottom: 30px;
}

.m35px {
  margin: 35px auto;
}

.mt35px {
  margin-top: 35px;
}

.mb35px {
  margin-bottom: 35px;
}

.p35px-a {
  padding: 35px auto;
}

.p35px {
  padding: 35px;
}

.pt35px {
  padding-top: 35px;
}

.pb35px {
  padding-bottom: 35px;
}

.m40px {
  margin: 40px auto;
}

.mt40px {
  margin-top: 40px;
}

.mb40px {
  margin-bottom: 40px;
}

.p40px-a {
  padding: 40px auto;
}

.p40px {
  padding: 40px;
}

.pt40px {
  padding-top: 40px;
}

.pb40px {
  padding-bottom: 40px;
}

.m45px {
  margin: 45px auto;
}

.mt45px {
  margin-top: 45px;
}

.mb45px {
  margin-bottom: 45px;
}

.p45px-a {
  padding: 45px auto;
}

.p45px {
  padding: 45px;
}

.pt45px {
  padding-top: 45px;
}

.pb45px {
  padding-bottom: 45px;
}

.m50px {
  margin: 50px auto;
}

.mt50px {
  margin-top: 50px;
}

.mb50px {
  margin-bottom: 50px;
}

.p50px-a {
  padding: 50px auto;
}

.p50px {
  padding: 50px;
}

.pt50px {
  padding-top: 50px;
}

.pb50px {
  padding-bottom: 50px;
}

.m55px {
  margin: 55px auto;
}

.mt55px {
  margin-top: 55px;
}

.mb55px {
  margin-bottom: 55px;
}

.p55px-a {
  padding: 55px auto;
}

.p55px {
  padding: 55px;
}

.pt55px {
  padding-top: 55px;
}

.pb55px {
  padding-bottom: 55px;
}

.m60px {
  margin: 60px auto;
}

.mt60px {
  margin-top: 60px;
}

.mb60px {
  margin-bottom: 60px;
}

.p60px-a {
  padding: 60px auto;
}

.p60px {
  padding: 60px;
}

.pt60px {
  padding-top: 60px;
}

.pb60px {
  padding-bottom: 60px;
}

.m65px {
  margin: 65px auto;
}

.mt65px {
  margin-top: 65px;
}

.mb65px {
  margin-bottom: 65px;
}

.p65px-a {
  padding: 65px auto;
}

.p65px {
  padding: 65px;
}

.pt65px {
  padding-top: 65px;
}

.pb65px {
  padding-bottom: 65px;
}

.m70px {
  margin: 70px auto;
}

.mt70px {
  margin-top: 70px;
}

.mb70px {
  margin-bottom: 70px;
}

.p70px-a {
  padding: 70px auto;
}

.p70px {
  padding: 70px;
}

.pt70px {
  padding-top: 70px;
}

.pb70px {
  padding-bottom: 70px;
}

.m75px {
  margin: 75px auto;
}

.mt75px {
  margin-top: 75px;
}

.mb75px {
  margin-bottom: 75px;
}

.p75px-a {
  padding: 75px auto;
}

.p75px {
  padding: 75px;
}

.pt75px {
  padding-top: 75px;
}

.pb75px {
  padding-bottom: 75px;
}

.m80px {
  margin: 80px auto;
}

.mt80px {
  margin-top: 80px;
}

.mb80px {
  margin-bottom: 80px;
}

.p80px-a {
  padding: 80px auto;
}

.p80px {
  padding: 80px;
}

.pt80px {
  padding-top: 80px;
}

.pb80px {
  padding-bottom: 80px;
}

.m85px {
  margin: 85px auto;
}

.mt85px {
  margin-top: 85px;
}

.mb85px {
  margin-bottom: 85px;
}

.p85px-a {
  padding: 85px auto;
}

.p85px {
  padding: 85px;
}

.pt85px {
  padding-top: 85px;
}

.pb85px {
  padding-bottom: 85px;
}

.m90px {
  margin: 90px auto;
}

.mt90px {
  margin-top: 90px;
}

.mb90px {
  margin-bottom: 90px;
}

.p90px-a {
  padding: 90px auto;
}

.p90px {
  padding: 90px;
}

.pt90px {
  padding-top: 90px;
}

.pb90px {
  padding-bottom: 90px;
}

.m95px {
  margin: 95px auto;
}

.mt95px {
  margin-top: 95px;
}

.mb95px {
  margin-bottom: 95px;
}

.p95px-a {
  padding: 95px auto;
}

.p95px {
  padding: 95px;
}

.pt95px {
  padding-top: 95px;
}

.pb95px {
  padding-bottom: 95px;
}

.m100px {
  margin: 100px auto;
}

.mt100px {
  margin-top: 100px;
}

.mb100px {
  margin-bottom: 100px;
}

.p100px-a {
  padding: 100px auto;
}

.p100px {
  padding: 100px;
}

.pt100px {
  padding-top: 100px;
}

.pb100px {
  padding-bottom: 100px;
}

.m105px {
  margin: 105px auto;
}

.mt105px {
  margin-top: 105px;
}

.mb105px {
  margin-bottom: 105px;
}

.p105px-a {
  padding: 105px auto;
}

.p105px {
  padding: 105px;
}

.pt105px {
  padding-top: 105px;
}

.pb105px {
  padding-bottom: 105px;
}

.m110px {
  margin: 110px auto;
}

.mt110px {
  margin-top: 110px;
}

.mb110px {
  margin-bottom: 110px;
}

.p110px-a {
  padding: 110px auto;
}

.p110px {
  padding: 110px;
}

.pt110px {
  padding-top: 110px;
}

.pb110px {
  padding-bottom: 110px;
}

.m115px {
  margin: 115px auto;
}

.mt115px {
  margin-top: 115px;
}

.mb115px {
  margin-bottom: 115px;
}

.p115px-a {
  padding: 115px auto;
}

.p115px {
  padding: 115px;
}

.pt115px {
  padding-top: 115px;
}

.pb115px {
  padding-bottom: 115px;
}

.m120px {
  margin: 120px auto;
}

.mt120px {
  margin-top: 120px;
}

.mb120px {
  margin-bottom: 120px;
}

.p120px-a {
  padding: 120px auto;
}

.p120px {
  padding: 120px;
}

.pt120px {
  padding-top: 120px;
}

.pb120px {
  padding-bottom: 120px;
}

.m125px {
  margin: 125px auto;
}

.mt125px {
  margin-top: 125px;
}

.mb125px {
  margin-bottom: 125px;
}

.p125px-a {
  padding: 125px auto;
}

.p125px {
  padding: 125px;
}

.pt125px {
  padding-top: 125px;
}

.pb125px {
  padding-bottom: 125px;
}

.m130px {
  margin: 130px auto;
}

.mt130px {
  margin-top: 130px;
}

.mb130px {
  margin-bottom: 130px;
}

.p130px-a {
  padding: 130px auto;
}

.p130px {
  padding: 130px;
}

.pt130px {
  padding-top: 130px;
}

.pb130px {
  padding-bottom: 130px;
}

.m135px {
  margin: 135px auto;
}

.mt135px {
  margin-top: 135px;
}

.mb135px {
  margin-bottom: 135px;
}

.p135px-a {
  padding: 135px auto;
}

.p135px {
  padding: 135px;
}

.pt135px {
  padding-top: 135px;
}

.pb135px {
  padding-bottom: 135px;
}

.m140px {
  margin: 140px auto;
}

.mt140px {
  margin-top: 140px;
}

.mb140px {
  margin-bottom: 140px;
}

.p140px-a {
  padding: 140px auto;
}

.p140px {
  padding: 140px;
}

.pt140px {
  padding-top: 140px;
}

.pb140px {
  padding-bottom: 140px;
}

.m145px {
  margin: 145px auto;
}

.mt145px {
  margin-top: 145px;
}

.mb145px {
  margin-bottom: 145px;
}

.p145px-a {
  padding: 145px auto;
}

.p145px {
  padding: 145px;
}

.pt145px {
  padding-top: 145px;
}

.pb145px {
  padding-bottom: 145px;
}

.m150px {
  margin: 150px auto;
}

.mt150px {
  margin-top: 150px;
}

.mb150px {
  margin-bottom: 150px;
}

.p150px-a {
  padding: 150px auto;
}

.p150px {
  padding: 150px;
}

.pt150px {
  padding-top: 150px;
}

.pb150px {
  padding-bottom: 150px;
}

.m155px {
  margin: 155px auto;
}

.mt155px {
  margin-top: 155px;
}

.mb155px {
  margin-bottom: 155px;
}

.p155px-a {
  padding: 155px auto;
}

.p155px {
  padding: 155px;
}

.pt155px {
  padding-top: 155px;
}

.pb155px {
  padding-bottom: 155px;
}

.m160px {
  margin: 160px auto;
}

.mt160px {
  margin-top: 160px;
}

.mb160px {
  margin-bottom: 160px;
}

.p160px-a {
  padding: 160px auto;
}

.p160px {
  padding: 160px;
}

.pt160px {
  padding-top: 160px;
}

.pb160px {
  padding-bottom: 160px;
}

.m165px {
  margin: 165px auto;
}

.mt165px {
  margin-top: 165px;
}

.mb165px {
  margin-bottom: 165px;
}

.p165px-a {
  padding: 165px auto;
}

.p165px {
  padding: 165px;
}

.pt165px {
  padding-top: 165px;
}

.pb165px {
  padding-bottom: 165px;
}

.m170px {
  margin: 170px auto;
}

.mt170px {
  margin-top: 170px;
}

.mb170px {
  margin-bottom: 170px;
}

.p170px-a {
  padding: 170px auto;
}

.p170px {
  padding: 170px;
}

.pt170px {
  padding-top: 170px;
}

.pb170px {
  padding-bottom: 170px;
}

.m175px {
  margin: 175px auto;
}

.mt175px {
  margin-top: 175px;
}

.mb175px {
  margin-bottom: 175px;
}

.p175px-a {
  padding: 175px auto;
}

.p175px {
  padding: 175px;
}

.pt175px {
  padding-top: 175px;
}

.pb175px {
  padding-bottom: 175px;
}

.m180px {
  margin: 180px auto;
}

.mt180px {
  margin-top: 180px;
}

.mb180px {
  margin-bottom: 180px;
}

.p180px-a {
  padding: 180px auto;
}

.p180px {
  padding: 180px;
}

.pt180px {
  padding-top: 180px;
}

.pb180px {
  padding-bottom: 180px;
}

.m185px {
  margin: 185px auto;
}

.mt185px {
  margin-top: 185px;
}

.mb185px {
  margin-bottom: 185px;
}

.p185px-a {
  padding: 185px auto;
}

.p185px {
  padding: 185px;
}

.pt185px {
  padding-top: 185px;
}

.pb185px {
  padding-bottom: 185px;
}

.m190px {
  margin: 190px auto;
}

.mt190px {
  margin-top: 190px;
}

.mb190px {
  margin-bottom: 190px;
}

.p190px-a {
  padding: 190px auto;
}

.p190px {
  padding: 190px;
}

.pt190px {
  padding-top: 190px;
}

.pb190px {
  padding-bottom: 190px;
}

.m195px {
  margin: 195px auto;
}

.mt195px {
  margin-top: 195px;
}

.mb195px {
  margin-bottom: 195px;
}

.p195px-a {
  padding: 195px auto;
}

.p195px {
  padding: 195px;
}

.pt195px {
  padding-top: 195px;
}

.pb195px {
  padding-bottom: 195px;
}

.m200px {
  margin: 200px auto;
}

.mt200px {
  margin-top: 200px;
}

.mb200px {
  margin-bottom: 200px;
}

.p200px-a {
  padding: 200px auto;
}

.p200px {
  padding: 200px;
}

.pt200px {
  padding-top: 200px;
}

.pb200px {
  padding-bottom: 200px;
}

.m205px {
  margin: 205px auto;
}

.mt205px {
  margin-top: 205px;
}

.mb205px {
  margin-bottom: 205px;
}

.p205px-a {
  padding: 205px auto;
}

.p205px {
  padding: 205px;
}

.pt205px {
  padding-top: 205px;
}

.pb205px {
  padding-bottom: 205px;
}

.m210px {
  margin: 210px auto;
}

.mt210px {
  margin-top: 210px;
}

.mb210px {
  margin-bottom: 210px;
}

.p210px-a {
  padding: 210px auto;
}

.p210px {
  padding: 210px;
}

.pt210px {
  padding-top: 210px;
}

.pb210px {
  padding-bottom: 210px;
}

.m215px {
  margin: 215px auto;
}

.mt215px {
  margin-top: 215px;
}

.mb215px {
  margin-bottom: 215px;
}

.p215px-a {
  padding: 215px auto;
}

.p215px {
  padding: 215px;
}

.pt215px {
  padding-top: 215px;
}

.pb215px {
  padding-bottom: 215px;
}

.m220px {
  margin: 220px auto;
}

.mt220px {
  margin-top: 220px;
}

.mb220px {
  margin-bottom: 220px;
}

.p220px-a {
  padding: 220px auto;
}

.p220px {
  padding: 220px;
}

.pt220px {
  padding-top: 220px;
}

.pb220px {
  padding-bottom: 220px;
}

.m225px {
  margin: 225px auto;
}

.mt225px {
  margin-top: 225px;
}

.mb225px {
  margin-bottom: 225px;
}

.p225px-a {
  padding: 225px auto;
}

.p225px {
  padding: 225px;
}

.pt225px {
  padding-top: 225px;
}

.pb225px {
  padding-bottom: 225px;
}

.m230px {
  margin: 230px auto;
}

.mt230px {
  margin-top: 230px;
}

.mb230px {
  margin-bottom: 230px;
}

.p230px-a {
  padding: 230px auto;
}

.p230px {
  padding: 230px;
}

.pt230px {
  padding-top: 230px;
}

.pb230px {
  padding-bottom: 230px;
}

.m235px {
  margin: 235px auto;
}

.mt235px {
  margin-top: 235px;
}

.mb235px {
  margin-bottom: 235px;
}

.p235px-a {
  padding: 235px auto;
}

.p235px {
  padding: 235px;
}

.pt235px {
  padding-top: 235px;
}

.pb235px {
  padding-bottom: 235px;
}

.m240px {
  margin: 240px auto;
}

.mt240px {
  margin-top: 240px;
}

.mb240px {
  margin-bottom: 240px;
}

.p240px-a {
  padding: 240px auto;
}

.p240px {
  padding: 240px;
}

.pt240px {
  padding-top: 240px;
}

.pb240px {
  padding-bottom: 240px;
}

.m245px {
  margin: 245px auto;
}

.mt245px {
  margin-top: 245px;
}

.mb245px {
  margin-bottom: 245px;
}

.p245px-a {
  padding: 245px auto;
}

.p245px {
  padding: 245px;
}

.pt245px {
  padding-top: 245px;
}

.pb245px {
  padding-bottom: 245px;
}

.m250px {
  margin: 250px auto;
}

.mt250px {
  margin-top: 250px;
}

.mb250px {
  margin-bottom: 250px;
}

.p250px-a {
  padding: 250px auto;
}

.p250px {
  padding: 250px;
}

.pt250px {
  padding-top: 250px;
}

.pb250px {
  padding-bottom: 250px;
}

.m255px {
  margin: 255px auto;
}

.mt255px {
  margin-top: 255px;
}

.mb255px {
  margin-bottom: 255px;
}

.p255px-a {
  padding: 255px auto;
}

.p255px {
  padding: 255px;
}

.pt255px {
  padding-top: 255px;
}

.pb255px {
  padding-bottom: 255px;
}

.m260px {
  margin: 260px auto;
}

.mt260px {
  margin-top: 260px;
}

.mb260px {
  margin-bottom: 260px;
}

.p260px-a {
  padding: 260px auto;
}

.p260px {
  padding: 260px;
}

.pt260px {
  padding-top: 260px;
}

.pb260px {
  padding-bottom: 260px;
}

.m265px {
  margin: 265px auto;
}

.mt265px {
  margin-top: 265px;
}

.mb265px {
  margin-bottom: 265px;
}

.p265px-a {
  padding: 265px auto;
}

.p265px {
  padding: 265px;
}

.pt265px {
  padding-top: 265px;
}

.pb265px {
  padding-bottom: 265px;
}

.m270px {
  margin: 270px auto;
}

.mt270px {
  margin-top: 270px;
}

.mb270px {
  margin-bottom: 270px;
}

.p270px-a {
  padding: 270px auto;
}

.p270px {
  padding: 270px;
}

.pt270px {
  padding-top: 270px;
}

.pb270px {
  padding-bottom: 270px;
}

.m275px {
  margin: 275px auto;
}

.mt275px {
  margin-top: 275px;
}

.mb275px {
  margin-bottom: 275px;
}

.p275px-a {
  padding: 275px auto;
}

.p275px {
  padding: 275px;
}

.pt275px {
  padding-top: 275px;
}

.pb275px {
  padding-bottom: 275px;
}

.m280px {
  margin: 280px auto;
}

.mt280px {
  margin-top: 280px;
}

.mb280px {
  margin-bottom: 280px;
}

.p280px-a {
  padding: 280px auto;
}

.p280px {
  padding: 280px;
}

.pt280px {
  padding-top: 280px;
}

.pb280px {
  padding-bottom: 280px;
}

.m285px {
  margin: 285px auto;
}

.mt285px {
  margin-top: 285px;
}

.mb285px {
  margin-bottom: 285px;
}

.p285px-a {
  padding: 285px auto;
}

.p285px {
  padding: 285px;
}

.pt285px {
  padding-top: 285px;
}

.pb285px {
  padding-bottom: 285px;
}

.m290px {
  margin: 290px auto;
}

.mt290px {
  margin-top: 290px;
}

.mb290px {
  margin-bottom: 290px;
}

.p290px-a {
  padding: 290px auto;
}

.p290px {
  padding: 290px;
}

.pt290px {
  padding-top: 290px;
}

.pb290px {
  padding-bottom: 290px;
}

.m295px {
  margin: 295px auto;
}

.mt295px {
  margin-top: 295px;
}

.mb295px {
  margin-bottom: 295px;
}

.p295px-a {
  padding: 295px auto;
}

.p295px {
  padding: 295px;
}

.pt295px {
  padding-top: 295px;
}

.pb295px {
  padding-bottom: 295px;
}

.m300px {
  margin: 300px auto;
}

.mt300px {
  margin-top: 300px;
}

.mb300px {
  margin-bottom: 300px;
}

.p300px-a {
  padding: 300px auto;
}

.p300px {
  padding: 300px;
}

.pt300px {
  padding-top: 300px;
}

.pb300px {
  padding-bottom: 300px;
}

.m305px {
  margin: 305px auto;
}

.mt305px {
  margin-top: 305px;
}

.mb305px {
  margin-bottom: 305px;
}

.p305px-a {
  padding: 305px auto;
}

.p305px {
  padding: 305px;
}

.pt305px {
  padding-top: 305px;
}

.pb305px {
  padding-bottom: 305px;
}

.m310px {
  margin: 310px auto;
}

.mt310px {
  margin-top: 310px;
}

.mb310px {
  margin-bottom: 310px;
}

.p310px-a {
  padding: 310px auto;
}

.p310px {
  padding: 310px;
}

.pt310px {
  padding-top: 310px;
}

.pb310px {
  padding-bottom: 310px;
}

.m315px {
  margin: 315px auto;
}

.mt315px {
  margin-top: 315px;
}

.mb315px {
  margin-bottom: 315px;
}

.p315px-a {
  padding: 315px auto;
}

.p315px {
  padding: 315px;
}

.pt315px {
  padding-top: 315px;
}

.pb315px {
  padding-bottom: 315px;
}

.m320px {
  margin: 320px auto;
}

.mt320px {
  margin-top: 320px;
}

.mb320px {
  margin-bottom: 320px;
}

.p320px-a {
  padding: 320px auto;
}

.p320px {
  padding: 320px;
}

.pt320px {
  padding-top: 320px;
}

.pb320px {
  padding-bottom: 320px;
}

.m325px {
  margin: 325px auto;
}

.mt325px {
  margin-top: 325px;
}

.mb325px {
  margin-bottom: 325px;
}

.p325px-a {
  padding: 325px auto;
}

.p325px {
  padding: 325px;
}

.pt325px {
  padding-top: 325px;
}

.pb325px {
  padding-bottom: 325px;
}

.m330px {
  margin: 330px auto;
}

.mt330px {
  margin-top: 330px;
}

.mb330px {
  margin-bottom: 330px;
}

.p330px-a {
  padding: 330px auto;
}

.p330px {
  padding: 330px;
}

.pt330px {
  padding-top: 330px;
}

.pb330px {
  padding-bottom: 330px;
}

.m335px {
  margin: 335px auto;
}

.mt335px {
  margin-top: 335px;
}

.mb335px {
  margin-bottom: 335px;
}

.p335px-a {
  padding: 335px auto;
}

.p335px {
  padding: 335px;
}

.pt335px {
  padding-top: 335px;
}

.pb335px {
  padding-bottom: 335px;
}

.m340px {
  margin: 340px auto;
}

.mt340px {
  margin-top: 340px;
}

.mb340px {
  margin-bottom: 340px;
}

.p340px-a {
  padding: 340px auto;
}

.p340px {
  padding: 340px;
}

.pt340px {
  padding-top: 340px;
}

.pb340px {
  padding-bottom: 340px;
}

.m345px {
  margin: 345px auto;
}

.mt345px {
  margin-top: 345px;
}

.mb345px {
  margin-bottom: 345px;
}

.p345px-a {
  padding: 345px auto;
}

.p345px {
  padding: 345px;
}

.pt345px {
  padding-top: 345px;
}

.pb345px {
  padding-bottom: 345px;
}

.m350px {
  margin: 350px auto;
}

.mt350px {
  margin-top: 350px;
}

.mb350px {
  margin-bottom: 350px;
}

.p350px-a {
  padding: 350px auto;
}

.p350px {
  padding: 350px;
}

.pt350px {
  padding-top: 350px;
}

.pb350px {
  padding-bottom: 350px;
}

.m355px {
  margin: 355px auto;
}

.mt355px {
  margin-top: 355px;
}

.mb355px {
  margin-bottom: 355px;
}

.p355px-a {
  padding: 355px auto;
}

.p355px {
  padding: 355px;
}

.pt355px {
  padding-top: 355px;
}

.pb355px {
  padding-bottom: 355px;
}

.m360px {
  margin: 360px auto;
}

.mt360px {
  margin-top: 360px;
}

.mb360px {
  margin-bottom: 360px;
}

.p360px-a {
  padding: 360px auto;
}

.p360px {
  padding: 360px;
}

.pt360px {
  padding-top: 360px;
}

.pb360px {
  padding-bottom: 360px;
}

.m365px {
  margin: 365px auto;
}

.mt365px {
  margin-top: 365px;
}

.mb365px {
  margin-bottom: 365px;
}

.p365px-a {
  padding: 365px auto;
}

.p365px {
  padding: 365px;
}

.pt365px {
  padding-top: 365px;
}

.pb365px {
  padding-bottom: 365px;
}

.m370px {
  margin: 370px auto;
}

.mt370px {
  margin-top: 370px;
}

.mb370px {
  margin-bottom: 370px;
}

.p370px-a {
  padding: 370px auto;
}

.p370px {
  padding: 370px;
}

.pt370px {
  padding-top: 370px;
}

.pb370px {
  padding-bottom: 370px;
}

.m375px {
  margin: 375px auto;
}

.mt375px {
  margin-top: 375px;
}

.mb375px {
  margin-bottom: 375px;
}

.p375px-a {
  padding: 375px auto;
}

.p375px {
  padding: 375px;
}

.pt375px {
  padding-top: 375px;
}

.pb375px {
  padding-bottom: 375px;
}

.m380px {
  margin: 380px auto;
}

.mt380px {
  margin-top: 380px;
}

.mb380px {
  margin-bottom: 380px;
}

.p380px-a {
  padding: 380px auto;
}

.p380px {
  padding: 380px;
}

.pt380px {
  padding-top: 380px;
}

.pb380px {
  padding-bottom: 380px;
}

.m385px {
  margin: 385px auto;
}

.mt385px {
  margin-top: 385px;
}

.mb385px {
  margin-bottom: 385px;
}

.p385px-a {
  padding: 385px auto;
}

.p385px {
  padding: 385px;
}

.pt385px {
  padding-top: 385px;
}

.pb385px {
  padding-bottom: 385px;
}

.m390px {
  margin: 390px auto;
}

.mt390px {
  margin-top: 390px;
}

.mb390px {
  margin-bottom: 390px;
}

.p390px-a {
  padding: 390px auto;
}

.p390px {
  padding: 390px;
}

.pt390px {
  padding-top: 390px;
}

.pb390px {
  padding-bottom: 390px;
}

.m395px {
  margin: 395px auto;
}

.mt395px {
  margin-top: 395px;
}

.mb395px {
  margin-bottom: 395px;
}

.p395px-a {
  padding: 395px auto;
}

.p395px {
  padding: 395px;
}

.pt395px {
  padding-top: 395px;
}

.pb395px {
  padding-bottom: 395px;
}

.m400px {
  margin: 400px auto;
}

.mt400px {
  margin-top: 400px;
}

.mb400px {
  margin-bottom: 400px;
}

.p400px-a {
  padding: 400px auto;
}

.p400px {
  padding: 400px;
}

.pt400px {
  padding-top: 400px;
}

.pb400px {
  padding-bottom: 400px;
}

.m405px {
  margin: 405px auto;
}

.mt405px {
  margin-top: 405px;
}

.mb405px {
  margin-bottom: 405px;
}

.p405px-a {
  padding: 405px auto;
}

.p405px {
  padding: 405px;
}

.pt405px {
  padding-top: 405px;
}

.pb405px {
  padding-bottom: 405px;
}

.m410px {
  margin: 410px auto;
}

.mt410px {
  margin-top: 410px;
}

.mb410px {
  margin-bottom: 410px;
}

.p410px-a {
  padding: 410px auto;
}

.p410px {
  padding: 410px;
}

.pt410px {
  padding-top: 410px;
}

.pb410px {
  padding-bottom: 410px;
}

.m415px {
  margin: 415px auto;
}

.mt415px {
  margin-top: 415px;
}

.mb415px {
  margin-bottom: 415px;
}

.p415px-a {
  padding: 415px auto;
}

.p415px {
  padding: 415px;
}

.pt415px {
  padding-top: 415px;
}

.pb415px {
  padding-bottom: 415px;
}

.m420px {
  margin: 420px auto;
}

.mt420px {
  margin-top: 420px;
}

.mb420px {
  margin-bottom: 420px;
}

.p420px-a {
  padding: 420px auto;
}

.p420px {
  padding: 420px;
}

.pt420px {
  padding-top: 420px;
}

.pb420px {
  padding-bottom: 420px;
}

.m425px {
  margin: 425px auto;
}

.mt425px {
  margin-top: 425px;
}

.mb425px {
  margin-bottom: 425px;
}

.p425px-a {
  padding: 425px auto;
}

.p425px {
  padding: 425px;
}

.pt425px {
  padding-top: 425px;
}

.pb425px {
  padding-bottom: 425px;
}

.m430px {
  margin: 430px auto;
}

.mt430px {
  margin-top: 430px;
}

.mb430px {
  margin-bottom: 430px;
}

.p430px-a {
  padding: 430px auto;
}

.p430px {
  padding: 430px;
}

.pt430px {
  padding-top: 430px;
}

.pb430px {
  padding-bottom: 430px;
}

.m435px {
  margin: 435px auto;
}

.mt435px {
  margin-top: 435px;
}

.mb435px {
  margin-bottom: 435px;
}

.p435px-a {
  padding: 435px auto;
}

.p435px {
  padding: 435px;
}

.pt435px {
  padding-top: 435px;
}

.pb435px {
  padding-bottom: 435px;
}

.m440px {
  margin: 440px auto;
}

.mt440px {
  margin-top: 440px;
}

.mb440px {
  margin-bottom: 440px;
}

.p440px-a {
  padding: 440px auto;
}

.p440px {
  padding: 440px;
}

.pt440px {
  padding-top: 440px;
}

.pb440px {
  padding-bottom: 440px;
}

.m445px {
  margin: 445px auto;
}

.mt445px {
  margin-top: 445px;
}

.mb445px {
  margin-bottom: 445px;
}

.p445px-a {
  padding: 445px auto;
}

.p445px {
  padding: 445px;
}

.pt445px {
  padding-top: 445px;
}

.pb445px {
  padding-bottom: 445px;
}

.m450px {
  margin: 450px auto;
}

.mt450px {
  margin-top: 450px;
}

.mb450px {
  margin-bottom: 450px;
}

.p450px-a {
  padding: 450px auto;
}

.p450px {
  padding: 450px;
}

.pt450px {
  padding-top: 450px;
}

.pb450px {
  padding-bottom: 450px;
}

.m455px {
  margin: 455px auto;
}

.mt455px {
  margin-top: 455px;
}

.mb455px {
  margin-bottom: 455px;
}

.p455px-a {
  padding: 455px auto;
}

.p455px {
  padding: 455px;
}

.pt455px {
  padding-top: 455px;
}

.pb455px {
  padding-bottom: 455px;
}

.m460px {
  margin: 460px auto;
}

.mt460px {
  margin-top: 460px;
}

.mb460px {
  margin-bottom: 460px;
}

.p460px-a {
  padding: 460px auto;
}

.p460px {
  padding: 460px;
}

.pt460px {
  padding-top: 460px;
}

.pb460px {
  padding-bottom: 460px;
}

.m465px {
  margin: 465px auto;
}

.mt465px {
  margin-top: 465px;
}

.mb465px {
  margin-bottom: 465px;
}

.p465px-a {
  padding: 465px auto;
}

.p465px {
  padding: 465px;
}

.pt465px {
  padding-top: 465px;
}

.pb465px {
  padding-bottom: 465px;
}

.m470px {
  margin: 470px auto;
}

.mt470px {
  margin-top: 470px;
}

.mb470px {
  margin-bottom: 470px;
}

.p470px-a {
  padding: 470px auto;
}

.p470px {
  padding: 470px;
}

.pt470px {
  padding-top: 470px;
}

.pb470px {
  padding-bottom: 470px;
}

.m475px {
  margin: 475px auto;
}

.mt475px {
  margin-top: 475px;
}

.mb475px {
  margin-bottom: 475px;
}

.p475px-a {
  padding: 475px auto;
}

.p475px {
  padding: 475px;
}

.pt475px {
  padding-top: 475px;
}

.pb475px {
  padding-bottom: 475px;
}

.m480px {
  margin: 480px auto;
}

.mt480px {
  margin-top: 480px;
}

.mb480px {
  margin-bottom: 480px;
}

.p480px-a {
  padding: 480px auto;
}

.p480px {
  padding: 480px;
}

.pt480px {
  padding-top: 480px;
}

.pb480px {
  padding-bottom: 480px;
}

.m485px {
  margin: 485px auto;
}

.mt485px {
  margin-top: 485px;
}

.mb485px {
  margin-bottom: 485px;
}

.p485px-a {
  padding: 485px auto;
}

.p485px {
  padding: 485px;
}

.pt485px {
  padding-top: 485px;
}

.pb485px {
  padding-bottom: 485px;
}

.m490px {
  margin: 490px auto;
}

.mt490px {
  margin-top: 490px;
}

.mb490px {
  margin-bottom: 490px;
}

.p490px-a {
  padding: 490px auto;
}

.p490px {
  padding: 490px;
}

.pt490px {
  padding-top: 490px;
}

.pb490px {
  padding-bottom: 490px;
}

.m495px {
  margin: 495px auto;
}

.mt495px {
  margin-top: 495px;
}

.mb495px {
  margin-bottom: 495px;
}

.p495px-a {
  padding: 495px auto;
}

.p495px {
  padding: 495px;
}

.pt495px {
  padding-top: 495px;
}

.pb495px {
  padding-bottom: 495px;
}

.m500px {
  margin: 500px auto;
}

.mt500px {
  margin-top: 500px;
}

.mb500px {
  margin-bottom: 500px;
}

.p500px-a {
  padding: 500px auto;
}

.p500px {
  padding: 500px;
}

.pt500px {
  padding-top: 500px;
}

.pb500px {
  padding-bottom: 500px;
}

/*-- layoutフォルダの中の_index.scss --*/
/*------------------------------------
コンテナ クラス定義
※クラス名は旧テーマ踏襲（main-container / unsize-container）
---------------------------------*/
.main-container {
  max-width: 1290px;
  width: auto;
  margin: 0 auto;
  padding: 0 25px;
  position: relative;
}

.unsize-container {
  width: auto;
  margin: 0 auto;
  padding: 0 25px;
  position: relative;
}

/*------------------------------------
表示・非表示切り替え
---------------------------------*/
.sp-view {
  display: none;
}
@media screen and (max-width: 1470px) {
  .sp-view {
    display: block;
  }
}

.pc-view {
  display: block;
}
@media screen and (max-width: 1470px) {
  .pc-view {
    display: none;
  }
}

/*---------------------
★ Header
-----------------------*/
.header {
  width: 100%;
}
.header a {
  color: #151e2f;
  text-decoration: none;
}
.header a:visited, .header a:hover, .header a:active, .header a:focus {
  color: #151e2f;
  text-decoration: none;
}
.header a:visited, .header a:hover, .header a:active, .header a:focus {
  color: rgb(52.5, 75, 117.5);
}

.header-container {
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 700;
}
.header-container .header-column {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 960px) {
  .header-container .header-column {
    height: 50px;
  }
}
.header-container .site-logo_block {
  margin-right: auto;
  padding-left: 25px;
}
.header-container .site-logo_block picture {
  display: block;
  width: 280px;
}
@media screen and (max-width: 960px) {
  .header-container .site-logo_block {
    height: 50px;
    padding-left: 15px;
  }
  .header-container .site-logo_block picture {
    margin-top: 9px;
    width: 180px;
  }
}

@media screen and (max-width: 1470px) {
  .PC-gmenu_block {
    display: none;
  }
}

.PC-gmenu {
  margin-right: 20px;
  display: flex;
  align-items: center;
}
.PC-gmenu .lv1 {
  position: relative;
  display: inline-block;
  color: #151e2f;
  text-decoration: none;
  display: inline-block;
  padding: 35px 1.4em;
  font-style: normal;
  font-weight: 700;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0em;
  line-height: calc(27.2 / 16);
}
.PC-gmenu .lv1:visited, .PC-gmenu .lv1:hover, .PC-gmenu .lv1:active, .PC-gmenu .lv1:focus {
  color: #151e2f;
  text-decoration: none;
}
.PC-gmenu .lv1:visited, .PC-gmenu .lv1:hover, .PC-gmenu .lv1:active, .PC-gmenu .lv1:focus {
  color: rgb(52.5, 75, 117.5);
}
.PC-gmenu .lv1 > a {
  position: relative;
}
.PC-gmenu .lv2 {
  transform: translateY(20px);
  opacity: 0;
  position: absolute;
  display: block;
  padding: 35px;
  background-color: #c4f0fd;
  width: 400px;
  top: 88px;
  left: 0;
  transition-property: opacity, transform;
  transition-timing-function: ease-out;
  transition-duration: 0.2s;
}
.PC-gmenu .lv2::before {
  position: absolute;
  content: "";
  display: block;
  top: -10px;
  left: 30px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 15px 10px;
  border-color: transparent transparent #c4f0fd transparent;
}
.PC-gmenu .lv2 li:not(:last-of-type) {
  margin-bottom: 20px;
}
.PC-gmenu .lv2 li:not(:last-of-type)::after {
  content: "";
  display: block;
  border-top: solid 1px #2a150e;
  margin-top: 10px;
}
.PC-gmenu .lv2 li a {
  pointer-events: none;
  position: relative;
  padding: 15px 0;
  font-style: normal;
  font-weight: 700;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0em;
  line-height: calc(16 / 16);
}
.PC-gmenu .is-active_slide-up {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.PC-gmenu .is-active_slide-up li a {
  pointer-events: auto;
}

.PC-gmenu_block .head-bt-tel {
  position: relative;
  width: 320px;
  margin-left: 30px;
  margin-right: -25px;
  transition: all 0.3s;
  position: relative;
  background-color: #036c9f;
  display: flex;
  align-items: center;
}
.PC-gmenu_block .head-bt-tel img {
  margin-inline: auto;
  width: 260px;
}
.PC-gmenu_block .head-bt-tel:hover {
  background-color: #013e76;
}
@media screen and (max-width: 960px) {
  .PC-gmenu_block .head-bt-tel {
    display: none;
  }
}

.spMenuTrigger {
  display: none;
}
@media screen and (max-width: 1470px) {
  .spMenuTrigger {
    display: block;
  }
}

.head-bt-gmenu {
  width: 100px;
  height: 92px;
  background-color: #036c9f;
  position: relative;
}
.head-bt-gmenu::before {
  content: "";
  position: absolute;
  width: 60px;
  height: 60px;
  background: url(img/spMenu-icon_close.svg);
  background-size: cover;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.head-bt-gmenu.active::before {
  background: url(img/spMenu-icon_open.svg);
  background-size: cover;
}
@media screen and (max-width: 960px) {
  .head-bt-gmenu {
    width: 50px;
    height: 50px;
  }
  .head-bt-gmenu::before {
    width: 30px;
    height: 30px;
  }
}

/*---------------------
SP
//SP時メニューデザイン
//全画面
-----------------------*/
.sp-gmenu-cover_block {
  opacity: 0;
  pointer-events: none;
  transform: translateX(-100%);
  transition: all 0.3s;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: #002d46;
  padding-top: 100px;
}
@media screen and (max-width: 480px) {
  .sp-gmenu-cover_block {
    padding-top: 50px;
  }
}

@media screen and (max-width: 1470px) {
  .spMenuActive .sp-gmenu-cover_block {
    display: block;
    opacity: 1;
    pointer-events: inherit;
    transform: translateX(0);
  }
  .spMenuActive .site-logo img {
    filter: brightness(0) invert(1);
  }
}
.sp-gmenu_block {
  max-width: 500px;
  margin: 0 auto;
  padding: 0 25px;
}

.SP-gmenu {
  margin-top: 80px;
  margin-bottom: 60px;
}
@media only screen and (max-width: 768px) {
  .SP-gmenu {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .SP-gmenu {
    margin-bottom: 40px;
  }
}
.SP-gmenu .lv1 {
  width: 100%;
  padding: 10px 0;
  font-style: normal;
  font-weight: 700;
  font-size: calc(16 / 16 * 1rem);
  color: #a8a8a8;
  letter-spacing: 0em;
  line-height: calc(27.2 / 16);
}
.SP-gmenu .lv1 a {
  color: white;
  text-decoration: none;
  font-style: normal;
  font-weight: 700;
  font-size: calc(16 / 16 * 1rem);
  color: #fff;
  letter-spacing: 0em;
  line-height: calc(27.2 / 16);
  position: relative;
  display: block;
  padding: 10px 2px;
  overflow: hidden;
}
.SP-gmenu .lv1 a:visited, .SP-gmenu .lv1 a:hover, .SP-gmenu .lv1 a:active, .SP-gmenu .lv1 a:focus {
  color: white;
  text-decoration: none;
}
.SP-gmenu .lv1 a::after {
  content: "";
  display: block;
  margin-top: 8px;
  width: 100%;
  height: 1px;
  background: #eeeae0;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: all 0.8s;
}
.SP-gmenu .lv1 a:hover::after {
  color: #013e76;
}
.SP-gmenu .lv1 .lv2 {
  max-width: 90%;
  margin-left: auto;
  margin-right: 0;
}

.SP-tel_block {
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .SP-tel_block {
    margin-top: 40px;
  }
}

/*---------------------
★ Footer
-----------------------*/
footer {
  position: relative;
}
footer .footer-top_field {
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #f3fbfd;
}
@media only screen and (max-width: 768px) {
  footer .footer-top_field {
    padding-top: 60px;
  }
}
@media only screen and (max-width: 768px) {
  footer .footer-top_field {
    padding-bottom: 60px;
  }
}
footer .footer-top_field .footer-top-inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media screen and (max-width: 920px) {
  footer .footer-top_field .footer-top-inner {
    flex-direction: row-reverse;
  }
}
footer .footer-top_field .footer-top-inner .footer-address_block {
  margin-top: 20px;
  flex: 0 0 45%;
}
@media only screen and (max-width: 768px) {
  footer .footer-top_field .footer-top-inner .footer-address_block {
    margin-top: 15px;
  }
}
@media screen and (max-width: 920px) {
  footer .footer-top_field .footer-top-inner .footer-address_block {
    flex: 0 0 100%;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 920px) and (max-width: 768px) {
  footer .footer-top_field .footer-top-inner .footer-address_block {
    margin-top: 15px;
  }
}
footer .footer-top_field .footer-top-inner .footer-navi_block {
  flex: 1;
}
@media screen and (max-width: 920px) {
  footer .footer-top_field .footer-top-inner .footer-navi_block {
    flex: 0 0 100%;
    margin-top: 60px;
  }
}
@media only screen and (max-width: 920px) and (max-width: 768px) {
  footer .footer-top_field .footer-top-inner .footer-navi_block {
    margin-top: 50px;
  }
}
@media screen and (max-width: 920px) {
  footer .footer-top_field .footer-top-inner {
    display: block;
  }
}
footer .footer-top_field .go-top {
  position: absolute;
  width: 60px;
  top: -110px;
  right: 0;
}
@media screen and (max-width: 1950px) {
  footer .footer-top_field .go-top {
    right: 25px;
  }
}
@media screen and (max-width: 768px) {
  footer .footer-top_field .go-top {
    top: -90px;
  }
}
footer .footer-address_block .footer-logo {
  max-width: 230px;
}
footer .footer-address_block .company-name {
  margin-top: 24px;
  font-style: normal;
  font-weight: 700;
  font-size: calc(18 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  font-size: 16px;
}
@media only screen and (max-width: 768px) {
  footer .footer-address_block .company-name {
    margin-top: 15px;
  }
}
@media screen and (min-width: 320px) {
  footer .footer-address_block .company-name {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  footer .footer-address_block .company-name {
    font-size: 18px;
  }
}
footer .footer-address_block .add {
  margin-top: 24px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(14 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(23.3 / 14);
  font-size: 12px;
}
@media only screen and (max-width: 768px) {
  footer .footer-address_block .add {
    margin-top: 15px;
  }
}
@media screen and (min-width: 320px) {
  footer .footer-address_block .add {
    font-size: calc(1.25vw + 8px);
  }
}
@media screen and (min-width: 480px) {
  footer .footer-address_block .add {
    font-size: 14px;
  }
}
footer .footer-address_block .footer-tel {
  margin-top: 16px;
  max-width: 200px;
}
@media only screen and (max-width: 768px) {
  footer .footer-address_block .footer-tel {
    margin-top: 24px;
  }
}
footer .footer-navi_block .navi_block .footer-menu-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper .left,
footer .footer-navi_block .navi_block .footer-menu-wrapper .right {
  width: 48%;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li {
  position: relative;
  display: block;
  width: 100%;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li:not(:first-of-type) {
  margin-top: 16px;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li.current_li {
  font-style: normal;
  font-weight: 700;
  font-size: calc(12 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(23.3 / 12);
  font-size: 10px;
}
@media screen and (min-width: 320px) {
  footer .footer-navi_block .navi_block .footer-menu-wrapper li.current_li {
    font-size: calc(2.5vw + 2px);
  }
}
@media screen and (min-width: 480px) {
  footer .footer-navi_block .navi_block .footer-menu-wrapper li.current_li {
    font-size: 14px;
  }
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li.current_li > ul {
  margin-left: 5%;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li.current_li::after {
  display: none;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li a {
  position: relative;
  display: block;
  color: #151e2f;
  text-decoration: none;
  font-style: normal;
  font-weight: 700;
  font-size: calc(14 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(23.3 / 14);
  font-size: 12px;
  padding: 14px 0;
  transition: all 0.3s;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li a:visited, footer .footer-navi_block .navi_block .footer-menu-wrapper li a:hover, footer .footer-navi_block .navi_block .footer-menu-wrapper li a:active, footer .footer-navi_block .navi_block .footer-menu-wrapper li a:focus {
  color: #151e2f;
  text-decoration: none;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li a:visited, footer .footer-navi_block .navi_block .footer-menu-wrapper li a:hover, footer .footer-navi_block .navi_block .footer-menu-wrapper li a:active, footer .footer-navi_block .navi_block .footer-menu-wrapper li a:focus {
  color: rgb(52.5, 75, 117.5);
}
@media screen and (min-width: 320px) {
  footer .footer-navi_block .navi_block .footer-menu-wrapper li a {
    font-size: calc(1.25vw + 8px);
  }
}
@media screen and (min-width: 480px) {
  footer .footer-navi_block .navi_block .footer-menu-wrapper li a {
    font-size: 14px;
  }
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li a:hover {
  padding-left: 8px;
}
footer .footer-navi_block .navi_block .footer-menu-wrapper li::after {
  content: "";
  display: block;
  border-top: solid 1px #2a150e;
  margin-top: 10px;
}
@media screen and (max-width: 420px) {
  footer .footer-navi_block .navi_block .footer-menu-wrapper {
    display: block;
  }
  footer .footer-navi_block .navi_block .footer-menu-wrapper .left,
  footer .footer-navi_block .navi_block .footer-menu-wrapper .right {
    width: 100%;
  }
  footer .footer-navi_block .navi_block .footer-menu-wrapper .right {
    margin-top: 16px;
  }
  footer .footer-navi_block .navi_block .footer-menu-wrapper li.current_li > ul {
    width: 100%;
  }
}
footer .footer-under_field {
  background-color: #002d46;
  padding: 30px 0;
  text-align: center;
}
footer .footer-under_field .copyright {
  display: inline-block;
  font-style: normal;
  font-weight: 600;
  font-size: calc(12 / 16 * 1rem);
  color: #fff;
  letter-spacing: 0.09em;
  line-height: calc(19.2 / 12);
}

/*-- projectフォルダの中の_index.scss --*/
/*---------------------
 ★ HOME（旧_home.scss）
-----------------------*/
/**************************

//メインスライダー
※本番時点でSwiper未初期化（静止表示）。レイアウトはswiper-bundle.min.cssの
  .swiper-wrapper{display:flex}に依存しているためCDN CSSは読み込み継続

**************************/
.home-mainimg_container {
  position: relative;
}
.home-mainimg_container .swiper-slide {
  position: relative;
  display: block;
}
.home-mainimg_container .slide-panel {
  position: relative;
  width: 85%;
  margin: 0 0 0 auto;
}
.home-mainimg_container .slide-panel picture {
  height: 100vh;
}
.home-mainimg_container .slide-panel picture img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 910px) {
  .home-mainimg_container .slide-panel {
    width: 100%;
    padding-left: 0px;
    max-height: inherit;
    height: 50vw;
  }
}
.home-mainimg_container .slide-panel .catchcopy {
  display: block;
  background-color: rgba(255, 255, 255, 0.95);
  padding: 4.5%;
  position: absolute;
  top: 50%;
  left: -15%;
  transform: translateY(-50%);
}
.home-mainimg_container .slide-panel .catchcopy .home-slide-catchcopy {
  font-style: normal;
  font-weight: 700;
  font-size: calc(13 / 16 * 1rem);
  color: #036c9f;
  letter-spacing: 0.095em;
  line-height: calc(20.8 / 13);
}
.home-mainimg_container .slide-panel .catchcopy .txt2 {
  margin-top: 18px;
  font-style: normal;
  font-weight: 700;
  font-size: calc(28 / 16 * 1rem);
  color: #036c9f;
  letter-spacing: 0.02em;
  line-height: calc(47.6 / 28);
  font-size: 18px;
}
@media only screen and (max-width: 768px) {
  .home-mainimg_container .slide-panel .catchcopy .txt2 {
    margin-top: 10px;
  }
}
@media screen and (min-width: 320px) {
  .home-mainimg_container .slide-panel .catchcopy .txt2 {
    font-size: calc(2.2321428571vw + 10.8571428571px);
  }
}
@media screen and (min-width: 768px) {
  .home-mainimg_container .slide-panel .catchcopy .txt2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 910px) {
  .home-mainimg_container .slide-panel .catchcopy {
    left: 0%;
    top: 100%;
  }
}
.home-mainimg_container .slide-panel .catchcopy::after {
  content: "";
  display: block;
  width: 80%;
  height: 5px;
  background: #036c9f;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media screen and (max-width: 910px) {
  .home-mainimg_container {
    padding-bottom: 18.25%;
  }
}

/**************************

//お知らせ

**************************/
.home-news_area {
  margin-top: 100px;
}
@media only screen and (max-width: 768px) {
  .home-news_area {
    margin-top: 80px;
  }
}
.home-news_area .home-news-field {
  margin-top: -50px;
  display: flex;
}
.home-news_area .home-news-field .headline {
  margin-top: 50px;
  flex: 0 0 300px;
}
@media screen and (max-width: 1260px) {
  .home-news_area .home-news-field .headline {
    flex: 0 0 180px;
  }
}
.home-news_area .home-news-field .list-block {
  margin-top: 50px;
  flex: 1;
}
@media screen and (max-width: 768px) {
  .home-news_area .home-news-field {
    display: block;
  }
}
.home-news_area .headline .home-news-ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 18px;
}
.home-news_area .headline .home-news-ttl span {
  display: block;
  font-style: normal;
  font-weight: 700;
  font-size: calc(14 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(14 / 14);
  font-size: 12px;
}
@media screen and (min-width: 320px) {
  .home-news_area .headline .home-news-ttl span {
    font-size: calc(1.25vw + 8px);
  }
}
@media screen and (min-width: 480px) {
  .home-news_area .headline .home-news-ttl span {
    font-size: 14px;
  }
}
@media screen and (min-width: 320px) {
  .home-news_area .headline .home-news-ttl {
    font-size: calc(1.3392857143vw + 13.7142857143px);
  }
}
@media screen and (min-width: 768px) {
  .home-news_area .headline .home-news-ttl {
    font-size: 24px;
  }
}
.home-news_area .list-block {
  margin-top: -20px;
}
.home-news_area .list-block .card {
  position: relative;
}
.home-news_area .list-block .card:not(:first-of-type) {
  padding-top: 20px;
  margin-top: 20px;
}
.home-news_area .list-block .card:not(:last-of-type)::after {
  content: "";
  display: block;
  margin-top: 20px;
  width: 100%;
  border-top: #eeeae0 solid 1px;
}
.home-news_area .list-block .card .dayttl-set {
  margin-top: -18px;
  display: flex;
}
.home-news_area .list-block .card .dayttl-set .day {
  margin-top: 18px;
  flex: 0 0 180px;
  font-style: normal;
  font-weight: 700;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .home-news_area .list-block .card .dayttl-set .day {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .home-news_area .list-block .card .dayttl-set .day {
    font-size: 16px;
  }
}
.home-news_area .list-block .card .dayttl-set .ttl {
  margin-top: 18px;
  flex: 1;
  font-style: normal;
  font-weight: 500;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
  padding-left: 30px;
  border-left: #eeeae0 solid 1px;
}
@media screen and (min-width: 320px) {
  .home-news_area .list-block .card .dayttl-set .ttl {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .home-news_area .list-block .card .dayttl-set .ttl {
    font-size: 16px;
  }
}
@media screen and (max-width: 675px) {
  .home-news_area .list-block .card .dayttl-set {
    display: block;
  }
  .home-news_area .list-block .card .dayttl-set .day,
  .home-news_area .list-block .card .dayttl-set .ttl {
    border: none;
  }
}

/**************************

//フューチャー

**************************/
.home-future_area {
  margin-top: 100px;
}
@media only screen and (max-width: 768px) {
  .home-future_area {
    margin-top: 80px;
  }
}

.home-future-list .home-future-block:not(:first-of-type) {
  margin-top: 80px;
}
@media only screen and (max-width: 768px) {
  .home-future-list .home-future-block:not(:first-of-type) {
    margin-top: 60px;
  }
}
.home-future-list .home-future-block .inner {
  position: relative;
}
.home-future-list .home-future-block .inner picture {
  position: relative;
  display: block;
}
.home-future-list .home-future-block .inner picture img {
  width: 80%;
}
@media screen and (max-width: 1100px) {
  .home-future-list .home-future-block .inner picture img {
    width: 100%;
    max-width: inherit;
  }
}
.home-future-list .home-future-block .inner .txt-card {
  max-width: 720px;
  background-color: #fcfcfc;
  padding: 60px 67px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 1100px) {
  .home-future-list .home-future-block .inner .txt-card {
    position: relative;
    transform: translateY(0%);
    margin-top: -10%;
  }
}
@media screen and (max-width: 768px) {
  .home-future-list .home-future-block .inner .txt-card {
    background-color: #f5f5f5;
    top: 0;
    padding: 30px 35px;
  }
}
.home-future-list .home-future-block .txt-card {
  position: relative;
}
.home-future-list .home-future-block .txt-card::before {
  content: "";
  display: block;
  width: 9px;
  height: 76px;
  background: #036c9f;
  position: absolute;
  left: 0;
  top: 60px;
}
@media screen and (max-width: 768px) {
  .home-future-list .home-future-block .txt-card::before {
    top: 30px;
  }
}
.home-future-list .home-future-block .txt-card .ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 18px;
}
@media screen and (min-width: 320px) {
  .home-future-list .home-future-block .txt-card .ttl {
    font-size: calc(1.3392857143vw + 13.7142857143px);
  }
}
@media screen and (min-width: 768px) {
  .home-future-list .home-future-block .txt-card .ttl {
    font-size: 24px;
  }
}
@media screen and (max-width: 480px) {
  .home-future-list .home-future-block .txt-card .ttl br {
    display: none;
  }
}
.home-future-list .home-future-block .txt-card .txt {
  margin-top: 40px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(14 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(23.3 / 14);
  font-size: 12px;
}
@media screen and (min-width: 320px) {
  .home-future-list .home-future-block .txt-card .txt {
    font-size: calc(1.25vw + 8px);
  }
}
@media screen and (min-width: 480px) {
  .home-future-list .home-future-block .txt-card .txt {
    font-size: 14px;
  }
}
@media screen and (max-width: 680px) {
  .home-future-list .home-future-block .txt-card .txt p br {
    display: none;
  }
}
.home-future-list li:nth-child(even) .inner picture img {
  margin-left: 30%;
}
@media screen and (max-width: 1100px) {
  .home-future-list li:nth-child(even) .inner picture img {
    width: 100%;
    max-width: inherit;
    margin-left: 0%;
  }
}
.home-future-list li:nth-child(even) .txt-card {
  right: auto;
  left: 0;
}
@media screen and (max-width: 1100px) {
  .home-future-list li:nth-child(even) .txt-card {
    margin-left: auto;
    margin-right: 0;
  }
}

/**************************

//個人様の大切な

**************************/
.home-parkinginfo-area {
  margin-top: 100px;
  padding-top: 80px;
  padding-bottom: 80px;
  background: rgb(255, 255, 255);
  background: linear-gradient(332deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 39%, rgb(166, 224, 238) 100%);
}
@media only screen and (max-width: 768px) {
  .home-parkinginfo-area {
    margin-top: 80px;
  }
}
@media only screen and (max-width: 768px) {
  .home-parkinginfo-area {
    padding-top: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .home-parkinginfo-area {
    padding-bottom: 60px;
  }
}

.home-parkinginfo-ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(36 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(51 / 36);
  font-size: 26px;
}
@media screen and (min-width: 320px) {
  .home-parkinginfo-ttl {
    font-size: calc(2.2321428571vw + 18.8571428571px);
  }
}
@media screen and (min-width: 768px) {
  .home-parkinginfo-ttl {
    font-size: 36px;
  }
}
@media screen and (max-width: 680px) {
  .home-parkinginfo-ttl br {
    display: none;
  }
}
.home-parkinginfo-ttl::before {
  content: "";
  display: block;
  width: 150px;
  border-top: solid 2px #002d46;
  margin-bottom: 32px;
}

.home-parkinginfo-txt {
  margin-top: 40px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media only screen and (max-width: 768px) {
  .home-parkinginfo-txt {
    margin-top: 30px;
  }
}
@media screen and (min-width: 320px) {
  .home-parkinginfo-txt {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .home-parkinginfo-txt {
    font-size: 16px;
  }
}
@media screen and (max-width: 680px) {
  .home-parkinginfo-txt br {
    display: none;
  }
}

.home-parkinginfo-body {
  margin-top: 80px;
  margin-left: 5%;
}
@media only screen and (max-width: 768px) {
  .home-parkinginfo-body {
    margin-top: 60px;
  }
}
@media screen and (max-width: 1100px) {
  .home-parkinginfo-body {
    margin-left: 0px;
  }
}

.home-parkinginfo-field {
  margin-top: -40px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.home-parkinginfo-field .img-block {
  margin-top: 40px;
  flex: 0 0 43%;
  margin-right: 40px;
}
.home-parkinginfo-field .img-block ul {
  display: flex;
  justify-content: space-between;
}
.home-parkinginfo-field .img-block ul li {
  width: 48%;
}
@media screen and (max-width: 1100px) {
  .home-parkinginfo-field .img-block {
    margin-right: 0px;
  }
}
.home-parkinginfo-field .bt-block {
  margin-top: 40px;
  flex: 1;
}
.home-parkinginfo-field .bt-block li {
  width: 100%;
}
.home-parkinginfo-field .bt-block li:not(:first-of-type) {
  margin-top: 20px;
}
.home-parkinginfo-field .bt-block li a {
  position: relative;
  display: block;
  padding: 25px 1em;
  background-color: #036c9f;
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #fff;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 16px;
  transition: all 0.3s;
}
@media screen and (min-width: 320px) {
  .home-parkinginfo-field .bt-block li a {
    font-size: calc(1.7857142857vw + 10.2857142857px);
  }
}
@media screen and (min-width: 768px) {
  .home-parkinginfo-field .bt-block li a {
    font-size: 24px;
  }
}
.home-parkinginfo-field .bt-block li a::before {
  content: url(img/bt-arrow-v2.svg);
  height: auto;
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
}
.home-parkinginfo-field .bt-block li a:hover {
  background-color: #013e76;
}
.home-parkinginfo-field .bt-block li a:hover::before {
  right: 15px;
}
@media screen and (max-width: 1100px) {
  .home-parkinginfo-field .bt-block li a {
    width: 80%;
    margin-left: auto;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .home-parkinginfo-field .bt-block li a {
    width: 100%;
  }
}
@media screen and (max-width: 1100px) {
  .home-parkinginfo-field {
    display: block;
  }
}

/**************************

//駐車場製品 パーキングシステム紹介

**************************/
.home-parkingsystem-area {
  margin-top: 80px;
}
@media only screen and (max-width: 768px) {
  .home-parkingsystem-area {
    margin-top: 60px;
  }
}
.home-parkingsystem-area .home-parkingsystem-ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(36 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(51 / 36);
  font-size: 26px;
}
@media screen and (min-width: 320px) {
  .home-parkingsystem-area .home-parkingsystem-ttl {
    font-size: calc(2.2321428571vw + 18.8571428571px);
  }
}
@media screen and (min-width: 768px) {
  .home-parkingsystem-area .home-parkingsystem-ttl {
    font-size: 36px;
  }
}
.home-parkingsystem-area .home-parkingsystem-ttl span {
  margin-top: 10px;
  display: block;
  font-style: normal;
  font-weight: 700;
  font-size: calc(14 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(23.3 / 14);
  font-size: 12px;
}
@media only screen and (max-width: 768px) {
  .home-parkingsystem-area .home-parkingsystem-ttl span {
    margin-top: 8px;
  }
}
@media screen and (min-width: 320px) {
  .home-parkingsystem-area .home-parkingsystem-ttl span {
    font-size: calc(1.25vw + 8px);
  }
}
@media screen and (min-width: 480px) {
  .home-parkingsystem-area .home-parkingsystem-ttl span {
    font-size: 14px;
  }
}
.home-parkingsystem-area .home-parkingsystem-ttl::before {
  content: "";
  display: block;
  width: 150px;
  border-top: solid 2px #002d46;
  margin-bottom: 32px;
}
.home-parkingsystem-area .home-parkingsystem-wrapper {
  margin-top: 80px;
  display: flex;
}
@media only screen and (max-width: 768px) {
  .home-parkingsystem-area .home-parkingsystem-wrapper {
    margin-top: 40px;
  }
}
.home-parkingsystem-area .home-parkingsystem-wrapper .l-left {
  flex: 0 0 290px;
}
.home-parkingsystem-area .home-parkingsystem-wrapper .l-left figure {
  max-width: 190px;
}
@media screen and (max-width: 1110px) {
  .home-parkingsystem-area .home-parkingsystem-wrapper .l-left {
    flex: 0 0 200px;
  }
}
@media screen and (max-width: 980px) {
  .home-parkingsystem-area .home-parkingsystem-wrapper .l-left {
    display: none;
  }
}
.home-parkingsystem-area .home-parkingsystem-wrapper .l-right {
  flex: 1;
}
.home-parkingsystem-area .home-parkingsystem-wrapper .l-right .system-nav2-block {
  margin-top: 80px;
}
@media only screen and (max-width: 768px) {
  .home-parkingsystem-area .home-parkingsystem-wrapper .l-right .system-nav2-block {
    margin-top: 60px;
  }
}
.home-parkingsystem-area .system-nav-block {
  margin-top: -20px;
  display: flex;
  justify-content: space-between;
}
.home-parkingsystem-area .system-nav-block .system-nav {
  width: 45%;
}
@media screen and (max-width: 768px) {
  .home-parkingsystem-area .system-nav-block {
    display: block;
  }
  .home-parkingsystem-area .system-nav-block .system-nav {
    width: 100%;
  }
}
.home-parkingsystem-area .system-nav2 {
  width: 70%;
  margin-left: auto;
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  .home-parkingsystem-area .system-nav2 {
    width: 100%;
  }
}
.home-parkingsystem-area .system-nav li,
.home-parkingsystem-area .system-nav2 li {
  position: relative;
}
.home-parkingsystem-area .system-nav li:not(:first-of-type),
.home-parkingsystem-area .system-nav2 li:not(:first-of-type) {
  margin-top: 20px;
}
.home-parkingsystem-area .system-nav li::after,
.home-parkingsystem-area .system-nav2 li::after {
  content: "";
  display: block;
  border-top: solid 1px #2a150e;
  margin-top: 20px;
}
.home-parkingsystem-area .system-nav li::before,
.home-parkingsystem-area .system-nav2 li::before {
  content: url(img/bt-arrow-v1.svg);
  height: auto;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
}
.home-parkingsystem-area .system-nav li:hover::before,
.home-parkingsystem-area .system-nav2 li:hover::before {
  right: 10px;
}
.home-parkingsystem-area .system-nav li:hover a,
.home-parkingsystem-area .system-nav2 li:hover a {
  color: #002d46;
  padding-left: 5px;
}
.home-parkingsystem-area .system-nav li a,
.home-parkingsystem-area .system-nav2 li a {
  position: relative;
  display: block;
  width: 100%;
  padding: 20px 0 0;
  font-style: normal;
  font-weight: 700;
  font-size: calc(18 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  font-size: 16px;
  transition: all 0.3s;
}
@media screen and (min-width: 320px) {
  .home-parkingsystem-area .system-nav li a,
  .home-parkingsystem-area .system-nav2 li a {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  .home-parkingsystem-area .system-nav li a,
  .home-parkingsystem-area .system-nav2 li a {
    font-size: 18px;
  }
}
@media screen and (max-width: 480px) {
  .home-parkingsystem-area .system-nav li a,
  .home-parkingsystem-area .system-nav2 li a {
    display: block;
    max-width: 215px;
  }
}
.home-parkingsystem-area .system-nav {
  margin-top: 20px;
}
.home-parkingsystem-area .system-nav2 li a {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 16px;
}
@media screen and (min-width: 320px) {
  .home-parkingsystem-area .system-nav2 li a {
    font-size: calc(1.25vw + 12px);
  }
}
@media screen and (min-width: 480px) {
  .home-parkingsystem-area .system-nav2 li a {
    font-size: 18px;
  }
}

/**************************

  駐車場経営（旧_parking.scss）

  -個人の方向け parking-personal
  -企業・施設向け parking-facility

**************************/
.parking-intro-area {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .parking-intro-area {
    margin-top: 80px;
  }
}

.parking-intro-field {
  position: relative;
  padding-bottom: 60px;
}
@media only screen and (max-width: 768px) {
  .parking-intro-field {
    padding-bottom: 40px;
  }
}
.parking-intro-field::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #eeeae0;
  position: absolute;
  left: 0;
  bottom: 0;
}

.parking-intro-field-2 {
  max-width: 980px;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .parking-intro-field-2 {
    margin-top: 40px;
  }
}
.parking-intro-field-2 .parking-intro-field-2-ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 18px;
  position: relative;
  padding-bottom: 60px;
}
@media screen and (min-width: 320px) {
  .parking-intro-field-2 .parking-intro-field-2-ttl {
    font-size: calc(1.3392857143vw + 13.7142857143px);
  }
}
@media screen and (min-width: 768px) {
  .parking-intro-field-2 .parking-intro-field-2-ttl {
    font-size: 24px;
  }
}
@media only screen and (max-width: 768px) {
  .parking-intro-field-2 .parking-intro-field-2-ttl {
    padding-bottom: 40px;
  }
}
.parking-intro-field-2 .parking-intro-field-2-ttl::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #eeeae0;
  position: absolute;
  left: 0;
  bottom: 0;
}
.parking-intro-field-2 .parking-intro-field-2-wrapper {
  margin-left: 10%;
}
@media screen and (max-width: 768px) {
  .parking-intro-field-2 .parking-intro-field-2-wrapper {
    margin-left: 0;
  }
}
.parking-intro-field-2 .under-note {
  margin-top: 40px;
}
@media only screen and (max-width: 768px) {
  .parking-intro-field-2 .under-note {
    margin-top: 30px;
  }
}

.parking-unit-area {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area {
    margin-top: 80px;
  }
}
.parking-unit-area .parking-dltable {
  margin-left: 20%;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .parking-dltable {
    margin-left: 0;
  }
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .parking-dltable {
    margin-top: 40px;
  }
}
.parking-unit-area .parking-dltable dd ul.list li {
  position: relative;
  padding-left: 1.5em;
}
.parking-unit-area .parking-dltable dd ul.list li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
}
.parking-unit-area .page-subttl-deco {
  margin-bottom: 20px;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .page-subttl-deco {
    margin-bottom: 20px;
  }
}
.parking-unit-area .unit-subblock {
  margin-top: 60px;
  margin-left: 20%;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .unit-subblock {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .unit-subblock {
    margin-left: 0;
  }
}
.parking-unit-area .under-note {
  margin-top: 40px;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .under-note {
    margin-top: 30px;
  }
}
.parking-unit-area .page-subttl_v3 {
  margin-top: 40px;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .page-subttl_v3 {
    margin-top: 30px;
  }
}
.parking-unit-area .unit-left-v1 {
  margin-left: 20%;
}
@media only screen and (max-width: 768px) {
  .parking-unit-area .unit-left-v1 {
    margin-left: 0;
  }
}

.parking-facility-set .parking-facility-flow {
  margin-top: 80px;
}
@media only screen and (max-width: 768px) {
  .parking-facility-set .parking-facility-flow {
    margin-top: 60px;
  }
}
.parking-facility-set .parking-facility-box {
  margin-top: 40px;
}
@media only screen and (max-width: 768px) {
  .parking-facility-set .parking-facility-box {
    margin-top: 30px;
  }
}
.parking-facility-set .parking-facility-box p:not(:first-of-type) {
  margin-top: 20px;
}
.parking-facility-set .parking-facility-box p {
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .parking-facility-set .parking-facility-box p {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .parking-facility-set .parking-facility-box p {
    font-size: 16px;
  }
}
@media screen and (max-width: 980px) {
  .parking-facility-set .parking-facility-box p br {
    display: none;
  }
}
.parking-facility-set .parking-dltable {
  margin-left: 5%;
}
@media only screen and (max-width: 768px) {
  .parking-facility-set .parking-dltable {
    margin-left: 0;
  }
}

/**************************

  パーキングシステム紹介（旧_parking-system.scss）

**************************/
.parking-system-area {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .parking-system-area {
    margin-top: 80px;
  }
}

.parking-system-list {
  max-width: 980px;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .parking-system-list {
    margin-top: 40px;
  }
}
.parking-system-list .unit-parking-system:not(:first-of-type) {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .parking-system-list .unit-parking-system:not(:first-of-type) {
    margin-top: 80px;
  }
}
.parking-system-list .unit-layout-v1 {
  margin-top: 40px;
  position: relative;
  padding-bottom: 40px;
  margin-left: 20%;
}
@media only screen and (max-width: 768px) {
  .parking-system-list .unit-layout-v1 {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .parking-system-list .unit-layout-v1 {
    padding-bottom: 20px;
  }
}
.parking-system-list .unit-layout-v1::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #eeeae0;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media screen and (max-width: 768px) {
  .parking-system-list .unit-layout-v1 {
    margin-left: 0;
  }
}
.parking-system-list .unit-dltable-set-v2 {
  margin-left: 20%;
}
@media screen and (max-width: 768px) {
  .parking-system-list .unit-dltable-set-v2 {
    margin-left: 0;
  }
}
.parking-system-list .unit-dltable-set-v2 .dltable-set dt {
  flex: 0 0 224px;
}
.parking-system-list .unit-dltable-set-v2 .dltable-set dt.short {
  letter-spacing: 1.05em;
}
.parking-system-list .unit-dltable-set-v2 .dltable-set .list li {
  position: relative;
  padding-left: 1.5em;
}
.parking-system-list .unit-dltable-set-v2 .dltable-set .list li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
}

/**************************

  さぽーとサービス（旧_support-service.scss）

**************************/
.service-intro-area {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .service-intro-area {
    margin-top: 80px;
  }
}
.service-intro-area .main-container {
  position: relative;
  padding-bottom: 60px;
}
@media only screen and (max-width: 768px) {
  .service-intro-area .main-container {
    padding-bottom: 40px;
  }
}
.service-intro-area .main-container::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #eeeae0;
  position: absolute;
  left: 0;
  bottom: 0;
}

.service-intro-field .service-intro-note {
  position: relative;
  padding-bottom: 60px;
}
.service-intro-field .service-intro-note p {
  color: #036c9f;
}
@media only screen and (max-width: 768px) {
  .service-intro-field .service-intro-note {
    padding-bottom: 40px;
  }
}
.service-intro-field .service-intro-note::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #eeeae0;
  position: absolute;
  left: 0;
  bottom: 0;
}

.service-intro-field-2 {
  max-width: 980px;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .service-intro-field-2 {
    margin-top: 40px;
  }
}
.service-intro-field-2 .service-intro-field-2-ttl {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 18px;
}
@media screen and (min-width: 320px) {
  .service-intro-field-2 .service-intro-field-2-ttl {
    font-size: calc(1.3392857143vw + 13.7142857143px);
  }
}
@media screen and (min-width: 768px) {
  .service-intro-field-2 .service-intro-field-2-ttl {
    font-size: 24px;
  }
}
.service-intro-field-2 .service-intro-field-2-wrapper {
  display: flex;
}
.service-intro-field-2 .service-intro-field-2-wrapper .l-cont {
  margin-top: 40px;
  flex: 0 0 620px;
}
.service-intro-field-2 .service-intro-field-2-wrapper .r-cont {
  margin-top: 40px;
  flex: 1;
}
.service-intro-field-2 .service-intro-field-2-wrapper .r-cont .service-intro-field-2-txt p:not(:first-of-type) {
  margin-top: 20px;
}
.service-intro-field-2 .service-intro-field-2-wrapper .r-cont .service-intro-field-2-txt p {
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .service-intro-field-2 .service-intro-field-2-wrapper .r-cont .service-intro-field-2-txt p {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .service-intro-field-2 .service-intro-field-2-wrapper .r-cont .service-intro-field-2-txt p {
    font-size: 16px;
  }
}
@media screen and (max-width: 980px) {
  .service-intro-field-2 .service-intro-field-2-wrapper .r-cont .service-intro-field-2-txt p br {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .service-intro-field-2 .service-intro-field-2-wrapper {
    display: block;
  }
}
.service-intro-field-2 .service-intro-field-2-wrapper .l-cont .img-list {
  max-width: 580px;
  display: flex;
  justify-content: space-between;
}
.service-intro-field-2 .service-intro-field-2-wrapper .l-cont .img-list li {
  width: 48%;
}
@media screen and (max-width: 768px) {
  .service-intro-field-2 .service-intro-field-2-wrapper .l-cont figure {
    margin: 0 auto;
  }
}

.support-service-area {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .support-service-area {
    margin-top: 80px;
  }
}
.support-service-area .support-service-dltable {
  max-width: 980px;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  margin-top: 60px;
}
@media only screen and (max-width: 768px) {
  .support-service-area .support-service-dltable {
    margin-top: 40px;
  }
}
.support-service-area .support-service-dltable dd ul.list li {
  position: relative;
  padding-left: 1.5em;
}
.support-service-area .support-service-dltable dd ul.list li::before {
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
}

/**************************

  会社案内（旧_company.scss）
  ※.summary-dltable等は旧テーマで_support-service.scssにも重複定義されていたが
    同一内容のため本ファイルに一本化

**************************/
.summary-area,
.company-access-map_area {
  margin-top: 120px;
}
@media only screen and (max-width: 768px) {
  .summary-area,
  .company-access-map_area {
    margin-top: 80px;
  }
}

.summary-dltable,
.company-access-map_body {
  margin-top: 60px;
  max-width: 980px;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .summary-dltable,
  .company-access-map_body {
    margin-top: 40px;
  }
}

.company-access-map_body .add-name {
  font-style: normal;
  font-weight: 700;
  font-size: calc(24 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(40.8 / 24);
  font-size: 18px;
}
@media screen and (min-width: 320px) {
  .company-access-map_body .add-name {
    font-size: calc(1.3392857143vw + 13.7142857143px);
  }
}
@media screen and (min-width: 768px) {
  .company-access-map_body .add-name {
    font-size: 24px;
  }
}
.company-access-map_body .add-name::after {
  content: "";
  display: block;
  margin-top: 18px;
  width: 100%;
  border-top: #eeeae0 solid 1px;
}
.company-access-map_body .add-txt {
  margin-top: 20px;
  font-style: normal;
  font-weight: 300;
  font-size: calc(18 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0em;
  line-height: calc(30.6 / 18);
  font-size: 16px;
}
@media only screen and (max-width: 768px) {
  .company-access-map_body .add-txt {
    margin-top: 10px;
  }
}
@media screen and (min-width: 480px) {
  .company-access-map_body .add-txt {
    font-size: calc(0.6944444444vw + 12.6666666667px);
  }
}
@media screen and (min-width: 768px) {
  .company-access-map_body .add-txt {
    font-size: 18px;
  }
}

/**************************

  404（旧_page404.scss）

**************************/
.page404-area {
  margin-top: 80px;
  margin-bottom: 80px;
}
@media only screen and (max-width: 768px) {
  .page404-area {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 768px) {
  .page404-area {
    margin-bottom: 60px;
  }
}
.page404-area h2 {
  font-style: normal;
  font-weight: 700;
  font-size: calc(200 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.02em;
  line-height: calc(200 / 200);
  font-size: 50px;
  text-align: center;
}
@media screen and (min-width: 320px) {
  .page404-area h2 {
    font-size: calc(33.4821428571vw + -57.1428571429px);
  }
}
@media screen and (min-width: 768px) {
  .page404-area h2 {
    font-size: 200px;
  }
}
.page404-area .info-404 {
  margin-top: 60px;
  font-style: normal;
  font-weight: 400;
  font-size: calc(16 / 16 * 1rem);
  color: #151e2f;
  letter-spacing: 0.05em;
  line-height: calc(27.2 / 16);
  font-size: 14px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .page404-area .info-404 {
    margin-top: 40px;
  }
}
@media screen and (min-width: 320px) {
  .page404-area .info-404 {
    font-size: calc(1.25vw + 10px);
  }
}
@media screen and (min-width: 480px) {
  .page404-area .info-404 {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .page404-area .info-404 {
    text-align: left;
  }
}
.page404-area .go-home {
  max-width: 600px;
  margin: 0 auto;
  margin-top: 60px;
  position: relative;
  background-color: #036c9f;
  text-align: center;
  transition: all 0.3s;
}
@media only screen and (max-width: 768px) {
  .page404-area .go-home {
    margin-top: 40px;
  }
}
@media screen and (max-width: 980px) {
  .page404-area .go-home {
    text-align: left;
  }
}
.page404-area .go-home a {
  display: block;
  padding: 35px 35px;
}
.page404-area .go-home a::after {
  content: url(img/cta-v1-bt-arrow.svg);
  width: 12px;
  height: auto;
  position: absolute;
  right: 35px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
}
@media screen and (max-width: 980px) {
  .page404-area .go-home a::after {
    right: calc(35px / 2);
  }
}
@media screen and (max-width: 480px) {
  .page404-area .go-home a {
    padding: calc(35px / 1.8) calc(35px / 1.8);
  }
}
.page404-area .go-home .txt {
  font-style: normal;
  font-weight: 700;
  font-size: calc(18 / 16 * 1rem);
  color: #fff;
  letter-spacing: 0.05em;
  line-height: calc(22.4 / 18);
  display: inline-block;
  margin-right: calc(35px + 20px);
  font-size: 14px;
}
@media screen and (min-width: 320px) {
  .page404-area .go-home .txt {
    font-size: calc(2.5vw + 6px);
  }
}
@media screen and (min-width: 480px) {
  .page404-area .go-home .txt {
    font-size: 18px;
  }
}
.page404-area .go-home:hover {
  background-color: #013e76;
}
.page404-area .go-home:hover a::after {
  right: calc(35px - 10px);
}
@media screen and (max-width: 980px) {
  .page404-area .go-home:hover a::after {
    right: calc(35px / 2px);
  }
}
