@charset "UTF-8";
/* ----------------------------------------------------------------------
１：mixin         ミックスイン
２：setting       プロジェクトの設定
３：foundation    共通 基本のタグ等の初期設定
４：libs          ライブラリー
５：component     パーツコンポーネント
６：layout        レイアウト
７：component2    レイアウト後の パーツコンポーネント
８：project       プロジェクトのみの記述
９：javascript    JSでの状態変化
---------------------------------------------------------------------- */
/* 共通 ミックスイン
---------------------------------------------------------------------- */
/*======================================================================================================
モジュールレイアウト
--------------------------------------------------------------------------------------------------------
・
・
======================================================================================================*/
/* ======================================================================
HTML
------------------------------------------------------------------------
@include break-point("sp") {
  margin: 2em;
}
---
====================================================================== */
/*======================================================================================================
LAYOUT：片側コンテンツ幅スタート、反対側ウィンドウ100%
--------------------------------------------------------------------------------------------------------
・l-inner--l-fix-r-stretch　or .l-inner--r-fix-l-stretch と合わせて使う事を想定
・
======================================================================================================*/
/* ======================================================================
HTML & CSS
------------------------------------------------------------------------
<div class="l-inner--l-fix-r-stretch">
	<div class="l-flex-fix-stretch-container">
		<div class="l-flex-fix-stretch__fix-item></div>
		<div class="l-flex-fix-stretch__stretch-item></div>
	</div>
</div>

.l-flex-fix-stretch-container{
	@include l-flex-fix-stretch(488);
	.l-flex-fix-stretch__fix-item{  }
	.l-flex-fix-stretch__stretch-item{  }
}
====================================================================== */
/*======================================================================================================
LAYOUT：ウィンドウ100%でパネルを敷き詰める
--------------------------------------------------------------------------------------------------------
・
・
======================================================================================================*/
/* ======================================================================
HTML & CSS
------------------------------------------------------------------------
<section class="p-***-sec">
	<ul class=" l-flex-full-w-panel">
		<li class=" l-flex-full-w-panel__item" style='background-image:url(*****.jpg)'>
			<a href="#">
				<h3>テキストテキスト</h3>
				<p class="">テキストテキスト</p>
			</a>
		</li>
			:
			:
	</ul>
</section>

.****-sec {
	@include l-flex-full-w-panel();
	.l-flex-full-w-panel__item{
		background-size: cover;
	}
}
====================================================================== */
/*----------------------------
カラム　レイアウト
https://qiita.com/noqua/items/0dc04aa528269db41a07
書き方
@include col(カラム数,margin値,'セレクタ');
clearfixのmixinを用意
----------------------------*/
/* ----------------------------------------------------------
疑似クラス
https://gist.github.com/TsubasaHiga/38057c59cff3e4a674bdd8810b4d4a15
----------------------------------------------------------*/
/* ----------------------------------------------------------
hoge（疑似要素アイコン指定）
https://gist.github.com/TsubasaHiga/38057c59cff3e4a674bdd8810b4d4a15
----------------------------------------------------------*/
/*----------------------------
疑似要素
----------------------------*/
/* グローバルの設定
---------------------------------------------------------------------- */
/*----------------------------
Font Family
----------------------------*/
/*----------------------------
FONT SIE（mixin：fs-ad　で全デバイス設定）
// 注意：ここに新たに追加した場合は、「fs-ad」に記載
https://docs.google.com/spreadsheets/d/1EFI-n_b-gnDygtfCTs1xr-WZ3OVrgbxDwtkXDLQRGHA/edit#gid=708385006
----------------------------*/
/*--------------------------------------------------------
見出し：通常
--------------------------------------------------------*/
/*--------------------------------------------------------
見出し：ニュース、ブログ
--------------------------------------------------------*/
/*--------------------------------------------------------
大きい　飾り 英語フォントサイズ
--------------------------------------------------------*/
/*--------------------------------------------------------
大きい　飾り 数字番号　フォントサイズ
--------------------------------------------------------*/
/*--------------------------------------------------------
コンテンツサイズ
--------------------------------------------------------*/
/*--------------------------------------------------------
ブレイクポイント
--------------------------------------------------------*/
/*
 CONTENTS
 コンテンツ定数のブレイクポイント
 この数値から適切なBPを選んで、各プロジェクトで設定する
--------------------------------------------------------*/
/*
 HEADER
 ヘッダー独自のブレイクポイント
・ロゴとグロナビのサイズに合わせて自由に設定
--------------------------------------------------------*/
/*
 FOOTER
 フッター独自のブレイクポイント
・デザインに合わせて自由に設定
--------------------------------------------------------*/
/*--------------------------------------------------------
カラムのサイズ
デザインで使用するグリッド数（基本変更しない）
--------------------------------------------------------*/
/*--------------------------------------------------------
余白
--------------------------------------------------------*/
/* 要素の上の余白サイズmixin：pd-ele-ad　で上下全デバイス設定）
--------------------------------------------------------*/
/*--------------------------------------------------------
角丸
--------------------------------------------------------*/
/*----------------------------
デフォルトのCTA　カラー
----------------------------*/
/*----------------------------
TELのCTA　カラー
----------------------------*/
/*======================================================================================================
HEADER デザイン　レイアウト
--------------------------------------------------------------------------------------------------------
・
・
======================================================================================================*/
/* レイアウト
--------------------------------------------*/
/* 背景色
--------------------------------------------*/
/* グローバルナビ
--------------------------------------------*/
/* ロゴ関連
--------------------------------------------*/
/*=========================================================================
ハンバーガーアイコン
=========================================================================*/
/*=========================================================================
パンくず
=========================================================================*/
/*----------------------------
ナビボタン（ある場合）
----------------------------*/
/* ======================================================================
Main Visulal
====================================================================== */
/*--------------------------------------------------------------------
 色の再設定
--------------------------------------------------------------------
グローバルナビ
https://coco-factory.jp/ugokuweb/move01/5-1-1/
--------------------------------------------------------------------*/
/* ボタンのBGカラー
 ------------------------------------------------*/
/*--------------------------------------------------------------------

フォントサイズ

--------------------------------------------------------------------*/
/* 第一階層
 ------------------------------------------------*/
/*--------------------------------------------------------------------
 色の再設定
--------------------------------------------------------------------
グローバルナビ
https://coco-factory.jp/ugokuweb/move01/5-1-1/
--------------------------------------------------------------------*/
/* ボタンのBGカラー
---------------------------------- */
/* テキストの色
---------------------------------- */
/*----------------------------
ANIMATION
----------------------------*/
/* プロジェクトの設定
---------------------------------------------------------------------- */
/*--------------------------------------------------------
カラムのサイズ
デザインで使用するグリッド数（基本変更しない）
--------------------------------------------------------*/
/*--------------------------------------------------------
余白
--------------------------------------------------------*/
/* 要素の上の余白サイズmixin：pd-ele-ad　で上下全デバイス設定）
--------------------------------------------------------*/
/*--------------------------------------------------------
重ねる場合の各サイズ
--------------------------------------------------------*/
/*--------------------------------------------------------
角丸
--------------------------------------------------------*/
/*--------------------------------------------------------
ボタン
--------------------------------------------------------*/
/*----------------------------
COLOR
----------------------------*/
/* ===============================
背景色
=============================== */
/*----------------------------
BORDER
----------------------------*/
/*----------------------------

----------------------------*/
.font-en, .en-ttl {
  font-family: "Oswald", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.en-ttl {
  font-size: 220px;
  line-height: 1;
  letter-spacing: -0.05em;
}
.en-ttl.--col-beige {
  color: #efeae0;
  opacity: 0.6;
}
.en-ttl.--col-white {
  color: white;
  opacity: 0.1;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .en-ttl {
    font-size: calc(440 / 1162 * 0.8 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) and (max-width: calc(768 * 1px)) {
  .en-ttl {
    font-size: calc(100 / 750 * calc(calc(440 * 2) * 0.8) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .en-ttl {
    font-size: 20vw;
  }
}

/*----------------------------
文字色
----------------------------*/
.col-white {
  color: white;
}

.col-yellow {
  color: #fcff00;
}

.col-orange {
  color: #ffa800;
}

.col-green {
  color: #005100;
}

.col-light-blue {
  color: #73adff;
}

.col-blue {
  color: #1c1f5e;
}

.col-navy {
  color: #1c1f5e;
}

.col-white {
  color: white;
}

/*----------------------------
鉤括弧
----------------------------*/
.txt-kagi-first {
  margin-left: -0.55em;
  margin-right: -0.1em;
}

.txt-kagi-end {
  margin-left: -0.1em;
  margin-right: -0.55em;
}

/*----------------------------
文字あしらい
----------------------------*/
.txt-xxsmall {
  font-size: 0.5em;
}

.txt-xsmall {
  font-size: 0.625em;
}

.txt-small {
  font-size: 0.75em;
}

.txt-large {
  font-size: 1.25em;
}

.txt-xlarge {
  font-size: 1.5em;
}

.fw-bold {
  font-weight: 700;
}

.vertical-writing, .vertical-writing-bg-black {
  writing-mode: vertical-rl;
}

.vertical-writing-bg-black {
  color: white;
  background-color: black;
  padding: 0.75em 0.5em;
}

.txt-grid-line {
  display: inline;
  border: 1px solid black;
  padding: 0 0.5em;
  margin: 0 0.25em;
}
.txt-grid-line.--col-orange {
  color: #ffa800;
  border-color: #ffa800;
}
.txt-grid-line.--col-blue {
  color: #38bded;
  border-color: #38bded;
}

.txt-marker-yellow, .txt-marker-white {
  position: relative;
}
.txt-marker-yellow:after, .txt-marker-white:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 0.25em;
  background-color: #fcff00;
  bottom: -0.1em;
  left: 0;
  z-index: -1;
}

.txt-marker-white:after {
  background-color: white;
}

.txt-en-dash-after-black:after,
.txt-en-dash-after-white:after,
.txt-en-dash-before-black:after,
.txt-en-dash-before-white:after {
  content: "";
  position: absolute;
  width: 2em;
  height: 1px;
  top: 50%;
  transform: translateY(-50%);
}

.txt-en-dash-after-black:after {
  right: -2.25em;
  background-color: #000000;
}

.txt-en-dash-after-white:after {
  right: -2.25em;
  background-color: white;
}

.txt-en-dash-before-black:after {
  left: -2.25em;
  background-color: #000000;
}

.txt-en-dash-before-white:after {
  left: -2.25em;
  background-color: white;
}

.push-left {
  margin-left: -0.25em;
}

.push-right {
  margin-right: -0.25em;
}

.dq {
  margin-left: 0.6em;
  position: relative;
  display: inline-block;
  line-height: 1;
  letter-spacing: -0.1em;
  font-weight: 700;
  font-size: 22px;
}
.dq:before, .dq:after {
  content: "";
  position: absolute;
  width: 0.4em;
  height: 1.18em;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.dq:before {
  left: -0.75em;
  top: 0.2em;
  background-image: url("../images/_svg/icon_fukidasi-line-double-l_black.svg");
}
.dq:after {
  right: -0.75em;
  top: 0.2em;
  background-image: url("../images/_svg/icon_fukidasi-line-double-r_black.svg");
}
@media only screen and (max-width: calc(768 * 1px)) {
  .dq {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}

.c-media-text-content--horizontal .c-media-text-content__body p.ttl-left-border, body .c-media-text-content--horizontal-arrow .c-media-text-content__body p.ttl-left-border,
.ttl-left-border {
  padding-left: 0.5em;
  line-height: 1;
  font-size: 16px;
  font-weight: 700;
  border-left: 3px solid #2b72c9;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-media-text-content--horizontal .c-media-text-content__body p.ttl-left-border, body .c-media-text-content--horizontal-arrow .c-media-text-content__body p.ttl-left-border,
  .ttl-left-border {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
.c-media-text-content--horizontal .c-media-text-content__body p.ttl-left-border:nth-child(n+2),
.ttl-left-border:nth-child(n+2) {
  margin-top: 20px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-media-text-content--horizontal .c-media-text-content__body p.ttl-left-border:nth-child(n+2),
  .ttl-left-border:nth-child(n+2) {
    margin-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-media-text-content--horizontal .c-media-text-content__body p.ttl-left-border:nth-child(n+2),
  .ttl-left-border:nth-child(n+2) {
    margin-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}

body main ul {
  margin-left: 1em;
  margin-top: 15px;
  padding-left: 0;
  list-style: disc;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body main ul {
    margin-top: calc(15 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body main ul {
    margin-top: calc(calc(100 / 750 * 15 * 1vw) / 0.75);
  }
}
body main ul li {
  line-height: 1.5;
}

.header-sec .read {
  text-align: center;
  font-size: 16px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .header-sec .read {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}

/* 共通 基本のタグ等の初期設定
---------------------------------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*----------------------------
共通 設定
----------------------------*/
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  height: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0 auto;
  background-color: white;
  font-family: "Oswald", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 16px;
  color: #000000;
  line-height: 1.75;
  width: 100%;
}
body div, body section, body header, body footer, body main {
  box-sizing: border-box;
  position: relative;
}
body .animsition-overlay-slide {
  position: fixed;
  z-index: 999999999;
  background-color: #000000;
}
body h1, body h2, body h3, body h4, body h5, body h6, body p, body ul, body li, body dd, body dt, body dd {
  margin: 0;
  padding: 0;
}
body header {
  z-index: 9999;
}
body #breadcrumb-sec {
  z-index: 550;
}
body main, body .content-wrap {
  z-index: 300;
}
body .mv-under-content {
  z-index: 350;
}
body .mv {
  z-index: 400;
}
body footer {
  z-index: 600;
}
body ul {
  list-style: none;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body img {
  width: 100%;
  height: auto;
}
body a {
  box-sizing: border-box;
}

.sp_only {
  display: none !important;
}

.tb_sp_only {
  display: none !important;
}

@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .tb_sp_only {
    display: block !important;
  }
  .pc_tb_only {
    display: block !important;
  }
  .pc_only {
    display: none !important;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sp_only {
    display: block !important;
  }
  .pc_tb_only,
  .pc_only {
    display: none !important;
  }
}
/* ライブラリー
---------------------------------------------------------------------- */
.grid > .grid__col-1,
.grid > .grid__col-2,
.grid > .grid__col-3,
.grid > .grid__col-4,
.grid > .grid__col-5,
.grid > .grid__col-6,
.grid > .grid__col-7,
.grid > .grid__col-8,
.grid > .grid__col-9,
.grid > .grid__col-10,
.grid > .grid__col-11,
.grid > .grid__col-12 {
  margin-bottom: 0 !important;
}

/*=========================================================================
ヘッダー
=========================================================================*/
/* SP の形になるブレイクポイント
----------------------------------------------*/
/*=========================================================================
フッター
=========================================================================*/
/* SP の形になるブレイクポイント
----------------------------------------------*/
/*=========================================================================
PAGE
=========================================================================*/
/* TB の形になるブレイクポイント
----------------------------------------------*/
/* SP の形になるブレイクポイント
----------------------------------------------*/
@media only screen and (max-width: calc(768 * 1px)) {
  .grid {
    flex-direction: column;
  }
}
body .swiper-slide .simpleParallax {
  height: 100%;
}

/* 共通 パーツコンポーネント プロジェクトの変数　
---------------------------------------------------------------------- */
/*---------------------------------------------------------------------------------------------------------------------------
タブの装飾
---------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------
タブのアイコン
---------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------
タブの横に来るテキスト
---------------------------------------------------------------------------------------------------------------------------*/
/*=========================================================================
JP その他多言語　共通
【注意】c-langSelect.js　を読み込ませる
=========================================================================*/
/* 共通 パーツコンポーネント
---------------------------------------------------------------------- */
/* ======================================================================
HTML
------------------------------------------------------------------------

====================================================================== */
/* ======================================================================
HTML
------------------------------------------------------------------------

====================================================================== */
body {
  /* ======================================================================
  HTML
  ------------------------------------------------------------------------
  <ul class="c-attentions-wrap">
      <li class="c-attentions">テキストテキストテキストテキスト</li>
  </ul>
  ====================================================================== */
  /* ======================================================================
  HTML
  ------------------------------------------------------------------------

  ====================================================================== */
  /* ======================================================================
  HTML
  ------------------------------------------------------------------------

  ====================================================================== */
  /* ======================================================================
  HTML
  ------------------------------------------------------------------------

  ====================================================================== */
  /* ======================================================================
  HTML
  ------------------------------------------------------------------------
  <section class="p-vision-sec">
      <p class="c-read-line"> ***** </p>
          ：
          ：
  </section>
  ====================================================================== */
}
body ul.c-attentions-wrap {
  margin-top: 1.5em;
}
body .c-attention {
  display: table;
}
body .c-attention:before {
  display: table-cell;
  width: 1em;
  content: "※";
}
body .c-attentions {
  width: 100%;
  font-size: 14px;
  line-height: 1.5;
  color: #444444;
}
body .c-attentions:nth-child(n+2) {
  padding-top: 0.3em;
}
body .c-attentions.no-margin {
  padding-top: 0;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-attentions {
    font-size: calc(14 / 1162 * 0.87 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) and (max-width: calc(768 * 1px)) {
  body .c-attentions {
    font-size: calc(100 / 750 * calc(calc(14 * 2) * 0.87) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-attentions {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body ol.c-attentions-wrap {
  padding-left: 0;
  margin-top: 1.5em;
  list-style: none;
}
body ol.c-attentions-wrap li.c-attentions {
  counter-increment: li;
}
body ol.c-attentions-wrap li.c-attentions::before {
  content: "※" counter(li) ". ";
}
body .c-attentions-point {
  display: inline-block;
  font-size: 14px;
  line-height: 1.5;
  color: #444444;
  margin-left: 0.5em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-attentions-point {
    font-size: calc(14 / 1162 * 0.87 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) and (max-width: calc(768 * 1px)) {
  body .c-attentions-point {
    font-size: calc(100 / 750 * calc(calc(14 * 2) * 0.87) * 1vw);
  }
}
body .c-section-btm-shadow:after {
  display: block;
  position: absolute;
  z-index: 1;
  background: url(../img_section-top-shadow.png);
  background-repeat: repeat-x;
  background-position: center top;
  content: "";
  top: 0;
  left: 0;
  opacity: 0.1;
  width: 100%;
  height: 11px;
}
body .--md-small {
  font-size: 0.7em;
}
body .--md-uppercase {
  text-transform: uppercase;
}
body .c-read-line {
  position: relative;
  text-align: center;
  color: white;
  padding-top: calc(100 / 2 * 1px + 100 * 0.05 * 1px) !important;
  font-size: 12px;
}
body .c-read-line:before {
  position: absolute;
  content: "";
  width: 1px;
  height: calc(100 * 1px);
  top: calc(100 * -1px / 2 + 100 * -0.05px / 2);
  left: 50%;
  background-color: #efefef;
}
body .main-copy {
  font-size: 32px;
  font-weight: 400;
  line-height: 1.5;
  z-index: 20;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .main-copy {
    font-size: calc(32 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .main-copy {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
body .main-copy__read {
  margin-top: 40px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .main-copy__read {
    margin-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .main-copy__read {
    margin-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}

/*======================================================================================================
ボタンのモジュール
--------------------------------------------------------------------------------------------------------
・lyのIDやClassを記載しない
・Classを当てるだけで完結できる記載をする
・基本的にCSSの入れ子構造にせず、複数クラスを当てる記載にする
・レイアウトに関わるものは※※※に記載する
・サイズなどは※※※に記載する
======================================================================================================*/
/*======================================================================================================
FONTAWESOME 設定
--------------------------------------------------------------------------------------------------------
・
======================================================================================================*/
/*======================================================================================================
全てののボタンのベース
--------------------------------------------------------------------------------------------------------
・基本Aタグに記載
======================================================================================================*/
.c-btn, body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a, .c-basic-btn_form-wrap__formtag, .c-basic-btn_form-wrap__formtag--ac1, .c-basic-btn, .c-basic-btn_form-wrap {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  font-size: inherit;
  width: 100%;
  color: #000000;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  background-color: white;
  cursor: pointer;
  transition: all 0.3s ease-out;
  line-height: 1.2;
  padding-top: 0.4em;
  padding-bottom: 0.4em;
}

/*======================================================================================================
形のバリエーション違い
--------------------------------------------------------------------------------------------------------
・基本Aタグに記載
======================================================================================================*/
.c-btn--radius-s {
  border-radius: 10px;
}

.c-btn--radius-full, body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a, .c-basic-btn_form-wrap__formtag, .c-basic-btn_form-wrap__formtag--ac1, .c-basic-btn, .c-basic-btn_form-wrap {
  border-radius: 1000px;
}

/*======================================================================================================
ホバー時にグラデーションに変わる
--------------------------------------------------------------------------------------------------------
・全てののボタンのベースにあるプロパティは記載しない
・基本Aタグに記載
https://coco-factory.jp/ugokuweb/move01/7-1-32/
======================================================================================================*/
/*======================================================================================================
押し込む円
--------------------------------------------------------------------------------------------------------
・全てののボタンのベースにあるプロパティは記載しない
・基本Aタグに記載
https://coco-factory.jp/ugokuweb/move01/7-1-14/
======================================================================================================*/
.pushcircle {
  /*周囲の線の起点とするためrelativeを指定*/
  position: relative;
  /*円の形状*/
  width: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 0 10px;
  text-align: center;
  background: #000000;
  border-radius: 50%;
  color: #fff;
  text-decoration: none;
  outline: none;
  /*天地中央にテキストを配置*/
  display: flex;
  align-items: center;
  justify-content: center;
}
.pushcircle.--white {
  background-color: #ffffff;
  color: #000000;
}
.pushcircle.--white:after {
  border-color: #ffffff;
}
.pushcircle.--white:after:hover {
  border-color: #333;
}

/*内側の線*/
.pushcircle:after {
  content: "";
  /*絶対配置で線の位置を決める*/
  position: absolute;
  top: 50%;
  left: 50%;
  /*線の形状*/
  width: 85%;
  height: 85%;
  border: 1px solid #333;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(1.1);
  /*アニメーションの指定*/
  transition: 0.3s ease;
}

/*hoverをしたら枠線が小さくなる*/
.pushcircle:hover:after {
  transform: translate(-50%, -50%) scale(1);
  border-color: #fff;
}

/*======================================================================================================
ベージックボタン
--------------------------------------------------------------------------------------------------------
固定幅にする場合：
width: 330px;
display: block;
======================================================================================================*/
.c-basic-btn, .c-basic-btn_form-wrap {
  position: relative;
  border: 1px solid #efefef;
  display: inline;
  width: 100%;
  padding-top: 1.2em;
  padding-bottom: 1.2em;
  padding-left: 2em;
  padding-right: 3em;
  font-size: 18px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn, .c-basic-btn_form-wrap {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
.c-basic-btn:after, .c-basic-btn_form-wrap:after {
  font-family: "Font Awesome 6 Free";
  content: "\f061";
  font-size: 14px;
  font-weight: 900;
  color: #007df0;
  position: absolute;
  display: inline-block;
  top: 50%;
  right: 2em;
  transform: translateY(-50%);
  transition: all 0.3s ease-out;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn:after, .c-basic-btn_form-wrap:after {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn:after, .c-basic-btn_form-wrap:after {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
.c-basic-btn:hover, .c-basic-btn_form-wrap:hover {
  /*ボタンの形状*/
  border-color: transparent;
  color: #fff;
  /*背景の色と形状*/
  background: linear-gradient(270deg, #fa6c9f 0%, #ffe140 50%, #ff357f 100%);
  background-size: 200% auto;
  background-position: right center;
  /*ボックスの影*/
  box-shadow: 0 5px 10px rgba(250, 108, 159, 0.4);
}
.c-basic-btn:hover:after, .c-basic-btn_form-wrap:hover:after {
  right: 1em;
}
.c-basic-btn.--small, .--small.c-basic-btn_form-wrap {
  padding-top: 1em;
  padding-bottom: 1em;
  padding-left: 1.5em;
  padding-right: 2.5em;
  font-size: 14px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.--small, .--small.c-basic-btn_form-wrap {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.--small, .--small.c-basic-btn_form-wrap {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
.c-basic-btn.--small:after, .--small.c-basic-btn_form-wrap:after {
  right: 1em;
}
.c-basic-btn.--no-outline, .--no-outline.c-basic-btn_form-wrap {
  border: none;
}
.c-basic-btn.--square, .--square.c-basic-btn_form-wrap {
  border-radius: 0;
}
.c-basic-btn.--kadomaru, .--kadomaru.c-basic-btn_form-wrap {
  border-radius: 10px;
}
.c-basic-btn.--cta-btn-grad, .--cta-btn-grad.c-basic-btn_form-wrap {
  background-image: linear-gradient(45deg, #caa152 0%, #b68932 80%);
  color: white !important;
}
.c-basic-btn.--cta-btn-grad:after, .--cta-btn-grad.c-basic-btn_form-wrap:after {
  color: white;
}
.c-basic-btn.--cta-btn-grad:hover, .--cta-btn-grad.c-basic-btn_form-wrap:hover {
  background-image: linear-gradient(45deg, #0b52ab 0%, #b68932 80%);
  background-size: 200% auto;
  background-position: center;
  box-shadow: 0 5px 10px rgba(0.4745098039, 26.368627451, 114.6705882353, 0.4);
}
.c-basic-btn.--tel-number, .--tel-number.c-basic-btn_form-wrap {
  display: flex !important;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  cursor: default;
  color: white;
  text-decoration: none;
  background-color: rgba(0, 0, 0, 0);
  background-image: none;
  line-height: 1;
  font-size: 16px;
  width: auto !important;
  padding-left: 0;
  padding-right: 0;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.--tel-number, .--tel-number.c-basic-btn_form-wrap {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
.c-basic-btn.--tel-number:before, .--tel-number.c-basic-btn_form-wrap:before {
  content: "";
  display: inline-block;
  position: relative;
  line-height: 1;
  margin-right: 0.25em;
  width: 1.1em;
  height: 1.1em;
  background-image: url(../_aun-common-module/images/_svg/icon_tel-02_white.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.c-basic-btn.--tel-number:after, .--tel-number.c-basic-btn_form-wrap:after {
  display: none;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.--tel-number, .--tel-number.c-basic-btn_form-wrap {
    pointer-events: auto;
    cursor: pointer;
  }
  .c-basic-btn.--tel-number.--cta-btn-grad, .--tel-number.--cta-btn-grad.c-basic-btn_form-wrap {
    background-image: linear-gradient(45deg, #caa152 0%, #b68932 80%);
    color: white;
    font-size: 18px;
  }
  .c-basic-btn.--tel-number.--cta-btn-grad:after, .--tel-number.--cta-btn-grad.c-basic-btn_form-wrap:after {
    color: white;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  .c-basic-btn.--tel-number.--cta-btn-grad, .--tel-number.--cta-btn-grad.c-basic-btn_form-wrap {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
.c-basic-btn.--black, .--black.c-basic-btn_form-wrap {
  border: none;
  background-color: black;
  color: white;
}
.c-basic-btn.--black:after, .--black.c-basic-btn_form-wrap:after {
  color: white;
}
.c-basic-btn.--bodyfontcolor, .--bodyfontcolor.c-basic-btn_form-wrap {
  border: none;
  background-color: #000000;
  color: white;
}
.c-basic-btn.--bodyfontcolor:after, .--bodyfontcolor.c-basic-btn_form-wrap:after {
  color: white;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn, .c-basic-btn_form-wrap {
    display: block;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 80%;
    margin-top: 60px;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn, .c-basic-btn_form-wrap {
    margin-top: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  .c-basic-btn, .c-basic-btn_form-wrap {
    margin-top: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}

/*======================================================================================================
INPUT などAタグに自由にクラスをつけれない場合
--------------------------------------------------------------------------------------------------------
【　注意 １　】　以下のタグには、疑似要素が使えないので必ずwrapでして疑似要素の代わりのタグを用いる
例：
・<input type="submit">
・<button>

【　注意 ２　】 input 系のタグにしか使用してはいけない
・c-basic-btn_form
======================================================================================================*/
/*--------------------------------------------------
 疑似要素の代用　wrap form系のラッパータグ　
 白ゴースト　のボタンの場合
 アクセントカラー（オレンジ）　のボタンの場合
--------------------------------------------------*/
.c-basic-btn_form-wrap {
  padding: 0;
  display: block;
}
.c-basic-btn_form-wrap:hover {
  box-shadow: none;
}
.c-basic-btn_form-wrap:hover:after {
  color: #ffffff;
}
.c-basic-btn_form-wrap.disabled:hover {
  box-shadow: none;
  background: rgb(193, 193, 193);
}
.c-basic-btn_form-wrap.disabled:hover:after {
  right: 2em;
}
.c-basic-btn_form-wrap.--ac1 {
  border: none;
}
.c-basic-btn_form-wrap.--ac1:after {
  color: #ffffff;
}
.c-basic-btn_form-wrap.--per80 {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn_form-wrap.--per80 {
    width: 100%;
  }
}

/*--------------------------------------------------
 input 系 白ゴースト　のボタンの場合
--------------------------------------------------*/
.c-basic-btn_form-wrap__formtag, .c-basic-btn_form-wrap__formtag--ac1 {
  border: none;
  position: relative;
  display: block;
  width: 100%;
  padding-top: 1.2em;
  padding-bottom: 1.2em;
  padding-left: 2em;
  padding-right: 3em;
}
.c-basic-btn_form-wrap__formtag:hover, .c-basic-btn_form-wrap__formtag--ac1:hover {
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0);
  /*ボタンの形状*/
  border-color: transparent;
  color: #fff;
  /*背景の色と形状*/
  background: linear-gradient(270deg, #fa6c9f 0%, #ffe140 50%, #ff357f 100%);
  background-size: 200% auto;
  background-position: right center;
  /*ボックスの影*/
  box-shadow: 0 5px 10px rgba(250, 108, 159, 0.4);
}
.c-basic-btn_form-wrap__formtag:disabled, .c-basic-btn_form-wrap__formtag--ac1:disabled {
  background-color: rgb(193, 193, 193);
}
.c-basic-btn_form-wrap__formtag:disabled:hover, .c-basic-btn_form-wrap__formtag--ac1:disabled:hover {
  cursor: default;
  box-shadow: none;
  background: rgb(193, 193, 193);
}
.c-basic-btn_form-wrap__formtag:disabled:hover:after, .c-basic-btn_form-wrap__formtag--ac1:disabled:hover:after {
  right: 2em;
}

/*--------------------------------------------------
 input 系 アクセントカラー（オレンジ）　のボタンの場合
--------------------------------------------------*/
/*
一回　デバック用に消す
.c-basic-btn_form-wrap--ac1{
    // 白ゴースト　のボタンの「c-basic-btn_form-wrap」を継承
    @extend .c-basic-btn_form-wrap;
    border:none; // 背景色を入れるのでボーダーを消す
    &:after {
        color: $col-bs-white;   // アイコンを白に変える
    }
}
*/
.c-basic-btn_form-wrap__formtag--ac1 {
  background-color: #007df0;
  color: #ffffff;
}

/*
.c-basic-btn_form__inner {
    @extend .c-btn;
    //
    display: inline;
    width: auto;
    padding-top: 1.2em;
    padding-bottom: 1.2em;
    padding-left: 3em;
    padding-right: 3em;
    //
    @extend .c-btn--radius-full;
    background-color: transparent;
    border: none !important;

    &:hover{
        box-shadow: 0 5px 10px rgb(250 108 159 / 40%);
    }
    &:disabled{
        &:hover{
            box-shadow: none;
        }
    }
}
*/
/* アクセントカラー（オレンジ）　／　白ゴースト　共通
--------------------------------------------------*/
/*
一回　デバック用に消す
.c-btn-form-col-ac,.btn_back{
    &:hover{
        background-color: transparent;
    }
}
*/
/* 白ゴースト　のボタンの場合
--------------------------------------------------*/
/*
.c-basic-btn_form--l {
    @extend .c-basic-btn_form;
    width: $btn-form_inner; // SPのブレイクポイントより80px小さい横幅
    //.c-basic-btn_form__inner {
    //    width: $btn-form_inner;
    //}

    @include break-point("tb") {
        width: $btn-form_inner-tb;
        //.c-basic-btn_form__inner {
        //    width: $btn-form_inner-tb;
        //}
    }
    @include break-point("sp") {
        width: $btn-form_inner-sp;
        //.c-basic-btn_form__inner {
        //    width: $btn-form_inner-sp;
        //}
    }
}
*/
/*
一回　デバック用に消す
// 確認ボタン
.c-input-login,
.c-basic-btn_form--l.btn_back_wrap{
    &:after{
        font-family: "Font Awesome 6 Free";
        content: "\f2ea";
        font-size: 14px;
        font-weight: 900;
        color: #ff6200;
        position: absolute;
        display: inline-block;
        top: 50%;
        right: 2em;
        transform: translateY(-50%);
        transition: all 0.3s ease-out;
    }
}
*/
/* アクセントカラー（オレンジ）　のボタンの場合
--------------------------------------------------*/
/*
一回　デバック用に消す
// 送信ボタン
.c-btn-form-col-ac{
    border: none;
    &:after{
        color:$col-bs-white;
    }
    .c-basic-btn_form__inner{
        color:$col-bs-white;
    }
}
.c-btn-form-col-ac{
    @extend .c-basic-btn_form;
    color:$G_COL_BG_WHITE;
    background-color: $G_COL_AC1;
    border: 0;
    &:disabled{
        background-color: rgb(193, 193, 193);
    }
}
*/
/* ======================================================================
HTML
------------------------------------------------------------------------

====================================================================== */
/*======================================================================================================
CTA ボタンのベース
--------------------------------------------------------------------------------------------------------
・全てののボタンのベースにあるプロパティは記載しない
・基本Aタグに記載
======================================================================================================*/
.c-cta__btn-base {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  margin: 0 auto;
  padding: 1em 4em;
  position: relative;
  width: 100%;
  outline: none;
  color: #000000;
  transition: all 0.3s ease-out;
  background-color: #007df0;
  box-sizing: border-box;
}
.c-cta__btn-base:before {
  position: absolute;
  content: "";
  background-image: url(../icon_triangle-black.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 18px;
  height: 15px;
  left: 2em;
}
.c-cta__btn-base:after {
  position: absolute;
  content: "";
  background-image: url(../icon_mouse-cursor.svg);
  background-repeat: no-repeat;
  background-size: contain;
  right: 1em;
  width: 50px;
  height: 50px;
  animation: fluffy1 3s ease infinite;
}

.c-cta-btn__ttl {
  display: block;
  text-align: center;
  font-family: "Oswald", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.25;
  margin: 0;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-cta-btn__ttl {
    font-size: calc(26 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-cta-btn__ttl {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}

.c-cta-btn__date-wrap {
  display: flex;
}
.c-cta-btn__date-wrap .c-cta-btn__date {
  font-size: 14px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-cta-btn__date-wrap .c-cta-btn__date {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-cta-btn__date-wrap .c-cta-btn__date {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
.c-cta-btn__date-wrap .c-cta-btn__date .cta-btn__date__num {
  font-size: 18px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-cta-btn__date-wrap .c-cta-btn__date .cta-btn__date__num {
    font-size: calc(18 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-cta-btn__date-wrap .c-cta-btn__date .cta-btn__date__num {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}

.c-cta__btn-base--elmt-wht {
  color: white;
}
.c-cta__btn-base--elmt-wht:before {
  background-image: url(../icon_triangle-white.svg);
}

/*======================================================================================================
アニメーション　設定
--------------------------------------------------------------------------------------------------------
外枠が伸びて背景色が変わる
======================================================================================================*/
.outerborder {
  width: 100%;
}

.outerborder:hover {
  /*アニメーションの指定*/
}
.outerborder:hover .c-cta__btn-base {
  background: #007df0;
  color: #fff;
  transition: all 0.3s ease-out;
  transition-delay: 0.6s; /*0.7秒遅れてアニメーション*/
}

/*横線の設定*/
.outerborder::before,
.outerborder::after {
  content: "";
  /*絶対配置で線の位置を決める*/
  position: absolute;
  /*線の形状*/
  width: 0;
  height: 2px;
  background: #007df0;
  /*アニメーションの指定*/
  transition: all 0.3s linear;
  z-index: 100;
}

/*縦線の設定*/
.outerborder div::before,
.outerborder div::after {
  content: "";
  /*絶対配置で線の位置を決める*/
  position: absolute;
  /*線の形状*/
  width: 2px;
  height: 0;
  background: #007df0;
  /*アニメーションの指定*/
  transition: all 0.3s linear;
  z-index: 100;
}

/*hoverした際、線が縦横100%伸びる*/
.outerborder:hover::before,
.outerborder:hover::after {
  width: 100%;
}

.outerborder:hover div::before,
.outerborder:hover div::after {
  height: 100%;
}

/*== 左上と右下から枠線が伸びて塗に */
/*横線が0.2秒送れて出現*/
.outerborder::before {
  right: 0;
  top: 0;
  transition-delay: 0.2s;
}

.outerborder::after {
  left: 0;
  bottom: 0;
  transition-delay: 0.2s;
}

/*縦線が出現*/
.outerborder div::before {
  left: 0;
  top: 0;
}

.outerborder div::after {
  right: 0;
  bottom: 0;
}

@keyframes fluffy1 {
  0% {
    transform: translateY(0) rotate(-30deg);
  }
  10% {
    transform: translateY(0) rotate(-30deg);
  }
  20% {
    transform: translateX(10px) translateY(10px) rotate(-30deg);
  }
  25% {
    transform: translateY(0) rotate(-30deg);
  }
  30% {
    transform: translateX(10px) translateY(10px) rotate(-30deg);
  }
  50% {
    transform: translateY(0) rotate(-30deg);
  }
  100% {
    transform: translateY(0) rotate(-30deg);
  }
}
@keyframes bright {
  100% {
    left: 125%;
  }
}
/*======================================================================================================

--------------------------------------------------------------------------------------------------------
・Aタグの中に入れる場合
======================================================================================================*/
.c-btn-circle-arow {
  position: relative;
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
}
.c-btn-circle-arow i {
  text-decoration: none;
  font-size: 12px;
  color: #000000;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-btn-circle-arow i {
    font-size: calc(12 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-btn-circle-arow i {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
.c-btn-circle-arow:after {
  content: "";
  /*絶対配置で線の位置を決める*/
  position: absolute;
  top: 50%;
  left: 50%;
  /*線の形状*/
  width: 85%;
  height: 85%;
  border: 1px solid #000000;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(1.1);
  /*アニメーションの指定*/
  transition: 0.3s ease;
}
.c-btn-circle-arow.--white i {
  color: #ffffff;
}
.c-btn-circle-arow.--white:after {
  border-color: #ffffff;
}

/*======================================================================================================
。。。
。。。
。。。
--------------------------------------------------------------------------------------------------------
・Aタグの中に入れる場合
======================================================================================================*/
/*======================================================================================================
 設定
 --------------------------------------------------------------------------------------------------------

======================================================================================================*/
.c-frame-boder {
  border: 3px solid #ffffff;
}

.c-cta__copy {
  margin-bottom: 1.5rem;
}

/*=========================================================================
共通
=========================================================================*/
/*=========================================================================
ヘッダーの設定
=========================================================================*/
.l-header-cta-right-end-btn-wrap {
  padding-right: calc(17.5vw + (0) * 2);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn {
  height: 100%;
  box-sizing: border-box;
  width: calc(17.5vw);
  height: calc(17.5vw);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn a {
  padding: 1em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a {
  width: 100%;
  font-size: 22px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  color: white;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  line-height: 1;
  transition: all 0.3s ease-out;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a {
    font-size: calc(22 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a:before, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a:before {
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a .sub, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a .sub {
  font-size: 0.75em;
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a .num, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a .num {
  font-size: 1.25em;
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a span.label, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a span.label {
  display: none;
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a {
  background-image: linear-gradient(270deg, #3bade3 0%, #576fe6 25%, #9844b7 51%, #ff357f 100%);
  color: #ffffff;
  box-shadow: 33px 33px 60px 0px rgba(0, 57, 138, 0.3);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a:before {
  width: 1.3em;
  height: 1.3em;
  background-image: url(../_aun-common-module/images/_svg/icon_mail_white.svg);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a:hover {
  box-shadow: 10px 10px 20px 0px rgba(0, 57, 138, 0.3);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a {
  background-image: linear-gradient(270deg, #009441 0%, #35ff3f 100%);
  color: #ffffff;
  box-shadow: 33px 33px 60px 0px rgba(0, 117, 0, 0.3);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a:before {
  width: 1.3em;
  height: 1.3em;
  background-image: url(../_aun-common-module/images/_svg/icon_sns_line_squere_color.svg);
}
.l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a:hover {
  box-shadow: 10px 10px 20px 0px rgba(0, 117, 0, 0.3);
}

/*=========================================================================
PC ＋　TB
=========================================================================*/
@media only screen and (min-width: calc(990px + 1px)) {
  .l-header-cta-right-end-btn-wrap {
    padding-right: 0;
  }
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn {
    width: auto;
    height: auto;
    top: 0;
  }
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line {
    height: 120px;
    width: 120px;
  }
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a {
    top: 0;
    flex-direction: column;
  }
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a:before, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a:before {
    top: initial;
    left: initial;
    transform: initial;
    display: block;
    position: relative;
  }
  .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--mail a span.label, .l-header-cta-right-end-btn-wrap .cta-right-end-btn.--line a span.label {
    display: initial;
  }
}
/*=========================================================================
ハンバーガーアイコン
=========================================================================*/
.nav-toggle {
  display: none;
}

/* ハンバーガーアイコン
----------------------------------------------*/
.btn-burger {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: 17.5vw;
  height: 17.5vw;
  background-color: initial;
  border: 0 solid #000000;
}

.btn-burger .icon, .btn-burger .icon:before, .btn-burger .icon:after {
  position: relative;
  height: 1px; /*線の太さ*/
  width: 8vw; /*線の長さ*/
  background-color: black;
  display: block;
  content: "";
  cursor: pointer;
  margin: auto;
}
.btn-burger .icon:after {
  top: -1.5vw;
}
.btn-burger .icon:before {
  top: 1.5vw;
}

.js-header-layered-style .btn-burger,
.js-toggle-open .btn-burger {
  background-color: rgba(0, 0, 0, 0);
  border: 0 solid white;
}
.js-header-layered-style .icon, .js-header-layered-style .icon:before, .js-header-layered-style .icon:after,
.js-toggle-open .icon,
.js-toggle-open .icon:before,
.js-toggle-open .icon:after {
  background-color: white;
}

.l-cta-right-end_wrap {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  height: 100%;
  /*=========================================================================
  スマホのサイズ以上だけの設定
  =========================================================================*/
}
.l-cta-right-end_wrap .l-header-cta-right-end-btn-wrap {
  height: 100%;
  display: flex;
}
@media only screen and (min-width: calc(990px + 1px)) {
  .l-cta-right-end_wrap {
    width: initial;
  }
}

.linkbar, .linkbar--ac1 {
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
}
.linkbar:before, .linkbar--ac1:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #000000;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
.linkbar:hover:after, .linkbar--ac1:hover:after {
  right: 0;
}
.linkbar:hover:before, .linkbar--ac1:hover:before {
  transform: scaleX(1);
}

.linkbar--ac1 {
  background-color: #007df0;
}

/*
 テキストテキスト ○ ＋ →　＋ アンダーライン
 必ず「aタグに設定」
  <p><a href="#" class="underline-circle-arrow"><span>UIについて</span></a></p>
*/
.underline-circle-arrow {
  position: relative;
  display: inline-flex;
  align-items: center;
  height: 2em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  text-decoration: none;
}
.underline-circle-arrow .icon-circle-arrow {
  position: relative;
  display: inline-block;
  transition: all 0.3s ease 0s;
  width: calc(1em * 1);
  height: calc(1em * 1);
}
.underline-circle-arrow .icon-circle-arrow::before, .underline-circle-arrow .icon-circle-arrow::after {
  content: "";
  position: absolute;
  transition: width ease 0.4s;
}
.underline-circle-arrow .icon-circle-arrow::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
}
.underline-circle-arrow .icon-circle-arrow::after {
  transition: all ease 0.2s;
  top: 50%;
  left: 50%;
  transform: translate(-25%, -50%);
  box-sizing: border-box;
  width: calc(0.2em * 1);
  height: calc(0.2em * 1);
  border: calc(0.2em * 1) solid transparent;
  border-left: calc(0.4em * 1) solid #000;
}
.underline-circle-arrow .icon-circle-arrow.--white::before {
  background: white;
}
.underline-circle-arrow .icon-circle-arrow.--white::after {
  border-left-color: black;
}
.underline-circle-arrow .underline-circle-arrow-text {
  text-decoration: none;
  text-align: left;
  text-transform: uppercase;
  padding-left: 0.5em;
  padding-right: 0.5em;
  font-size: 16;
  line-height: 1;
  color: #000000;
}
.underline-circle-arrow::before, .underline-circle-arrow::after {
  content: "";
  position: absolute;
  background-color: #000000;
  height: 1px;
}
.underline-circle-arrow::before {
  width: 0%;
  left: 0;
  bottom: 0;
  transition: width ease 0.4s;
}
.underline-circle-arrow::after {
  width: 100%;
  left: 0;
  bottom: 0;
  transition: all ease 0.6s;
}
.underline-circle-arrow:hover {
  color: initial;
  text-decoration: none;
}
.underline-circle-arrow:hover::before {
  width: 100%;
}
.underline-circle-arrow:hover::after {
  left: 100%;
  width: 0%;
  transition: all ease 0.2s;
}
.underline-circle-arrow:hover .icon-circle-arrow:after {
  transform: translate(-25%, -50%) scale(1.2);
}
@media only screen and (max-width: calc(768 * 1px)) {
  .underline-circle-arrow span:before {
    width: 0.8em;
    height: 0.8em;
  }
}

.underline-circle-arrow-wrap {
  margin-top: 40px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .underline-circle-arrow-wrap {
    margin-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .underline-circle-arrow-wrap {
    margin-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
.underline-circle-arrow-wrap.--white .underline-circle-arrow span {
  color: white;
}
.underline-circle-arrow-wrap.--white .underline-circle-arrow span::before {
  background-color: white;
}
.underline-circle-arrow-wrap.--white .underline-circle-arrow span:after {
  border-left-color: #000000;
}
.underline-circle-arrow-wrap.--white .underline-circle-arrow::before, .underline-circle-arrow-wrap.--white .underline-circle-arrow::after {
  background-color: white;
}

/*------------------------------------------------------------------------------------
Heading BASE
------------------------------------------------------------------------------------*/
/*--------------------------------------------------------
見出し H：ベースのラッパー
--------------------------------------------------------*/
.c-heading-base--c, .c-heading-base--r, .c-heading-base--l {
  position: relative;
  padding-top: 0;
  margin: 0;
  display: block;
  color: #000000;
  letter-spacing: 0.05em;
  text-align: center;
}

.c-heading-base--l {
  text-align: left;
}

.c-heading-base--r {
  text-align: right;
}

/* Hタグ --> SPANタグに付与
--------------------------------------------------------*/
.c-heading-base__main {
  position: relative;
  display: block;
}

.c-heading-base__sub {
  display: block;
}

/*
Hタグ --> SPANタグに付与
MAIN
・$f-fmy:initial     ：　フォントファミリー
・$f-lv:"lv2"        ：　フォントサイズ。レベルで指定（太さ、LH、LSは、LVは、_s-font.scssで指定した固定の数値が設定）
・$f-col:$col-bs     ：　カラー
・$top-space-vw:0    ：　トップのスペース（pxの指定ではない数字のみ）
 */
/*------------------------------------------------------------------------------------
HEADING 上にアンダーライン
------------------------------------------------------------------------------------*/
body {
  /*--------------------------------------------------------
  見出し H2：ベースのラッパー
  --------------------------------------------------------*/
}
body .top-line--c:after, body .top-line--r:after, body .top-line--l:after {
  display: block;
  content: "";
  width: 40px;
  height: 3px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  background: #007df0;
  overflow: hidden;
}
body .top-line--l:after {
  left: 0;
  transform: none;
}
body .top-line--r:after {
  left: inherit;
  right: 0;
  transform: none;
}

/* ======================================================================
HTML
------------------------------------------------------------------------
<h2 class="c-heading--c">
    <span class="c-heading__main top-line--c">Recent Works</span>
    <span class="c-heading__sub">最新の制作実績</span>
</h2>
====================================================================== */
/*------------------------------------------------------------------------------------
HEADING サブのテキストの左横に「----」が入る

例：
// 見出し
h3.c-heading--l {
    @include c-heading--l;
    .c-heading__main {
        @include c-heading__main-mixin(
            $G_FONT_FAMILY_JP,
            "lv4",
            $G_COL_BG_WHITE,
            $G_ELE_SPACE_VERTICAL_20
        );
    }
    .c-heading__sub {
        @include c-heading__sub(
                        $G_FONT_FAMILY_EN,
                        "base",
                        $G_COL_BG_WHITE,
                        0
        );
    }
    @include left-long-line($G_COL_BG_WHITE);     ←←←←← ここで設定
}
------------------------------------------------------------------------------------*/
body .news__item {
  position: relative;
  border-top: 1px solid #b2d4ec;
  padding: 1.5em 2em 1.5em 0;
}
body .news__item:last-child {
  border-bottom: 1px solid #b2d4ec;
}
body .news__item:after {
  font-family: "Font Awesome 6 Free";
  content: "\f061";
  font-size: 14px;
  font-weight: 900;
  color: #007df0;
  position: absolute;
  display: inline-block;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  transition: all 0.3s ease-out;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .news__item:after {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .news__item:after {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body .news__item:hover {
  color: #007df0;
}
body .news__item:hover:after {
  right: 0;
}
body .news__item > a {
  text-decoration: none;
  position: relative;
  transition: all 0.3s ease-out;
  color: #000000;
  font-size: 16px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .news__item > a {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .news__item > a {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body .news__item__ttl {
  padding-top: 1em;
}

/* ======================================================================
HTML
------------------------------------------------------------------------
<ul class="flex-container__item news">
    <li class="news__item">
        <a href="#">
            <div class="news__item__data">
                <time>2022.00.00</time>
                <ul class="tags">
                    <li class="tag-01">プレスリリース</li>
                </ul>
            </div>
            <p class="news__item__ttl">最新情報のテキストが入ります。最新情報のテキストが入ります。最新情報のテキストが入ります。</p>
        </a>
    </li>
    <li class="news__item">
        <a href="#">
            <div class="news__item__data">
                <time>2022.00.00</time>
                <ul class="tags">
                    <li class="tag-01">お知らせ</li>
                </ul>
            </div>
            <p class="news__item__ttl">最新情報のテキストが入ります。最新情報のテキストが入ります。最新情報のテキストが入ります。</p>
        </a>
    </li>
    <li class="news__item">
        <a href="#">
            <div class="news__item__data">
                <time>2022.00.00</time>
                <ul class="tags">
                    <li class="tag-01">お知らせ</li>
                </ul>
            </div>
            <p class="news__item__ttl">最新情報のテキストが入ります。最新情報のテキストが入ります。最新情報のテキストが入ります。</p>
        </a>
    </li>
</ul>
====================================================================== */
/* ======================================================================
HTML
------------------------------------------------------------------------
<section class="p-about-sec">
    <div class="l-inner p-about__inner">
        <div class="c-layerd-base">
            <div class="c-layerd-base__img-container" >
                <span class="bgextend bgLRextendTrigger">
                    <span class="bgappearTrigger">
                        <div class="c-layerd-base__img" style="background-image:url('data/images/home/img-layerd-dummy.jpg')"></div>
                    </span>
                </span>
            </div>
            <h1 class="flex-container__item c-heading--left about_heading">
                <span class="c-heading__main--top-line --md-uppercase js_typing">About</span>
                <span class="c-heading__sub">私たちについて</span>
            </h1>
            <div class="c-layerd-base__txt">
                <h3 class="about-ttl">コピーが入ります。コピーが入ります。<br>コピーが入ります。コピーが入ります。コピーが入ります。</h3>
                <p class="about-txt">テキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキスト</p>
                <a href="#" class="c-basic-btn">詳しくはこちら</a>
            </div>
        </div>
    </div>
</section>
====================================================================== */
/*==================================================
背景色が伸びて出現
===================================*/
/*全共通*/
body {
  /*中の要素*/
  /*左から右*/
  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
}
body .bgextend {
  animation-name: bgextendAnimeBase;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  position: relative;
  overflow: hidden; /*　はみ出た色要素を隠す　*/
  opacity: 0;
  display: inline-block;
  height: 100%;
}
@keyframes bgextendAnimeBase {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
body .bgappear {
  animation-name: bgextendAnimeSecond;
  animation-duration: 1s;
  animation-delay: 0.6s;
  animation-fill-mode: forwards;
  opacity: 0;
}
body .bgappear > a {
  display: block;
}
@keyframes bgextendAnimeSecond {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body .bgLRextend::before {
  animation-name: bgLRextendAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #000000;
}
@keyframes bgLRextendAnime {
  0% {
    transform-origin: left;
    transform: scaleX(0);
  }
  50% {
    transform-origin: left;
    transform: scaleX(1);
  }
  50.001% {
    transform-origin: right;
  }
  100% {
    transform-origin: right;
    transform: scaleX(0);
  }
}
body .bgappearTrigger,
body .bgLRextendTrigger {
  opacity: 0;
}

/* ======================================================================
HTML
------------------------------------------------------------------------
<section class="l-page p-mv p-top-mv">
    <div class="scrolldown1"><span>Scroll</span></div>
    <div class="swiper-container">
        :
        :
    </div>
</section>
====================================================================== */
/*====== 9-1-1 縦線が動いてスクロールを促す =======*/
/*
<div class="c-scrolldown1">
    <p class="txt">SCLOLL DOWN</p>
    <span></span>
</div>
 */
body {
  /*スクロールダウン全体の場所*/
  /*Scrollテキストの描写*/
  /* 線の描写 */
  /*高さ・位置・透過が変化して線が上から下に動く*/
}
body .c-scrolldown1 p.txt {
  color: white;
  font-size: 10px;
  text-align: center;
  margin-top: calc(10px * -1);
}
body .c-scrolldown1:before {
  content: "SCROLL";
  display: block;
  width: auto;
  position: absolute;
  top: calc(10px * -1);
  left: 50%;
  transform: translateX(-50%);
  color: white;
  font-size: 10px;
  font-weight: bold;
  text-align: center;
}
body .c-scrolldown1 {
  /*描画位置※位置は適宜調整してください*/
  position: absolute !important;
  left: 50%;
  bottom: 0;
  /*全体の高さ*/
  height: calc(80 * 1px);
  z-index: 410;
}
body .c-scrolldown1 span {
  /*描画位置*/
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -25px;
  /*テキストの形状*/
  color: #eee;
  font-size: calc(12 / 1162 * 0.87 * 100 * 1vw);
  letter-spacing: 0.05em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-scrolldown1 span {
    font-size: calc(100 / 750 * calc(calc(12 * 2) * 0.87) * 1vw);
  }
}
body .c-scrolldown1::after {
  content: "";
  /*描画位置*/
  position: absolute;
  top: 0;
  /*線の形状*/
  width: 1px;
  height: 30px;
  background: #eee;
  /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity: 0;
}
@keyframes pathmove {
  0% {
    height: 0;
    top: 0;
    opacity: 0;
  }
  30% {
    height: calc(80 * 0.6 * 1px);
    opacity: 1;
  }
  100% {
    height: 0;
    top: calc(80 * 1px);
    opacity: 0;
  }
}

body {
  /* --------------------------------------------------------
  BASE
  --------------------------------------------------------*/
  /* --------------------------------------------------------
  画像とテキストのレイヤード
  ・真四角の形
  --------------------------------------------------------*/
  /* --------------------------------------------------------
  横 並び
  ・iMG
  ・TXT
  --------------------------------------------------------*/
  /* --------------------------------------------------------
  → 横 並び
  ・iMG
  ・TXT
  ・arrow
  --------------------------------------------------------*/
  /* --------------------------------------------------------
  ↓ 縦 並び
  ・iMG
  ・TXT
  ・arrow
  --------------------------------------------------------*/
}
body .c-media-text-content, body .c-media-text-content--vertical, body .c-media-text-content--horizontal, body .c-media-text-content--horizontal-arrow, body .c-media-text-content--layered, body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
  position: relative;
  overflow: hidden;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content, body .c-media-text-content--vertical, body .c-media-text-content--horizontal, body .c-media-text-content--horizontal-arrow, body .c-media-text-content--layered, body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
    padding-top: calc(calc(40 / 28 * 1rem) / 0.75);
    padding-bottom: calc(calc(40 / 28 * 1rem) / 0.75);
  }
}
body .c-media-text-content .c-media-text-content__link, body .c-media-text-content--vertical .c-media-text-content__link, body .c-media-text-content--horizontal .c-media-text-content__link, body .c-media-text-content--horizontal-arrow .c-media-text-content__link, body .c-media-text-content--layered .c-media-text-content__link, body .c-media-text-content-mg .c-media-text-content__link, body .c-media-text-content-mg--vertical .c-media-text-content__link {
  text-decoration: none;
  color: #000000;
  transition: all 0.3s ease-out;
}
body .c-media-text-content .c-media-text-content__img, body .c-media-text-content--vertical .c-media-text-content__img, body .c-media-text-content--horizontal .c-media-text-content__img, body .c-media-text-content--horizontal-arrow .c-media-text-content__img, body .c-media-text-content--layered .c-media-text-content__img, body .c-media-text-content-mg .c-media-text-content__img, body .c-media-text-content-mg--vertical .c-media-text-content__img {
  transition: all 0.3s ease-out;
  width: 100%;
  line-height: 0;
}
body .c-media-text-content .c-media-text-content__body, body .c-media-text-content--vertical .c-media-text-content__body, body .c-media-text-content--horizontal .c-media-text-content__body, body .c-media-text-content--horizontal-arrow .c-media-text-content__body, body .c-media-text-content--layered .c-media-text-content__body, body .c-media-text-content-mg .c-media-text-content__body, body .c-media-text-content-mg--vertical .c-media-text-content__body {
  flex: 1;
}
body .c-media-text-content .c-media-text-content__title, body .c-media-text-content--vertical .c-media-text-content__title, body .c-media-text-content--horizontal .c-media-text-content__title, body .c-media-text-content--horizontal-arrow .c-media-text-content__title, body .c-media-text-content--layered .c-media-text-content__title, body .c-media-text-content-mg .c-media-text-content__title, body .c-media-text-content-mg--vertical .c-media-text-content__title {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  padding-top: 10px;
  padding-bottom: 10px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content .c-media-text-content__title, body .c-media-text-content--vertical .c-media-text-content__title, body .c-media-text-content--horizontal .c-media-text-content__title, body .c-media-text-content--horizontal-arrow .c-media-text-content__title, body .c-media-text-content--layered .c-media-text-content__title, body .c-media-text-content-mg .c-media-text-content__title, body .c-media-text-content-mg--vertical .c-media-text-content__title {
    font-size: calc(18 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content .c-media-text-content__title, body .c-media-text-content--vertical .c-media-text-content__title, body .c-media-text-content--horizontal .c-media-text-content__title, body .c-media-text-content--horizontal-arrow .c-media-text-content__title, body .c-media-text-content--layered .c-media-text-content__title, body .c-media-text-content-mg .c-media-text-content__title, body .c-media-text-content-mg--vertical .c-media-text-content__title {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content .c-media-text-content__title, body .c-media-text-content--vertical .c-media-text-content__title, body .c-media-text-content--horizontal .c-media-text-content__title, body .c-media-text-content--horizontal-arrow .c-media-text-content__title, body .c-media-text-content--layered .c-media-text-content__title, body .c-media-text-content-mg .c-media-text-content__title, body .c-media-text-content-mg--vertical .c-media-text-content__title {
    padding-top: calc(calc(10 / 28 * 1rem) / 0.75);
    padding-bottom: calc(calc(10 / 28 * 1rem) / 0.75);
  }
}
body .c-media-text-content .c-media-text-content__body p, body .c-media-text-content--vertical .c-media-text-content__body p, body .c-media-text-content--horizontal .c-media-text-content__body p, body .c-media-text-content--horizontal-arrow .c-media-text-content__body p, body .c-media-text-content--layered .c-media-text-content__body p, body .c-media-text-content-mg .c-media-text-content__body p, body .c-media-text-content-mg--vertical .c-media-text-content__body p {
  font-size: 14px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content .c-media-text-content__body p, body .c-media-text-content--vertical .c-media-text-content__body p, body .c-media-text-content--horizontal .c-media-text-content__body p, body .c-media-text-content--horizontal-arrow .c-media-text-content__body p, body .c-media-text-content--layered .c-media-text-content__body p, body .c-media-text-content-mg .c-media-text-content__body p, body .c-media-text-content-mg--vertical .c-media-text-content__body p {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content .c-media-text-content__body p, body .c-media-text-content--vertical .c-media-text-content__body p, body .c-media-text-content--horizontal .c-media-text-content__body p, body .c-media-text-content--horizontal-arrow .c-media-text-content__body p, body .c-media-text-content--layered .c-media-text-content__body p, body .c-media-text-content-mg .c-media-text-content__body p, body .c-media-text-content-mg--vertical .c-media-text-content__body p {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 40px;
  margin-bottom: 40px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
    margin-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
    margin-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
    margin-bottom: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content-mg, body .c-media-text-content-mg--vertical {
    margin-bottom: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
body .c-media-text-content--layered {
  padding-top: 0;
  padding-bottom: 0;
}
body .c-media-text-content--layered:before {
  content: "";
  display: block;
  width: 100%;
  padding: 100% 0 0;
}
body .c-media-text-content--layered .c-media-text-content--layered-wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #000000;
}
body .c-media-text-content--layered .c-media-text-content--layered-wrap .swiper-wrapper:after {
  pointer-events: none;
  width: 100%;
  height: 100%;
  content: "";
  position: absolute;
  z-index: 9;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0);
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.8) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.8)));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.8) 100%);
  background: -o-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.8) 100%);
  background: -ms-linear-gradient(top, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.8) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0.8) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="$start-color", endColorstr="$end-color", GradientType=0);
}
body .c-media-text-content--layered .c-media-text-content__img {
  height: 100%;
  position: absolute;
}
body .c-media-text-content--layered .c-media-text-content__img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
body .c-media-text-content--layered .c-media-text-content__body {
  position: absolute;
  z-index: 10;
  bottom: 0;
  padding-bottom: 40px;
  padding-left: 5.3333333333%;
  padding-right: 5.3333333333%;
  color: #ffffff;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content--layered .c-media-text-content__body {
    padding-bottom: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--layered .c-media-text-content__body {
    padding-bottom: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
body .c-media-text-content--layered a.c-media-text-content__link {
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
  color: #ffffff;
}
body .c-media-text-content--layered a.c-media-text-content__link:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #ffffff;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-media-text-content--layered a.c-media-text-content__link:hover:after {
  right: 0;
}
body .c-media-text-content--layered a.c-media-text-content__link:hover:before {
  transform: scaleX(1);
}
body .c-media-text-content--horizontal, body .c-media-text-content--horizontal-arrow {
  border-top: solid 1px #b2d4ec;
  display: flex;
}
body .c-media-text-content--horizontal:last-child, body .c-media-text-content--horizontal-arrow:last-child {
  border-bottom: solid 1px #b2d4ec;
}
body .c-media-text-content--horizontal .c-media-text-content__img, body .c-media-text-content--horizontal-arrow .c-media-text-content__img {
  margin-right: 2em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal, body .c-media-text-content--horizontal-arrow {
    flex-direction: column;
  }
}
body .c-media-text-content--horizontal-arrow {
  padding-right: 3rem;
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
  padding-top: 30px;
  padding-bottom: 30px;
}
body .c-media-text-content--horizontal-arrow:after {
  font-family: "Font Awesome 6 Free";
  content: "\f061";
  font-size: 14px;
  font-weight: 900;
  color: #007df0;
  position: absolute;
  display: inline-block;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  transition: all 0.3s ease-out;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content--horizontal-arrow:after {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal-arrow:after {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body .c-media-text-content--horizontal-arrow:hover:after {
  right: 0;
}
body .c-media-text-content--horizontal-arrow:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #000000;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-media-text-content--horizontal-arrow:hover:after {
  right: 0;
}
body .c-media-text-content--horizontal-arrow:hover:before {
  transform: scaleX(1);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content--horizontal-arrow {
    padding-top: calc(30 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal-arrow {
    padding-top: calc(calc(100 / 750 * 30 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content--horizontal-arrow {
    padding-bottom: calc(30 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal-arrow {
    padding-bottom: calc(calc(100 / 750 * 30 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal-arrow {
    padding-right: 0;
  }
  body .c-media-text-content--horizontal-arrow:after {
    content: none;
  }
  body .c-media-text-content--horizontal-arrow .c-media-text-content__title {
    padding-left: 2em;
    position: relative;
  }
  body .c-media-text-content--horizontal-arrow .c-media-text-content__title:after {
    font-family: "Font Awesome 6 Free";
    content: "\f061";
    font-size: 14px;
    font-weight: 900;
    color: #007df0;
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transition: all 0.3s ease-out;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-media-text-content--horizontal-arrow .c-media-text-content__title:after {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal-arrow .c-media-text-content__title:after {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-media-text-content--horizontal-arrow:hover .c-media-text-content__title:after {
    left: 1em;
  }
}
body .c-media-text-content--vertical {
  display: flex;
  flex-direction: column;
}
body .c-media-text-content--vertical .c-media-text-content__img {
  margin-bottom: 1em;
}
body .c-media-text-content-mg--vertical {
  display: flex;
  flex-direction: column;
}
body .c-media-text-content-mg--vertical .c-media-text-content__img {
  margin-bottom: 1em;
}

body {
  /*-------------------------------------------------------------
  基本パーツ
  -------------------------------------------------------------

  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  カラー　グレー
  -------------------------------------------------------------
  ・ボタン背景 --> 透明　　
  ・ボタン枠線 --> グレー　　
  ・テキスト --> グレー
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  カラー　黒
  -------------------------------------------------------------
  ・ボタン背景 --> 透明　　
  ・ボタン枠線 --> 黒
  ・テキスト --> 黒
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  カラー　BODY Font Color
  -------------------------------------------------------------
  ・ボタン背景 --> 透明　　
  ・ボタン枠線 --> BODY Font Color
  ・テキスト --> BODY Font Color
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  カラー　白
  -------------------------------------------------------------
  ・ボタン背景 --> 透明　　
  ・ボタン枠線 --> 白　
  ・テキスト --> 白
  -------------------------------------------------------------*/
}
body .c-horizontal_content-meta, body .c-horizontal_content-meta--base, body .c-horizontal_content-meta--white, body .c-horizontal_content-meta--bodyfontcol, body .c-horizontal_content-meta--black {
  width: 100%;
  display: flex;
  align-items: center;
  font-size: 12px;
  color: #444444;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-horizontal_content-meta, body .c-horizontal_content-meta--base, body .c-horizontal_content-meta--white, body .c-horizontal_content-meta--bodyfontcol, body .c-horizontal_content-meta--black {
    font-size: calc(12 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal_content-meta, body .c-horizontal_content-meta--base, body .c-horizontal_content-meta--white, body .c-horizontal_content-meta--bodyfontcol, body .c-horizontal_content-meta--black {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
body .c-horizontal_content-meta.--col-bs, body .--col-bs.c-horizontal_content-meta--base, body .--col-bs.c-horizontal_content-meta--white, body .--col-bs.c-horizontal_content-meta--bodyfontcol, body .--col-bs.c-horizontal_content-meta--black {
  color: #000000;
}
body .c-horizontal_content-meta.--fs-bs, body .--fs-bs.c-horizontal_content-meta--base, body .--fs-bs.c-horizontal_content-meta--white, body .--fs-bs.c-horizontal_content-meta--bodyfontcol, body .--fs-bs.c-horizontal_content-meta--black {
  font-size: 16px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-horizontal_content-meta.--fs-bs, body .--fs-bs.c-horizontal_content-meta--base, body .--fs-bs.c-horizontal_content-meta--white, body .--fs-bs.c-horizontal_content-meta--bodyfontcol, body .--fs-bs.c-horizontal_content-meta--black {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal_content-meta.--fs-bs, body .--fs-bs.c-horizontal_content-meta--base, body .--fs-bs.c-horizontal_content-meta--white, body .--fs-bs.c-horizontal_content-meta--bodyfontcol, body .--fs-bs.c-horizontal_content-meta--black {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body .c-horizontal_content-meta__txt {
  margin-right: 1em;
}
body .c-horizontal_content-meta__txt:last-child {
  margin-right: 0;
}
body .c-horizontal_content-meta__txt a {
  color: #444444;
  padding-top: 0.3em;
  padding-bottom: 0.3em;
}
body .c-horizontal_content-meta__round-btn {
  /*
  &.child{
      li{
          padding-left: 0!important;
          height: 100%;
      }
  }*/
}
body .c-horizontal_content-meta__round-btn li {
  margin-right: 0.5em;
  margin-bottom: 0.5em;
  width: auto;
  height: auto;
  text-align: center;
  border-radius: 1000px;
  background-color: transparent;
  transition: all 0.3s ease-out;
  color: #444444;
}
body .c-horizontal_content-meta__round-btn li > a {
  padding: 0.1em 1em;
  min-width: 5em;
  display: inline-block;
}
body .c-horizontal_content-meta__round-btn li > ul.c-horizontal_content-meta__round-btn {
  padding: 0;
  min-width: 5em;
}
body .c-horizontal_content-meta__round-btn li a {
  transition: all 0.3s ease-out;
  min-width: 5em;
  border-radius: 1000px;
  padding: 0.1em 1em;
  color: #444444;
  text-decoration: none;
}
body .c-horizontal_content-meta__round-btn li a:hover {
  background-color: #007df0;
  color: #ffffff;
  border-color: #007df0;
  cursor: pointer;
}
body .c-horizontal_content-meta__round-btn li a.current {
  background-color: #444444;
  color: #ffffff;
  border-color: #444444;
  cursor: default;
}
body .c-horizontal_content-meta__round-btn li a.current label:hover {
  cursor: default;
}
body .c-horizontal_content-meta__round-btn li a label:hover {
  cursor: pointer;
}
body time.c-horizontal_content-meta__txt,
body .c-horizontal_content-meta__round-btn {
  margin-right: 2em;
}
body .c-horizontal_content-meta__wp-tags {
  margin-top: 20px;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-horizontal_content-meta__wp-tags {
    margin-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal_content-meta__wp-tags {
    margin-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
body .c-horizontal_content-meta__wp-tags a {
  font-size: 14px;
  margin-left: 1em;
  margin-right: 1em;
  padding: 0.1em 0;
  display: inline-block;
  color: #444444;
  text-decoration: none;
  transition: all 0.3s ease-out;
}
body .c-horizontal_content-meta__wp-tags a:before {
  content: "#";
  display: inline-block;
  position: relative;
  left: 0;
  width: 1em;
  height: 1em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-horizontal_content-meta__wp-tags a {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal_content-meta__wp-tags a {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body .c-horizontal_content-meta__wp-tags a:hover {
  transition: all 0.3s ease-out;
  color: #007df0;
}
body .c-horizontal_content-meta__wp-tags a.current {
  cursor: default;
  border-bottom: 1px solid #444444;
}
body .c-horizontal_content-meta__round-btn {
  color: #444444;
  text-decoration: none;
}
body .c-horizontal_content-meta__round-btn:last-child {
  margin-right: 0;
}
body .c-horizontal_content-meta__round-btn,
body .c-horizontal_content-meta__wp-tags {
  display: flex;
  flex-wrap: wrap;
}
body time.c-horizontal_content-meta__txt {
  margin-bottom: 0.5em;
}
body time.c-horizontal_content-meta__txt a {
  transition: all 0.3s ease-out;
  text-decoration: none;
  color: #444444;
}
body time.c-horizontal_content-meta__txt a:hover {
  color: #007df0;
}
body time.c-horizontal_content-meta__txt a.current {
  border-bottom: 1px solid #007df0;
}
body .c-horizontal_content-meta--base, body .c-horizontal_content-meta--white, body .c-horizontal_content-meta--bodyfontcol, body .c-horizontal_content-meta--black {
  flex-wrap: wrap;
  color: #444444;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__txt a, body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a, body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a {
  color: #444444;
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__txt a:hover, body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:hover, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:hover, body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:hover {
  color: #007df0;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__txt a:before, body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:before, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:before, body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #007df0;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__txt a:hover:after, body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:hover:after, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:hover:after, body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:hover:after {
  right: 0;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__txt a:hover:before, body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:hover:before, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:hover:before, body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:hover:before {
  transform: scaleX(1);
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__round-btn li > :not(a), body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li > :not(a), body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li > :not(a), body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li > :not(a) {
  border: none;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__round-btn li a, body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li a, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a, body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a {
  border: 1px solid #444444;
  color: #444444;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__round-btn li a:hover, body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li a:hover, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a:hover, body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a:hover {
  color: #ffffff;
  border: 1px solid #007df0;
}
body .c-horizontal_content-meta--base .c-horizontal_content-meta__round-btn li a.current, body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li a.current, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a.current, body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a.current, body .c-horizontal_content-meta--base .c-horizontal_content-meta__round-btn li a.current:hover {
  color: #ffffff;
  background-color: #444444;
  border: 1px solid #444444;
}
body .c-horizontal_content-meta--black {
  color: #333333;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a {
  color: #333333;
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:hover {
  color: #007df0;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #007df0;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:hover:after {
  right: 0;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__txt a:hover:before {
  transform: scaleX(1);
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li > :not(a) {
  border: none;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a {
  border: 1px solid #333333;
  color: #333333;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a:hover {
  color: #ffffff;
  border: 1px solid #007df0;
}
body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a.current, body .c-horizontal_content-meta--black .c-horizontal_content-meta__round-btn li a.current:hover {
  color: #ffffff;
  background-color: #333333;
  border: 1px solid #333333;
}
body .c-horizontal_content-meta--bodyfontcol {
  color: #000000;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a {
  color: #000000;
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:hover {
  color: #007df0;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #007df0;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:hover:after {
  right: 0;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__txt a:hover:before {
  transform: scaleX(1);
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li > :not(a) {
  border: none;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a {
  border: 1px solid #000000;
  color: #000000;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a:hover {
  color: #ffffff;
  border: 1px solid #007df0;
}
body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a.current, body .c-horizontal_content-meta--bodyfontcol .c-horizontal_content-meta__round-btn li a.current:hover {
  color: #ffffff;
  background-color: #000000;
  border: 1px solid #000000;
}
body .c-horizontal_content-meta--white {
  color: #ffffff;
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a {
  color: #ffffff;
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #ffffff;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:hover:after {
  right: 0;
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__txt a:hover:before {
  transform: scaleX(1);
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li > :not(a):not(ul.c-horizontal_content-meta__round-btn) {
  color: #ffffff;
  border: 1px solid #ffffff;
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li > a {
  border: 1px solid #ffffff;
  color: #ffffff;
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li > a:hover {
  border: 1px solid #ffffff;
  background-color: #ffffff;
  color: #000000;
}
body .c-horizontal_content-meta--white .c-horizontal_content-meta__round-btn li ul.c-horizontal_content-meta__round-btn {
  padding: 0;
  min-width: 5em;
}

/* -----------------------------------------------------------------
ページネーション
-----------------------------------------------------------------
〜〜〜〜　／　〜〜〜〜　／　〜〜〜〜　／　
-----------------------------------------------------------------*/
body .c-horizontal-diagonal-separator {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
body .c-horizontal-diagonal-separator__item {
  position: relative;
  overflow-y: hidden;
  line-height: 1;
  padding-right: 3em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal-diagonal-separator__item {
    padding-right: 3em;
  }
}
body .c-horizontal-diagonal-separator__item:after {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  -webkit-transform: translateY(-50%) rotate(-45deg);
  -ms-transform: translateY(-50%) rotate(-45deg);
  right: 0;
  content: "";
  z-index: 0;
  pointer-events: all;
  flex-wrap: nowrap;
  -webkit-overflow-scrolling: touch;
  background: #efefef;
  height: 1px;
  width: 1px;
  padding-right: 1em;
  margin-right: 1em;
}
body .c-horizontal-diagonal-separator__item:last-child {
  padding-right: 0;
}
body .c-horizontal-diagonal-separator__item:last-child:after {
  display: none;
}
body .c-horizontal-diagonal-separator__item > :not(a) {
  display: flex;
  align-items: center;
  height: 100%;
}
body .c-horizontal-diagonal-separator__item a {
  position: relative;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  line-height: 1.25;
  position: relative;
  display: block;
  text-decoration: none;
  color: #000000;
  transition: all 0.3s ease-out;
}
body .c-horizontal-diagonal-separator__item a:before {
  box-sizing: border-box;
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 1px;
  transform: scaleX(0);
  transform-origin: left center;
  background-color: #007df0;
  content: "";
  transition: all 0.5s cubic-bezier(1, 0, 0, 1);
  transition-property: transform;
  transition-timing-function: cubic-bezier(1, 0, 0, 1);
}
body .c-horizontal-diagonal-separator__item a:hover:after {
  right: 0;
}
body .c-horizontal-diagonal-separator__item a:hover:before {
  transform: scaleX(1);
}
body .c-horizontal-diagonal-separator__item a:hover {
  color: #007df0;
}
body .c-horizontal-diagonal-separator__item a.current {
  color: #000000;
}
body .c-horizontal-diagonal-separator__item a.current:before {
  background-color: #000000;
  transform: scaleX(1);
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal-diagonal-separator__item a {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
  }
}
body .c-horizontal-diagonal-separator__item label {
  padding-left: 1em;
  padding-right: 1em;
}
body .c-horizontal-diagonal-separator__item .count {
  font-size: 12px;
  padding-left: 1em;
  vertical-align: super;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-horizontal-diagonal-separator__item .count {
    font-size: calc(12 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-horizontal-diagonal-separator__item .count {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}

/*================================================

--------------------------------------------------
・SP：ドロップダウンメニューの表示
・PC：グローバルナビが非表示の場合に、ハンバーガーメニューで表示

--------------------------------------------------
使い方
--------------------------------------------------
各プロジェクトの任意（ヘッダー、フッター）のscssで、
body 使用する箇所（タグ）の直下にSPになるブレイクポイントを引数にして記載
必要があれば、プロジェクトのscssで数値を上書きしていく。
body {
    :
     #l-header {
        @include dropdownmenu-SP-A1($G_BP_HEADER_SP_CHANGE_POINT);
    }
    ：
}
================================================ */
.js-toggle-open .logo-mv-overlay {
  display: block;
  opacity: 1;
}
.js-toggle-open .logo-scroll, .js-toggle-open .logo-default {
  display: none;
  opacity: 0;
}

body.js-toggle-open #l-header .gnavi:not(.gnav-with-hmbgmenu) {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  opacity: 1;
  z-index: 999;
  align-items: flex-start;
  justify-content: initial;
}
body.js-toggle-open #l-header .gnavi:not(.gnav-with-hmbgmenu) .l-header__secondary__top, body.js-toggle-open #l-header .gnavi:not(.gnav-with-hmbgmenu) .l-header__secondary__bottom {
  width: 100%;
}

@media only screen and (max-width: calc(768 * 1px)) {
  body #l-header .l-header__secondary.l-header__secondary--two-tier .l-header__secondary__bottom .gnavi__wrap.c-dd-nav #menu-header-nav {
    padding-bottom: 2em;
  }
  body #l-header .l-header__secondary.l-header__secondary--two-tier .l-header__secondary__top {
    flex-direction: column-reverse;
    padding-bottom: 100px;
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
}
/*----------------------------------------------
  グローバルナビ
  https://coco-factory.jp/ugokuweb/move01/5-1-1/
  ----------------------------------------------*/
body {
  /*=========================================================================
  ハンバーガーアイコン
  =========================================================================*/
  /* ハンバーガーアイコン
  ----------------------------------------------*/
  /*=========================================================================
  ドロップダウンメニュー　
  =========================================================================*/
  /* 基本設定
  ----------------------------------------------*/
  /* 第１階層 ナビゲーション設定
  ----------------------------------------------*/
  /* ナビゲーションのリンク設定 */
  /*　第二階層 以降 のナビゲーションの 共通 設定
  ----------------------------------------------*/
  /*下の階層を持っているulの指定*/
  /*hoverしたら表示*/
  /* ナビゲーションのリンク設定 */
  /* ▶︎ 矢印の設定 */
  /* 下の階層を持っているulの指定 */
  /* ナビゲーションaタグの形状 */
  /*　第三階層 のナビゲーションの 設定
  ----------------------------------------------*/
  /*3階層目の位置*/
  /* グローバルナビを表示 / 非表示
  ----------------------------------------------*/
  /*=========================================================================
  TB
  =========================================================================*/
  /*=========================================================================
  SP
  =========================================================================*/
  /*==SPのサイズ以下の形状*/
}
body .logo-mv-overlay {
  display: none;
  opacity: 0;
}
body .logo-scroll, body .logo-default {
  display: block;
  opacity: 1;
}
body.home .logo-mv-overlay {
  display: block;
  opacity: 1;
}
body.home .logo-scroll, body.home .logo-default {
  display: none;
  opacity: 0;
}
body .nav-toggle {
  display: none;
}
body .has-child .js-add-c-dd-expand {
  display: none;
}
body #l-header .btn-burger {
  top: 0;
  display: none;
  right: 10px;
  position: fixed;
  z-index: 99999;
}
body #l-header .nav-toggle:checked ~ .btn-burger .icon {
  background: transparent;
}
body #l-header .nav-toggle:checked ~ .btn-burger .icon:before {
  transform: rotate(-45deg);
  top: 1px;
}
body #l-header .nav-toggle:checked ~ .btn-burger .icon:after {
  transform: rotate(45deg);
  top: 0;
}
body #l-header .icon,
body #l-header .icon:before,
body #l-header .icon:after {
  transition: all 0.3s;
}
body .c-dd-nav__ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
body .c-dd-nav__ul ul ul {
  display: block;
}
body .c-dd-nav__ul__menu-item {
  position: relative;
}
body .c-dd-nav__ul__menu-item a {
  display: block;
  text-decoration: none;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item {
  height: 100%;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item span {
  font-size: 16px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-dd-nav__ul > .c-dd-nav__ul__menu-item span {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-dd-nav__ul > .c-dd-nav__ul__menu-item span {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a:not(.js-add-c-dd-expand):after {
  transform: scale(1, 1); /*X方向にスケール拡大*/
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item:hover > a:not(.js-add-c-dd-expand):after {
  transform: scale(1, 1); /*X方向にスケール拡大*/
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand) {
  height: 100%;
  padding-left: 1.4em;
  padding-right: 1.4em;
  display: flex;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand):after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0%;
  width: 100%;
  height: 2px;
  background-color: #007df0;
  transition: all 0.3s;
  transform: scale(0, 1);
  transform-origin: center top;
}
body .multilingual .c-dd-nav .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand):after {
  top: initial;
  bottom: 0;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item:not(.header-btn-cta) > a:not(.js-add-c-dd-expand) {
  color: #000000;
}
body.js-header-layered-style .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand), body.js-toggle-open .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand) {
  color: #000000;
}
body .c-dd-nav__ul__menu-item span {
  position: relative;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.has-child > a > span::before {
  content: "";
  position: absolute;
  right: -0.8em;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-top: 2px solid #444444;
  border-right: 2px solid #444444;
  transform: rotate(135deg);
  transition: all 0.3s ease-out;
}
body.js-header-layered-style .c-dd-nav__ul > .c-dd-nav__ul__menu-item.has-child > a > span::before, body.js-toggle-open .c-dd-nav__ul > .c-dd-nav__ul__menu-item.has-child > a > span::before {
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
  padding-left: 1.4em;
  display: flex;
  justify-content: center;
  align-items: center;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a {
  height: auto;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a:after {
  content: none;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a:hover {
  /*ボタンの形状*/
  border-color: transparent;
  color: #fff;
  /*背景の色と形状*/
  background: linear-gradient(270deg, #fa6c9f 0%, #ffe140 50%, #ff357f 100%);
  background-size: 200% auto;
  background-position: right center;
  /*ボックスの影*/
  box-shadow: 0 5px 10px rgba(250, 108, 159, 0.4);
}
body .c-dd-nav__ul__menu-item.has-child .sub-menu {
  /*絶対配置で位置を指定*/
  position: absolute;
  z-index: 4;
  /*形状を指定*/
  /*はじめは非表示*/
  visibility: hidden;
  opacity: 0;
  /*アニメーション設定*/
  transition: all 0.3s ease-out;
}
body .c-dd-nav__ul__menu-item.has-child .sub-menu span {
  font-size: 14px;
  line-height: 1.25;
  display: block;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-dd-nav__ul__menu-item.has-child .sub-menu span {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-dd-nav__ul__menu-item.has-child .sub-menu span {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body .c-dd-nav__ul__menu-item.has-child:hover > .sub-menu,
body .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:hover > .sub-menu,
body .c-dd-nav__ul__menu-item.has-child:active > ul,
body .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:active > .sub-menu {
  visibility: visible;
  opacity: 1;
}
body .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:not(.js-add-c-dd-expand) {
  height: 100%;
  padding: 0.75em 1.4em 0.75em 2em;
  transition: all 0.3s ease-out;
  text-align: left;
}
body ul ul .c-dd-nav__ul__menu-item.has-child::before {
  content: "";
  position: absolute;
  left: 6px;
  top: calc(50% - 4px / 2);
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  transition: all 0.3s ease-out;
}
body .c-dd-nav__ul__menu-item.has-child .sub-menu {
  /*絶対配置で位置を指定*/
  left: 0;
  top: 120px;
  /*形状を指定*/
  width: 360px;
}
body .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:last-child {
  border: none;
}
body .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a {
  color: #000000;
}
body.js-header-layered-style .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a, body.js-toggle-open .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a {
  color: #000000;
}
body .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu {
  top: 0;
  left: 182px;
}
body .c-dd-nav__ul__menu-item.has-child .ddmenu-return .sub-menu {
  left: -182px;
}
body .nav-toggle:checked ~ .gnavi {
  display: block;
  opacity: 1;
  z-index: 999;
}
body .gnavi__wrap {
  /*　第２階層 以降 のナビゲーションの 共通 設定
  ----------------------------------------------*/
  /* ナビゲーションのリンク設定 */
  /* 下の階層を持っているulの指定 */
  /*　第三階層 のナビゲーションの 設定
  ----------------------------------------------*/
  /* 第３階層の位置*/
  /*3階層目の位置*/
}
body .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a {
  background-color: white;
}
body .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:hover {
  background-color: white;
}
body .gnavi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a {
  background-color: white;
}
body .gnavi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a:hover {
  background: white;
}
body .f-navi__wrap {
  /* 第１階層 ナビゲーション設定
  ----------------------------------------------*/
  /*　第２階層 以降 のナビゲーションの 共通 設定
  ----------------------------------------------*/
  /* ナビゲーションaタグの形状 */
  /*　第３階層 のナビゲーションの 設定
  ----------------------------------------------*/
  /*3階層目の位置*/
}
body .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item:not(.header-btn-cta) > a:not(.js-add-c-dd-expand) {
  color: #000000;
  background-color: #000000;
}
body .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item:not(.header-btn-cta) > a:not(.js-add-c-dd-expand):hover {
  background-color: #111111;
  color: #007df0;
}
body .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item {
  border-bottom: none;
}
body .f-navi__wrap .c-dd-nav__ul__menu-item.has-child span::before {
  width: 4px;
  height: 4px;
  border-top: 2px solid #444444;
  border-right: 2px solid #444444;
}
body .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a {
  background-color: #000000;
  color: #000000;
}
body .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a:hover {
  background-color: #000000;
  color: #007df0;
}
body .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a {
  background-color: #000000;
}
body .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a:hover {
  background-color: #000000;
  color: #007df0;
}
@media only screen and (max-width: 1470px) {
  body {
    /*　第三階層 のナビゲーションの 設定
    ----------------------------------------------*/
  }
  body .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand) {
    padding-left: 1.6vw;
    padding-right: 1.6vw;
  }
}

/*=========================================================================
 SP
=========================================================================*/
@media only screen and (max-width: 990px) {
  /*=========================================================================
  必ずロゴを表示させる
  =========================================================================*/
  body.js-toggle-open #l-header .l-header__primary {
    position: fixed;
    padding-right: calc(calc(100 / 750 * 40 * 1vw) + 17.5vw);
  }
  /*=========================================================================
  スクロールチェーン
  =========================================================================*/
}
/*================================================
PCの時ハンバーガーメニューをクリックで全画面メニュー
ここでは、汎用的なモノのみ記載。
それ以外は、プロジェクト用のCSSを別途作成する
--------------------------------------------------
・https://coco-factory.jp/ugokuweb/move01/5-1-25/
================================================ */
/*$---------------------------------------------------------------------------
ハンバーガーメニューをクリックした時の背景処理設定
$---------------------------------------------------------------------------*/
.l-header__secondary, main, footer {
  transition: all 0.3s ease-out;
}

.bg-blur {
  -ms-filter: blur(6px) !important;
  filter: blur(6px) !important;
}

.bg-hidden {
  opacity: 0 !important;
}

body.js-toggle-open .l-header__secondary,
body.js-toggle-open #breadcrumb-sec,
body.js-toggle-open .content-wrap,
body.js-toggle-open footer {
  pointer-events: none !important;
  opacity: 0 !important;
}

body {
  /*=========================================================================
  スクロールチェーン対策：ハンバーガーメニューをクリックした時
  =========================================================================*/
  /*=========================================================================
  必ずロゴを表示させる
  ・スマホの時
  ・フルナビをクリックした時
  =========================================================================*/
  /*=========================================================================
  ハンバーガーメニューをクリックした時にロゴを表示させない時は、
  ヘッダーのプライマリーを透明度０　に設定
  =========================================================================*/
  /*=========================================================================
  フルメニューの設定
  =========================================================================*/
}
body.js-toggle-open {
  overflow-y: hidden !important;
}
@media only screen and (min-width: calc(990px + 1px)) {
  body.js-toggle-open .l-header__primary {
    opacity: 0;
  }
}
body #l-header {
  /*=========================================================================
  共通
  =========================================================================*/
  /* ハンバーガーアイコン
  ---------------------------------------------------------------------------*/
  /* 複製のグロナビのラッパー gnavi
  $---------------------------------------------------------------------------*/
  /* 複製のグロナビ
  $---------------------------------------------------------------------------*/
  /* PCだけ：フル画面 MENU
  $---------------------------------------------------------------------------*/
  /*=========================================================================
   PCのグロナビを表示しない場合
  =========================================================================*/
  /*
  c-doropdown-menu を読み込みレイアウト設定
  $---------------------------------------------------------------------------*/
}
body #l-header .nav-toggle {
  display: none !important;
}
body #l-header .btn-burger {
  position: fixed;
  display: flex;
  top: auto;
}
@media only screen and (max-width: 990px) {
  body #l-header .btn-burger {
    margin: 0;
  }
}
body #l-header #js-add-gnavi .gnavi {
  height: 100vh;
  width: 100%;
}
body #l-header #js-add-gnavi .gnavi:after {
  position: absolute;
  content: "";
  height: 100vh;
  width: 100%;
  background-color: white;
  opacity: 0.8;
}
body #l-header #js-add-gnavi {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100vh;
  transition: all 0.3s ease-out;
}
body #l-header #js-add-gnavi.js-add-gnavi-hidden {
  opacity: 0;
  display: none;
}
body #l-header #js-add-gnavi.js-add-gnavi-display {
  opacity: 1;
  display: block;
}
@media (min-width: calc(990px + 1px)) {
  body #l-header #js-add-gnavi .gnavi__wrap.c-dd-nav {
    box-sizing: border-box;
    margin: 0 auto;
    padding-top: calc(120px - 17.5vw);
    padding-bottom: calc(120px - 1em);
    padding-left: calc(calc((100% - 85%) / 2) + 17.5vw + 2em);
    padding-right: calc(calc((100% - 85%) / 2) + 17.5vw + 2em);
    width: 100%;
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    height: 100vh; /*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul {
    width: 100%;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item {
    border-top: 1px solid #000000;
    width: calc(100% / 3 - 1em);
    height: auto;
    padding-bottom: 1em;
    margin-right: 1em;
    box-sizing: border-box;
    align-items: flex-start !important;
    font-size: calc(100 / 1162 * 26 * 1vw);
    line-height: 1.25;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    padding-bottom: 0.5em !important;
    padding-top: 0.5em;
    padding-left: 0;
    padding-right: 0;
    height: auto;
    background-color: initial !important;
    border: none !important;
    color: #000000;
    transition: 0.3s ease;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item a:hover {
    color: #000000;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item .sub-menu {
    position: relative;
    visibility: visible;
    padding-left: 0.75em !important;
    opacity: 1;
    top: 0;
    left: 0;
    width: auto;
    background-color: initial !important;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:after {
    content: none;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a {
    color: #000000;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a:after {
    content: none;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item.has-child a span:before {
    content: none;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item .has-child:before {
    content: none;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul > .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item {
    font-size: 16px;
  }
}
body #l-header .c-lang-wrap,
body #l-header .gnavi__lists {
  padding-right: calc(17.5vw + 2em);
}
@media only screen and (max-width: 990px) {
  body #l-header #js-add-gnavi {
    /*
    ・JSで追加したタグ
    ・ハンバーガーメニューをクリックした時にbodyタグにつけたクラス
    ・スクロールチェーン対応用
    ----------------------------------------------*/
    /* ハンバーガーアイコン
    ----------------------------------------------*/
    /* 第一階層 ナビゲーション設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第二階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第三階層 のナビゲーションの 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*=========================================================================
    ヘッダー
    =========================================================================*/
    /*=========================================================================
    フッター
    =========================================================================*/
  }
  body #l-header #js-add-gnavi .nav-toggle {
    display: none;
  }
  body #l-header #js-add-gnavi.js-toggle-open {
    overflow-y: hidden;
  }
  body #l-header #js-add-gnavi .btn-burger {
    display: flex;
  }
  body #l-header #js-add-gnavi .btn-burger {
    right: 0;
  }
  body #l-header #js-add-gnavi .gnavi {
    display: none;
    background-color: white;
    position: fixed;
    z-index: -1;
    opacity: 0;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    padding-top: 17.5vw;
    transition: all 0.3s ease-out;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item.has-child > a:not(.js-add-c-dd-expand) {
    margin-right: 56px;
  }
  body #l-header #js-add-gnavi .has-child .js-add-c-dd-expand {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 56px;
    height: auto !important;
    right: 0;
    top: 0;
    z-index: 2;
    padding: 1.5em 1em;
    color: #6bb5cb;
  }
  body #l-header #js-add-gnavi .has-child .js-add-c-dd-expand .lines-vertical, body #l-header #js-add-gnavi .has-child .js-add-c-dd-expand .lines-horizontal {
    position: absolute;
    display: block;
    transition: all 0.3s;
    background: #fff;
    left: 50%;
    top: 50%;
    width: 40%;
    height: 1px;
    transform: translate(-50%, -50%);
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
  body #l-header #js-add-gnavi .has-child .js-add-c-dd-expand .lines-horizontal {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  body #l-header #js-add-gnavi .has-child .js-add-c-dd-expand .lines-vertical {
    transform: translate(-50%, -50%) rotate(90deg);
  }
  body #l-header #js-add-gnavi .has-child.active > .js-add-c-dd-expand .lines-vertical {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  body #l-header #js-add-gnavi .gnavi__wrap {
    height: 100% !important;
  }
  body #l-header #js-add-gnavi .gnavi__lists-list {
    position: relative;
    box-sizing: border-box;
    height: 100vh !important;
    padding-top: 120px;
  }
  body #l-header #js-add-gnavi .gnavi__lists {
    box-sizing: border-box;
    display: block;
    /*ナビの数が増えた場合縦スクロール*/
    position: relative;
    z-index: 999;
    width: 100%;
    height: 100%; /*表示する高さ*/
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 100px;
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item {
    height: auto;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a:not(.js-add-c-dd-expand):after {
    content: none;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item:hover > a:after {
    content: none;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a, body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    color: #000000;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand) {
    padding: 1.5em 1em 1.5em 1em;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand):after {
    content: none;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item.has-child span {
    position: static;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item.has-child span::before {
    content: none;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item.has-child.active span::before {
    transform: rotate(-45deg);
    left: auto;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 990px) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
    padding-top: calc(60 / calc(1162 - 1) * 100vw);
    padding-bottom: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: 990px) and (max-width: calc(768 * 1px)) {
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
    padding-top: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
    padding-bottom: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: 990px) {
  body #l-header #js-add-gnavi .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a {
    margin-right: auto;
    margin-left: auto;
    width: 100%;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:not(.js-add-c-dd-expand) {
    text-align: left;
    padding: 1.5em 1em 1.5em calc(1em * 2);
  }
  body #l-header #js-add-gnavi ul ul .c-dd-nav__ul__menu-item.has-child::before {
    content: none;
  }
  body #l-header #js-add-gnavi ul ul .c-dd-nav__ul__menu-item.has-child.active::before {
    transform: rotate(-45deg);
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item.has-child .sub-menu,
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    visibility: visible;
    opacity: 1;
    display: none;
    transition: none;
  }
  body #l-header #js-add-gnavi .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:not(.js-add-c-dd-expand) {
    padding: 1.5em 1em 1.5em calc(1em * 3);
  }
  body #l-header #js-add-gnavi .gnavi__wrap {
    /* 第１階層 ナビゲーション設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第２階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /* 第３階層の位置
    */
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item a,
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .sub-menu .c-dd-nav__ul__menu-item a,
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .sub-menu .c-dd-nav__ul__menu-item .sub-menu .c-dd-nav__ul__menu-item a {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item:first-child {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    background-color: white;
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a:hover {
    background-color: white;
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a {
    background-color: white;
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:hover {
    background-color: white;
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a {
    background-color: white;
  }
  body #l-header #js-add-gnavi .gnavi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a:hover {
    background-color: white;
  }
  body #l-header #js-add-gnavi .f-navi__wrap {
    /* 第１階層 ナビゲーション設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第２階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第３階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item a,
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a,
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav .c-dd-nav__ul .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid #b2d4ec;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav .c-dd-nav__ul > .c-dd-nav__ul__menu-item:first-child a {
    border-top: 1px solid #b2d4ec;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    background-color: #000000;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a:hover {
    background-color: #111111;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item:first-child {
    border-top: solid 1px #b2d4ec;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item {
    border-bottom: solid 1px #b2d4ec;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child a:not(.js-add-c-dd-expand) span {
    position: static;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child a:not(.js-add-c-dd-expand) span::before {
    height: 5px;
    width: 5px;
    border-top: 2px solid white;
    border-right: 2px solid white;
    right: calc(calc(40 / 750 * 750 / 750) * 100 * 1%);
    top: calc(1.5em + 0em);
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid #b2d4ec;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:first-child {
    border-top: solid 1px #b2d4ec;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:last-child {
    border: none;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a {
    background-color: #111111;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a:hover {
    background-color: #f7f7f7;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a {
    background-color: #f7f7f7;
  }
  body #l-header #js-add-gnavi .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a:hover {
    background-color: #f7f7f7;
  }
  body #l-header #js-add-gnavi .f-navi__wrap ul ul .c-dd-nav__ul__menu-item.has-child::before {
    width: 5px;
    height: 5px;
    right: calc(calc(40 / 750 * 750 / 750) * 100 * 1%);
    top: calc(1.5em + 0em);
    border-top: 2px solid white;
    border-right: 2px solid white;
  }
}
@media only screen and (max-width: 990px) {
  body #l-header {
    /*
    ここで設定したPCのフル画面 MENU をリセット
    （c-doropdown-menu を効かせる）
    $---------------------------------------------------------------------------*/
    /*
    c-doropdown-menu を読み込み終わったのに、デフォルトを表示の設定にする
    $---------------------------------------------------------------------------*/
  }
  body #l-header .gnavi__lists {
    padding-right: 0;
  }
  body #l-header #js-add-gnavi {
    opacity: 1;
  }
  body #l-header #js-add-gnavi .gnavi__wrap.c-dd-nav {
    position: relative;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
  body #l-header #js-add-gnavi .gnavi {
    display: block;
    opacity: 1;
    z-index: 999;
  }
  body #l-header #js-add-gnavi .gnavi__lists.c-dd-nav__ul {
    display: block;
    justify-content: normal;
    height: 100%;
    padding-top: 0;
    padding-bottom: 100px;
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
}

.c-faq-accordion .c-faq-accordion__item:nth-child(n+2) {
  margin-top: 1em;
}
.c-faq-accordion .c-faq-accordion__item .toggle {
  display: none;
}
.c-faq-accordion .c-faq-accordion__item .c-faq-accordion__item {
  position: relative;
}
.c-faq-accordion .c-faq-accordion__item .c-faq-accordion__item:last-child {
  margin-bottom: 0;
}
.c-faq-accordion .c-faq-accordion__item .title .type, .c-faq-accordion .c-faq-accordion__item .title .txt, .c-faq-accordion .c-faq-accordion__item .title .answer-txt, .c-faq-accordion .c-faq-accordion__item .content .type, .c-faq-accordion .c-faq-accordion__item .content .txt, .c-faq-accordion .c-faq-accordion__item .content .answer-txt {
  display: flex;
  align-items: center;
}
.c-faq-accordion .c-faq-accordion__item .title, .c-faq-accordion .c-faq-accordion__item .content {
  position: relative;
  display: flex;
  align-items: stretch;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.6s;
}
.c-faq-accordion .c-faq-accordion__item .title .txt {
  flex: 1;
  font-weight: bold;
  font-size: 22px;
  line-height: 1.25;
  background-color: initial;
  color: #000000;
  transition: all 0.6s;
  padding-left: 1em;
  padding-right: 0;
  padding-top: 0.75em;
  padding-bottom: 0.75em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .txt {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
.c-faq-accordion .c-faq-accordion__item .content {
  background-color: white;
  border-radius: 0;
}
.c-faq-accordion .c-faq-accordion__item .type {
  justify-content: center;
  font-weight: bold;
  font-size: 26px;
  line-height: 1;
  font-family: "Oswald", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  transition: all 0.6s;
  width: 1.5em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .type {
    font-size: calc(26 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .type {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
.c-faq-accordion .c-faq-accordion__item .title .type {
  background-color: initial;
  color: white;
}
.c-faq-accordion .c-faq-accordion__item .content .type {
  color: #e56b6b;
}
.c-faq-accordion .c-faq-accordion__item .content-wrap {
  overflow: hidden;
  max-height: 0;
  transition: all 0.6s;
}
.c-faq-accordion .c-faq-accordion__item .content {
  margin-top: 0em;
  margin-bottom: 0;
}
.c-faq-accordion .c-faq-accordion__item .content .answer-txt {
  flex: 1;
  line-height: 1.5;
  font-size: 16px;
  padding-left: 1em;
  padding-right: 0;
  padding-top: 0.75em;
  padding-bottom: 0.75em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .content .answer-txt {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .content .answer-txt {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
.c-faq-accordion .c-faq-accordion__item .title .btn {
  font-size: 22px;
  background-color: initial;
  width: 2.4em;
  display: block;
  position: relative;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .btn {
    font-size: calc(22 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .btn {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
.c-faq-accordion .c-faq-accordion__item .title .btn:after, .c-faq-accordion .c-faq-accordion__item .title .btn:before {
  content: "";
  position: absolute;
  right: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 2px;
  height: 1.25em;
  background-color: #000000;
  transition: all 0.6s;
  z-index: 2;
}
.c-faq-accordion .c-faq-accordion__item .title .btn:after {
  transform: rotate(90deg);
  top: calc(50% - 0.625em - 1px);
}
.c-faq-accordion .c-faq-accordion__item .title:hover .type, .c-faq-accordion .c-faq-accordion__item .toggle:checked + .title .type {
  background-color: initial;
  color: white;
}
.c-faq-accordion .c-faq-accordion__item .title:hover .txt, .c-faq-accordion .c-faq-accordion__item .toggle:checked + .title .txt {
  background-color: initial;
  color: #2a5195;
}
.c-faq-accordion .c-faq-accordion__item .title:hover .btn, .c-faq-accordion .c-faq-accordion__item .toggle:checked + .title .btn {
  background-color: initial;
}
.c-faq-accordion .c-faq-accordion__item .title:hover .btn:after, .c-faq-accordion .c-faq-accordion__item .title:hover .btn:before, .c-faq-accordion .c-faq-accordion__item .toggle:checked + .title .btn:after, .c-faq-accordion .c-faq-accordion__item .toggle:checked + .title .btn:before {
  background-color: #2a5195;
}
.c-faq-accordion .c-faq-accordion__item .title:hover .type, .c-faq-accordion .c-faq-accordion__item .title:hover .txt, .c-faq-accordion .c-faq-accordion__item .title:hover .btn {
  cursor: pointer;
}
.c-faq-accordion .c-faq-accordion__item .title:hover .btn {
  background-color: initial;
}
.c-faq-accordion .c-faq-accordion__item .toggle:checked + .title .btn:before {
  transform: rotate(90deg);
  top: calc(50% - 0.625em - 1px);
}
.c-faq-accordion .c-faq-accordion__item .toggle:checked + .title + .content-wrap {
  max-height: 1500px;
  transition: all 0.6s;
}

@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item:nth-child(n+2) {
    margin-top: 1em;
  }
  .c-faq-accordion .c-faq-accordion__item .title .txt {
    font-size: 22px;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .txt {
    font-size: calc(22 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .txt {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .type {
    font-size: 26px;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .type {
    font-size: calc(26 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .type {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .content .answer-txt {
    flex: 1;
    font-size: 16px;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .content .answer-txt {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .content .answer-txt {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .btn {
    font-size: 22px;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .btn {
    font-size: calc(22 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  .c-faq-accordion .c-faq-accordion__item .title .btn {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #breadcrumb-sec {
  display: none;
}
body.js-header-layered-style #breadcrumb-sec {
  position: absolute;
  width: 100%;
  z-index: 610;
  background-color: rgba(0, 0, 0, 0);
  color: #000000;
}
body #breadcrumb-sec {
  background-color: white;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #breadcrumb-sec {
    display: none;
  }
}
body #breadcrumb {
  padding-top: calc(40 * 1px);
  font-size: 14px;
  color: #cccccc;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #breadcrumb {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #breadcrumb {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body #breadcrumb a {
  text-decoration: none;
  color: #cccccc;
  transition: all 0.3s ease-out;
}
body #breadcrumb a:hover {
  color: #007df0;
}
body.js-header-layered-style #breadcrumb {
  color: #000000;
}
body.js-header-layered-style #breadcrumb a {
  color: #000000;
}
body.js-header-layered-style #breadcrumb a:hover {
  color: #007df0;
}

.c-scroll-scaledown-on-w-txt-ani-in {
  overflow: hidden;
}
.c-scroll-scaledown-on-w-txt-ani-in * {
  transform: scale(1.2);
  opacity: 0;
  animation: scaledownOnTxtWhite 1.5s ease-out 0s;
  animation-fill-mode: forwards;
}
@keyframes scaledownOnTxtWhite {
  0% {
    opacity: 0;
    transform: scale(1.3);
  }
  100% {
    opacity: 0.8;
    transform: scale(1);
  }
}

.js-c-scroll-scaledown-on-txt-none-ani-in {
  overflow: hidden;
}
.js-c-scroll-scaledown-on-txt-none-ani-in * {
  transform: scale(1.2);
  opacity: 0;
  animation: scaledownOnTxtNone 1.5s ease-out 0s;
  animation-fill-mode: forwards;
}
@keyframes scaledownOnTxtNone {
  0% {
    opacity: 0;
    transform: scale(1.2);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

body .c-tab-form-radio form {
  display: flex;
  justify-content: center;
  background-color: initial;
  margin-bottom: 60px;
  border-top: 1px solid #b2d4ec;
  border-bottom: 1px solid #b2d4ec;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-tab-form-radio form {
    margin-bottom: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-tab-form-radio form {
    margin-bottom: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}
body .c-tab-form-radio form .c-tab-form-radio__item {
  box-sizing: border-box;
  padding-top: 2em;
  padding-bottom: 2em;
  padding-left: 1.5em;
  padding-right: 1.5em;
  display: flex;
  align-items: center;
  z-index: 20;
  position: relative;
}
body .c-tab-form-radio form .c-tab-form-radio__item:nth-child(n+2):before {
  position: absolute;
  content: "";
  width: 1px;
  height: 60%;
  top: 20%;
  left: 0;
  background-color: #b2d4ec;
}
body .c-tab-form-radio form .c-tab-form-radio__item:hover {
  cursor: pointer;
}
body .c-tab-form-radio form .c-tab-form-radio__item:hover .label__check {
  border: 5px solid rgba(0, 0, 0, 0.2);
}
body .c-tab-form-radio form .c-tab-form-radio__item p {
  padding-left: 1em;
  text-decoration: none;
  font-size: 22px;
  font-family: "Oswald", sans-serif;
  color: #000000;
  font-weight: 600;
  line-height: 1.25;
  opacity: 0.5;
  transition: 0.3s ease;
  flex: 1;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item p {
    font-size: calc(22 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item p {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body .c-tab-form-radio form .c-tab-form-radio__item p span {
  display: block;
  font-size: 12px;
  font-weight: normal;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item p span {
    font-size: calc(12 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item p span {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
body .c-tab-form-radio form .c-tab-form-radio__item .label__checkbox {
  display: none;
}
body .c-tab-form-radio form .c-tab-form-radio__item .myradio {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5em;
  height: 2.5em;
}
body .c-tab-form-radio form .c-tab-form-radio__item .label__check {
  box-sizing: border-box;
  border-radius: 50%;
  border: 3px solid rgba(0, 0, 0, 0.1);
  background: white;
  vertical-align: middle;
  width: 2.5em;
  height: 2.5em;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border 0.3s ease;
}
body .c-tab-form-radio form .c-tab-form-radio__item .label__check i.icon {
  opacity: 0.2;
  font-size: calc(2.5em / 2);
  font-weight: bold;
  color: white;
  transition: opacity 0.3s 0.1s ease;
  -webkit-text-stroke: 2px rgba(0, 0, 0, 0.5);
}
body .c-tab-form-radio form .c-tab-form-radio__item .label__checkbox:checked + .myradio .label__text .label__check {
  animation: check 0.5s cubic-bezier(0.895, 0.03, 0.685, 0.22) forwards;
}
body .c-tab-form-radio form .c-tab-form-radio__item .label__checkbox:checked + .myradio .label__text .label__check .icon {
  opacity: 1;
  transform: scale(0);
  color: white;
  -webkit-text-stroke: 0 rgba(0, 0, 0, 0);
  animation: icon 0.3s cubic-bezier(1, 0.008, 0.565, 1.65) 0.1s 1 forwards;
}
@keyframes icon {
  from {
    opacity: 0;
    transform: scale(0.3);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes check {
  0% {
    width: calc(2.5em * 0.75);
    height: calc(2.5em * 0.75);
    border-width: 5px;
  }
  10% {
    width: calc(2.5em * 0.75);
    height: calc(2.5em * 0.75);
    opacity: 0.1;
    background: rgba(0, 0, 0, 0.2);
    border-width: 15px;
  }
  12% {
    width: calc(2.5em * 0.75);
    height: calc(2.5em * 0.75);
    opacity: 0.4;
    background: rgba(0, 0, 0, 0.1);
    border-width: 0;
  }
  50% {
    width: 2.5em;
    height: 2.5em;
    background: #00d478;
    border: 0;
    opacity: 0.6;
  }
  100% {
    width: 2.5em;
    height: 2.5em;
    background: #00d478;
    border: 0;
    opacity: 1;
  }
}
body .c-tab-form-radio form .c-tab-form-radio__item.js-tabmenu_current p {
  opacity: 1 !important;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item {
    padding-left: 0;
    padding-right: 0;
    padding-right: 0.5em;
    padding-left: 0.5em;
    flex-direction: column;
    align-items: center;
  }
  body .c-tab-form-radio form .c-tab-form-radio__item:last-child {
    padding-right: 0;
  }
  body .c-tab-form-radio form .c-tab-form-radio__item:first-child {
    padding-left: 0;
  }
  body .c-tab-form-radio form .c-tab-form-radio__item p {
    padding-top: 1em;
    padding-left: 0;
    text-align: center;
  }
  body .c-tab-form-radio form .c-tab-form-radio__item p span {
    padding-top: 20px;
    text-align: left;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item p span {
    padding-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item p span {
    padding-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-tab-form-radio form .c-tab-form-radio__item .myradio {
    width: 2.5em;
    height: 2.5em;
  }
  body .c-tab-form-radio form .c-tab-form-radio__item .label__check {
    width: 2.5em;
    height: 2.5em;
  }
  body .c-tab-form-radio form .c-tab-form-radio__item i.icon {
    font-size: calc(2.5em / 2);
  }
  @keyframes check {
    0% {
      width: calc(2.5em * 0.75);
      height: calc(2.5em * 0.75);
      border-width: 5px;
    }
    10% {
      width: calc(2.5em * 0.75);
      height: calc(2.5em * 0.75);
      opacity: 0.1;
      background: rgba(0, 0, 0, 0.2);
      border-width: 15px;
    }
    12% {
      width: calc(2.5em * 0.75);
      height: calc(2.5em * 0.75);
      opacity: 0.4;
      background: rgba(0, 0, 0, 0.1);
      border-width: 0;
    }
    50% {
      width: 2.5em;
      height: 2.5em;
      background: #00d478;
      border: 0;
      opacity: 0.6;
    }
    100% {
      width: 2.5em;
      height: 2.5em;
      background: #00d478;
      border: 0;
      opacity: 1;
    }
  }
}
body .c-tab-form-radio__item .label__checkbox:checked + .myradio .label__text .label__check {
  display: none;
}
body.start .c-tab-form-radio__item .label__checkbox:checked + .myradio .label__text .label__check {
  display: flex;
}
body .tab-content-item {
  top: 3em;
  transition: 0.3s ease;
  position: absolute;
  opacity: 0;
}
body .tab-content-item.js-tab-content-item_current {
  z-index: 50;
  position: relative;
  display: block;
  animation: fade calc(0.3s * 3) ease;
  animation-fill-mode: forwards;
}
@keyframes fade {
  from {
    opacity: 0;
    top: 3em;
  }
  to {
    opacity: 1;
    top: 0;
  }
}
body .tab-content-item.js-tab-content-item_current:not(.js-tabmenu_current) {
  z-index: 30;
}

/*
<!-- tabmenu -->
<div class="c-tab-form-radio">
    <form name="tabs_radio" id="price-tab-form">
        <!-- tab-01 -->
        <label id="tab01" class="c-tab-form-radio__item js-tabmenu_current">
            <input type="radio" name="tab_radio" value="html" class="label__checkbox" checked>
            <div class="myradio">
                <span class="label__text">
                    <span class="label__check">
                        <i class="fa-solid fa-check icon"></i>
                    </span>
                </span>
            </div>
            <p>
                タブ１の見出し
                <span>キャプチョンがある場合</span>
            </p>
        </label>
        <!-- // tab-01 -->
        <!-- tab-02 -->
        <label id="tab02" class="c-tab-form-radio__item">
            <input type="radio" name="tab_radio" value="wordpress" class="label__checkbox">
            <div class="myradio">
                <span class="label__text">
                    <span class="label__check">
                        <i class="fa-solid fa-check icon"></i>
                    </span>
                </span>
            </div>
            <p>
                タブ２の見出し
                <span>キャプチョンがある場合</span>
            </p>
        </label>
        <!-- // tab-02 -->
    </form>
</div>
<!-- // tabmenu -->

<!-- tab-content-item -->
<div>
    <!-- tab content 01 -->
    <div class="tab-content-item js-tab-content-item_current" id="tabContent01">
        ここに表示させるHTMLを記載
    </div>
    <!-- // tab content 01  -->

    <!-- tab content 02  -->
    <div class="tab-content-item" id="tabContent02">
        ここに表示させるHTMLを記載
    </div>
    <!-- //tab content 02  -->
</div>
<!-- // tab-content-item -->
 */
body .c-check-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
body .c-check-list .c-check-list__item {
  position: relative;
  font-size: 14px;
  text-align: left;
  padding-left: 1.5em;
  margin-bottom: 0.5em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .c-check-list .c-check-list__item {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .c-check-list .c-check-list__item {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body .c-check-list .c-check-list__item:last-child {
  margin-bottom: 0;
}
body .c-check-list .c-check-list__item:before {
  position: absolute;
  display: block;
  width: 1em;
  height: 1em;
  font-family: "Font Awesome 6 Free";
  line-height: 1.5;
  content: "\f058";
  color: #00d478;
  left: 0;
  top: 0;
}

/* 共通 レイアウト
---------------------------------------------------------------------- */
/*================================================================================================
ヘッダー、フッター、mainの共通のレイアウト
----------------------------------------------------------------------------------------------------
レイアウトのみ。サイズを記載する場合は変数で外で管理
背景やその他の装飾は_top.scss等に記載

----------------------------------------------------------------------------------------------------

https://docs.google.com/spreadsheets/d/127p0y5ZlkV_Va9QfGRuUhtxvP2u3fRIjBg5oHQZDMjY/edit#gid=0

================================================================================================ */
/*----------------------------
共通 レイアウト
----------------------------*/
body {
  /*=========================================================================
  共通：PC
  ・ヘッダー
  ・PAGE
  =========================================================================*/
  /*------------------------------------------------------------------
  横 幅
  ------------------------------------------------------------------*/
  /* 固定
  ----------------------------------------------*/
  /* 左、右、100%
  ----------------------------------------------*/
  /* 左：固定　右：100%
  ----------------------------------------------*/
  /* 左：100%　　右：固定
  ----------------------------------------------*/
  /* 可変
  ----------------------------------------------*/
  /*------------------------------------------------------------------
  縦 の余白
  ------------------------------------------------------------------*/
  /*=========================================================================
  ヘッダー
  =========================================================================*/
  /* SP の形になるブレイクポイント
  ----------------------------------------------*/
  /*=========================================================================
  PAGE
  =========================================================================*/
  /* TB の形になるブレイクポイント
  ----------------------------------------------*/
  /* SP の形になるブレイクポイント
  ----------------------------------------------*/
}
body .l-inner,
body .l-inner--t-nspace,
body .l-inner--b-nspace,
body .l-inner--tb-nspace {
  /*
  @if $G_HEADER_CONTENTS_WIDTH_PER_BOOLEAN==false{
  	//width: calc(1162 * 1px);
  	margin: 0 auto;
  	width: calc(1162 * 1px);
  	height: 100%;
  }@else{
  	width: $G_HEADER_WIDTH_PER_NUM;
  	margin: 0 $G_HEADER_WIDTH_PER_LR_PER_NUM;
  	height: 100%;
  }
  */
  margin: 0 auto;
  width: calc(1162 * 1px);
  height: 100%;
}
body .l-inner--lr-stretch,
body .l-inner--lr-stretch--t-nspace,
body .l-inner--lr-stretch--b-nspace,
body .l-inner--lr-stretch--tb-nspace {
  width: 100%;
  height: 100%;
}
body .l-inner--l-fix-r-stretch,
body .l-inner--l-fix-r-stretch--t-nspace,
body .l-inner--l-fix-r-stretch--b-nspace,
body .l-inner--l-fix-r-stretch--tb-nspace {
  margin-left: calc((100% - 1162 * 1px) / 2);
  width: calc(1162 * 1px + calc((100% - 1162 * 1px) / 2));
  height: 100%;
}
body .l-inner--l-fix-r-stretch .l-inner--l-fix-r-stretch__inner-r-side-space,
body .l-inner--l-fix-r-stretch--t-nspace .l-inner--l-fix-r-stretch__inner-r-side-space,
body .l-inner--l-fix-r-stretch--b-nspace .l-inner--l-fix-r-stretch__inner-r-side-space,
body .l-inner--l-fix-r-stretch--tb-nspace .l-inner--l-fix-r-stretch__inner-r-side-space {
  margin-right: calc((100vw - 1162 * 1px) / 2);
  width: calc(100% - calc((100vw - 1162 * 1px) / 2));
}
body .l-inner--l-fix-bs-per-r-stretch,
body .l-inner--l-fix-bs-per-r-stretch--t-nspace,
body .l-inner--l-fix-bs-per-r-stretch--b-nspace,
body .l-inner--l-fix-bs-per-r-stretch--tb-nspace {
  margin-left: calc((100% - 85%) / 2);
  width: calc(85% + calc((100% - 85%) / 2));
  height: 100%;
}
body .l-inner--l-fix-shrt1-per-r-stretch,
body .l-inner--l-fix-shrt1-per-r-stretch--t-nspace,
body .l-inner--l-fix-shrt1-per-r-stretch--b-nspace,
body .l-inner--l-fix-shrt1-per-r-stretch--tb-nspace {
  margin-left: calc((100% - 80%) / 2);
  width: calc(80% + calc((100% - 80%) / 2));
  height: 100%;
}
body .l-inner--l-fix-shrt2-per-r-stretch,
body .l-inner--l-fix-shrt2-per-r-stretch--t-nspace,
body .l-inner--l-fix-shrt2-per-r-stretch--b-nspace,
body .l-inner--l-fix-shrt2-per-r-stretch--tb-nspace {
  margin-left: calc((100% - 75%) / 2);
  width: calc(75% + calc((100% - 75%) / 2));
  height: 100%;
}
body .l-inner--l-fix-lng1-per-r-stretch,
body .l-inner--l-fix-lng1-per-r-stretch--t-nspace,
body .l-inner--l-fix-lng1-per-r-stretch--b-nspace,
body .l-inner--l-fix-lng1-per-r-stretch--tb-nspace {
  margin-left: calc((100% - 90%) / 2);
  width: calc(90% + calc((100% - 90%) / 2));
  height: 100%;
}
body .l-inner--l-fix-lng2-per-r-stretch,
body .l-inner--l-fix-lng2-per-r-stretch--t-nspace,
body .l-inner--l-fix-lng2-per-r-stretch--b-nspace,
body .l-inner--l-fix-lng2-per-r-stretch--tb-nspace {
  margin-left: calc((100% - 95%) / 2);
  width: calc(95% + calc((100% - 95%) / 2));
  height: 100%;
}
body .l-inner--r-fix-l-stretch,
body .l-inner--r-fix-l-stretch--t-nspace,
body .l-inner--r-fix-l-stretch--b-nspace,
body .l-inner--r-fix-l-stretch--tb-nspace {
  margin-right: calc((100% - 1162 * 1px) / 2);
  width: calc(1162 * 1px + calc((100% - 1162 * 1px) / 2));
  height: 100%;
}
body .l-inner--r-fix-l-stretch .l-inner--r-fix-l-stretch__inner-l-side-space,
body .l-inner--r-fix-l-stretch--t-nspace .l-inner--r-fix-l-stretch__inner-l-side-space,
body .l-inner--r-fix-l-stretch--b-nspace .l-inner--r-fix-l-stretch__inner-l-side-space,
body .l-inner--r-fix-l-stretch--tb-nspace .l-inner--r-fix-l-stretch__inner-l-side-space {
  margin-left: calc((100vw - 1162 * 1px) / 2);
  width: calc(100% - calc((100vw - 1162 * 1px) / 2));
}
body .l-inner--r-fix-bs-per-l-stretch,
body .l-inner--r-fix-bs-per-l-stretch--t-nspace,
body .l-inner--r-fix-bs-per-l-stretch--b-nspace,
body .l-inner--r-fix-bs-per-l-stretch--tb-nspace {
  margin-right: calc((100% - 85%) / 2);
  width: calc(85% + calc((100% - 85%) / 2));
  height: 100%;
}
body .l-inner--r-fix-shrt1-per-l-stretch,
body .l-inner--r-fix-shrt1-per-l-stretch--t-nspace,
body .l-inner--r-fix-shrt1-per-l-stretch--b-nspace,
body .l-inner--r-fix-shrt1-per-l-stretch--tb-nspace {
  margin-right: calc((100% - 80%) / 2);
  width: calc(80% + calc((100% - 80%) / 2));
  height: 100%;
}
body .l-inner--r-fix-shrt2-per-l-stretch,
body .l-inner--r-fix-shrt2-per-l-stretch--t-nspace,
body .l-inner--r-fix-shrt2-per-l-stretch--b-nspace,
body .l-inner--r-fix-shrt2-per-l-stretch--tb-nspace {
  margin-right: calc((100% - 75%) / 2);
  width: calc(75% + calc((100% - 75%) / 2));
  height: 100%;
}
body .l-inner--r-fix-lng1-per-l-stretch,
body .l-inner--r-fix-lng1-per-l-stretch--t-nspace,
body .l-inner--r-fix-lng1-per-l-stretch--b-nspace,
body .l-inner--r-fix-lng1-per-l-stretch--tb-nspace {
  margin-right: calc((100% - 90%) / 2);
  width: calc(90% + calc((100% - 90%) / 2));
  height: 100%;
}
body .l-inner--r-fix-lng2-per-l-stretch,
body .l-inner--r-fix-lng2-per-l-stretch--t-nspace,
body .l-inner--r-fix-lng2-per-l-stretch--b-nspace,
body .l-inner--r-fix-lng2-per-l-stretch--tb-nspace {
  margin-right: calc((100% - 95%) / 2);
  width: calc(95% + calc((100% - 95%) / 2));
  height: 100%;
}
body .l-inner--lr-bs-per,
body .l-inner--lr-bs-per--t-nspace,
body .l-inner--lr-bs-per--b-nspace,
body .l-inner--lr-bs-per--tb-nspace {
  width: 85%;
  margin: 0 calc((100% - 85%) / 2);
  height: 100%;
}
body .l-inner--lr-shrt1-per,
body .l-inner--lr-shrt1-per--t-nspace,
body .l-inner--lr-shrt1-per--b-nspace,
body .l-inner--lr-shrt1-per--tb-nspace {
  width: 80%;
  margin: 0 calc((100% - 80%) / 2);
  height: 100%;
}
body .l-inner--lr-shrt2-per,
body .l-inner--lr-shrt2-per--t-nspace,
body .l-inner--lr-shrt2-per--b-nspace,
body .l-inner--lr-shrt2-per--tb-nspace {
  width: 75%;
  margin: 0 calc((100% - 75%) / 2);
  height: 100%;
}
body .l-inner--lr-lng1-per,
body .l-inner--lr-lng1-per--t-nspace,
body .l-inner--lr-lng1-per--b-nspace,
body .l-inner--lr-lng1-per--tb-nspace {
  width: 90%;
  margin: 0 calc((100% - 90%) / 2);
  height: 100%;
}
body .l-inner--lr-lng2-per,
body .l-inner--lr-lng2-per--t-nspace,
body .l-inner--lr-lng2-per--b-nspace,
body .l-inner--lr-lng2-per--tb-nspace {
  width: 95%;
  margin: 0 calc((100% - 95%) / 2);
  height: 100%;
}
body .l-inner,
body .l-inner--lr-stretch,
body .l-inner--l-fix-r-stretch,
body .l-inner--r-fix-l-stretch,
body .l-inner--l-fix-bs-per-r-stretch,
body .l-inner--r-fix-bs-per-l-stretch,
body .l-inner--l-fix-shrt1-per-r-stretch,
body .l-inner--r-fix-shrt1-per-l-stretch,
body .l-inner--l-fix-shrt2-per-r-stretch,
body .l-inner--r-fix-shrt2-per-l-stretch,
body .l-inner--l-fix-lng1-per-r-stretch,
body .l-inner--r-fix-lng1-per-l-stretch,
body .l-inner--l-fix-lng2-per-r-stretch,
body .l-inner--r-fix-lng2-per-l-stretch,
body .l-inner--lr-bs-per,
body .l-inner--lr-shrt1-per,
body .l-inner--lr-shrt2-per,
body .l-inner--lr-lng1-per,
body .l-inner--lr-lng2-per {
  padding-top: 80px;
  padding-bottom: 80px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .l-inner,
  body .l-inner--lr-stretch,
  body .l-inner--l-fix-r-stretch,
  body .l-inner--r-fix-l-stretch,
  body .l-inner--l-fix-bs-per-r-stretch,
  body .l-inner--r-fix-bs-per-l-stretch,
  body .l-inner--l-fix-shrt1-per-r-stretch,
  body .l-inner--r-fix-shrt1-per-l-stretch,
  body .l-inner--l-fix-shrt2-per-r-stretch,
  body .l-inner--r-fix-shrt2-per-l-stretch,
  body .l-inner--l-fix-lng1-per-r-stretch,
  body .l-inner--r-fix-lng1-per-l-stretch,
  body .l-inner--l-fix-lng2-per-r-stretch,
  body .l-inner--r-fix-lng2-per-l-stretch,
  body .l-inner--lr-bs-per,
  body .l-inner--lr-shrt1-per,
  body .l-inner--lr-shrt2-per,
  body .l-inner--lr-lng1-per,
  body .l-inner--lr-lng2-per {
    padding-top: calc(80 / calc(1162 - 1) * 100vw);
    padding-bottom: calc(80 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .l-inner,
  body .l-inner--lr-stretch,
  body .l-inner--l-fix-r-stretch,
  body .l-inner--r-fix-l-stretch,
  body .l-inner--l-fix-bs-per-r-stretch,
  body .l-inner--r-fix-bs-per-l-stretch,
  body .l-inner--l-fix-shrt1-per-r-stretch,
  body .l-inner--r-fix-shrt1-per-l-stretch,
  body .l-inner--l-fix-shrt2-per-r-stretch,
  body .l-inner--r-fix-shrt2-per-l-stretch,
  body .l-inner--l-fix-lng1-per-r-stretch,
  body .l-inner--r-fix-lng1-per-l-stretch,
  body .l-inner--l-fix-lng2-per-r-stretch,
  body .l-inner--r-fix-lng2-per-l-stretch,
  body .l-inner--lr-bs-per,
  body .l-inner--lr-shrt1-per,
  body .l-inner--lr-shrt2-per,
  body .l-inner--lr-lng1-per,
  body .l-inner--lr-lng2-per {
    padding-top: calc(calc(100 / 750 * 80 * 1vw) / 0.75);
    padding-bottom: calc(calc(100 / 750 * 80 * 1vw) / 0.75);
  }
}
body .l-inner--t-nspace,
body .l-inner--l-fix-r-stretch--t-nspace,
body .l-inner--r-fix-l-stretch--t-nspace,
body .l-inner--l-fix-bs-per-r-stretch--t-nspace,
body .l-inner--r-fix-bs-per-l-stretch--t-nspace,
body .l-inner--l-fix-shrt1-per-r-stretch--t-nspace,
body .l-inner--r-fix-shrt1-per-l-stretch--t-nspace,
body .l-inner--l-fix-shrt2-per-r-stretch--t-nspace,
body .l-inner--r-fix-shrt2-per-l-stretch--t-nspace,
body .l-inner--l-fix-lng1-per-r-stretch--t-nspace,
body .l-inner--r-fix-lng1-per-l-stretch--t-nspace,
body .l-inner--l-fix-lng2-per-r-stretch--t-nspace,
body .l-inner--r-fix-lng2-per-l-stretch--t-nspace,
body .l-inner--lr-stretch--t-nspace,
body .l-inner--lr-bs-per--t-nspace,
body .l-inner--lr-shrt1-per--t-nspace,
body .l-inner--lr-shrt2-per--t-nspace,
body .l-inner--lr-lng1-per--t-nspace,
body .l-inner--lr-lng2-per--t-nspace {
  padding-bottom: 80px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .l-inner--t-nspace,
  body .l-inner--l-fix-r-stretch--t-nspace,
  body .l-inner--r-fix-l-stretch--t-nspace,
  body .l-inner--l-fix-bs-per-r-stretch--t-nspace,
  body .l-inner--r-fix-bs-per-l-stretch--t-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretch--t-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch--t-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch--t-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch--t-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch--t-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch--t-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch--t-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch--t-nspace,
  body .l-inner--lr-stretch--t-nspace,
  body .l-inner--lr-bs-per--t-nspace,
  body .l-inner--lr-shrt1-per--t-nspace,
  body .l-inner--lr-shrt2-per--t-nspace,
  body .l-inner--lr-lng1-per--t-nspace,
  body .l-inner--lr-lng2-per--t-nspace {
    padding-bottom: calc(80 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .l-inner--t-nspace,
  body .l-inner--l-fix-r-stretch--t-nspace,
  body .l-inner--r-fix-l-stretch--t-nspace,
  body .l-inner--l-fix-bs-per-r-stretch--t-nspace,
  body .l-inner--r-fix-bs-per-l-stretch--t-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretch--t-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch--t-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch--t-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch--t-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch--t-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch--t-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch--t-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch--t-nspace,
  body .l-inner--lr-stretch--t-nspace,
  body .l-inner--lr-bs-per--t-nspace,
  body .l-inner--lr-shrt1-per--t-nspace,
  body .l-inner--lr-shrt2-per--t-nspace,
  body .l-inner--lr-lng1-per--t-nspace,
  body .l-inner--lr-lng2-per--t-nspace {
    padding-bottom: calc(calc(100 / 750 * 80 * 1vw) / 0.75);
  }
}
body .l-inner--b-nspace,
body .l-inner--l-fix-r-stretch--b-nspace,
body .l-inner--r-fix-l-stretch--b-nspace,
body .l-inner--l-fix-bs-per-r-stretch--b-nspace,
body .l-inner--r-fix-bs-per-l-stretch--b-nspace,
body .l-inner--l-fix-shrt1-per-r-stretch--b-nspace,
body .l-inner--r-fix-shrt1-per-l-stretch--b-nspace,
body .l-inner--l-fix-shrt2-per-r-stretch--b-nspace,
body .l-inner--r-fix-shrt2-per-l-stretch--b-nspace,
body .l-inner--l-fix-lng1-per-r-stretch--b-nspace,
body .l-inner--r-fix-lng1-per-l-stretch--b-nspace,
body .l-inner--l-fix-lng2-per-r-stretch--b-nspace,
body .l-inner--r-fix-lng2-per-l-stretch--b-nspace,
body .l-inner--lr-stretch--b-nspace,
body .l-inner--lr-bs-per--b-nspace,
body .l-inner--lr-shrt1-per--b-nspace,
body .l-inner--lr-shrt2-per--b-nspace,
body .l-inner--lr-lng1-per--b-nspace,
body .l-inner--lr-lng2-per--b-nspace {
  padding-top: 80px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .l-inner--b-nspace,
  body .l-inner--l-fix-r-stretch--b-nspace,
  body .l-inner--r-fix-l-stretch--b-nspace,
  body .l-inner--l-fix-bs-per-r-stretch--b-nspace,
  body .l-inner--r-fix-bs-per-l-stretch--b-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretch--b-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch--b-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch--b-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch--b-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch--b-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch--b-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch--b-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch--b-nspace,
  body .l-inner--lr-stretch--b-nspace,
  body .l-inner--lr-bs-per--b-nspace,
  body .l-inner--lr-shrt1-per--b-nspace,
  body .l-inner--lr-shrt2-per--b-nspace,
  body .l-inner--lr-lng1-per--b-nspace,
  body .l-inner--lr-lng2-per--b-nspace {
    padding-top: calc(80 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .l-inner--b-nspace,
  body .l-inner--l-fix-r-stretch--b-nspace,
  body .l-inner--r-fix-l-stretch--b-nspace,
  body .l-inner--l-fix-bs-per-r-stretch--b-nspace,
  body .l-inner--r-fix-bs-per-l-stretch--b-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretch--b-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch--b-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch--b-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch--b-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch--b-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch--b-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch--b-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch--b-nspace,
  body .l-inner--lr-stretch--b-nspace,
  body .l-inner--lr-bs-per--b-nspace,
  body .l-inner--lr-shrt1-per--b-nspace,
  body .l-inner--lr-shrt2-per--b-nspace,
  body .l-inner--lr-lng1-per--b-nspace,
  body .l-inner--lr-lng2-per--b-nspace {
    padding-top: calc(calc(100 / 750 * 80 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: 990px) {
  body .l-header-bp {
    margin: 0;
    width: 100%;
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body .l-inner,
  body .l-inner--t-nspace,
  body .l-inner--b-nspace,
  body .l-inner--tb-nspace {
    width: 100%;
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body .l-inner--l-fix-r-stretch,
  body .l-inner--l-fix-r-stretch--t-nspace,
  body .l-inner--l-fix-r-stretch--b-nspace,
  body .l-inner--l-fix-r-stretch--tb-nspace {
    width: 100%;
    padding-left: calc(100 / 750 * 40 * 1vw);
    margin-left: 0;
  }
  body .l-inner--l-fix-r-stretch .l-inner--l-fix-r-stretch__inner-r-side-space,
  body .l-inner--l-fix-r-stretch--t-nspace .l-inner--l-fix-r-stretch__inner-r-side-space,
  body .l-inner--l-fix-r-stretch--b-nspace .l-inner--l-fix-r-stretch__inner-r-side-space,
  body .l-inner--l-fix-r-stretch--tb-nspace .l-inner--l-fix-r-stretch__inner-r-side-space {
    margin-right: calc(100 / 750 * 40 * 1vw);
    width: calc(100% - calc(100 / 750 * 40 * 1vw));
  }
  body .l-inner--r-fix-l-stretch,
  body .l-inner--r-fix-l-stretch--t-nspace,
  body .l-inner--r-fix-l-stretch--b-nspace,
  body .l-inner--r-fix-l-stretch--tb-nspace {
    width: 100%;
    padding-right: calc(100 / 750 * 40 * 1vw);
    margin-right: 0;
  }
  body .l-inner--r-fix-l-stretch .l-inner--r-fix-l-stretch__inner-l-side-space,
  body .l-inner--r-fix-l-stretch--t-nspace .l-inner--r-fix-l-stretch__inner-l-side-space,
  body .l-inner--r-fix-l-stretch--b-nspace .l-inner--r-fix-l-stretch__inner-l-side-space,
  body .l-inner--r-fix-l-stretch--tb-nspace .l-inner--r-fix-l-stretch__inner-l-side-space {
    margin-left: calc(100 / 750 * 40 * 1vw);
    width: calc(100% - calc(100 / 750 * 40 * 1vw));
  }
  body .l-inner--lr-bs-per,
  body .l-inner--lr-bs-per--t-nspace,
  body .l-inner--lr-bs-per--b-nspace,
  body .l-inner--lr-bs-per--tb-nspace {
    width: 85%;
    margin: 0 calc((100% - 85%) / 2);
    height: 100%;
  }
  body .l-inner--lr-shrt1-per,
  body .l-inner--lr-shrt1-per--t-nspace,
  body .l-inner--lr-shrt1-per--b-nspace,
  body .l-inner--lr-shrt1-per--tb-nspace {
    width: 80%;
    margin: 0 calc((100% - 80%) / 2);
    height: 100%;
  }
  body .l-inner--lr-shrt2-per,
  body .l-inner--lr-shrt2-per--t-nspace,
  body .l-inner--lr-shrt2-per--b-nspace,
  body .l-inner--lr-shrt2-per--tb-nspace {
    width: 75%;
    margin: 0 calc((100% - 75%) / 2);
    height: 100%;
  }
  body .l-inner--lr-lng1-per,
  body .l-inner--lr-lng1-per--t-nspace,
  body .l-inner--lr-lng1-per--b-nspace,
  body .l-inner--lr-lng1-per--tb-nspace {
    width: 90%;
    margin: 0 calc((100% - 90%) / 2);
    height: 100%;
  }
  body .l-inner--lr-lng2-per,
  body .l-inner--lr-lng2-per--t-nspace,
  body .l-inner--lr-lng2-per--b-nspace,
  body .l-inner--lr-lng2-per--tb-nspace {
    width: 95%;
    margin: 0 calc((100% - 95%) / 2);
    height: 100%;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .l-inner,
  body .l-inner--t-nspace,
  body .l-inner--b-nspace,
  body .l-inner--tb-nspace,
  body .l-inner--lr-stretch,
  body .l-inner--lr-stretch--t-nspace,
  body .l-inner--lr-stretch--b-nspace,
  body .l-inner--lr-stretch--tb-nspace,
  body .l-inner--l-fix-r-stretch,
  body .l-inner--r-fix-l-stretch,
  body .l-inner--lr-bs-per,
  body .l-inner--lr-bs-per--t-nspace,
  body .l-inner--lr-bs-per--b-nspace,
  body .l-inner--lr-bs-per--tb-nspace,
  body .l-inner--lr-shrt1-per,
  body .l-inner--lr-shrt1-per--t-nspace,
  body .l-inner--lr-shrt1-per--b-nspace,
  body .l-inner--lr-shrt1-per--tb-nspace,
  body .l-inner--lr-shrt2-per,
  body .l-inner--lr-shrt2-per--t-nspace,
  body .l-inner--lr-shrt2-per--b-nspace,
  body .l-inner--lr-shrt2-per--tb-nspace,
  body .l-inner--lr-lng1-per,
  body .l-inner--lr-lng1-per--t-nspace,
  body .l-inner--lr-lng1-per--b-nspace,
  body .l-inner--lr-lng1-per--tb-nspace,
  body .l-inner--lr-lng2-per,
  body .l-inner--lr-lng2-per--t-nspace,
  body .l-inner--lr-lng2-per--b-nspace,
  body .l-inner--lr-lng2-per--tb-nspace {
    margin: 0;
    width: 100%;
  }
  body .l-inner,
  body .l-inner--t-nspace,
  body .l-inner--b-nspace,
  body .l-inner--tb-nspace,
  body .l-inner--lr-bs-per,
  body .l-inner--lr-bs-per--t-nspace,
  body .l-inner--lr-bs-per--b-nspace,
  body .l-inner--lr-bs-per--tb-nspace,
  body .l-inner--lr-shrt1-per--t-nspace,
  body .l-inner--lr-shrt1-per--b-nspace,
  body .l-inner--lr-shrt1-per--tb-nspace,
  body .l-inner--lr-shrt2-per--t-nspace,
  body .l-inner--lr-shrt2-per--b-nspace,
  body .l-inner--lr-shrt2-per--tb-nspace,
  body .l-inner--lr-lng1-per,
  body .l-inner--lr-lng1-per--t-nspace,
  body .l-inner--lr-lng1-per--b-nspace,
  body .l-inner--lr-lng1-per--tb-nspace {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body .l-inner--lr-lng2-per,
  body .l-inner--lr-lng2-per--t-nspace,
  body .l-inner--lr-lng2-per--b-nspace,
  body .l-inner--lr-lng2-per--tb-nspace {
    padding-left: calc(calc(100 / 750 * 40 * 1vw) / 2);
    padding-right: calc(calc(100 / 750 * 40 * 1vw) / 2);
  }
  body .l-inner--l-fix-r-stretch,
  body .l-inner--l-fix-r-stretch--tb-nspace,
  body .l-inner--l-fix-r-stretch--t-nspace,
  body .l-inner--l-fix-r-stretch--b-nspace,
  body .l-inner--l-fix-bs-per-r-stretch,
  body .l-inner--l-fix-bs-per-r-stretch--tb-nspace,
  body .l-inner--l-fix-bs-per-r-stretch--t-nspace,
  body .l-inner--l-fix-bs-per-r-stretch--b-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretc,
  body .l-inner--l-fix-shrt1-per-r-stretch--tb-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretch--t-nspace,
  body .l-inner--l-fix-shrt1-per-r-stretch--b-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch,
  body .l-inner--l-fix-shrt2-per-r-stretch--tb-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch--t-nspace,
  body .l-inner--l-fix-shrt2-per-r-stretch--b-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch,
  body .l-inner--l-fix-lng1-per-r-stretch--tb-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch--t-nspace,
  body .l-inner--l-fix-lng1-per-r-stretch--b-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch,
  body .l-inner--l-fix-lng2-per-r-stretch--tb-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch--t-nspace,
  body .l-inner--l-fix-lng2-per-r-stretch--b-nspace {
    padding-left: calc(100 / 750 * 40 * 1vw);
  }
  body .l-inner--l-fix-r-stretch.--sp-default,
  body .l-inner--l-fix-r-stretch--tb-nspace.--sp-default,
  body .l-inner--l-fix-r-stretch--t-nspace.--sp-default,
  body .l-inner--l-fix-r-stretch--b-nspace.--sp-default,
  body .l-inner--l-fix-bs-per-r-stretch.--sp-default,
  body .l-inner--l-fix-bs-per-r-stretch--tb-nspace.--sp-default,
  body .l-inner--l-fix-bs-per-r-stretch--t-nspace.--sp-default,
  body .l-inner--l-fix-bs-per-r-stretch--b-nspace.--sp-default,
  body .l-inner--l-fix-shrt1-per-r-stretc.--sp-default,
  body .l-inner--l-fix-shrt1-per-r-stretch--tb-nspace.--sp-default,
  body .l-inner--l-fix-shrt1-per-r-stretch--t-nspace.--sp-default,
  body .l-inner--l-fix-shrt1-per-r-stretch--b-nspace.--sp-default,
  body .l-inner--l-fix-shrt2-per-r-stretch.--sp-default,
  body .l-inner--l-fix-shrt2-per-r-stretch--tb-nspace.--sp-default,
  body .l-inner--l-fix-shrt2-per-r-stretch--t-nspace.--sp-default,
  body .l-inner--l-fix-shrt2-per-r-stretch--b-nspace.--sp-default,
  body .l-inner--l-fix-lng1-per-r-stretch.--sp-default,
  body .l-inner--l-fix-lng1-per-r-stretch--tb-nspace.--sp-default,
  body .l-inner--l-fix-lng1-per-r-stretch--t-nspace.--sp-default,
  body .l-inner--l-fix-lng1-per-r-stretch--b-nspace.--sp-default,
  body .l-inner--l-fix-lng2-per-r-stretch.--sp-default,
  body .l-inner--l-fix-lng2-per-r-stretch--tb-nspace.--sp-default,
  body .l-inner--l-fix-lng2-per-r-stretch--t-nspace.--sp-default,
  body .l-inner--l-fix-lng2-per-r-stretch--b-nspace.--sp-default {
    margin-left: calc(100 / 750 * 40 * 1vw);
    width: calc(100% - calc(100 / 750 * 40 * 1vw));
  }
  body .l-inner--r-fix-l-stretch,
  body .l-inner--r-fix-l-stretch--tb-nspace,
  body .l-inner--r-fix-l-stretch--t-nspace,
  body .l-inner--r-fix-l-stretch--b-nspace,
  body .l-inner--r-fix-bs-per-l-stretch,
  body .l-inner--r-fix-bs-per-l-stretch--tb-nspace,
  body .l-inner--r-fix-bs-per-l-stretch--t-nspace,
  body .l-inner--r-fix-bs-per-l-stretch--b-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch,
  body .l-inner--r-fix-shrt1-per-l-stretch--tb-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch--t-nspace,
  body .l-inner--r-fix-shrt1-per-l-stretch--b-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch,
  body .l-inner--r-fix-shrt2-per-l-stretch--tb-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch--t-nspace,
  body .l-inner--r-fix-shrt2-per-l-stretch--b-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch,
  body .l-inner--r-fix-lng1-per-l-stretch--tb-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch--t-nspace,
  body .l-inner--r-fix-lng1-per-l-stretch--b-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch,
  body .l-inner--r-fix-lng2-per-l-stretch--tb-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch--t-nspace,
  body .l-inner--r-fix-lng2-per-l-stretch--b-nspace {
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body .l-inner--r-fix-l-stretch.--sp-default,
  body .l-inner--r-fix-l-stretch--tb-nspace.--sp-default,
  body .l-inner--r-fix-l-stretch--t-nspace.--sp-default,
  body .l-inner--r-fix-l-stretch--b-nspace.--sp-default,
  body .l-inner--r-fix-bs-per-l-stretch.--sp-default,
  body .l-inner--r-fix-bs-per-l-stretch--tb-nspace.--sp-default,
  body .l-inner--r-fix-bs-per-l-stretch--t-nspace.--sp-default,
  body .l-inner--r-fix-bs-per-l-stretch--b-nspace.--sp-default,
  body .l-inner--r-fix-shrt1-per-l-stretch.--sp-default,
  body .l-inner--r-fix-shrt1-per-l-stretch--tb-nspace.--sp-default,
  body .l-inner--r-fix-shrt1-per-l-stretch--t-nspace.--sp-default,
  body .l-inner--r-fix-shrt1-per-l-stretch--b-nspace.--sp-default,
  body .l-inner--r-fix-shrt2-per-l-stretch.--sp-default,
  body .l-inner--r-fix-shrt2-per-l-stretch--tb-nspace.--sp-default,
  body .l-inner--r-fix-shrt2-per-l-stretch--t-nspace.--sp-default,
  body .l-inner--r-fix-shrt2-per-l-stretch--b-nspace.--sp-default,
  body .l-inner--r-fix-lng1-per-l-stretch.--sp-default,
  body .l-inner--r-fix-lng1-per-l-stretch--tb-nspace.--sp-default,
  body .l-inner--r-fix-lng1-per-l-stretch--t-nspace.--sp-default,
  body .l-inner--r-fix-lng1-per-l-stretch--b-nspace.--sp-default,
  body .l-inner--r-fix-lng2-per-l-stretch.--sp-default,
  body .l-inner--r-fix-lng2-per-l-stretch--tb-nspace.--sp-default,
  body .l-inner--r-fix-lng2-per-l-stretch--t-nspace.--sp-default,
  body .l-inner--r-fix-lng2-per-l-stretch--b-nspace.--sp-default {
    margin-right: calc(100 / 750 * 40 * 1vw);
    width: calc(100% - calc(100 / 750 * 40 * 1vw));
  }
  body .l-inner--tb-nspace {
    padding: 0 calc(100 / 750 * 40 * 1vw);
  }
}

/*================================================
ヘッダー、フッター、
--------------------------------------------------
レイアウトのみ。サイズを記載する場合は変数で外で管理
背景やその他の装飾は_top.scss等に記載
================================================ */
/*----------------------------
グリッドシステム
----------------------------*/
body header .flex-lib-container,
body footer .flex-lib-container,
body .flex-lib-container {
  box-sizing: border-box;
  display: flex;
  margin-left: -1.58%;
  margin-right: -1.58%;
}
body header .flex-lib-container > .grid__col-1,
body footer .flex-lib-container > .grid__col-1,
body .flex-lib-container > .grid__col-1 {
  box-sizing: border-box;
  flex: 0 0 5.1733333333%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-2,
body footer .flex-lib-container > .grid__col-2,
body .flex-lib-container > .grid__col-2 {
  box-sizing: border-box;
  flex: 0 0 13.5066666667%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-3,
body footer .flex-lib-container > .grid__col-3,
body .flex-lib-container > .grid__col-3 {
  box-sizing: border-box;
  flex: 0 0 21.84%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-4,
body footer .flex-lib-container > .grid__col-4,
body .flex-lib-container > .grid__col-4 {
  box-sizing: border-box;
  flex: 0 0 30.1733333333%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-5,
body footer .flex-lib-container > .grid__col-5,
body .flex-lib-container > .grid__col-5 {
  box-sizing: border-box;
  flex: 0 0 38.5066666667%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-6,
body footer .flex-lib-container > .grid__col-6,
body .flex-lib-container > .grid__col-6 {
  box-sizing: border-box;
  flex: 0 0 46.84%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-7,
body footer .flex-lib-container > .grid__col-7,
body .flex-lib-container > .grid__col-7 {
  box-sizing: border-box;
  flex: 0 0 55.1733333333%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-8,
body footer .flex-lib-container > .grid__col-8,
body .flex-lib-container > .grid__col-8 {
  box-sizing: border-box;
  flex: 0 0 63.5066666667%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-9,
body footer .flex-lib-container > .grid__col-9,
body .flex-lib-container > .grid__col-9 {
  box-sizing: border-box;
  flex: 0 0 71.84%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-10,
body footer .flex-lib-container > .grid__col-10,
body .flex-lib-container > .grid__col-10 {
  box-sizing: border-box;
  flex: 0 0 80.1733333333%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-11,
body footer .flex-lib-container > .grid__col-11,
body .flex-lib-container > .grid__col-11 {
  box-sizing: border-box;
  flex: 0 0 88.5066666667%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-lib-container > .grid__col-12,
body footer .flex-lib-container > .grid__col-12,
body .flex-lib-container > .grid__col-12 {
  box-sizing: border-box;
  flex: 0 0 96.84%;
  margin-left: 1.58%;
  margin-right: 1.58%;
  margin-bottom: 3.16%;
}
body header .flex-container, body header .flex-container--sp-row,
body footer .flex-container,
body footer .flex-container--sp-row,
body .flex-container,
body .flex-container--sp-row {
  display: flex;
  flex-direction: row;
}
@media only screen and (max-width: 990px) {
  body header .flex-container, body header .flex-container--sp-row {
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  body footer .flex-container,
  body footer .flex-container--sp-row {
    flex-direction: column;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .flex-container, body header .flex-container--sp-row,
  body footer .flex-container--sp-row,
  body .flex-container--sp-row {
    flex-direction: column;
  }
  body .flex-container .flex-container__item,
  body .flex-container--sp-row .flex-container__item {
    width: 100%;
  }
}
@media only screen and (max-width: 990px) {
  body header .flex-container--sp-row {
    flex-direction: row;
  }
}
@media only screen and (max-width: 767px) {
  body footer .flex-container--sp-row {
    flex-direction: row;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .flex-container--sp-row {
    flex-direction: row;
  }
}
body header .grid-container,
body footer .grid-container,
body .grid-container {
  display: grid;
}
@media only screen and (max-width: 990px) {
  body header .grid-container {
    padding-left: 0;
    padding-right: 0;
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  body footer .grid-container {
    padding-left: 0;
    padding-right: 0;
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body .grid-container {
    padding-left: 0;
    padding-right: 0;
    display: flex;
    flex-direction: column;
  }
}

/*================================================
ヘッダー レイアウトのみ
--------------------------------------------------
・レイアウトのみ。サイズを記載する場合は変数で外で管理
・settingの変数は、できるだけ、プロジェクトで記載
================================================ */
body #l-header {
  position: absolute;
  width: 100%;
  /*=========================================================================
  スマホのサイズ以上だけの設定
  =========================================================================*/
  /*=========================================================================
  HEADER ブレイクポイント 01
  =========================================================================*/
  /*=========================================================================
  HEADER ブレイクポイント 02
  =========================================================================*/
  /*=========================================================================
  HEADER ブレイクポイント 03
  =========================================================================*/
  /*=========================================================================
  HEADER ブレイクポイント 04
  =========================================================================*/
  /*=========================================================================
  SPの形になるブレイクポイント
  =========================================================================*/
}
body #l-header a {
  text-decoration: none;
}
body #l-header .l-header__wrap {
  display: flex;
  justify-content: space-between;
  height: 120px;
}
body #l-header .l-header__primary {
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
body #l-header .l-header__secondary {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}
body #l-header .l-header__secondary.l-header__secondary--two-tier {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  height: 100%;
  width: 100%;
}
body #l-header .l-header__secondary .l-header__secondary__top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
body #l-header .l-header__secondary .l-header__secondary__top nav.l-header-nav-top {
  display: flex;
  flex-direction: column;
}
body #l-header .l-header__secondary .l-header__secondary__top nav.l-header-nav-top ul.l-header-nav-top-menu {
  width: 100%;
  display: flex;
  flex-direction: column;
}
body #l-header .l-cta-right-end_wrap .gnavi {
  padding-right: 0;
}
body #l-header .gnavi__lists-list {
  height: 100%;
}
body #l-header .gnavi__lists {
  height: 100%;
}
body #l-header .gnavi__lists li a:not(.js-add-c-dd-expand) {
  overflow-wrap: break-word;
}
body #l-header .l-logo_wrap a {
  line-height: 1;
}
@media only screen and (min-width: calc(990px + 1px)) {
  body #l-header .l-header__wrap {
    align-items: flex-end;
  }
  body #l-header .l-header__wrap.cta-right-end {
    align-items: center;
  }
  body #l-header .l-header__wrap .gnavi {
    padding-right: 2em;
  }
  body #l-header li a:not(.js-add-c-dd-expand) {
    align-items: flex-end;
  }
  body #l-header .l-header-bp.cta-right-end .gnavi:not(.l-multilingua) li a:not(.js-add-c-dd-expand) {
    align-items: center;
  }
  body #l-header li:not(.header-btn-cta) a:not(.js-add-c-dd-expand) {
    padding-bottom: 0.7em;
  }
  body #l-header li.header-btn-cta a:not(.js-add-c-dd-expand) {
    margin-bottom: 0.7em;
  }
  body #l-header .l-header__secondary .l-header__secondary__top {
    flex-direction: row;
    align-items: center;
  }
  body #l-header .l-header__secondary .l-header__secondary__top nav.l-header-nav-top {
    flex-direction: row;
  }
  body #l-header .l-header__secondary .l-header__secondary__top nav.l-header-nav-top ul.l-header-nav-top-menu {
    flex-direction: row;
  }
}
@media only screen and (max-width: 1470px) {
  body #l-header .l-header__primary {
    width: 20%;
  }
  body #l-header .l-header__secondary {
    width: 77%;
  }
}
@media only screen and (max-width: 990px) {
  body #l-header .logo {
    width: 80%;
    line-height: 1;
  }
}
@media only screen and (max-width: 460px) {
  body #l-header .logo {
    width: 100%;
  }
}
@media only screen and (max-width: 990px) {
  body #l-header .l-header__wrap {
    flex-direction: column;
    justify-content: flex-start;
    align-items: normal;
    height: 17.5vw;
  }
  body #l-header .l-header__wrap.cta-right-end {
    flex-direction: row;
  }
  body #l-header .l-header__primary {
    width: calc(100% - 17.5vw);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body #l-header .cta-right-end .l-header__primary {
    width: 100%;
  }
  body #l-header .l-header__secondary {
    width: 100%;
  }
  body #l-header .l-logo_wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
}

/*================================================
フッター全て
--------------------------------------------------
レイアウトのみ。サイズを記載する場合は変数で外で管理
================================================ */
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-footer #footer {
    height: auto;
    display: block;
  }
  body #l-footer #footer img {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
  }
}
body #l-footer .l-footer-copyright {
  width: 100%;
  margin: 0;
  padding: 0;
}
body #l-footer .l-footer-copyright span {
  font-family: "Oswald", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 14px;
  line-height: 1;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #l-footer .l-footer-copyright span {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-footer .l-footer-copyright span {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-footer .l-footer-copyright span {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
    z-index: 30;
  }
}

/*================================================

--------------------------------------------------
・
・
================================================ */
/*--------------------------------------------------------
高さ-100%
--------------------------------------------------------*/
.l-h-mv-full.top-mv {
  height: calc(100vh - 46px / 2 - 0px);
}
.l-h-mv-full:not(.top-mv) {
  height: 100vh;
}

/*--------------------------------------------------------
高さ $G_L_H_MV_H1_PC-pc の設定
--------------------------------------------------------*/
.l-h-mv-h1 {
  height: 600px;
  overflow: hidden;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .l-h-mv-h1 {
    height: calc(600 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .l-h-mv-h1 {
    height: calc(600 / 768 * 100vw);
  }
}

/*--------------------------------------------------------
高さ $G_L_H_MV_H2_PC の設定
--------------------------------------------------------*/
.l-h-mv-h2 {
  height: 480px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .l-h-mv-h2 {
    height: calc(480 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .l-h-mv-h2 {
    height: calc(480 / 768 * 100vw);
  }
}

/* プロジェクトの共通モジュールの記述
---------------------------------------------------------------------- */
/* プロジェクトのみの記述
---------------------------------------------------------------------- */
.content-wrap {
  overflow: hidden;
}

/*
---------------------------------------------------------------
浦和未来学舎
カラー
---------------------------------------------------------------
*/
.--txt-col-light-blue-1 {
  color: #38bded;
}

.--txt-col-navy-1 {
  color: #1c1f5e;
}

.--txt-col-yellow-1 {
  color: #fcff00;
}

.--txt-col-white {
  color: white;
}

/*
---------------------------------------------------------------
浦和未来学舎
あしらい
---------------------------------------------------------------
*/
.--txt-small {
  font-size: 0.8em;
}

.--txt-large {
  font-size: 1.2em;
}

.--txt-maker {
  display: inline;
  background: linear-gradient(transparent 60%, #fcff00 60%);
}

/*
---------------------------------------------------------------
浦和未来学舎
共通　ボタン
---------------------------------------------------------------
*/
.cta a {
  height: auto;
  display: flex;
  flex-direction: row !important;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.15em !important;
  text-decoration: none;
  border-radius: 0.3em;
}
.cta a span {
  line-height: 1;
  color: white;
  letter-spacing: -0.05em;
  font-weight: 700;
}
.cta a img {
  margin-right: 0.5rem;
  line-height: 1;
  height: auto;
}
.cta a.cta--mail, .cta a.cta--line {
  font-size: 32px;
  padding: 0.5em 1.5em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .cta a.cta--mail, .cta a.cta--line {
    font-size: calc(32 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .cta a.cta--mail, .cta a.cta--line {
    font-size: calc(100 / 750 * calc(42 * 1) * 1vw);
  }
}
.cta a.cta--mail span, .cta a.cta--line span {
  line-height: 1;
}
.cta a.cta--mail {
  background-image: linear-gradient(180deg, #ffa800, #ff9000);
  box-shadow: 0 0.15em 0 0 #774e00;
}
.cta a.cta--mail img {
  width: 1.35em;
}
.cta a.cta--line {
  background-image: linear-gradient(180deg, #00b900, #009a00);
  box-shadow: 0 0.15em 0 0 #005100;
}
.cta a.cta--line img {
  width: 1.25em;
}
.cta a.cta--tel {
  padding-left: 0;
  padding-right: 0;
  font-size: 50px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .cta a.cta--tel {
    font-size: calc(50 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .cta a.cta--tel {
    font-size: calc(100 / 750 * calc(54 * 1) * 1vw);
  }
}
.cta a.cta--tel img {
  width: 1.1em;
}
.cta a.cta--tel span {
  color: #1c1f5e;
  letter-spacing: 0.005em;
}
.cta a.cta--tel span.tel-caption {
  display: block;
  font-size: 16px;
  margin-top: 0.5em;
  line-height: 1;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .cta a.cta--tel span.tel-caption {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .cta a.cta--tel span.tel-caption {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .cta a.cta--mail, .cta a.cta--line {
    padding: 0.25em 0.5em;
    height: 15.6vw !important;
  }
  .cta a.cta--tel {
    padding: 0.25em 0.5em;
    background-image: linear-gradient(180deg, #009aff, #0082d8);
    box-shadow: 0 0.15em 0 0 #001d6a;
  }
}

/*
---------------------------------------------------------------
浦和未来学舎
セクション CTA
---------------------------------------------------------------
*/
.sec-cta {
  padding-top: calc(60 * 1px);
  padding-bottom: calc(60 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta {
    padding-top: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta {
    padding-top: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta {
    padding-bottom: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta {
    padding-bottom: calc(60 / 768 * 1 * 100vw);
  }
}
.sec-cta.--bg-blue {
  background-color: #0072bd;
}
.sec-cta .--side-default {
  padding-left: calc(0 * 1px);
  padding-right: calc(0 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta .--side-default {
    padding-left: calc(0 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .--side-default {
    padding-left: calc(0 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta .--side-default {
    padding-right: calc(0 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .--side-default {
    padding-right: calc(0 / 768 * 1 * 100vw);
  }
}
.sec-cta .--side-space {
  padding-left: calc(0 * 1px);
  padding-right: calc(0 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta .--side-space {
    padding-left: calc(0 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .--side-space {
    padding-left: calc(0 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta .--side-space {
    padding-right: calc(0 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .--side-space {
    padding-right: calc(0 / 768 * 1 * 100vw);
  }
}
.sec-cta .btn-top-txt-wrap {
  text-align: center;
  line-height: 1.25;
  font-weight: 600;
  padding-left: 150px;
  padding-right: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  padding-bottom: calc(20 * 1px);
}
.sec-cta .btn-top-txt-wrap.--txt-col-white {
  color: white;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .btn-top-txt-wrap {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta .btn-top-txt-wrap {
    padding-bottom: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .btn-top-txt-wrap {
    padding-bottom: calc(20 / 768 * 1 * 100vw);
  }
}
.sec-cta .btn-top-txt-wrap .icon-d-line {
  display: inline-flex;
  line-height: 1;
}
.sec-cta .btn-top-txt-wrap .icon-d-line svg {
  height: 2em;
}
.sec-cta .btn-top-txt-wrap .btn-top-txt {
  display: block;
  padding: 0 0.5em;
  line-height: 1.5;
}
.sec-cta .btn-top-txt-wrap .btn-top-txt .--txt-maker {
  background: linear-gradient(transparent 85%, #fcff00 60%);
  padding: 0.2em;
  display: inline;
}
.sec-cta .cta-btn-wrap {
  position: relative;
  z-index: 940;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 1.5em;
  padding: 1.25em;
}
.sec-cta .cta-btn-wrap .cta {
  width: calc(100% - 1.5em * 2 / 3);
  height: auto;
}
.sec-cta .cta-btn-wrap .cta a {
  height: 100%;
}
.sec-cta .cta-btn-wrap .cta a.cta--tel {
  align-items: flex-start;
}
.sec-cta .cta-btn-wrap .cta a.cta--tel .icon-tel {
  margin-top: 0.1em;
  display: inline-flex;
  line-height: 1;
}
.sec-cta .cta-btn-wrap.--bg-col-navy {
  background-color: #0044b2;
}
.sec-cta .cta-btn-wrap.--bg-col-navy .cta a.cta--tel .icon-tel {
  color: white;
}
.sec-cta .cta-btn-wrap.--bg-col-navy .cta a.cta--tel span {
  color: white;
}
.sec-cta .cta-btn-wrap.----bg-light-light-blue {
  background-color: #e3f4fe;
}
.sec-cta .cta-btn-wrap.----bg-light-light-blue .cta a.cta--tel .icon-tel {
  color: #1c1f5e;
}
.sec-cta .cta-btn-wrap.----bg-light-light-blue .cta a.cta--tel span {
  color: #1c1f5e;
}
.sec-cta .cta-btn-wrap.--bg-col-beige {
  background-color: #faf8eb;
}
.sec-cta .cta-btn-wrap.--bg-col-beige .cta a.cta--tel .icon-tel {
  color: #1c1f5e;
}
.sec-cta .cta-btn-wrap.--bg-col-beige .cta a.cta--tel span {
  color: #1c1f5e;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .cta-btn-wrap.----bg-light-light-blue .cta a.cta--tel .icon-tel, .sec-cta .cta-btn-wrap.--bg-col-beige .cta a.cta--tel .icon-tel {
    color: white;
  }
  .sec-cta .cta-btn-wrap.----bg-light-light-blue .cta a.cta--tel span, .sec-cta .cta-btn-wrap.--bg-col-beige .cta a.cta--tel span {
    color: white;
  }
}
.sec-cta .count-down {
  position: absolute;
  top: -1em;
  left: -1em;
  width: 150px;
  height: 150px;
  font-weight: 500;
  z-index: 900;
}
.sec-cta .count-down .container {
  margin-top: 1.5em;
}
.sec-cta .count-down .container p {
  text-align: center;
  position: relative;
  font-size: 12px;
  margin: 0;
  line-height: 1.1;
  z-index: 920;
  font-weight: 700;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .count-down .container p {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
.sec-cta .count-down .container .count-down-timer {
  margin-top: 0.25em;
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  line-height: 1;
  z-index: 920;
}
.sec-cta .count-down .container .count-down-timer .txt {
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .count-down .container .count-down-timer .txt {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
.sec-cta .count-down .container .count-down-timer .days {
  font-size: 40px;
  font-family: "Oswald", sans-serif;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .count-down .container .count-down-timer .days {
    font-size: calc(100 / 750 * calc(42 * 1) * 1vw);
  }
}
.sec-cta .count-down img.batch {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 902;
  animation: 9s linear infinite rotation1;
}
@keyframes rotation1 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta .btn-top-txt-wrap {
    min-height: 14.6vw;
    text-align: left;
    padding-left: 25vw;
    padding-right: 0;
  }
  .sec-cta .btn-top-txt-wrap .icon-d-line {
    display: none;
  }
  .sec-cta .btn-top-txt-wrap .btn-top-txt {
    flex: 1;
    display: block;
    padding: 0;
  }
  .sec-cta .cta-btn-wrap {
    flex-direction: column;
    gap: 1em;
  }
  .sec-cta .cta-btn-wrap .cta {
    width: 100%;
  }
  .sec-cta .count-down {
    top: -6vw;
    left: -2vw;
    width: 25vw;
    height: 25vw;
  }
}

/*
---------------------------------------------------------------
浦和未来学舎
フレックス
---------------------------------------------------------------
*/
.pc_flex-only {
  display: flex;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .pc_flex-only {
    flex-direction: column;
  }
}

/*
---------------------------------------------------------------
浦和未来学舎
見出し
---------------------------------------------------------------
*/
.heading-wrap {
  text-align: center;
}
.heading-wrap .heading .heading-main {
  padding-bottom: 40px;
  font-size: 40px;
  line-height: 1;
  display: block;
  font-weight: 700;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .heading-wrap .heading .heading-main {
    padding-bottom: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .heading-wrap .heading .heading-main {
    padding-bottom: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .heading-wrap .heading .heading-main {
    font-size: calc(100 / 750 * calc(42 * 1) * 1vw);
  }
}
.heading-wrap .heading .heading-main.--opacity {
  opacity: 0.2;
}
.heading-wrap .heading .heading-sub {
  margin-bottom: 20px;
  font-size: 32px;
  line-height: 1;
  display: block;
  font-weight: 700;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .heading-wrap .heading .heading-sub {
    margin-bottom: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .heading-wrap .heading .heading-sub {
    margin-bottom: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .heading-wrap .heading .heading-sub {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
.heading-wrap .heading.--left .heading-sub, .heading-wrap .heading.--left .heading-main {
  text-align: left;
}
.heading-wrap .heading.--right .heading-sub, .heading-wrap .heading.--right .heading-main {
  text-align: right;
}
.heading-wrap .heading.heading-over-top .heading-main {
  position: absolute;
  top: calc(80 * 1px * -1 + 100px * 0.7 * -1);
  left: 50%;
  transform: translateX(-50%);
}
.heading-wrap .heading.heading-over-top.--left .heading-main {
  left: 0;
  transform: initial;
}

/*
---------------------------------------------------------------
浦和未来学舎
ライトボックス
---------------------------------------------------------------
*/
/* ライトボックス本体（オーバーレイ） */
.lightbox {
  position: fixed;
  inset: 0;
  display: none; /* 初期は非表示 */
  z-index: 99999;
  background: rgba(0, 0, 0, 0.6); /* 黒背景 */
  justify-content: center; /* 中央寄せ（横） */
  align-items: center; /* 中央寄せ（縦） */
  padding: 16px; /* 画面端で潰れないように */
}

/* 表示時 */
.lightbox.is-active {
  display: flex;
}

/* HTMLにある場合に備えて。あってもなくてもOKにする */
.lightbox__overlay {
  position: absolute;
  inset: 0;
  /* ここは背景で覆われてるので透明にしておく */
  background: transparent;
}

/* 中央の画像ブロック */
.lightbox__content {
  position: relative;
  overflow: visible;
  background: #fff; /* 枠っぽくしたくなければ消す */
  border-radius: 6px;
  max-width: 95vw; /* 画面よりはみ出さない */
  max-height: 95vh;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

/* 画像を中でぴったり収める */
.lightbox__content img {
  display: block;
  max-width: 100%;
  height: auto;
  max-height: 95vh;
}

/* 閉じるボタン（画像の右上に重ねる） */
.lightbox__close {
  position: absolute;
  top: -1em;
  right: -1em;
  background: rgba(0, 0, 0, 0.8);
  border: none;
  color: #fff;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  font-size: 1.25em;
  line-height: 2em;
  text-align: center;
  cursor: pointer;
}
.lightbox__close:before, .lightbox__close:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: white;
}
.lightbox__close:before {
  height: 2px;
  width: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.lightbox__close:after {
  height: 50%;
  width: 2px;
  transform: translate(-50%, -50%) rotate(-135deg);
}

/* ─────────────────────────
   SP用
   ───────────────────────── */
@media (max-width: 768px) {
  .lightbox {
    padding: 0; /* 端まで使う */
  }
  .lightbox__content {
    max-width: 90vw;
    max-height: 90vh;
    border-radius: 0; /* スマホはフラットに */
  }
  .lightbox__content img {
    max-height: 90vh; /* 画面に収める */
  }
}
/*
---------------------------------------------------------------
浦和未来学舎
IMG scroll
---------------------------------------------------------------
*/
.scroll-infinity {
  position: relative;
}
.scroll-infinity .scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
  margin: 0;
  padding: 0;
  line-height: 1;
}
.scroll-infinity .scroll-infinity__wrap .scroll-infinity__list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 1;
}
.scroll-infinity .scroll-infinity__wrap .scroll-infinity__list.scroll-infinity__list--right {
  animation: infinity-scroll-right 60s infinite linear 0.5s both;
}
.scroll-infinity .scroll-infinity__wrap .scroll-infinity__list.scroll-infinity__list--left {
  animation: infinity-scroll-left 60s infinite linear 0.5s both;
}
.scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item {
  width: 80vw;
  margin: 0;
  padding: 0;
  line-height: 1;
}
.scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item img {
  margin: 0;
  padding: 0;
  line-height: 1;
  pointer-events: none;
}

@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0%);
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}
/*
---------------------------------------------------------------
ボタン
---------------------------------------------------------------
*/
.c-basic-btn.sec-btn, .sec-btn.c-basic-btn_form-wrap {
  display: inline-block;
  border-radius: 0;
  max-width: 24em;
  text-align: left;
  border: none;
  font-weight: 700;
  padding-left: calc(32 * 1px);
  padding-right: calc(62 * 1px);
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.1);
  margin-bottom: 2em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.sec-btn, .sec-btn.c-basic-btn_form-wrap {
    padding-left: calc(32 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.sec-btn, .sec-btn.c-basic-btn_form-wrap {
    padding-left: calc(32 / 768 * 1 * 100vw);
    padding-left: calc(32 / 768 * 1 * 100vw * 1.7);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.sec-btn, .sec-btn.c-basic-btn_form-wrap {
    padding-right: calc(62 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.sec-btn, .sec-btn.c-basic-btn_form-wrap {
    padding-right: calc(62 / 768 * 1 * 100vw);
    padding-right: calc(62 / 768 * 1 * 100vw * 1.7);
  }
}
.c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
  content: "";
  font-family: initial;
  font-size: initial;
  width: calc(32 * 1px);
  height: calc(32 * 1px);
  right: calc(32 * 1px);
  background-image: url("../images/_svg/btn_circle_line_arrow-carrot_right_blue.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
    width: calc(32 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
    width: calc(32 / 768 * 1 * 100vw);
    width: calc(32 / 768 * 1 * 100vw * 1.7);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
    height: calc(32 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
    height: calc(32 / 768 * 1 * 100vw);
    height: calc(32 / 768 * 1 * 100vw * 1.7);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
    right: calc(32 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.sec-btn:after, .sec-btn.c-basic-btn_form-wrap:after {
    right: calc(32 / 768 * 1 * 100vw);
  }
}
.c-basic-btn.sec-btn.col-navy-2, .sec-btn.col-navy-2.c-basic-btn_form-wrap {
  background-color: #030d40;
  color: white;
}
.c-basic-btn.sec-btn.col-navy-2:after, .sec-btn.col-navy-2.c-basic-btn_form-wrap:after {
  background-image: url("../images/_svg/btn_circle_line_arrow-carrot_right_white.svg");
}
.c-basic-btn.sec-btn.col-navy-2:hover, .sec-btn.col-navy-2.c-basic-btn_form-wrap:hover {
  color: white;
  background: linear-gradient(270deg, #ff7300 10%, #ffb700 50%, #ff9100 90%);
  background-size: 200% auto;
  background-position: right center;
  box-shadow: 0 0 2em rgba(0, 0, 0, 0.5);
}
.c-basic-btn.sec-btn.col-navy-2:hover:after, .sec-btn.col-navy-2.c-basic-btn_form-wrap:hover:after {
  right: calc(24 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .c-basic-btn.sec-btn.col-navy-2:hover:after, .sec-btn.col-navy-2.c-basic-btn_form-wrap:hover:after {
    right: calc(24 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .c-basic-btn.sec-btn.col-navy-2:hover:after, .sec-btn.col-navy-2.c-basic-btn_form-wrap:hover:after {
    right: calc(24 / 768 * 1 * 100vw);
  }
}

figure {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  display: block;
  line-height: 1;
}

/*
---------------------------------------------------------------
LAYOUT
---------------------------------------------------------------
*/
.l-inner-max-content {
  padding-left: 4.4vw;
  padding-right: 4.4vw;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .l-inner-max-content {
    padding-left: 4.4vw;
    padding-right: 4.4vw;
  }
}

.flex-list {
  display: flex;
  justify-content: space-between;
}
.flex-list .flex-list__item {
  position: relative;
  flex: 1;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .flex-list {
    flex-direction: column;
  }
  .flex-list .flex-list__item {
    width: 100%;
  }
}

.content-sec-slip-up .header-sec {
  padding-top: 80px;
  padding-bottom: 120px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .content-sec-slip-up .header-sec {
    padding-top: calc(80 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .content-sec-slip-up .header-sec {
    padding-top: calc(calc(100 / 750 * 80 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .content-sec-slip-up .header-sec {
    padding-bottom: calc(120 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .content-sec-slip-up .header-sec {
    padding-bottom: calc(calc(100 / 750 * 120 * 1vw) / 0.75);
  }
}
.content-sec-slip-up .content-sec {
  margin-top: -80px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .content-sec-slip-up .content-sec {
    margin-top: calc(-80 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .content-sec-slip-up .content-sec {
    margin-top: calc(calc(100 / 750 * -80 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .content-sec-slip-up .header-sec .heading-wrap .heading.heading-over-top .heading-main {
    top: calc(80 / calc(1162 - 1) * 100vw * -1 + 100px * 0.7 * -1);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .content-sec-slip-up .header-sec .heading-wrap .heading.heading-over-top .heading-main {
    top: -26.6vw;
  }
}

/*
---------------------------------------------------------------
モジュール上書き
---------------------------------------------------------------
*/
body .c-media-text-content--horizontal, body .c-media-text-content--horizontal-arrow {
  padding-top: 0;
  padding-bottom: 0;
  border: none;
}
body .c-media-text-content--horizontal .c-media-text-content__img, body .c-media-text-content--horizontal-arrow .c-media-text-content__img {
  margin-right: 0;
}
body .c-media-text-content--horizontal:last-child, body .c-media-text-content--horizontal-arrow:last-child {
  border: none;
}

body.c-attentions-wrap {
  margin-top: 10px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.c-attentions-wrap {
    margin-top: calc(10 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.c-attentions-wrap {
    margin-top: calc(calc(100 / 750 * 10 * 1vw) / 0.75);
  }
}
body.c-attentions-wrap .c-attention {
  line-height: 1.5;
  color: #444444;
  font-size: 14px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.c-attentions-wrap .c-attention {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}

/*
---------------------------------------------------------------
HEADING
---------------------------------------------------------------
*/
picture {
  margin: 0;
  padding: 0;
  display: block;
  line-height: 1;
}

.title-en,
.title-jp {
  text-align: center;
  line-height: 1.25;
}

.title-en {
  font-size: 14px;
  text-transform: uppercase;
}
@media only screen and (max-width: calc(768 * 1px)) {
  .title-en {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}

.title-jp {
  margin-top: 10px;
  font-size: 22px;
  font-weight: 700;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .title-jp {
    margin-top: calc(10 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .title-jp {
    margin-top: calc(calc(100 / 750 * 10 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .title-jp {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}

.sec-cta__btn-wrap {
  margin-top: 60px;
  margin-bottom: 120px;
  text-align: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta__btn-wrap {
    margin-top: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap {
    margin-top: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta__btn-wrap {
    margin-bottom: calc(120 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap {
    margin-bottom: calc(calc(100 / 750 * 120 * 1vw) / 0.75);
  }
}
.sec-cta__btn-wrap .btn-top-txt {
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 18px;
  line-height: 1.5;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta__btn-wrap .btn-top-txt {
    margin-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap .btn-top-txt {
    margin-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta__btn-wrap .btn-top-txt {
    margin-bottom: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap .btn-top-txt {
    margin-bottom: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap .btn-top-txt {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
.sec-cta__btn-wrap .sec-btn {
  width: 80%;
  max-width: initial;
  text-align: center;
  margin-top: 20px;
  font-size: 22px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  .sec-cta__btn-wrap .sec-btn {
    margin-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap .sec-btn {
    margin-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  .sec-cta__btn-wrap .sec-btn {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}

/*
---------------------------------------------------------------
CTA
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
ボタン
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
SIMPLE PARALLAX
---------------------------------------------------------------
*/
.simpleParallax {
  width: 100%;
  height: 100%;
}

.parallax-img img {
  width: 100%;
}

/*
---------------------------------------------------------------
PJ：ラインナップ
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
PJ：ラインナップ　タクソノミー一覧
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
PJ：TABLE
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
プラグイン：Arkhe Block
FAQ
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
左：スティッカー

---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
CANCEL POLICY
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
ドットライン　リストメニュー
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
IMG + TXT Layerd
---------------------------------------------------------------
*/
/*
---------------------------------------------------------------
POST META
---------------------------------------------------------------
*/
/*=========================================================================
HEADER

--------------------------------------------------
▼　使用するファイル
・HTML   ：header_1line_btn-right-end.php
・CSS    ：このファイル
・CSS    ：_common-md-l-header_1line-A1.scss
・CSS    ：project/global-setting/gs-header-design-setting

--------------------------------------------------
・#mypj 以降はネストで記載しない
・サイズ、色、背景やその他の装飾
・settingの変数は、ここにで記載
=========================================================================*/
/*----------------------------
プロジェクトの設定の上書き
----------------------------*/
body {
  /*=========================================================================
  HEADER ブレイクポイント 01
  =========================================================================*/
  /*=========================================================================
  SPの形になるブレイクポイント
  =========================================================================*/
}
@media only screen and (max-width: 990px) {
  body #l-header {
    /*
    ・JSで追加したタグ
    ・ハンバーガーメニューをクリックした時にbodyタグにつけたクラス
    ・スクロールチェーン対応用
    ----------------------------------------------*/
    /* ハンバーガーアイコン
    ----------------------------------------------*/
    /* 第一階層 ナビゲーション設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第二階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第三階層 のナビゲーションの 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*=========================================================================
    ヘッダー
    =========================================================================*/
    /*=========================================================================
    フッター
    =========================================================================*/
  }
  body #l-header .nav-toggle {
    display: none;
  }
  body #l-header.js-toggle-open {
    overflow-y: hidden;
  }
  body #l-header .btn-burger {
    display: flex;
  }
  body #l-header .btn-burger {
    right: 0;
  }
  body #l-header .gnavi {
    display: none;
    background-color: white;
    position: fixed;
    z-index: -1;
    opacity: 0;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    padding-top: 17.5vw;
    transition: all 0.3s ease-out;
  }
  body #l-header .c-dd-nav__ul__menu-item.has-child > a:not(.js-add-c-dd-expand) {
    margin-right: 56px;
  }
  body #l-header .has-child .js-add-c-dd-expand {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 56px;
    height: auto !important;
    right: 0;
    top: 0;
    z-index: 2;
    padding: 1.5em 1em;
    color: #6bb5cb;
  }
  body #l-header .has-child .js-add-c-dd-expand .lines-vertical, body #l-header .has-child .js-add-c-dd-expand .lines-horizontal {
    position: absolute;
    display: block;
    transition: all 0.3s;
    background: #fff;
    left: 50%;
    top: 50%;
    width: 40%;
    height: 1px;
    transform: translate(-50%, -50%);
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
  body #l-header .has-child .js-add-c-dd-expand .lines-horizontal {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  body #l-header .has-child .js-add-c-dd-expand .lines-vertical {
    transform: translate(-50%, -50%) rotate(90deg);
  }
  body #l-header .has-child.active > .js-add-c-dd-expand .lines-vertical {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  body #l-header .gnavi__wrap {
    height: 100% !important;
  }
  body #l-header .gnavi__lists-list {
    position: relative;
    box-sizing: border-box;
    height: 100vh !important;
    padding-top: 120px;
  }
  body #l-header .gnavi__lists {
    box-sizing: border-box;
    display: block;
    /*ナビの数が増えた場合縦スクロール*/
    position: relative;
    z-index: 999;
    width: 100%;
    height: 100%; /*表示する高さ*/
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 100px;
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item {
    height: auto;
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a:not(.js-add-c-dd-expand):after {
    content: none;
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item:hover > a:after {
    content: none;
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item.current-menu-item > a, body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    color: #000000;
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand) {
    padding: 1.5em 1em 1.5em 1em;
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand):after {
    content: none;
  }
  body #l-header .c-dd-nav__ul__menu-item.has-child span {
    position: static;
  }
  body #l-header .c-dd-nav__ul__menu-item.has-child span::before {
    content: none;
  }
  body #l-header .c-dd-nav__ul__menu-item.has-child.active span::before {
    transform: rotate(-45deg);
    left: auto;
  }
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 990px) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
    padding-top: calc(60 / calc(1162 - 1) * 100vw);
    padding-bottom: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: 990px) and (max-width: calc(768 * 1px)) {
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta {
    padding-top: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
    padding-bottom: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: 990px) {
  body #l-header .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a {
    margin-right: auto;
    margin-left: auto;
    width: 100%;
  }
  body #l-header .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:not(.js-add-c-dd-expand) {
    text-align: left;
    padding: 1.5em 1em 1.5em calc(1em * 2);
  }
  body #l-header ul ul .c-dd-nav__ul__menu-item.has-child::before {
    content: none;
  }
  body #l-header ul ul .c-dd-nav__ul__menu-item.has-child.active::before {
    transform: rotate(-45deg);
  }
  body #l-header .c-dd-nav__ul__menu-item.has-child .sub-menu,
  body #l-header .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    visibility: visible;
    opacity: 1;
    display: none;
    transition: none;
  }
  body #l-header .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:not(.js-add-c-dd-expand) {
    padding: 1.5em 1em 1.5em calc(1em * 3);
  }
  body #l-header .gnavi__wrap {
    /* 第１階層 ナビゲーション設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第２階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /* 第３階層の位置
    */
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item a,
  body #l-header .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .sub-menu .c-dd-nav__ul__menu-item a,
  body #l-header .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .sub-menu .c-dd-nav__ul__menu-item .sub-menu .c-dd-nav__ul__menu-item a {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item:first-child {
    border-top: 1px solid rgba(0, 0, 0, 0.2);
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    background-color: white;
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a:hover {
    background-color: white;
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a {
    background-color: white;
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a:hover {
    background-color: white;
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a {
    background-color: white;
  }
  body #l-header .gnavi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a:hover {
    background-color: white;
  }
  body #l-header .f-navi__wrap {
    /* 第１階層 ナビゲーション設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第２階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
    /* ナビゲーションのリンク設定 */
    /*　第３階層 以降 のナビゲーションの 共通 設定
    ----------------------------------------------*/
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item a,
  body #l-header .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a,
  body #l-header .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item .c-dd-nav__ul__menu-item a {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
  body #l-header .f-navi__wrap .c-dd-nav .c-dd-nav__ul .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid #b2d4ec;
  }
  body #l-header .f-navi__wrap .c-dd-nav .c-dd-nav__ul > .c-dd-nav__ul__menu-item:first-child a {
    border-top: 1px solid #b2d4ec;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a {
    background-color: #000000;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item a:hover {
    background-color: #111111;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul > .c-dd-nav__ul__menu-item:first-child {
    border-top: solid 1px #b2d4ec;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul .c-dd-nav__ul__menu-item {
    border-bottom: solid 1px #b2d4ec;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child a:not(.js-add-c-dd-expand) span {
    position: static;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child a:not(.js-add-c-dd-expand) span::before {
    height: 5px;
    width: 5px;
    border-top: 2px solid white;
    border-right: 2px solid white;
    right: calc(calc(40 / 750 * 750 / 750) * 100 * 1%);
    top: calc(1.5em + 0em);
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item {
    border-bottom: 1px solid #b2d4ec;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:first-child {
    border-top: solid 1px #b2d4ec;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item:last-child {
    border: none;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a {
    background-color: #111111;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .c-dd-nav__ul__menu-item a:hover {
    background-color: #f7f7f7;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a {
    background-color: #f7f7f7;
  }
  body #l-header .f-navi__wrap .c-dd-nav__ul__menu-item.has-child .sub-menu .sub-menu .c-dd-nav__ul__menu-item a:hover {
    background-color: #f7f7f7;
  }
  body #l-header .f-navi__wrap ul ul .c-dd-nav__ul__menu-item.has-child::before {
    width: 5px;
    height: 5px;
    right: calc(calc(40 / 750 * 750 / 750) * 100 * 1%);
    top: calc(1.5em + 0em);
    border-top: 2px solid white;
    border-right: 2px solid white;
  }
}
body #l-header {
  position: relative;
  /* 初期状態 */
  width: 100%;
  z-index: 1000; /* ヘッダーを最前面に配置 */
  transition: all 0.3s ease-out;
}
body.js-header-layered-style #l-header, body.js-toggle-open #l-header {
  background-color: rgba(0, 0, 0, 0);
  position: absolute;
  top: 0;
}
body .l-header__primary {
  height: 100%;
}
body .l-header__secondary {
  width: calc(100% - 180px);
}
body #l-header .l-header__wrap {
  align-items: center;
}
body .l-logo_wrap {
  width: 100%;
  height: 100%;
  padding-top: 1em;
  padding-bottom: 1em;
  display: flex;
  align-items: flex-start;
}
body .l-logo_wrap a {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
}
body .l-logo_wrap a img {
  width: auto;
  height: 100%;
}
body .gnavi__wrap {
  color: #fff;
  text-align: center;
  height: 120px;
}
body .gnavi__lists > .menu-item {
  font-weight: 500;
}
body #l-header .l-header__wrap .gnavi {
  padding-right: 0;
}
body #l-header li a:not(.js-add-c-dd-expand) {
  align-items: center;
}
body #l-header #menu-header-menu > li > a:not(.js-add-c-dd-expand) {
  padding-bottom: 0;
  margin-bottom: 0;
}
body #l-header li.header-btn-cta {
  margin-left: 1.4em;
}
body #l-header li.header-btn-cta a {
  width: 100%;
  height: 100%;
  border-radius: 0;
  padding-left: calc(1.6vw + 2em);
  padding-right: calc(1.6vw + 2em);
  padding-top: 0;
}
body #l-header li.header-btn-cta a span {
  font-size: 16px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #l-header li.header-btn-cta a span {
    font-size: calc(16 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-header li.header-btn-cta a span {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item.header-btn-cta a:hover {
  background-image: linear-gradient(45deg, #0b52ab 0%, #b68932 80%);
  background-size: 200% auto;
  background-position: center;
  box-shadow: 0 5px 10px rgba(0.4745098039, 26.368627451, 114.6705882353, 0.4);
}
@media only screen and (max-width: 1470px) {
  body .l-header__primary {
    width: 20%;
  }
  body .l-header__secondary {
    width: 77%;
  }
}
@media only screen and (max-width: 990px) {
  body {
    /*
    ---------------------------------------------------------
    調整 今後全て共通　
    ハンバーガーメニューをクリックするとロゴがズレるため）
    ---------------------------------------------------------
     */
    /* --------------------------------------------------- */
  }
  body.js-toggle-open #l-header .l-header__primary {
    padding-left: 5.3333333333vw;
    left: 0;
  }
  body .l-header__wrap {
    display: block;
  }
  body #l-header .l-header__primary {
    width: 100%;
    height: auto;
    padding-left: 0;
    padding-right: calc(5.3333333333vw + 76px);
  }
  body #l-header .l-header__secondary {
    width: 100%;
  }
  body #l-header .l-logo_wrap {
    height: 17.5vw;
  }
  body #l-header .l-logo_wrap a {
    box-sizing: border-box;
  }
  body #l-header .l-logo_wrap a img {
    padding: 1em 0;
  }
  body .gnavi__wrap {
    color: #fff;
    text-align: center;
  }
  body #l-header #menu-header-menu > li > a:not(.js-add-c-dd-expand) {
    padding-bottom: 1.5em;
  }
  body #l-header li.header-btn-cta {
    margin-left: 0;
    border-bottom: none !important;
  }
  body #l-header li.header-btn-cta > a:not(.js-add-c-dd-expand) {
    width: 100%;
    align-items: center;
    justify-content: center;
  }
  body #l-header li.header-btn-cta > a:not(.js-add-c-dd-expand) span {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}

body {
  /*
  ---------------------------------------------------------------
  PC
  ---------------------------------------------------------------
  */
  /*
   ---------------------------------------------------------------
  PCの時、グローバルメニューを表示
   ---------------------------------------------------------------
   */
  /*
  ---------------------------------------------------------------
  SP
  ---------------------------------------------------------------
  */
  /*
  ---------------------------------------------------------------
  SP MENU OPEN
  ---------------------------------------------------------------
  */
}
body.js-toggle-open #l-header #js-add-gnavi {
  display: block;
  opacity: 1;
}
body:not(.js-toggle-open) #l-header #js-add-gnavi {
  display: none;
  opacity: 0;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand) {
  padding-left: 0.75em;
  padding-right: 0.75em;
}
body .l-logo_wrap,
body #l-header .l-header__wrap .l-header__secondary .top {
  padding-top: 1em;
}
body #l-header .l-header__wrap {
  height: auto;
}
body #l-header .l-header__wrap {
  align-items: flex-end;
  justify-content: flex-end;
}
body #l-header .bottom {
  padding-top: 0.75em;
}
body #l-header .bottom .gnavi__wrap {
  height: auto;
  height: 3em;
}
body #l-header .bottom .gnavi__wrap #menu-header-nav {
  width: 100%;
  padding-right: 0;
}
body .c-dd-nav__ul > .c-dd-nav__ul__menu-item > a:not(.js-add-c-dd-expand):after {
  top: initial;
  bottom: 0;
}
body #l-header {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
body #l-header .l-header__wrap .l-header__primary {
  max-width: 210px;
}
body #l-header .l-header__wrap .l-header__primary .l-logo_wrap {
  align-items: center;
  padding-bottom: 0;
}
body #l-header .l-header__wrap .l-header__primary .l-logo_wrap a {
  display: block;
  height: 100%;
}
body #l-header .l-header__wrap .l-header__primary .l-logo_wrap a h1 {
  display: block;
  height: 100%;
}
body #l-header .l-header__wrap .l-header__primary .l-logo_wrap a h1 img {
  width: 100%;
  height: auto;
}
body #l-header .l-header__wrap .btn-burger {
  display: none;
  opacity: 0;
}
body #l-header .l-header__wrap .l-header__secondary {
  width: auto;
  height: 100%;
  display: flex;
  justify-content: flex-end;
}
body #l-header .l-header__wrap .l-header__secondary ul {
  display: flex;
  max-height: 2.5em;
}
body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta {
  margin-left: 0.5rem;
}
body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta a {
  padding: 0.25em 1.5em;
  border-radius: 10em;
  font-size: 14px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta a {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta a.cta--tel {
  padding: 0.25em 0.5em 0.25em 0;
  font-size: 26px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta a.cta--tel {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta a.cta--tel span {
  font-size: 26px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #l-header .l-header__wrap .l-header__secondary ul li.header-btn-cta.cta a.cta--tel span {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body #l-header .l-header__wrap .l-header__secondary .gnavi__wrap {
  height: auto;
}
body #l-header .l-header__wrap .l-header__secondary .gnavi__wrap #menu-header-nav {
  padding-right: 0;
}
body #l-header .l-header__wrap .l-header__secondary .gnavi__wrap #menu-header-nav .menu-item a:not(.js-add-c-dd-expand) {
  padding-bottom: 0;
}
body #l-header .l-header__wrap .l-header__secondary .gnavi__wrap #menu-header-nav .menu-item a span {
  color: initial;
}
@media only screen and (max-width: 990px) {
  body #l-header #js-add-gnavi .gnavi .gnavi__wrap .header-btn-cta {
    padding-left: 0;
    padding-right: 0;
  }
  body #l-header #js-add-gnavi .gnavi .gnavi__wrap .header-btn-cta a.cta--mail {
    background-color: #007df0;
  }
  body #l-header #js-add-gnavi .gnavi .gnavi__wrap .header-btn-cta a.cta--mail svg {
    width: 2em;
    margin-right: 1em;
  }
  body #l-header #js-add-gnavi .gnavi .gnavi__wrap .header-btn-cta a.cta--mail span {
    color: white;
  }
  body #l-header #js-add-gnavi .gnavi .gnavi__wrap .header-btn-cta a.cta--mail span br {
    display: none;
  }
  body #l-header #js-add-gnavi .gnavi .gnavi__wrap .header-btn-cta a.cta--mail:hover {
    color: white;
    background: linear-gradient(270deg, #ff7300 10%, #ffb700 50%, #ff9100 90%);
    background-size: 200% auto;
    background-position: right center;
    box-shadow: 0 0 2em rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (min-width: calc(990px + 1px)) {
  body #pc-fix-glnav {
    /* 最初は上に隠しておく */
    position: fixed;
    top: -1em;
    left: 0;
    right: 0;
    z-index: 999;
    transform: translateY(-100%); /* 画面の上に隠す */
    transition: transform 0.45s ease; /* ゆっくり降りる */
    pointer-events: none; /* 隠れてるときはクリックさせない */
    /* 表示するとき */
  }
  body #pc-fix-glnav ul {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 1em;
    padding-right: 1em;
  }
  body #pc-fix-glnav ul li a {
    transition: all 0.3s;
    position: relative;
    padding: 1.5em 0.75em !important;
    color: #000000;
    text-decoration: none;
    display: block;
    font-size: 14px;
  }
}
@media only screen and (min-width: calc(990px + 1px)) and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #pc-fix-glnav ul li a {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (min-width: calc(990px + 1px)) and (max-width: calc(768 * 1px)) {
  body #pc-fix-glnav ul li a {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
@media only screen and (min-width: calc(990px + 1px)) {
  body #pc-fix-glnav ul li a:after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #0044b2;
    transition: all 0.3s;
    transform: scale(0, 1);
    transform-origin: center top;
  }
  body #pc-fix-glnav ul li a.fix-nav-cta {
    background-color: #0072bd;
    color: white !important;
  }
  body #pc-fix-glnav ul li a.fix-nav-cta:hover {
    background-color: #39b6ff;
  }
  body #pc-fix-glnav ul li:hover a {
    color: #0072bd;
  }
  body #pc-fix-glnav ul li:hover a:after {
    transform: scale(1, 1);
  }
  body #pc-fix-glnav.is-show {
    transform: translateY(0); /* 上から降ろす */
    pointer-events: auto;
    background-color: white;
    top: 0;
  }
}
@media only screen and (max-width: 990px) {
  body #pc-fix-glnav {
    display: none;
  }
}
@media only screen and (max-width: 990px) {
  body #l-header .l-header__wrap {
    height: 17.5vw;
    align-items: flex-start;
  }
  body #l-header .l-header__wrap .l-header__primary {
    width: calc(100% - 17.5vw * 3);
    padding-right: 0;
  }
  body #l-header .l-header__wrap .l-header__primary .l-logo_wrap a img {
    padding-top: 0;
    padding-bottom: 0;
  }
  body #l-header .l-header__wrap .btn-burger {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    background-color: #0072bd;
  }
  body #l-header .l-header__wrap .btn-burger .icon, body #l-header .l-header__wrap .btn-burger .icon:before, body #l-header .l-header__wrap .btn-burger .icon:after {
    background-color: white;
  }
  body #l-header .l-header__wrap .l-header__secondary .top {
    display: none;
  }
  body #l-header .bottom {
    padding-top: 0;
  }
}
@media only screen and (max-width: 990px) {
  body.sp-mode #l-header .btn-burger {
    margin: 0;
    top: 0;
    display: flex;
    opacity: 1;
  }
  body.sp-mode #l-header .l-header__secondary {
    display: none;
  }
  body.js-toggle-open.sp-mode #l-header .btn-burger {
    background-color: white;
    margin: 0;
    top: 0;
  }
  body.js-toggle-open.sp-mode #l-header .btn-burger .icon:after, body.js-toggle-open.sp-mode #l-header .btn-burger .icon:before {
    background-color: #000000;
  }
  body.js-toggle-open.sp-mode #l-header #js-add-gnavi .gnavi {
    background-color: white;
  }
  body.js-toggle-open.sp-mode #l-header .l-header__secondary {
    display: block;
  }
}

/*================================================
プロジェクト用：FOOTER
--------------------------------------------------
・#mypj 以降はネストで記載しない
・サイズ、色、背景やその他の装飾
・settingの変数は、ここにで記載
================================================ */
body {
  /*
  ---------------------------------------------------------------
  PC FIX FOOTER
  ---------------------------------------------------------------
  */
}
body #sp-fix-footer {
  position: fixed;
  bottom: -150px;
  left: 0;
  right: 0;
  z-index: 999;
  transition: bottom 0.5s ease;
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.2);
}
body #sp-fix-footer.is-visible {
  bottom: 0;
}
body #sp-fix-footer .cta-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: stretch;
  gap: 0;
}
body #sp-fix-footer .cta-wrapper a {
  font-size: 14px;
  padding: 0.75em 0.75em 1em;
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-weight: bold;
  text-decoration: none;
  line-height: 1;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #sp-fix-footer .cta-wrapper a {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #sp-fix-footer .cta-wrapper a {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body #sp-fix-footer .cta-wrapper a.cta--mail {
  background-image: linear-gradient(180deg, #ffa800, #ff9000);
}
body #sp-fix-footer .cta-wrapper a.cta--line {
  background-color: #00b900;
}
body #sp-fix-footer .cta-wrapper a.cta--tel {
  background-image: linear-gradient(180deg, #009aff, #0082d8);
}
body #sp-fix-footer .cta-wrapper a .copy {
  position: relative;
  text-align: center;
  color: black;
  font-size: 14px;
  line-height: 1.25;
  background-color: white;
  border-radius: 2em;
  padding: 0.25em 0.75em;
  font-weight: 500;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #sp-fix-footer .cta-wrapper a .copy {
    font-size: calc(14 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #sp-fix-footer .cta-wrapper a .copy {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body #sp-fix-footer .cta-wrapper a .copy:before {
  content: "";
  position: absolute;
  bottom: -1.45vw;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 1.5vw solid transparent;
  border-left: 1.5vw solid transparent;
  border-top: 1.5vw solid white;
  border-bottom: 0;
}
body #sp-fix-footer .cta-wrapper a .copy.--ls-minus-01 {
  letter-spacing: -0.1em;
}
body #sp-fix-footer .cta-wrapper a .icon-txt-wrap {
  margin-top: 2vw;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
body #sp-fix-footer .cta-wrapper a .icon-txt-wrap img.icon {
  width: 1.5em;
  margin-right: 0.5em;
}
body #sp-fix-footer .cta-wrapper a .icon-txt-wrap span {
  line-height: 1;
  text-align: center;
  color: white;
  font-size: 22px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body #sp-fix-footer .cta-wrapper a .icon-txt-wrap span {
    font-size: calc(22 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body #sp-fix-footer .cta-wrapper a .icon-txt-wrap span {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body #sp-fix-footer .cta-wrapper a .icon-txt-wrap img.arrow {
  width: 1em;
  margin-left: 0.5em;
}
body #sp-fix-footer .cta-wrapper a:hover {
  box-shadow: none;
}
@media (min-width: 768px) {
  body #sp-fix-footer {
    display: none;
  }
}
body footer {
  position: relative;
  z-index: 0;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #0d204f;
  font-size: 12px;
  color: white;
  text-align: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body footer {
    padding-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body footer {
    padding-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body footer {
    padding-bottom: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body footer {
    padding-bottom: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body footer {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body footer {
    padding-bottom: 19vw;
  }
}
/*=========================================================================
ハンバーガーアイコン
=========================================================================*/
.js-header-layered-style .js-btn-burger-scroll,
.js-toggle-open .js-btn-burger-scroll,
.js-btn-burger-scroll {
  background-color: #000000;
  border: 0 solid #000000;
}

/*-------------------------------------------------------
   共通
------------------------------------------------------- */
#mv {
  position: relative;
}
#mv.home {
  width: 100%;
}

/*-------------------------------------------------------
HOME
------------------------------------------------------- */
#mv.home {
  z-index: 900;
}
#mv.home .mv-content {
  padding-top: 40px;
  padding-bottom: 60px;
  position: relative;
  display: flex;
  justify-content: space-between;
  z-index: 910;
  width: 100%;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  #mv.home .mv-content {
    padding-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  #mv.home .mv-content {
    padding-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  #mv.home .mv-content {
    padding-bottom: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  #mv.home .mv-content {
    padding-bottom: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap img {
  height: auto;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .specialist {
  width: 59.5524956971%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .target {
  margin-top: 1em;
  width: 48.2788296041%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .score {
  width: 59.8106712565%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .score-up {
  width: 74.6127366609%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .authority {
  margin-top: 1em;
  width: 58.9500860585%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .pc_flex-only {
  margin-top: 1em;
  gap: 1em;
  align-items: flex-end;
  width: 89.586919105%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .pc_flex-only *:first-child {
  width: 41.3080895009%;
}
#mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .learning-methods {
  width: 47.074010327%;
}
#mv.home .mv-img {
  position: absolute;
  z-index: 900;
  top: 0;
  left: 0;
  margin-left: 3vw;
  width: calc(100% - 3vw);
  height: 100%;
}
#mv.home .mv-img picture {
  z-index: 910;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: #e6f3f8;
}
#mv.home .mv-img picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#mv.home .mv-img:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(3vw * -1);
  width: calc(100% + 3vw);
  height: 80%;
  background: #0072bd;
  z-index: 890;
  display: block;
}
@media only screen and (max-width: 1300px) {
  #mv.home .mv-content .l-inner--tb-nspace {
    width: 100%;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap {
    padding-left: 0;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .specialist {
    width: 100%;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .target {
    margin-top: 1em;
    width: 100%;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .score {
    width: 100%;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .score-up {
    width: 100%;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .authority {
    margin-top: 1em;
    width: 100%;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .pc_flex-only {
    width: 100%;
    margin-top: 0;
    align-items: flex-start;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .pc_flex-only *:first-child {
    width: 50%;
  }
  #mv.home .mv-content #mv-site-settings-main-copy .main-copy-wrap .learning-methods {
    width: 100%;
  }
  #mv.home .mv-img {
    margin-left: 0;
    width: 100%;
    top: initial;
    bottom: 0;
  }
  #mv.home .mv-img picture img {
    bottom: 0;
    position: absolute;
    height: auto;
    margin-bottom: -4vw;
  }
  #mv.home .mv-img:before {
    left: calc(5.333vw * -1);
    width: calc(100% + 5.333vw);
  }
}

body.home #anchor-index {
  display: none;
}
body.home #anchor-index .container {
  margin: 3em auto;
}
body.home #anchor-index .container p {
  text-align: center;
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 0.5em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #anchor-index .container p {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #anchor-index .container .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2em;
}
body.home #anchor-index .container .wrap ol {
  flex: 1;
  padding-left: 0;
  list-style: none;
}
body.home #anchor-index .container .wrap ol li {
  position: relative;
  background-color: #e2f3ff;
  border-radius: 2vw;
  margin-bottom: 1.5vw;
}
body.home #anchor-index .container .wrap ol li:after {
  content: "";
  position: absolute;
  width: 1em;
  height: 1em;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  background-image: url("../images/_svg/btn_circle_fill_arrow-carrot_right_black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}
body.home #anchor-index .container .wrap ol li a {
  padding: 0.75em 1.25em 0.75em 0.75em;
  display: block;
  color: #000000;
  text-decoration: none;
}
body.home #anchor-index .container .wrap ol li a span {
  font-weight: 700;
}
body.home #anchor-index .container .wrap ol li a span .--txt-maker {
  display: inline;
  background: linear-gradient(transparent 80%, #fcff00 60%);
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #anchor-index {
    display: block;
  }
  body.home #anchor-index .container .wrap {
    display: block;
  }
  body.home #anchor-index .container .wrap ol {
    margin-bottom: 0;
  }
  body.home #anchor-index .container .wrap ol:last-child {
    margin: 0;
  }
}

/* =================================================================================

10 Bud Case

================================================================================= */
body.home #bud-case-sec {
  background-color: #f2f4f5;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list {
  margin: 0;
  margin-top: calc(40 * 1px);
  display: flex;
  flex-wrap: wrap;
  gap: 4em 2em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .bud-case-content-list {
    margin-top: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item {
  background-color: white;
  position: relative;
  width: calc((100% - 6em) / 4);
  padding-top: 3em;
  padding-bottom: 2em;
  display: flex;
  flex-direction: column;
  align-items: center;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .target {
  width: 25%;
  position: absolute;
  top: -2em;
  left: 50%;
  transform: translateX(-50%);
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .ttl {
  width: auto;
  height: 75px;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .illust {
  width: 60%;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item > p {
  display: none;
  text-align: left;
  padding: 0 1em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution {
  position: relative;
  width: calc(100% - 2em);
  margin-top: 0.5em;
  margin-left: 1em;
  margin-right: 1em;
  margin-bottom: 1em;
  padding: 0 1em;
  background-color: #f2f4f5;
  border-radius: 0.25em;
  font-size: 16px;
  letter-spacing: -0.02em;
  overflow: hidden;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1em;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0));
  z-index: 20;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution > h3 {
  position: relative;
  color: #0047a3;
  font-weight: bold;
  text-align: center;
  padding: 1em 0 0.25em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution > h3 .--txt-dots {
  letter-spacing: -0.075em;
  background-size: 0.925em 0.3em;
  background-image: radial-gradient(circle at center, #0047a3 20%, transparent 20%);
  background-position: top right;
  background-repeat: repeat-x;
  padding-top: 0.1em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution > h3:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 28;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.75em solid transparent;
  border-left: 0.75em solid transparent;
  border-top: 0.75em solid white;
  border-bottom: 0;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution > h3 br {
  display: none;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution p {
  padding-bottom: 1em;
  margin-top: 0;
  list-style: none;
  padding-left: 0.75em;
  width: 100%;
  position: relative;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution p:before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: -0.5em;
  background-image: url("../images/_svg/btn_circle_fill_arrow-carrot_right_blue.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 1em;
  height: 1em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution p a {
  color: #000000;
  text-decoration: none;
  padding: 0.25em 0;
  display: block;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .bad-case-card-solution p a:hover {
  color: #0047a3;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl {
  display: none;
  position: relative;
  width: calc(100% - 4em);
  margin-top: 0.5em;
  margin-left: 1em;
  margin-right: 1em;
  margin-bottom: 1em;
  padding: 0 1em;
  background-color: #f2f4f5;
  border-radius: 0.25em;
  font-size: 14px;
  letter-spacing: -0.02em;
  overflow: hidden;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl {
    font-size: calc(100 / 750 * calc(24 * 1) * 1vw);
  }
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1em;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0));
  z-index: 20;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt {
  position: relative;
  color: white;
  color: #0047a3;
  font-weight: bold;
  text-align: center;
  padding: 1em 0 0.5em;
  font-size: 16px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt .--txt-dots {
  letter-spacing: -0.075em;
  background-size: 0.925em 0.3em;
  background-image: radial-gradient(circle at center, #0047a3 20%, transparent 20%);
  background-position: top right;
  background-repeat: repeat-x;
  padding-top: 0.1em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 28;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.75em solid transparent;
  border-left: 0.75em solid transparent;
  border-top: 0.75em solid white;
  border-bottom: 0;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt br {
  display: none;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dd {
  padding-bottom: 1em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dd ul {
  margin-top: 0;
  margin-left: 0;
  list-style: none;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dd ul li {
  padding-left: 0.75em;
  position: relative;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dd ul li:before {
  content: "";
  position: absolute;
  top: 0.8em;
  left: 0;
  background-image: url("../images/_svg/btn_arrow-carrot_right_blue.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 0.5em;
  height: 0.5em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dd ul li a {
  color: white;
  color: #2748a1;
  color: #000000;
  padding: 0.25em 0;
  display: block;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dd ul li a:hover {
  color: #0047a3;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item:nth-child(n-4) > p {
  min-height: 4.5em;
}
body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item:nth-child(n+5) > p {
  min-height: 4.5em;
}
body.home #bud-case-sec .bud-case-content .reason {
  margin-top: calc(60 * 1px);
  border: 10px solid #a7dff3;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .reason {
    margin-top: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #bud-case-sec .bud-case-content .reason h3, body.home #bud-case-sec .bud-case-content .reason p {
  text-align: center;
  font-weight: 700;
  padding: 1em;
}
body.home #bud-case-sec .bud-case-content .reason h3 {
  line-height: 1.5;
  font-size: 32px;
  background-color: white;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .reason h3 {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
body.home #bud-case-sec .bud-case-content .reason p {
  line-height: 1.25;
  font-size: 32px;
  background-color: #e3f4fe;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .reason p {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
body.home #bud-case-sec .bud-case-content .reason p span.--txt-small {
  display: block;
}
body.home #bud-case-sec .bud-case-content .reason p:after {
  content: "";
  position: absolute;
  display: block;
  width: calc(46 * 1px);
  height: calc(68 * 1px);
  background-image: url(../images/_svg/bud-case-arrow-magenta.svg);
  background-repeat: no-repeat;
  background-size: contain;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(68 * -1 * 0.75 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #bud-case-sec .bud-case-content .bud-case-content-list {
    gap: 4em 1em;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item {
    padding-bottom: 1em;
    width: calc((100% - 3em) / 4);
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .ttl {
    height: calc(68 / 1162 * 100vw);
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl {
    width: calc(100% - 2em);
    margin-left: 0.5em;
    margin-right: 0.5em;
    margin-bottom: 0;
    padding: 0 0.5em;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt .icon-d-line {
    display: none;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item dl dt br {
    display: block;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #bud-case-sec .bud-case-content .bud-case-content-list {
    flex-wrap: wrap;
    gap: 2em 1em;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item {
    width: calc((100% - 1em) / 2);
    padding-top: 10vw;
    padding-bottom: 4vw;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .target {
    top: -4vw;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .ttl {
    height: 16vw;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item .illust {
    width: 60%;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item p {
    text-align: center;
    padding: 0 1em;
  }
  body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item:nth-child(7) .ttl, body.home #bud-case-sec .bud-case-content .bud-case-content-list .bud-case-content-list__item:nth-child(8) .ttl {
    height: 24vw;
  }
  body.home #bud-case-sec .bud-case-content .reason p:after {
    width: calc(46 * 1 / 750 * 100vw);
    height: calc(68 * 1 / 750 * 100vw);
    bottom: calc(68 * -1 * 0.75 / 750 * 100vw);
  }
}

/* =================================================================================

20 SOLUTION

================================================================================= */
body.home #solution-sec .solution-header {
  z-index: 24;
  background-color: #0072bd;
  position: relative;
  padding-top: calc(40 * 1px);
  padding-bottom: calc(40 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-header {
    padding-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-header {
    padding-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-header {
    padding-bottom: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-header {
    padding-bottom: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-header:after {
  content: "";
  position: absolute;
  bottom: calc(calc(40 / 1 * 1px) * -1);
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: calc(calc(72 / 1 * 1px) / 2) solid transparent;
  border-left: calc(calc(72 / 1 * 1px) / 2) solid transparent;
  border-top: calc(40 / 1 * 1px) solid #0072bd;
  border-bottom: 0;
}
body.home #solution-sec .solution-header .heading-wrap .heading .heading-main {
  line-height: 1.5;
  padding-bottom: 0;
}
body.home #solution-sec .solution-header .heading-wrap .heading .heading-main .--txt-dots {
  letter-spacing: -0.075em;
  background-size: 0.925em 0.3em;
  background-image: radial-gradient(circle at center, #fcff00 20%, transparent 20%);
  background-position: top right;
  background-repeat: repeat-x;
  padding-top: 0.1em;
}
body.home #solution-sec .solution-header .heading-wrap .heading .heading-main .--txt-col-white .--txt-small:nth-child(1) {
  margin-left: -0.5em;
  margin-right: -0.5em;
}
body.home #solution-sec .solution-header .heading-wrap .heading .heading-main .--txt-col-white .--txt-small:nth-child(2) {
  margin-left: -0.5em;
}
body.home #solution-sec .solution-header .heading-wrap .heading .heading-main .tsumazuki {
  font-size: 0.8em;
  margin-top: 0.5em;
  display: inline-block;
  background-color: white;
  padding: 0.1em 1em 0.2em;
  line-height: 1.1;
}
body.home #solution-sec .bud-case-solution-list-wrap {
  text-align: center;
  margin-bottom: 3em;
}
body.home #solution-sec .bud-case-solution-list-wrap .container {
  padding: 1.5em;
  border: 4px solid white;
  margin-left: auto;
  margin-right: auto;
}
body.home #solution-sec .bud-case-solution-list-wrap p {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 1em;
  line-height: 1;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .bud-case-solution-list-wrap p {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #solution-sec .bud-case-solution-list-wrap ul {
  display: inline-flex;
  gap: 2em;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0;
  list-style: none;
  flex-wrap: wrap;
}
body.home #solution-sec .bud-case-solution-list-wrap ul li {
  width: 30%;
  font-weight: 700;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  text-align: left;
  font-size: 22px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .bud-case-solution-list-wrap ul li {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #solution-sec .bud-case-solution-list-wrap ul li img {
  width: 1.5em;
  margin-right: 0.5em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .bud-case-solution-list-wrap ul {
    flex-direction: column;
    gap: 1em;
  }
  body.home #solution-sec .bud-case-solution-list-wrap ul li {
    width: 100%;
    font-weight: 700;
  }
}
body.home #solution-sec .solution-volume-content {
  background-image: url(../images/bg-light-bule.jpg);
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
}
body.home #solution-sec .solution-volume-content .c-media-text-content__body .c-media-text-content__title img {
  height: 50px;
}
body.home #solution-sec .solution-quality-content {
  background-image: url(../images/bg-bule.jpg);
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
}
body.home #solution-sec .solution-quality-content .c-media-text-content__body .c-media-text-content__title img {
  height: 80px;
}
body.home #solution-sec .solution-content {
  z-index: 22;
}
body.home #solution-sec .solution-content .content-sec-inner h3 {
  text-align: center;
  font-size: 40px;
  margin-bottom: calc(40 * 1px);
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner h3 {
    font-size: calc(100 / 750 * calc(42 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner h3 {
    margin-bottom: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner h3 {
    margin-bottom: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner h3 .bg-square {
  padding: 0 0.3em 0.1em 0.3em;
  margin: 0 0.25em;
  background-color: #1c1f5e;
  color: white;
  line-height: 1;
}
body.home #solution-sec .solution-content .content-sec-inner .copy {
  background-color: #0072bd;
  text-align: center;
  padding-top: calc(40 * 1px);
  padding-bottom: calc(40 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .copy {
    padding-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .copy {
    padding-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .copy {
    padding-bottom: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .copy {
    padding-bottom: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .copy img {
  height: 127px;
  width: auto;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content {
  background-color: white;
  padding-left: calc(60 * 1px);
  padding-right: calc(60 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content {
    padding-left: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content {
    padding-left: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content {
    padding-right: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content {
    padding-right: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow {
  padding-top: calc(60 * 1px);
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n) .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) .c-media-text-content__body {
  padding-left: calc(40 * 1px);
  padding-right: calc(60 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n) .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) .c-media-text-content__body {
    padding-left: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n) .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) .c-media-text-content__body {
    padding-left: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n) .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) .c-media-text-content__body {
    padding-right: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n) .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) .c-media-text-content__body {
    padding-right: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow {
    padding-top: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow {
    padding-top: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
  padding-top: calc(20 * 1px);
  padding-left: calc(60 * 1px);
  padding-right: calc(40 * 1px);
  z-index: 21;
  width: 57.8%;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-top: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-top: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-left: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-left: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-right: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-right: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .num, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .num,
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title,
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
  position: relative;
  z-index: 22;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .num img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .num img {
  width: auto;
  height: 32px;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title {
  margin-top: 0.5em;
  margin-bottom: 0;
  text-align: left;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title img {
  width: auto;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
  font-size: 18px;
  line-height: 2;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body ol, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body ol, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body ul, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body ul {
  margin: 0;
  padding-left: 1.5em;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img {
  z-index: 24;
  width: calc(100% - 57.8%);
  height: auto;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .free-label, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .free-label {
  position: absolute;
  z-index: 38;
  top: 0.5em;
  left: 0.5em;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .free-label img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .free-label img {
  width: 74px;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .caption, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .caption {
  font-size: 12px;
  text-align: center;
  display: block;
  line-height: 1;
  margin-top: 0.5em;
  color: #454545;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .caption, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .caption {
    font-size: calc(12 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .caption, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .caption {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .thumb-wrap, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .thumb-wrap {
  position: relative;
  z-index: 32;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.5em;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .thumb-wrap .thumb, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .thumb-wrap .thumb {
  width: calc((100% - 0.5em) / 2);
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .thumb-wrap .thumb figure, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .thumb-wrap .thumb figure {
  display: block;
}
body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .thumb-wrap .thumb figure img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .thumb-wrap .thumb figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top;
}
body.home #solution-sec .solution-content .content-sec-inner .after-content {
  background-color: white;
  padding-top: calc(100 * 1px);
  padding-left: calc(20 * 1px);
  padding-right: calc(20 * 1px);
  padding-bottom: calc(20 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-top: calc(100 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-top: calc(100 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-left: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-left: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-right: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-right: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-bottom: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-bottom: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
  padding-top: calc(60 * 1px);
  padding-left: calc(60 * 1px);
  padding-right: calc(60 * 1px);
  padding-bottom: calc(60 * 1px);
  background-color: #dceefc;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-top: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-top: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-left: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-left: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-right: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-right: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-bottom: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-bottom: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container h3 {
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateX(-50%);
  width: 450px;
}
body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body {
  width: 70%;
  padding-right: calc(20 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-right: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    padding-right: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title {
  font-size: 32px;
  color: #1c1f5e;
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.5;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
  font-size: 18px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__img, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__img {
  width: 30%;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container h3 img {
  height: 73px;
  width: auto;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .pc_flex-only {
  gap: 2em;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
  padding-top: calc(40 * 1px);
  padding-left: calc(40 * 1px);
  padding-right: calc(40 * 1px);
  background-color: white;
  border-radius: 1em;
  width: calc((100% - 2em) / 2);
  padding-bottom: calc(calc(6 * 1em) + 2em);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-left: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-left: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-right: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-right: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item:after {
  content: "";
  position: absolute;
  width: 35%;
  aspect-ratio: 515/755;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: bottom center;
  bottom: calc((calc(20 * 1px) + calc(60 * 1px)) * -1);
  right: -1em;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item:first-child:after {
  background-image: url("../images/_svg/solution-quality-illust-1.svg");
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item:last-child:after {
  background-image: url("../images/_svg/solution-quality-illust-2.svg");
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item H4 {
  margin-bottom: calc(20 * 1px);
  font-size: 26px;
  text-align: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item H4 {
    margin-bottom: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item H4 {
    margin-bottom: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item H4 {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item H4:after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  background-color: #3ab6f9;
  margin: 0.5em auto 0;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl {
  position: relative;
  margin-top: 0.5em;
  margin-bottom: 0;
  padding-left: calc(calc(1.5 * 1em) + 0.5em);
  display: flex;
  line-height: 1.5;
  width: 88%;
  font-size: 22px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("../images/_svg/icon_box-checked_magenta.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: calc(1.5 * 1em);
  height: calc(1.5 * 1em);
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl dt {
  font-weight: 700;
  width: 3em;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl dd {
  flex: 1;
}
body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item .illust-up {
  position: absolute;
  height: calc(6 * 1em);
  width: auto;
  bottom: 1em;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #solution-sec .solution-content .c-media-text-content__body .c-media-text-content__title {
    line-height: 1;
  }
  body.home #solution-sec .solution-volume-content .c-media-text-content__body .c-media-text-content__title img {
    height: calc(50 / 1162 * 100vw);
  }
  body.home #solution-sec .solution-quality-content .c-media-text-content__body .c-media-text-content__title img {
    height: calc(80 / 1162 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-volume-content {
    background-size: contain;
    background-color: #a8e7ff;
  }
  body.home #solution-sec .solution-volume-content .c-media-text-content__body .c-media-text-content__title img {
    height: 8.8vw;
  }
  body.home #solution-sec .solution-quality-content {
    background-size: contain;
    background-color: #5bbfff;
  }
  body.home #solution-sec .solution-quality-content .c-media-text-content__body .c-media-text-content__title img {
    height: 17.6vw;
  }
  body.home #solution-sec .solution-content .content-sec-inner .copy img {
    height: 16vw;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content {
    padding: calc(100 / 750 * 40 * 1vw);
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n), body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) {
    flex-direction: column-reverse;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(2n) .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(2n) .c-media-text-content__body {
    padding-left: 0;
    padding-right: 0;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal:nth-child(n+2), body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow:nth-child(n+2) {
    padding-top: 10vw;
    margin-top: 10vw;
    border-top: 1px solid #ededed;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    position: relative;
    z-index: 34;
    padding-top: 7.5vw;
    padding-right: 0;
    padding-left: 0;
    width: 100%;
    text-align: center;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .num img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .num img {
    height: 7.5vw;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title {
    margin-top: 0;
    text-align: center;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
    text-align: left;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body ol, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body ol, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__body ul, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__body ul {
    text-align: left;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img {
    position: relative;
    z-index: 32;
    width: 100%;
  }
  body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal .c-media-text-content__img .free-label img, body.home #solution-sec .solution-content .content-sec-inner .solution-inner-content .c-media-text-content--horizontal-arrow .c-media-text-content__img .free-label img {
    width: 14vw;
  }
  body.home #solution-sec .solution-content .content-sec-inner .after-content {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
    padding-bottom: calc(100 / 750 * 40 * 1vw);
  }
  body.home #solution-sec .solution-content .content-sec-inner .after-content .container {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
    padding-bottom: calc(100 / 750 * 40 * 1vw);
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container h3 {
    width: 80%;
    top: -4.5vw;
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    width: 100%;
    padding-right: 0;
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title {
    margin-top: 0;
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .c-media-text-content__title br, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .c-media-text-content__title br {
    display: none;
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
    margin-top: 0.5em;
    font-size: 18px;
  }
}
@media only screen and (max-width: calc(768 * 1px)) and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__body .description, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__body .description {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__img, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__img {
    width: 100%;
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__img figure, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__img figure {
    text-align: center;
  }
  body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal .c-media-text-content__img figure img, body.home #solution-sec .solution-content .content-sec-inner .motivation-management .container .c-media-text-content--horizontal-arrow .c-media-text-content__img figure img {
    width: 60%;
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container h3 img {
    height: auto;
    width: 100%;
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
    width: 100%;
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item:after {
    width: 30%;
    background-position: bottom center;
    bottom: 0;
    right: 20%;
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item H4:after {
    height: 1vw;
    margin: 0.1em auto 0;
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl {
    width: calc(100% - 3em);
    padding-left: calc(calc(1.25 * 1em) + 0.5em);
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item dl:before {
    width: calc(1.25 * 1em);
    height: calc(1.25 * 1em);
  }
  body.home #solution-sec .solution-content .content-sec-inner .strong-subject .container .strong-subject-item .illust-up {
    height: calc(16 * 1vw);
    left: 10%;
    transform: translateX(0%);
  }
}

/* =================================================================================

40 Comparison

================================================================================= */
body.home #comparison-sec {
  position: relative;
  z-index: 40;
}
body.home #comparison-sec .comparison-header .heading-wrap .heading .heading-main img {
  width: auto;
  height: 129px;
}
body.home #comparison-sec .comparison-content {
  /* スクロールアイコン */
}
body.home #comparison-sec .comparison-content .scroll-container {
  position: relative;
}
body.home #comparison-sec .comparison-content .icon-scroll {
  position: absolute; /* 親要素（.scroll-container）を基準に配置 */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 130px;
  height: auto;
  z-index: 40;
  pointer-events: none; /* ユーザー操作を無効化 */
  opacity: 1; /* 初期状態で表示 */
  transition: opacity 0.5s ease; /* フェードアウトのアニメーション */
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content .icon-scroll {
    width: 30vw;
  }
}
body.home #comparison-sec .comparison-content .scroll-box {
  cursor: grab; /* 通常時のカーソルを手のマークに変更 */
  cursor: -webkit-grab; /* Safari対応 */
}
body.home #comparison-sec .comparison-content .scroll-box.--sp-only-scroll {
  cursor: initial;
  cursor: initial;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content .scroll-box.--sp-only-scroll {
    cursor: grab; /* 通常時のカーソルを手のマークに変更 */
    cursor: -webkit-grab; /* Safari対応 */
  }
}
body.home #comparison-sec .comparison-content .scroll-box:active {
  cursor: grabbing; /* マウス押下中のカーソル */
  cursor: -webkit-grabbing; /* Safari対応 */
}
body.home #comparison-sec .comparison-content .scroll-box:active.--sp-only-scroll {
  cursor: initial;
  cursor: initial;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content .scroll-box:active.--sp-only-scroll {
    cursor: grabbing; /* マウス押下中のカーソル */
    cursor: -webkit-grabbing; /* Safari対応 */
  }
}
body.home #comparison-sec .comparison-content .scroll-box.dragging {
  cursor: grabbing; /* ドラッグ中のカーソルスタイル */
  cursor: -webkit-grabbing; /* Safari対応 */
}
body.home #comparison-sec .comparison-content .scroll-box.dragging.--sp-only-scroll {
  cursor: initial;
  cursor: initial;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content .scroll-box.dragging.--sp-only-scroll {
    cursor: grabbing; /* ドラッグ中のカーソルスタイル */
    cursor: -webkit-grabbing; /* Safari対応 */
  }
}
body.home #comparison-sec .comparison-content .scroll-box {
  overflow-x: auto;
  display: flex;
  justify-content: flex-start;
}
body.home #comparison-sec .comparison-content table, body.home #comparison-sec .comparison-content td, body.home #comparison-sec .comparison-content th {
  border: none;
}
body.home #comparison-sec .comparison-content .comparison-table-wrap {
  display: flex;
}
body.home #comparison-sec .comparison-content table.comparison-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  /* ------------------------------------------------------
  TD カラー
  ------------------------------------------------------ */
  /* ------------------------------------------------------
  ボーダー
  ------------------------------------------------------ */
}
body.home #comparison-sec .comparison-content table.comparison-table thead tr th {
  padding: 1em;
}
body.home #comparison-sec .comparison-content table.comparison-table thead tr th .txt {
  font-size: 22px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content table.comparison-table thead tr th .txt {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #comparison-sec .comparison-content table.comparison-table thead tr th .txt.urawamirai {
  color: #0044b2;
}
body.home #comparison-sec .comparison-content table.comparison-table thead tr th .txt.ippan {
  color: #000000;
}
body.home #comparison-sec .comparison-content table.comparison-table th, body.home #comparison-sec .comparison-content table.comparison-table td {
  position: relative;
  padding: 0;
  text-align: center;
  line-height: 1.25;
  font-size: 22px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content table.comparison-table th, body.home #comparison-sec .comparison-content table.comparison-table td {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body.home #comparison-sec .comparison-content table.comparison-table th .container, body.home #comparison-sec .comparison-content table.comparison-table td .container {
  padding: 1.5em;
  height: 100%;
}
body.home #comparison-sec .comparison-content table.comparison-table th.sticky-col {
  background-color: white;
}
body.home #comparison-sec .comparison-content table.comparison-table th .container {
  color: #1c1f5e;
  width: 200px;
}
body.home #comparison-sec .comparison-content table.comparison-table td {
  overflow: hidden;
}
body.home #comparison-sec .comparison-content table.comparison-table td .container {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
body.home #comparison-sec .comparison-content table.comparison-table td .container .icon {
  width: 2.4em;
  margin-right: 0.5em;
}
body.home #comparison-sec .comparison-content table.comparison-table td .container .txt {
  text-align: left;
}
body.home #comparison-sec .comparison-content table.comparison-table td .container .txt.urawamirai {
  font-weight: 700;
  color: #0044b2;
}
body.home #comparison-sec .comparison-content table.comparison-table thead tr th:nth-last-child(2) {
  background-color: #c5f0ff;
}
body.home #comparison-sec .comparison-content table.comparison-table thead tr th:last-child {
  background-color: #e0e3e4;
}
body.home #comparison-sec .comparison-content table.comparison-table tr td:nth-last-child(2) {
  background-color: #e3f4fe;
}
body.home #comparison-sec .comparison-content table.comparison-table tr:not(.header):last-child th {
  border-bottom: 6px solid white;
}
body.home #comparison-sec .comparison-content table.comparison-table tr:not(.header):last-child td:nth-last-child(2) {
  border-bottom: 6px solid #c5f0ff;
}
body.home #comparison-sec .comparison-content table.comparison-table tr:not(.header):last-child td:last-child {
  border-bottom: 6px solid #e0e3e4;
}
body.home #comparison-sec .comparison-content table.comparison-table th:before, body.home #comparison-sec .comparison-content table.comparison-table td:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #efefef;
  bottom: 0;
  left: 0;
}
body.home #comparison-sec .comparison-content table.comparison-table td:nth-last-child(2) .container:before, body.home #comparison-sec .comparison-content table.comparison-table td:nth-last-child(2) .container:after {
  content: "";
  position: absolute;
  width: 6px;
  height: 300%;
  top: 50%;
  transform: translateY(-50%);
  background-color: #c5f0ff;
}
body.home #comparison-sec .comparison-content table.comparison-table td:nth-last-child(2) .container:before {
  left: 0;
}
body.home #comparison-sec .comparison-content table.comparison-table td:nth-last-child(2) .container:after {
  right: 0;
}
body.home #comparison-sec .comparison-content table.comparison-table td:last-child .container:before, body.home #comparison-sec .comparison-content table.comparison-table td:last-child .container:after {
  content: "";
  position: absolute;
  width: 6px;
  height: 300%;
  top: 50%;
  transform: translateY(-50%);
  background-color: #e0e3e4;
}
body.home #comparison-sec .comparison-content table.comparison-table td:last-child .container:before {
  left: 0;
}
body.home #comparison-sec .comparison-content table.comparison-table td:last-child .container:after {
  right: 0;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #comparison-sec .comparison-content table.comparison-table {
    width: initial;
    table-layout: fixed;
  }
  body.home #comparison-sec .comparison-content table.comparison-table th .container .txt,
  body.home #comparison-sec .comparison-content table.comparison-table td .container .txt {
    white-space: nowrap; /* 横スクロールを強制 */
  }
  body.home #comparison-sec .comparison-content table.comparison-table .sticky-col {
    width: 4em;
    position: sticky;
    left: 0;
    z-index: 2; /* スクロールした際の重なり対策 */
  }
}
@media only screen and (max-width: 1030px) {
  body.home #comparison-sec .comparison-header .heading-wrap .heading .heading-main img {
    height: 22vw;
  }
  body.home #comparison-sec .comparison-content {
    /* ------------------------------------------------------
    ボーダー
    ------------------------------------------------------ */
  }
  body.home #comparison-sec .comparison-content table.comparison-table th .container, body.home #comparison-sec .comparison-content table.comparison-table td .container {
    padding: 0.75em;
  }
  body.home #comparison-sec .comparison-content table.comparison-table th {
    padding: 0.75em;
  }
  body.home #comparison-sec .comparison-content table.comparison-table th .container {
    width: 3em;
    padding: 0;
  }
  body.home #comparison-sec .comparison-content table.comparison-table td {
    width: 50vw;
  }
  body.home #comparison-sec .comparison-content table.comparison-table td .container {
    flex-direction: column;
  }
  body.home #comparison-sec .comparison-content table.comparison-table td .container .icon {
    width: 2.4em;
    margin-right: 0;
    margin-bottom: 0.5em;
  }
  body.home #comparison-sec .comparison-content table.comparison-table td .container .txt {
    text-align: center;
  }
  body.home #comparison-sec .comparison-content tr:not(.header):last-child th {
    border-bottom: 3px solid white;
  }
  body.home #comparison-sec .comparison-content tr:not(.header):last-child td:nth-last-child(2) {
    border-bottom: 3px solid #c5f0ff;
  }
  body.home #comparison-sec .comparison-content tr:not(.header):last-child td:last-child {
    border-bottom: 3px solid #e0e3e4;
  }
  body.home #comparison-sec .comparison-content td:nth-last-child(2) .container:before, body.home #comparison-sec .comparison-content td:nth-last-child(2) .container:after {
    width: 3px;
  }
  body.home #comparison-sec .comparison-content td:last-child .container:before, body.home #comparison-sec .comparison-content td:last-child .container:after {
    width: 3px;
  }
}

/* =================================================================================

50 Result

================================================================================= */
body.home #result-sec {
  position: relative;
  z-index: 50;
  background-color: #0072bd;
}
body.home #result-sec .result-header {
  position: relative;
}
body.home #result-sec .result-header .heading {
  position: absolute;
  z-index: 52;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
  text-align: center;
}
body.home #result-sec .result-header .heading .heading-main {
  display: block;
  font-size: 50px;
  color: white;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-header .heading .heading-main {
    font-size: calc(100 / 750 * calc(54 * 1) * 1vw);
  }
}
body.home #result-sec .result-header .heading .heading-sub {
  background-color: white;
  color: #0044b2;
  font-size: 26px;
  padding: 0.1em 1em 0.2em;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-header .heading .heading-sub {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #result-sec .result-header .scroll-infinity {
  z-index: 50;
  background-color: #a4bcd1;
}
body.home #result-sec .result-header .scroll-infinity .scroll-infinity__item {
  width: 80vw;
}
body.home #result-sec .result-content .result-content-inner {
  margin-top: calc(-60 * 1px);
  padding-top: calc(40 * 1px);
  padding-left: calc(20 * 1px);
  padding-right: calc(20 * 1px);
  padding-bottom: calc(30 * 1px);
  background-color: #2748a1;
  z-index: 54;
  position: relative;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    margin-top: calc(-60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    margin-top: calc(-60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-left: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-left: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-right: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-right: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-bottom: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner {
    padding-bottom: calc(30 / 768 * 1 * 100vw);
  }
}
body.home #result-sec .result-content .result-content-inner .copy-wrap {
  text-align: center;
}
body.home #result-sec .result-content .result-content-inner .copy-wrap .copy {
  width: auto;
  height: 67px;
}
body.home #result-sec .result-content .result-content-inner .authority {
  margin-left: 0;
  margin-top: calc(40 * 1px);
  align-items: flex-start;
  justify-content: center;
  list-style: none;
  gap: 1em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .authority {
    margin-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .authority {
    margin-top: calc(40 / 768 * 1 * 100vw);
  }
}
body.home #result-sec .result-content .result-content-inner .authority .authority__item img {
  height: 160px;
  width: auto;
}
body.home #result-sec .result-content .result-content-inner .result-high-school {
  margin-top: calc(30 * 1px);
  padding-top: calc(30 * 1px);
  padding-left: calc(40 * 1px);
  padding-right: calc(40 * 1px);
  padding-bottom: calc(30 * 1px);
  background-color: white;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    margin-top: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    margin-top: calc(30 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-top: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-top: calc(30 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-left: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-left: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-right: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-right: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-bottom: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    padding-bottom: calc(30 / 768 * 1 * 100vw);
  }
}
body.home #result-sec .result-content .result-content-inner .result-high-school h3.heading {
  font-size: 26px;
  background-color: #ffa800;
  font-weight: 700;
  color: white;
  text-align: center;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school h3.heading {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only {
  margin-top: calc(20 * 1px);
  gap: 2em;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only {
    margin-top: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only {
    margin-top: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:first-child {
  width: calc((100% - 2em) / 3);
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:last-child {
  width: calc((100% - 2em) / 3 * 2);
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:last-child .wrap {
  display: flex;
  gap: 2em;
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:last-child .wrap ul {
  width: calc((100% - 2em) / 2);
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item .heading-under-line {
  font-size: 22px;
  border-bottom: 1px solid #2748a1;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item .heading-under-line {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item ul {
  margin-left: 1.5em;
}
body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item ul li {
  font-size: 18px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item ul li {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #result-sec .result-content .sec-cta .btn-top-txt {
  width: 55%;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #result-sec .result-content .result-content-inner .copy-wrap .copy {
    height: 6vw;
  }
  body.home #result-sec .result-content .result-content-inner .authority .authority__item img {
    height: 13vw;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #result-sec .result-header .heading .heading-sub .sp-br-firslt {
    padding-left: 1em;
  }
  body.home #result-sec .result-header .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item {
    width: 140vw;
  }
  body.home #result-sec .result-content .result-content-inner {
    padding-top: 8vw;
  }
  body.home #result-sec .result-content .result-content-inner .copy-wrap .copy {
    height: 21vw;
  }
  body.home #result-sec .result-content .result-content-inner .authority {
    margin-top: 8vw;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5em 1em;
  }
  body.home #result-sec .result-content .result-content-inner .authority .authority__item img {
    height: 20vw;
  }
  body.home #result-sec .result-content .result-content-inner .result-high-school {
    margin-top: 8vw;
  }
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only {
    gap: 1em;
  }
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:first-child {
    width: 100%;
  }
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:last-child {
    width: 100%;
  }
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:last-child .wrap {
    gap: 1em;
  }
  body.home #result-sec .result-content .result-content-inner .result-high-school .pc_flex-only .pc_flex-only_item:last-child .wrap ul {
    width: calc((100% - 1em) / 2);
  }
}

/* =================================================================================

60 Success Story
70 Trial Lesson

================================================================================= */
body.home #success-story-sec .content-sec,
body.home #trial-lesson-sec .content-sec {
  overflow: visible;
  position: relative;
  padding-bottom: calc(100 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec,
  body.home #trial-lesson-sec .content-sec {
    padding-bottom: calc(100 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec,
  body.home #trial-lesson-sec .content-sec {
    padding-bottom: calc(100 / 768 * 1 * 100vw);
  }
}
body.home #success-story-sec .content-sec .container,
body.home #trial-lesson-sec .content-sec .container {
  position: relative;
}
body.home #success-story-sec .content-sec .container .swiper,
body.home #trial-lesson-sec .content-sec .container .swiper {
  width: 70vw;
  overflow: visible;
}
body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
  padding-top: calc(30 * 1px);
  padding-bottom: calc(30 * 1px);
  padding-left: calc(40 * 1px);
  padding-right: calc(20 * 1px);
  border-radius: 0.5em;
  box-shadow: 0 0.2em 2em 0 rgba(0, 0, 0, 0.05);
  background-color: white;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-top: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-top: calc(30 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-bottom: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-bottom: calc(30 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-left: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-left: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-right: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide {
    padding-right: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #success-story-sec .content-sec .container .swiper .swiper-slide .swiper-slide__inner,
body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide .swiper-slide__inner {
  padding-right: calc(20 * 1px);
  overflow: scroll;
  height: 70vh;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide .swiper-slide__inner,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide .swiper-slide__inner {
    padding-right: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper .swiper-slide .swiper-slide__inner,
  body.home #trial-lesson-sec .content-sec .container .swiper .swiper-slide .swiper-slide__inner {
    padding-right: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #success-story-sec .content-sec .container .swiper-pagination,
body.home #trial-lesson-sec .content-sec .container .swiper-pagination {
  bottom: calc(-40 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper-pagination,
  body.home #trial-lesson-sec .content-sec .container .swiper-pagination {
    bottom: calc(-40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .swiper-pagination,
  body.home #trial-lesson-sec .content-sec .container .swiper-pagination {
    bottom: calc(-40 / 768 * 1 * 100vw);
  }
}
body.home #success-story-sec .content-sec .container .swiper-navigation-icon,
body.home #trial-lesson-sec .content-sec .container .swiper-navigation-icon {
  display: none; /* もしくは display:none; */
}
body.home #success-story-sec .content-sec .container .swiper-button-prev,
body.home #success-story-sec .content-sec .container .swiper-button-next,
body.home #trial-lesson-sec .content-sec .container .swiper-button-prev,
body.home #trial-lesson-sec .content-sec .container .swiper-button-next {
  background-color: #1c1f5e;
  height: 5em;
  width: 3em;
  color: white;
  top: 36%;
}
body.home #success-story-sec .content-sec .container .swiper-button-prev:after,
body.home #success-story-sec .content-sec .container .swiper-button-next:after,
body.home #trial-lesson-sec .content-sec .container .swiper-button-prev:after,
body.home #trial-lesson-sec .content-sec .container .swiper-button-next:after {
  font-size: 2em;
}
body.home #success-story-sec .content-sec .container .swiper-button-prev,
body.home #trial-lesson-sec .content-sec .container .swiper-button-prev {
  left: 0;
}
body.home #success-story-sec .content-sec .container .swiper-button-next,
body.home #trial-lesson-sec .content-sec .container .swiper-button-next {
  right: 0;
}
body.home #success-story-sec .content-sec .container .profile,
body.home #trial-lesson-sec .content-sec .container .profile {
  display: flex;
  align-items: flex-end;
  border-bottom: 1px solid #1c1f5e;
  padding-bottom: 1em;
  margin-bottom: 1em;
  gap: 0.5em;
  color: #1c1f5e;
  line-height: 1;
}
body.home #success-story-sec .content-sec .container .profile h3,
body.home #trial-lesson-sec .content-sec .container .profile h3 {
  font-size: 32px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .profile h3,
  body.home #trial-lesson-sec .content-sec .container .profile h3 {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
body.home #success-story-sec .content-sec .container .profile p,
body.home #trial-lesson-sec .content-sec .container .profile p {
  font-size: 22px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .profile p,
  body.home #trial-lesson-sec .content-sec .container .profile p {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body.home #success-story-sec .content-sec .container .tab,
body.home #trial-lesson-sec .content-sec .container .tab {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}
body.home #success-story-sec .content-sec .container .tab > label,
body.home #trial-lesson-sec .content-sec .container .tab > label {
  flex: 1 1;
  order: -1;
  position: relative;
  line-height: 1;
  min-width: 70px;
  padding: 0.5em 1em;
  background-color: white;
  color: #4a7c9e;
  border-radius: 0.25em;
  border: 1px solid #0072bd;
  font-size: 0.9em;
  text-align: center;
  cursor: pointer;
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .container .tab > label,
  body.home #trial-lesson-sec .content-sec .container .tab > label {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #success-story-sec .content-sec .container .tab > label:hover,
body.home #success-story-sec .content-sec .container .tab label:has(:checked),
body.home #trial-lesson-sec .content-sec .container .tab > label:hover,
body.home #trial-lesson-sec .content-sec .container .tab label:has(:checked) {
  background-color: #0072bd;
  color: #fff;
}
body.home #success-story-sec .content-sec .container .tab label:has(:checked)::before,
body.home #trial-lesson-sec .content-sec .container .tab label:has(:checked)::before {
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 18px;
  height: 9px;
  background-color: #0072bd;
  content: "";
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
body.home #success-story-sec .content-sec .container .tab input,
body.home #trial-lesson-sec .content-sec .container .tab input {
  display: none;
}
body.home #success-story-sec .content-sec .container .tab > div,
body.home #trial-lesson-sec .content-sec .container .tab > div {
  display: none;
  width: 100%;
}
body.home #success-story-sec .content-sec .container .tab > div > dl dt,
body.home #trial-lesson-sec .content-sec .container .tab > div > dl dt {
  position: relative;
  color: #1c1f5e;
  font-weight: 700;
  padding-left: 0.75em;
}
body.home #success-story-sec .content-sec .container .tab > div > dl dt:before,
body.home #trial-lesson-sec .content-sec .container .tab > div > dl dt:before {
  content: "";
  position: absolute;
  width: 0.5em;
  height: 2px;
  background-color: #1c1f5e;
  top: 0.8em;
  left: 0;
}
body.home #success-story-sec .content-sec .container .tab > div > dl dd,
body.home #trial-lesson-sec .content-sec .container .tab > div > dl dd {
  line-height: 1.5;
}
body.home #success-story-sec .content-sec .container .tab > div > dl dd ul,
body.home #trial-lesson-sec .content-sec .container .tab > div > dl dd ul {
  margin-top: 0;
}
body.home #success-story-sec .content-sec .container .tab label:has(:checked) + div,
body.home #trial-lesson-sec .content-sec .container .tab label:has(:checked) + div {
  display: block;
}
body.home #success-story-sec .content-sec .h-write,
body.home #trial-lesson-sec .content-sec .h-write {
  padding-top: calc(60 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #success-story-sec .content-sec .h-write,
  body.home #trial-lesson-sec .content-sec .h-write {
    padding-top: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec .h-write,
  body.home #trial-lesson-sec .content-sec .h-write {
    padding-top: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #success-story-sec .content-sec .h-write .scroll-infinity,
body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity {
  z-index: 70;
}
body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap,
body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap {
  gap: 0 1em;
}
body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list,
body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list {
  gap: 0 1em;
}
body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item,
body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item {
  width: 15vw;
}
body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item img,
body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item img {
  border: 1px solid #ededed;
}
@media only screen and (max-width: 900px) {
  body.home #success-story-sec .content-sec .container .profile,
  body.home #trial-lesson-sec .content-sec .container .profile {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .content-sec,
  body.home #trial-lesson-sec .content-sec {
    padding-bottom: 20vw;
  }
  body.home #success-story-sec .content-sec .container .swiper,
  body.home #trial-lesson-sec .content-sec .container .swiper {
    width: 80vw;
  }
  body.home #success-story-sec .content-sec .container .swiper-pagination,
  body.home #trial-lesson-sec .content-sec .container .swiper-pagination {
    bottom: -7vw;
  }
  body.home #success-story-sec .content-sec .container .swiper-button-prev,
  body.home #success-story-sec .content-sec .container .swiper-button-next,
  body.home #trial-lesson-sec .content-sec .container .swiper-button-prev,
  body.home #trial-lesson-sec .content-sec .container .swiper-button-next {
    height: 18vw;
    width: 8vw;
  }
  body.home #success-story-sec .content-sec .container .swiper-button-prev:after,
  body.home #success-story-sec .content-sec .container .swiper-button-next:after,
  body.home #trial-lesson-sec .content-sec .container .swiper-button-prev:after,
  body.home #trial-lesson-sec .content-sec .container .swiper-button-next:after {
    font-size: 6vw;
  }
  body.home #success-story-sec .content-sec .h-write,
  body.home #trial-lesson-sec .content-sec .h-write {
    padding-top: 12vw;
  }
  body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap,
  body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap {
    gap: 0 0.5em;
  }
  body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list,
  body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list {
    gap: 0 0.5em;
  }
  body.home #success-story-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item,
  body.home #trial-lesson-sec .content-sec .h-write .scroll-infinity .scroll-infinity__wrap .scroll-infinity__list .scroll-infinity__item {
    width: 30vw;
  }
}

/* =================================================================================

60 Success Story

================================================================================= */
body.home #success-story-sec {
  position: relative;
  z-index: 60;
}
body.home #success-story-sec .success-story-content .swiper .swiper-slide {
  min-width: 280px;
}
body.home #success-story-sec .success-story-content .swiper .swiper-slide .swiper-slide__inner {
  max-height: 820px;
  height: 70vh;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #success-story-sec .success-story-content .swiper .swiper-slide .swiper-slide__inner {
    max-height: 820px;
    height: 70vh;
  }
}

/* =================================================================================

70 Trial Lesson

================================================================================= */
body.home #trial-lesson-sec {
  position: relative;
  z-index: 70;
  background-color: #faf8eb;
}
body.home #trial-lesson-sec .trial-lesson-content .swiper .swiper-slide {
  min-width: 280px;
}
body.home #trial-lesson-sec .trial-lesson-content .swiper .swiper-slide .swiper-slide__inner {
  max-height: 620px;
  height: 50vh;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #trial-lesson-sec .trial-lesson-content .swiper .swiper-slide {
    min-width: 280px;
  }
  body.home #trial-lesson-sec .trial-lesson-content .swiper .swiper-slide .swiper-slide__inner {
    max-height: 620px;
    height: 50vh;
  }
}

/* =================================================================================

80 Campaign

================================================================================= */
body.home #campaign-sec {
  position: relative;
  z-index: 80;
  background-image: url(../images/bg-pink.jpg);
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #ffe5e1;
}
body.home #campaign-sec .campaign-header .heading .heading-main {
  line-height: 1.5;
}
body.home #campaign-sec .campaign-content .count-down-list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2em;
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item {
  text-align: center;
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .heading {
  position: relative;
  border-radius: 0.25em;
  font-size: 22px;
  color: white;
  font-weight: 700;
  background-color: #ffa9a6;
  padding: 0.25em 1em 0.3em;
  line-height: 1.1;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .heading {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .heading:after {
  content: "";
  position: absolute;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  bottom: calc(calc(14 * 1px) * -1);
  border-right: calc(calc(14 * 1px) / 2) solid transparent;
  border-left: calc(calc(14 * 1px) / 2) solid transparent;
  border-top: calc(14 * 1px) solid #ffa9a6;
  border-bottom: 0;
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer {
  margin-top: calc(20 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer {
    margin-top: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer {
    margin-top: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer .txt, body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer .days {
  font-weight: 700;
  line-height: 1;
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer .txt {
  font-size: 26px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer .txt {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer .days {
  font-size: 100px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .count-down-timer .days {
    font-size: calc(100 / 750 * calc(106 * 1) * 1vw);
  }
}
body.home #campaign-sec .campaign-content .campaign {
  border: solid 10px #ffa9a6;
  background-image: url(../images/campaign-paper-snow-bg.png);
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
  margin-top: calc(40 * 1px);
  padding-top: calc(60 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign {
    margin-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign {
    margin-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign {
    padding-top: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign {
    padding-top: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #campaign-sec .campaign-content .campaign .fukidashi {
  position: absolute;
  width: 156px;
  top: -1em;
  left: 10%;
}
body.home #campaign-sec .campaign-content .campaign .heading {
  height: 149px;
  width: auto;
}
body.home #campaign-sec .campaign-content .campaign .campaign-cta {
  background-color: white;
  margin-top: calc(40 * 1px);
  padding-top: calc(20 * 1px);
  padding-left: calc(20 * 1px);
  padding-right: calc(20 * 1px);
  padding-bottom: calc(20 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    margin-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    margin-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-top: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-top: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-left: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-left: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-right: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-right: calc(20 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-bottom: calc(20 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    padding-bottom: calc(20 / 768 * 1 * 100vw);
  }
}
body.home #campaign-sec .campaign-content .campaign .campaign-cta .sec-cta {
  padding: 0;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #campaign-sec .campaign-content .campaign .fukidashi {
    width: 13.4vw;
    top: -1em;
    left: 10%;
  }
  body.home #campaign-sec .campaign-content .campaign .heading {
    height: 12.8vw;
  }
}
@media only screen and (max-width: 980px) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item {
    width: calc((100% - 2em) / 2);
    text-align: center;
  }
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .heading br {
    display: none;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item {
    width: calc((100% - 2em) / 2);
    text-align: center;
  }
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .heading {
    padding-left: 0.5em;
    padding-right: 0.5em;
  }
  body.home #campaign-sec .campaign-content .count-down-list .count-down-list__item .heading br {
    display: block;
  }
  body.home #campaign-sec .campaign-content .campaign {
    background-size: 150%;
    padding-top: 2vw;
  }
  body.home #campaign-sec .campaign-content .campaign .fukidashi {
    width: 20vw;
    top: -2vw;
    left: -6vw;
  }
  body.home #campaign-sec .campaign-content .campaign .heading {
    height: 30vw;
  }
  body.home #campaign-sec .campaign-content .campaign .campaign-cta {
    margin-top: 10vw;
  }
  body.home #campaign-sec .campaign-content .campaign .campaign-cta .sec-cta .btn-top-txt-wrap {
    padding-left: 1em;
    padding-right: 1em;
    text-align: center;
  }
}

/* =================================================================================

90 Flow

================================================================================= */
body.home #flow-sec .flow-area {
  margin-top: calc(30 * 1px);
  padding-left: calc(60 * 1px);
  padding-right: calc(60 * 1px);
  padding-bottom: calc(60 * 1px);
  gap: 2em;
  background-color: #dceefc;
  margin-inline: auto;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area {
    margin-top: calc(30 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area {
    margin-top: calc(30 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area {
    padding-left: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area {
    padding-left: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area {
    padding-right: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area {
    padding-right: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area {
    padding-bottom: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area {
    padding-bottom: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #flow-sec .flow-area .swiper {
  overflow: visible;
}
body.home #flow-sec .flow-area .swiper .flow-item {
  margin-top: -2em;
  padding: 0 1em;
  border-radius: 0.5rem;
}
body.home #flow-sec .flow-area .swiper .flow-item .heading {
  margin-top: calc(10 * 1px);
  font-size: 26px;
  text-align: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area .swiper .flow-item .heading {
    margin-top: calc(10 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area .swiper .flow-item .heading {
    margin-top: calc(10 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area .swiper .flow-item .heading {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #flow-sec .flow-area .swiper .flow-item .description {
  margin-top: calc(10 * 1px);
  font-size: 18px;
  text-align: center;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area .swiper .flow-item .description {
    margin-top: calc(10 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area .swiper .flow-item .description {
    margin-top: calc(10 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area .swiper .flow-item .description {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #flow-sec .flow-area {
    padding-left: 3vw;
    padding-right: 3vw;
    padding-bottom: 12vw;
  }
  body.home #flow-sec .flow-area .swiper .flow-item {
    margin-top: -2vw;
    padding: 0 1vw;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #flow-sec .flow-area .swiper {
    overflow: hidden;
    width: 70vw;
  }
  body.home #flow-sec .flow-area .swiper .flow-item {
    margin-top: 6vw;
  }
  body.home #flow-sec .swiper-navigation-icon {
    display: none; /* もしくは display:none; */
  }
  body.home #flow-sec .swiper-button-prev,
  body.home #flow-sec .swiper-button-next {
    background-color: #1c1f5e;
    height: 5em;
    width: 3em;
    color: white;
    top: 36%;
  }
  body.home #flow-sec .swiper-button-prev:after,
  body.home #flow-sec .swiper-button-next:after {
    font-size: 2em;
  }
  body.home #flow-sec .swiper-button-prev {
    left: 0;
  }
  body.home #flow-sec .swiper-button-next {
    right: 0;
  }
  body.home #flow-sec .swiper-button-prev,
  body.home #flow-sec .swiper-button-next {
    height: 18vw;
    width: 8vw;
  }
  body.home #flow-sec .swiper-button-prev:after,
  body.home #flow-sec .swiper-button-next:after {
    font-size: 6vw;
  }
}

/* =================================================================================

100 FAQ

================================================================================= */
body.home #faq-sec {
  position: relative;
  z-index: 100;
}
body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item {
  padding-top: 1em;
  padding-bottom: 1em;
  border-top: 1px solid #ededed;
}
body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item:last-child {
  border-bottom: 1px solid #ededed;
}
body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item:nth-child(n+2) {
  margin-top: 0;
}
body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item .title .txt {
  font-size: 26px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item .title .txt {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item .content-wrap .content {
  background-color: #fff5f3;
  border-radius: 0.5em;
  padding: 1em;
}
body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item .content-wrap .content .answer-txt {
  font-size: 22px;
  line-height: 1.75;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #faq-sec .faq-wrap .faq-content .c-faq-accordion__item .content-wrap .content .answer-txt {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
/* =================================================================================

110 About

================================================================================= */
body.home #about-sec {
  position: relative;
  z-index: 110;
  background-color: #dceefc;
}
body.home #about-sec .about-content .container:nth-child(n+2) {
  margin-top: 3em;
}
body.home #about-sec .about-content .container .heading {
  font-size: 26px;
  font-weight: 700;
  padding-left: 0.5em;
  position: relative;
  line-height: 1;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #about-sec .about-content .container .heading {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #about-sec .about-content .container .heading:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #0044b2;
  width: 4px;
  height: 90%;
}
body.home #about-sec .about-content .container .content {
  padding: 2em;
  background-color: white;
  margin-top: 1em;
}
body.home #about-sec .about-content .container .content p, body.home #about-sec .about-content .container .content ul {
  font-size: 18px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #about-sec .about-content .container .content p, body.home #about-sec .about-content .container .content ul {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #about-sec .about-content .container .content p:nth-child(n+2), body.home #about-sec .about-content .container .content ul:nth-child(n+2) {
  margin-top: 1em;
}
body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal .c-media-text-content__img, body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal-arrow .c-media-text-content__img {
  width: calc(262 * 1px);
  flex: initial;
}
body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal .c-media-text-content__body, body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal-arrow .c-media-text-content__body {
  width: calc(100% - calc(262 * 1px));
  flex: 1;
}
body.home #about-sec .about-content .container.gmap .gmap-inner {
  height: 450px;
}
body.home #about-sec .about-content .container.gmap .leader-container {
  width: 40%;
  /* Flexboxで左右の要素を並べる */
  display: flex;
  /* 要素間の均等なスペースを確保 */
  justify-content: space-between;
  /* 縦方向の中央揃え (必要に応じて) */
  align-items: center;
  /* テキストが途中で改行しないように */
}
body.home #about-sec .about-content .container.gmap .leader-container .leader {
  width: 4em;
  /* リーダー要素にFlexboxの伸縮性を与え、空間を埋める */
  flex-grow: 1;
  /* 左右のテキストと点線が近すぎないようにマージンを設定 */
  margin: 0 5px;
  /* 実際の点線を::after疑似要素で生成する */
  position: relative;
  /* 高さをゼロにして、点線のみを表示させる */
  height: 0;
}
body.home #about-sec .about-content .container.gmap .leader-container .leader:after {
  content: ""; /* 疑似要素にはcontentが必要 */
  /* 親要素(leader)全体を覆う */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  /* 点線を生成する */
  border-bottom: 1px dotted #999; /* 線の太さと種類、色を指定 */
}
body.home #about-sec .about-content .container.gmap .leader-container .left-text,
body.home #about-sec .about-content .container.gmap .leader-container .right-text {
  white-space: nowrap;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal, body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal-arrow {
    flex-direction: column-reverse;
  }
  body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal .c-media-text-content__img, body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal-arrow .c-media-text-content__img {
    width: 100%;
    text-align: center;
  }
  body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal .c-media-text-content__img img, body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal-arrow .c-media-text-content__img img {
    width: 80%;
  }
  body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal .c-media-text-content__body, body.home #about-sec .about-content .container.profile .c-media-text-content--horizontal-arrow .c-media-text-content__body {
    margin-top: 1em;
    width: 100%;
    flex: initial;
  }
  body.home #about-sec .about-content .container.gmap .gmap-inner {
    height: 60vw;
  }
  body.home #about-sec .about-content .container.gmap .leader-container {
    width: 100%;
    /* Flexboxで左右の要素を並べる */
  }
}

/* =================================================================================

120 Contact

================================================================================= */
body.home #contact-form-sec .contact-form-header .heading-wrap .heading .heading-sub {
  line-height: 1.65;
  margin-bottom: 0;
}
body.home #contact-form-sec .contact-form-header .heading-wrap .heading .heading-sub .txt-dots {
  letter-spacing: -0.075em;
  background-size: 0.925em 0.3em;
  background-image: radial-gradient(circle at center, #000000 20%, transparent 20%);
  background-position: top right;
  background-repeat: repeat-x;
  padding-top: 0.1em;
}
body.home #contact-form-sec .contact-form-header .heading-wrap .heading .heading-main {
  line-height: 1.25;
  font-size: 50px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-header .heading-wrap .heading .heading-main {
    font-size: calc(50 / 1162 * 1 * 100 * 1vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-header .heading-wrap .heading .heading-main {
    font-size: calc(100 / 750 * calc(54 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
  padding-top: calc(40 * 1px);
  padding-bottom: calc(40 * 1px);
  padding-left: calc(60 * 1px);
  padding-right: calc(60 * 1px);
  gap: 0;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-top: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-top: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-bottom: calc(40 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-bottom: calc(40 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-left: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-left: calc(60 / 768 * 1 * 100vw);
  }
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-right: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-right: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #contact-form-sec .contact-form-content .heading-contact-form {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  color: white;
  font-size: 32px;
  padding: 0.1em 1em 0.2em;
  line-height: 1.25;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .heading-contact-form {
    margin-bottom: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .heading-contact-form {
    margin-bottom: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .heading-contact-form {
    font-size: calc(100 / 750 * calc(38 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .heading-contact-form img {
  height: 1em;
  width: auto;
  margin-right: 0.25em;
}
body.home #contact-form-sec .contact-form-content .line-tel .pc_flex-only_item {
  flex: 1;
}
body.home #contact-form-sec .contact-form-content .line-tel .line {
  background-color: #00b900;
  text-align: center;
}
body.home #contact-form-sec .contact-form-content .line-tel .line img.qr-code {
  width: 5em;
}
body.home #contact-form-sec .contact-form-content .line-tel .line .add-friend {
  display: none;
}
body.home #contact-form-sec .contact-form-content .line-tel .tel {
  background-color: #39b6ff;
}
body.home #contact-form-sec .contact-form-content .line-tel .tel .cta a.cta--tel span {
  color: white;
}
body.home #contact-form-sec .contact-form-content .mail {
  margin-top: calc(60 * 1px);
  background-color: #faf8eb;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail {
    margin-top: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail {
    margin-top: calc(60 / 768 * 1 * 100vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail .heading-contact-form {
  background-color: #ffa800;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form {
  width: 100%;
  margin: 0;
  border: none;
  border-radius: initial;
  box-shadow: none;
  line-height: 1.75;
  background-color: initial;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form input[name=mail_address],
body.home #contact-form-sec .contact-form-content .mail form#mail_form input[name=schedule] {
  width: calc(96% - 2px);
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl {
  border: none;
  width: 100%;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt, body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dd {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt {
  text-align: left;
  width: 12em;
  font-size: 18px;
  font-weight: 700;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt i {
  float: right;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt i span {
  padding: 0.1em 0.3em;
  font-style: normal;
  font-size: 12px;
  background-color: initial;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt i span {
    font-size: calc(100 / 750 * calc(20 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt i span.required {
  color: #d4454f;
  border: 1px solid #d4454f;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt i span.optional {
  color: #2e6da4;
  border: 1px solid #2e6da4;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dd {
  width: calc(100% - 18em);
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dd span.inner-txt {
  padding-right: 0.5em;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=text],
body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=email],
body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=tel] {
  font-size: 18px;
  box-sizing: border-box;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=text],
  body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=email],
  body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=tel] {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput {
  padding: 12px 8px;
  display: flex;
  align-items: center;
  cursor: pointer;
  background: initial;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput:hover .ECM_CheckboxInput-LabelText {
  color: #007df0;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-Input {
  margin: 0;
  width: 0;
  opacity: 0;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput:hover > .ECM_CheckboxInput-DummyInput {
  transform: scale(1.1);
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-Input:focus + .ECM_CheckboxInput-DummyInput {
  transform: scale(1.1);
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput {
  background: #007df0;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 35%;
  height: calc(1.25em * 0.125);
  border-radius: calc(1.25em * 0.0625);
  transform: translate(calc(1.25em * -0.1875), calc(1.25em * 0.15625)) rotateZ(-135deg);
  transform-origin: calc(1.25em * 0.0625) calc(1.25em * 0.09375);
  background: #FFFFFF;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70%;
  height: calc(1.25em * 0.125);
  border-radius: calc(1.25em * 0.0625);
  transform: translate(calc(1.25em * -0.1875), calc(1.25em * 0.15625)) rotateZ(-45deg);
  transform-origin: calc(1.25em * 0.125) calc(1.25em * 0.0625);
  background: #FFFFFF;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-DummyInput {
  flex: 0 0 1.25em;
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 1.25em;
  height: 1.25em;
  border: solid 2px transparent;
  background: rgba(0, 0, 0, 0.15);
  border-radius: 50%;
  transition: all 0.15s linear;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form .ECM_CheckboxInput-LabelText {
  margin-left: 0.5em;
  flex: 1;
  word-break: break-word;
  line-height: 1.25;
  transition: all 0.15s linear;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement {
  margin-top: 40px;
  width: initial;
  border: none;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement {
    margin-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement {
    margin-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement div {
  height: initial;
  overflow: initial;
  margin: 0;
  padding: 0;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner {
  background-color: #f9f9f9;
  padding: 2em;
  margin: 0;
  border: none;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h3 {
  text-align: center;
  font-size: 26px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h3 {
    font-size: calc(100 / 750 * calc(36 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h4 {
  font-size: 18px;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h4:nth-child(n+2) {
  margin-top: 40px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h4:nth-child(n+2) {
    margin-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h4:nth-child(n+2) {
    margin-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h4 {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h5 {
  margin-top: 10px;
  font-size: 16px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h5 {
    margin-top: calc(10 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h5 {
    margin-top: calc(calc(100 / 750 * 10 * 1vw) / 0.75);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner h5 {
    font-size: calc(100 / 750 * calc(28 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner a {
  text-decoration: underline;
  color: #1c1f5e;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agreement-inner > div {
  border: none;
  background-color: initial;
  height: 200px;
  overflow-y: scroll;
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agree_check-wrap {
  margin: 0;
  padding: 0;
  background: initial;
  border: none;
  text-align: center;
  margin-top: 20px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agree_check-wrap {
    margin-top: calc(20 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agree_check-wrap {
    margin-top: calc(calc(100 / 750 * 20 * 1vw) / 0.75);
  }
}
body.home #contact-form-sec .contact-form-content .mail form#mail_form #agreement .agree_check-wrap #agree_check {
  display: inline-block;
}
body.home #contact-form-sec .contact-form-content .mail #form_submit_button,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit_button {
  margin-left: initial;
}
body.home #contact-form-sec .contact-form-content .mail #form_submit,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit {
  position: relative;
  width: 60%;
  text-align: center;
}
body.home #contact-form-sec .contact-form-content .mail #form_submit:after,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit:after {
  content: "";
  position: absolute;
  display: block;
  width: 1em;
  height: 1em;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  background-image: url("../images/_svg/btn_arrow-carrot_right_white.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn, body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn_form-wrap,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn_form-wrap {
  background-image: linear-gradient(180deg, #ffa800, #ff9000);
  box-shadow: 0 0.15em 0 0 #774e00;
  color: #fff;
  border: none;
  position: relative;
  display: block;
  width: 100%;
  padding-top: 0.8em;
  padding-bottom: 0.8em;
  padding-left: 2em;
  padding-right: 2em;
  border-radius: 0.5em;
  max-width: initial;
  box-sizing: border-box;
  font-size: 22px;
  font-weight: 700;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn, body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn_form-wrap,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn_form-wrap {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn.--outline, body.home #contact-form-sec .contact-form-content .mail #form_submit .--outline.c-basic-btn_form-wrap,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn.--outline,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .--outline.c-basic-btn_form-wrap {
  margin-left: 0;
  margin-top: 40px;
  background: white;
  border: 1px solid #ccc;
  box-shadow: 0 6px 0 #838383;
  color: black;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn.--outline, body.home #contact-form-sec .contact-form-content .mail #form_submit .--outline.c-basic-btn_form-wrap,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn.--outline,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit .--outline.c-basic-btn_form-wrap {
    margin-top: calc(40 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn.--outline, body.home #contact-form-sec .contact-form-content .mail #form_submit .--outline.c-basic-btn_form-wrap,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn.--outline,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit .--outline.c-basic-btn_form-wrap {
    margin-top: calc(calc(100 / 750 * 40 * 1vw) / 0.75);
  }
}
body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn.--outline:after, body.home #contact-form-sec .contact-form-content .mail #form_submit .--outline.c-basic-btn_form-wrap:after,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn.--outline:after,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .--outline.c-basic-btn_form-wrap:after {
  background: black;
}
body.home #contact-form-sec .contact-form-content .mail #form_submit .c-basic-btn.--outline:hover, body.home #contact-form-sec .contact-form-content .mail #form_submit .--outline.c-basic-btn_form-wrap:hover,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .c-basic-btn.--outline:hover,
body.home #contact-form-sec .contact-form-content .mail #confirm_submit .--outline.c-basic-btn_form-wrap:hover {
  box-shadow: none;
}
body.home #contact-form-sec .contact-form-content .mail .c-attentions-wrap {
  margin-top: 60px;
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail .c-attentions-wrap {
    margin-top: calc(60 / calc(1162 - 1) * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .mail .c-attentions-wrap {
    margin-top: calc(calc(100 / 750 * 60 * 1vw) / 0.75);
  }
}
@media screen and (max-width: 1000px) {
  body.home #contact-form-sec form#mail_form dl dt,
  body.home #contact-form-sec form#mail_form dl dd {
    float: left;
  }
  body.home #contact-form-sec form#mail_form dl dt {
    padding: 35px 0 25px;
  }
  body.home #contact-form-sec form#mail_form dl dd {
    padding: 30px 0 25px 5%;
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.home #contact-form-sec .contact-form-content .line, body.home #contact-form-sec .contact-form-content .tel, body.home #contact-form-sec .contact-form-content .mail {
    padding-left: calc(100 / 750 * 40 * 1vw);
    padding-right: calc(100 / 750 * 40 * 1vw);
  }
  body.home #contact-form-sec .contact-form-content .line-tel .pc_flex-only_item {
    width: 100%;
  }
  body.home #contact-form-sec .contact-form-content .line-tel .line img.qr-code {
    display: none;
  }
  body.home #contact-form-sec .contact-form-content .line-tel .line .add-friend {
    display: block;
  }
  body.home #contact-form-sec .contact-form-content .line-tel .line .add-friend .cta a.cta--line {
    background-image: linear-gradient(180deg, white, #ecffec);
  }
  body.home #contact-form-sec .contact-form-content .line-tel .line .add-friend .cta a.cta--line span {
    color: #009a00;
  }
  body.home #contact-form-sec .contact-form-content .line-tel .tel .cta a.cta--tel {
    background-image: linear-gradient(180deg, white, #e6f4ff);
  }
  body.home #contact-form-sec .contact-form-content .line-tel .tel .cta a.cta--tel span {
    color: #0082d8;
  }
  body.home #contact-form-sec .contact-form-content .mail .heading-contact-form {
    padding: 0.3em 1em;
  }
  body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt, body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dd {
    float: none;
    width: 100%;
  }
  body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dt i {
    float: none;
    margin-left: 1em;
  }
  body.home #contact-form-sec .contact-form-content .mail form#mail_form dl dd {
    padding: 0 0 0.5em;
  }
  body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=text],
  body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=email],
  body.home #contact-form-sec .contact-form-content .mail form#mail_form input[type=tel] {
    width: 100%;
    padding: 0.75em 0.5em;
  }
  body.home #contact-form-sec .contact-form-content .mail #form_submit,
  body.home #contact-form-sec .contact-form-content .mail #confirm_submit {
    width: 100%;
  }
  body.home #contact-form-sec #confirm_submit #confirm_submit_button,
  body.home #contact-form-sec #confirm_submit #confirm_cancel_button {
    width: 90%;
  }
}

/* =================================================================================

200 Thanks

================================================================================= */
body.thanks #l-header .l-header__wrap {
  align-items: flex-end;
  justify-content: flex-start;
}
body.thanks .l-logo_wrap a img {
  width: 100%;
  height: auto;
}
body.thanks #thanks h1 {
  text-align: center;
  margin-bottom: calc(60 * 1px);
}
@media only screen and (max-width: calc((calc(1162 - 1)) * 1px)) {
  body.thanks #thanks h1 {
    margin-bottom: calc(60 / calc(1162 - 1) * 1 * 100vw);
  }
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.thanks #thanks h1 {
    margin-bottom: calc(60 / 768 * 1 * 100vw);
  }
}
body.thanks #thanks p {
  font-size: 22px;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.thanks #thanks p {
    font-size: calc(100 / 750 * calc(34 * 1) * 1vw);
  }
}
body.thanks #thanks p a {
  font-size: 18px;
  margin-top: 2em;
  text-decoration: none;
  padding: 1em;
  border: 1px solid #007df0;
  display: block;
  color: #007df0;
  width: 10em;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: calc(768 * 1px)) {
  body.thanks #thanks p a {
    font-size: calc(100 / 750 * calc(32 * 1) * 1vw);
  }
}
body.thanks footer {
  padding-bottom: 20px;
}

@media only screen and (max-width: calc(768 * 1px)) {
  .wp-block-media-text {
    display: flex;
    flex-direction: column; /* 垂直方向に並べる */
    margin-top: 1.5em;
  }
  .wp-block-media-text .wp-block-media-text__media {
    width: 100%; /* メディア部分を全幅 */
    margin-bottom: 1rem; /* 下に余白を追加 */
  }
  .wp-block-media-text .wp-block-media-text__content {
    width: 100%; /* テキスト部分を全幅 */
    padding-left: 0;
    padding-right: 0;
  }
}
.clear {
  clear: both;
}

/* JSでの状態変化
---------------------------------------------------------------------- */
/* ======================================================================

MW WP Form お問い合わせページ
ラジオボタンをクリックしたら色を変える。

====================================================================== */
.wpcf7-list-item label.js-type-radio-current {
  border: 2px solid #007df0 !important;
}

/* ======================================================================

c-right-end-cta-button.js・・・・・js-sp_menu_open_onlyを付与される。

ヘッダーのセカンダリーのボタンで、cta-right-end-btnクラスのあるものは、一旦消す。
スマホのメニューがオープンになったら、表示

====================================================================== */
.js-sp_menu_open_only {
  display: none;
}

body.js-toggle-open .js-sp_menu_open_only {
  display: block;
}

/*======================================================================
// スクロールするとふわっと出現してくるあの表現
// https://www.tipswork.net/css/853/
======================================================================*/
/*----------------------------
js-scroll_up ｜下から上へ出現
----------------------------*/
.js-scroll_up {
  transition: 1s ease-in-out;
  transform: translateY(50px);
  opacity: 0;
}

.js-scroll_up.on {
  transform: translateY(0);
  opacity: 1;
}

/*----------------------------
js-scroll_left ｜左から出現
----------------------------*/
.js-scroll_left {
  -webkit-transition: 1s ease-in-out;
  -moz-transition: 1s ease-in-out;
  -o-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
  transform: translateX(calc(50px * -1));
  opacity: 0;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
}

.js-scroll_left.on {
  opacity: 1;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  transform: translateX(0);
}

/*----------------------------
js-scroll_right ｜右から出現
----------------------------*/
.js-scroll_right {
  -webkit-transition: 1s ease-in-out;
  -moz-transition: 1s ease-in-out;
  -o-transition: 1s ease-in-out;
  transition: 1s ease-in-out;
  transform: translateX(50px);
  opacity: 0;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
}

.js-scroll_right.on {
  opacity: 1;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  transform: translateX(0);
}

.showdelay0 {
  transition-delay: 0s;
}

.showdelay1 {
  transition-delay: 0.2s;
}

.showdelay2 {
  transition-delay: 0.4s;
}

.showdelay3 {
  transition-delay: 0.6s;
}

.showdelay5 {
  transition-delay: 0.8s;
}

.showdelay6 {
  transition-delay: 1s;
}

.showdelay7 {
  transition-delay: 1.2s;
}

.showdelay8 {
  transition-delay: 1.4s;
}

.showdelay9 {
  transition-delay: 1.6s;
}

.showdelay10 {
  transition-delay: 1.8s;
}

.showdelay11 {
  transition-delay: 2s;
}

@media only screen and (max-width: calc(768 * 1px)) {
  .showdelay0 {
    transition-delay: 0s !important;
  }
  .showdelay1 {
    transition-delay: 0s !important;
  }
  .showdelay2 {
    transition-delay: 0s !important;
  }
  .showdelay3 {
    transition-delay: 0s !important;
  }
  .showdelay4 {
    transition-delay: 0s !important;
  }
  .showdelay4 {
    transition-delay: 0s !important;
  }
  .showdelay6 {
    transition-delay: 0s !important;
  }
  .showdelay7 {
    transition-delay: 0s !important;
  }
  .showdelay8 {
    transition-delay: 0s !important;
  }
  .showdelay9 {
    transition-delay: 0s !important;
  }
  .showdelay10 {
    transition-delay: 0s !important;
  }
  .showdelay11 {
    transition-delay: 0s !important;
  }
}
/* ======================================================================

下から一文字ずつ登場するテキストアニメーション　下から表示される
https://give-shot.jp/tokyocss/under-in-text/

====================================================================== */
@keyframes js-txt-up-start-anim-wrap {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes js-txt-up-start-anim-span {
  0% {
    transform: translateY(110%); /*表示範囲外から*/
    opacity: 0;
  }
  60% {
    transform: translateY(0); /*下がる*/
  }
  100% {
    transform: translateY(0); /*待機*/
    opacity: 1;
  }
}
/*** アニメーションする要素の親 ***/
.js-txt-up-start {
  display: inline-flex !important; /*　横並びに */
  overflow: hidden; /* はみ出たものを非表示に */
  flex-wrap: wrap;
}

/*** アニメーションを適用する要素 ***/
.c-heading__main.js-txt-up-start {
  opacity: 0;
  animation: 1.5s js-txt-up-start-anim-wrap ease; /* アニメーション */
  animation-delay: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.js-txt-up-start span {
  opacity: 0;
}

.js-txt-up-start span.view {
  transform: translateY(110%); /*デフォルトで下に隠す*/
  opacity: 0;
  display: block; /*ブロック要素に*/
  animation: 1.5s js-txt-up-start-anim-span ease; /* アニメーション */
  animation-delay: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  color: #000000;
}

.js-txt-up-start.--white span.view {
  color: #ffffff;
}

/*** 各span(文字)に遅延時間delayを設定 ***/
.js-txt-up-start span.view:nth-child(1) {
  animation-delay: calc(0.2s + 0s);
}

.js-txt-up-start span.view:nth-child(2) {
  animation-delay: calc(0.2s + 0.03s);
}

.js-txt-up-start span.view:nth-child(3) {
  animation-delay: calc(0.2s + 0.06s);
}

.js-txt-up-start span.view:nth-child(4) {
  animation-delay: calc(0.2s + 0.09s);
}

.js-txt-up-start span.view:nth-child(5) {
  animation-delay: calc(0.2s + 0.12s);
}

.js-txt-up-start span.view:nth-child(6) {
  animation-delay: calc(0.2s + 0.15s);
}

.js-txt-up-start span.view:nth-child(7) {
  animation-delay: calc(0.2s + 0.18s);
}

.js-txt-up-start span.view:nth-child(8) {
  animation-delay: calc(0.2s + 0.21s);
}

.js-txt-up-start span.view:nth-child(9) {
  animation-delay: calc(0.2s + 0.24s);
}

.js-txt-up-start span.view:nth-child(10) {
  animation-delay: calc(0.2s + 0.27s);
}

.js-txt-up-start span.view:nth-child(11) {
  animation-delay: calc(0.2s + 0.3s);
}

.js-txt-up-start span.view:nth-child(12) {
  animation-delay: calc(0.2s + 0.33s);
}

.js-txt-up-start span.view:nth-child(13) {
  animation-delay: calc(0.2s + 0.36s);
}

.js-txt-up-start span.view:nth-child(14) {
  animation-delay: calc(0.2s + 0.39s);
}

.js-txt-up-start span.view:nth-child(15) {
  animation-delay: calc(0.2s + 0.42s);
}

.js-txt-up-start span.view:nth-child(16) {
  animation-delay: calc(0.2s + 0.45s);
}

.js-txt-up-start span.view:nth-child(17) {
  animation-delay: calc(0.2s + 0.48s);
}

.js-txt-up-start span.view:nth-child(18) {
  animation-delay: calc(0.2s + 0.51s);
}

.js-txt-up-start span.view:nth-child(19) {
  animation-delay: calc(0.2s + 0.54s);
}

.js-txt-up-start span.view:nth-child(20) {
  animation-delay: calc(0.2s + 0.57s);
}

.js-txt-up-start span.view:nth-child(21) {
  animation-delay: calc(0.2s + 0.6s);
}

.js-txt-up-start span.view:nth-child(22) {
  animation-delay: calc(0.2s + 0.63s);
}

.js-txt-up-start span.view:nth-child(23) {
  animation-delay: calc(0.2s + 0.66s);
}

.js-txt-up-start span.view:nth-child(24) {
  animation-delay: calc(0.2s + 0.69s);
}

.js-txt-up-start span.view:nth-child(25) {
  animation-delay: calc(0.2s + 0.72s);
}

.js-txt-up-start span.view:nth-child(26) {
  animation-delay: calc(0.2s + 0.75s);
}

.js-txt-up-start span.view:nth-child(27) {
  animation-delay: calc(0.2s + 0.78s);
}

.js-txt-up-start span.view:nth-child(28) {
  animation-delay: calc(0.2s + 0.81s);
}

.js-txt-up-start span.view:nth-child(29) {
  animation-delay: calc(0.2s + 0.84s);
}

.js-txt-up-start span.view:nth-child(30) {
  animation-delay: calc(0.2s + 0.87s);
}

.js-txt-up-start span.view:nth-child(31) {
  animation-delay: calc(0.2s + 0.9s);
}

.js-txt-up-start span.view:nth-child(32) {
  animation-delay: calc(0.2s + 0.93s);
}

.js-txt-up-start span.view:nth-child(33) {
  animation-delay: calc(0.2s + 0.96s);
}

.js-txt-up-start span.view:nth-child(34) {
  animation-delay: calc(0.2s + 0.99s);
}

.js-txt-up-start span.view:nth-child(35) {
  animation-delay: calc(0.2s + 1.02s);
}

.js-txt-up-start span.view:nth-child(36) {
  animation-delay: calc(0.2s + 1.05s);
}

.js-txt-up-start span.view:nth-child(37) {
  animation-delay: calc(0.2s + 1.08s);
}

.js-txt-up-start span.view:nth-child(38) {
  animation-delay: calc(0.2s + 1.11s);
}

.js-txt-up-start span.view:nth-child(39) {
  animation-delay: calc(0.2s + 1.14s);
}

.js-txt-up-start span.view:nth-child(40) {
  animation-delay: calc(0.2s + 1.17s);
}

.js-txt-up-start span.view:nth-child(41) {
  animation-delay: calc(0.2s + 1.2s);
}

.js-txt-up-start span.view:nth-child(42) {
  animation-delay: calc(0.2s + 1.23s);
}

.js-txt-up-start span.view:nth-child(43) {
  animation-delay: calc(0.2s + 1.26s);
}

.js-txt-up-start span.view:nth-child(44) {
  animation-delay: calc(0.2s + 1.29s);
}

.js-txt-up-start span.view:nth-child(45) {
  animation-delay: calc(0.2s + 1.32s);
}

.js-txt-up-start span.view:nth-child(46) {
  animation-delay: calc(0.2s + 1.35s);
}

.js-txt-up-start span.view:nth-child(47) {
  animation-delay: calc(0.2s + 1.38s);
}

.js-txt-up-start span.view:nth-child(48) {
  animation-delay: calc(0.2s + 1.41s);
}

.js-txt-up-start span.view:nth-child(49) {
  animation-delay: calc(0.2s + 1.44s);
}

.js-txt-up-start span.view:nth-child(50) {
  animation-delay: calc(0.2s + 1.47s);
}

/* ======================================================================

下から一文字ずつ登場するテキストアニメーション　上に消える
https://give-shot.jp/tokyocss/under-in-text/

====================================================================== */
@keyframes js-txt-up-end-anim-span {
  0% {
    transform: translateY(0); /*通常の位置*/
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  60% {
    transform: translateY(-110%); /*上がる*/
    opacity: 0;
  }
  100% {
    transform: translateY(-110%); /*待機*/
    opacity: 0;
  }
}
/*** アニメーションする要素の親 ***/
.js-txt-up-end {
  display: inline-flex !important; /*　横並びに */
  overflow: hidden; /* はみ出たものを非表示に */
}

/*** アニメーションを適用する要素 ***/
.js-txt-up-end span {
  transform: translateY(0); /*デフォルトで下に隠す*/
  opacity: 1;
  display: block; /*ブロック要素に*/
  animation: 1s js-txt-up-end-anim-span ease; /* アニメーション */
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  color: #000000;
}

.js-txt-up-end.--white span {
  color: #ffffff;
}

/*** 各span(文字)に遅延時間delayを設定 ***/
.js-txt-up-end span:nth-child(1) {
  animation-delay: calc(0s + 0s);
}

.js-txt-up-end span:nth-child(2) {
  animation-delay: calc(0s + 0.03s);
}

.js-txt-up-end span:nth-child(3) {
  animation-delay: calc(0s + 0.06s);
}

.js-txt-up-end span:nth-child(4) {
  animation-delay: calc(0s + 0.09s);
}

.js-txt-up-end span:nth-child(5) {
  animation-delay: calc(0s + 0.12s);
}

.js-txt-up-end span:nth-child(6) {
  animation-delay: calc(0s + 0.15s);
}

.js-txt-up-end span:nth-child(7) {
  animation-delay: calc(0s + 0.18s);
}

.js-txt-up-end span:nth-child(8) {
  animation-delay: calc(0s + 0.21s);
}

.js-txt-up-end span:nth-child(9) {
  animation-delay: calc(0s + 0.24s);
}

.js-txt-up-end span:nth-child(10) {
  animation-delay: calc(0s + 0.27s);
}

.js-txt-up-end span:nth-child(11) {
  animation-delay: calc(0s + 0.3s);
}

.js-txt-up-end span:nth-child(12) {
  animation-delay: calc(0s + 0.33s);
}

.js-txt-up-end span:nth-child(13) {
  animation-delay: calc(0s + 0.36s);
}

.js-txt-up-end span:nth-child(14) {
  animation-delay: calc(0s + 0.39s);
}

.js-txt-up-end span:nth-child(15) {
  animation-delay: calc(0s + 0.42s);
}

.js-txt-up-end span:nth-child(16) {
  animation-delay: calc(0s + 0.45s);
}

.js-txt-up-end span:nth-child(17) {
  animation-delay: calc(0s + 0.48s);
}

.js-txt-up-end span:nth-child(18) {
  animation-delay: calc(0s + 0.51s);
}

.js-txt-up-end span:nth-child(19) {
  animation-delay: calc(0s + 0.54s);
}

.js-txt-up-end span:nth-child(20) {
  animation-delay: calc(0s + 0.57s);
}

.js-txt-up-end span:nth-child(21) {
  animation-delay: calc(0s + 0.6s);
}

.js-txt-up-end span:nth-child(22) {
  animation-delay: calc(0s + 0.63s);
}

.js-txt-up-end span:nth-child(23) {
  animation-delay: calc(0s + 0.66s);
}

.js-txt-up-end span:nth-child(24) {
  animation-delay: calc(0s + 0.69s);
}

.js-txt-up-end span:nth-child(25) {
  animation-delay: calc(0s + 0.72s);
}

.js-txt-up-end span:nth-child(26) {
  animation-delay: calc(0s + 0.75s);
}

.js-txt-up-end span:nth-child(27) {
  animation-delay: calc(0s + 0.78s);
}

.js-txt-up-end span:nth-child(28) {
  animation-delay: calc(0s + 0.81s);
}

.js-txt-up-end span:nth-child(29) {
  animation-delay: calc(0s + 0.84s);
}

.js-txt-up-end span:nth-child(30) {
  animation-delay: calc(0s + 0.87s);
}

.js-txt-up-end span:nth-child(31) {
  animation-delay: calc(0s + 0.9s);
}

.js-txt-up-end span:nth-child(32) {
  animation-delay: calc(0s + 0.93s);
}

.js-txt-up-end span:nth-child(33) {
  animation-delay: calc(0s + 0.96s);
}

.js-txt-up-end span:nth-child(34) {
  animation-delay: calc(0s + 0.99s);
}

.js-txt-up-end span:nth-child(35) {
  animation-delay: calc(0s + 1.02s);
}

.js-txt-up-end span:nth-child(36) {
  animation-delay: calc(0s + 1.05s);
}

.js-txt-up-end span:nth-child(37) {
  animation-delay: calc(0s + 1.08s);
}

.js-txt-up-end span:nth-child(38) {
  animation-delay: calc(0s + 1.11s);
}

.js-txt-up-end span:nth-child(39) {
  animation-delay: calc(0s + 1.14s);
}

.js-txt-up-end span:nth-child(40) {
  animation-delay: calc(0s + 1.17s);
}

.js-txt-up-end span:nth-child(41) {
  animation-delay: calc(0s + 1.2s);
}

.js-txt-up-end span:nth-child(42) {
  animation-delay: calc(0s + 1.23s);
}

.js-txt-up-end span:nth-child(43) {
  animation-delay: calc(0s + 1.26s);
}

.js-txt-up-end span:nth-child(44) {
  animation-delay: calc(0s + 1.29s);
}

.js-txt-up-end span:nth-child(45) {
  animation-delay: calc(0s + 1.32s);
}

.js-txt-up-end span:nth-child(46) {
  animation-delay: calc(0s + 1.35s);
}

.js-txt-up-end span:nth-child(47) {
  animation-delay: calc(0s + 1.38s);
}

.js-txt-up-end span:nth-child(48) {
  animation-delay: calc(0s + 1.41s);
}

.js-txt-up-end span:nth-child(49) {
  animation-delay: calc(0s + 1.44s);
}

.js-txt-up-end span:nth-child(50) {
  animation-delay: calc(0s + 1.47s);
}

/* ======================================================================

下から一文字ずつ登場するテキストアニメーション　下に消える
https://give-shot.jp/tokyocss/under-in-text/

====================================================================== */
@keyframes js-txt-down-end-anim-span {
  0% {
    transform: translateY(0); /*通常の位置*/
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  60% {
    transform: translateY(110%); /*下がる*/
    opacity: 0;
  }
  100% {
    transform: translateY(110%); /*待機*/
    opacity: 0;
  }
}
/*** アニメーションする要素の親 ***/
.js-txt-down-end {
  display: inline-flex !important; /*　横並びに */
  overflow: hidden; /* はみ出たものを非表示に */
}

/*** アニメーションを適用する要素 ***/
.js-txt-down-end span {
  transform: translateY(0); /*デフォルトで下に隠す*/
  opacity: 1;
  display: block; /*ブロック要素に*/
  animation: 1s js-txt-down-end-anim-span ease; /* アニメーション */
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  color: #000000;
}

.js-txt-down-end.--white span {
  color: #ffffff;
}

/*** 各span(文字)に遅延時間delayを設定 ***/
.js-txt-down-end span:nth-child(1) {
  animation-delay: calc(0s + 0s);
}

.js-txt-down-end span:nth-child(2) {
  animation-delay: calc(0s + 0.03s);
}

.js-txt-down-end span:nth-child(3) {
  animation-delay: calc(0s + 0.06s);
}

.js-txt-down-end span:nth-child(4) {
  animation-delay: calc(0s + 0.09s);
}

.js-txt-down-end span:nth-child(5) {
  animation-delay: calc(0s + 0.12s);
}

.js-txt-down-end span:nth-child(6) {
  animation-delay: calc(0s + 0.15s);
}

.js-txt-down-end span:nth-child(7) {
  animation-delay: calc(0s + 0.18s);
}

.js-txt-down-end span:nth-child(8) {
  animation-delay: calc(0s + 0.21s);
}

.js-txt-down-end span:nth-child(9) {
  animation-delay: calc(0s + 0.24s);
}

.js-txt-down-end span:nth-child(10) {
  animation-delay: calc(0s + 0.27s);
}

.js-txt-down-end span:nth-child(11) {
  animation-delay: calc(0s + 0.3s);
}

.js-txt-down-end span:nth-child(12) {
  animation-delay: calc(0s + 0.33s);
}

.js-txt-down-end span:nth-child(13) {
  animation-delay: calc(0s + 0.36s);
}

.js-txt-down-end span:nth-child(14) {
  animation-delay: calc(0s + 0.39s);
}

.js-txt-down-end span:nth-child(15) {
  animation-delay: calc(0s + 0.42s);
}

.js-txt-down-end span:nth-child(16) {
  animation-delay: calc(0s + 0.45s);
}

.js-txt-down-end span:nth-child(17) {
  animation-delay: calc(0s + 0.48s);
}

.js-txt-down-end span:nth-child(18) {
  animation-delay: calc(0s + 0.51s);
}

.js-txt-down-end span:nth-child(19) {
  animation-delay: calc(0s + 0.54s);
}

.js-txt-down-end span:nth-child(20) {
  animation-delay: calc(0s + 0.57s);
}

.js-txt-down-end span:nth-child(21) {
  animation-delay: calc(0s + 0.6s);
}

.js-txt-down-end span:nth-child(22) {
  animation-delay: calc(0s + 0.63s);
}

.js-txt-down-end span:nth-child(23) {
  animation-delay: calc(0s + 0.66s);
}

.js-txt-down-end span:nth-child(24) {
  animation-delay: calc(0s + 0.69s);
}

.js-txt-down-end span:nth-child(25) {
  animation-delay: calc(0s + 0.72s);
}

.js-txt-down-end span:nth-child(26) {
  animation-delay: calc(0s + 0.75s);
}

.js-txt-down-end span:nth-child(27) {
  animation-delay: calc(0s + 0.78s);
}

.js-txt-down-end span:nth-child(28) {
  animation-delay: calc(0s + 0.81s);
}

.js-txt-down-end span:nth-child(29) {
  animation-delay: calc(0s + 0.84s);
}

.js-txt-down-end span:nth-child(30) {
  animation-delay: calc(0s + 0.87s);
}

.js-txt-down-end span:nth-child(31) {
  animation-delay: calc(0s + 0.9s);
}

.js-txt-down-end span:nth-child(32) {
  animation-delay: calc(0s + 0.93s);
}

.js-txt-down-end span:nth-child(33) {
  animation-delay: calc(0s + 0.96s);
}

.js-txt-down-end span:nth-child(34) {
  animation-delay: calc(0s + 0.99s);
}

.js-txt-down-end span:nth-child(35) {
  animation-delay: calc(0s + 1.02s);
}

.js-txt-down-end span:nth-child(36) {
  animation-delay: calc(0s + 1.05s);
}

.js-txt-down-end span:nth-child(37) {
  animation-delay: calc(0s + 1.08s);
}

.js-txt-down-end span:nth-child(38) {
  animation-delay: calc(0s + 1.11s);
}

.js-txt-down-end span:nth-child(39) {
  animation-delay: calc(0s + 1.14s);
}

.js-txt-down-end span:nth-child(40) {
  animation-delay: calc(0s + 1.17s);
}

.js-txt-down-end span:nth-child(41) {
  animation-delay: calc(0s + 1.2s);
}

.js-txt-down-end span:nth-child(42) {
  animation-delay: calc(0s + 1.23s);
}

.js-txt-down-end span:nth-child(43) {
  animation-delay: calc(0s + 1.26s);
}

.js-txt-down-end span:nth-child(44) {
  animation-delay: calc(0s + 1.29s);
}

.js-txt-down-end span:nth-child(45) {
  animation-delay: calc(0s + 1.32s);
}

.js-txt-down-end span:nth-child(46) {
  animation-delay: calc(0s + 1.35s);
}

.js-txt-down-end span:nth-child(47) {
  animation-delay: calc(0s + 1.38s);
}

.js-txt-down-end span:nth-child(48) {
  animation-delay: calc(0s + 1.41s);
}

.js-txt-down-end span:nth-child(49) {
  animation-delay: calc(0s + 1.44s);
}

.js-txt-down-end span:nth-child(50) {
  animation-delay: calc(0s + 1.47s);
}

.js-span {
  padding: 0.1em 0;
}

.js-span.js-add-space {
  width: 0.3em;
}

/*
ズームしながらのフェードイン、フェードアウト
https://junpei-sugiyama.com/swiper-zoom/
 */
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  75% {
    opacity: 100;
  }
  100% {
    opacity: 0;
    transform: scale(1.2);
  }
}
.js-effect-zoomUp .swiper-slide-active img,
.js-effect-zoomUp .swiper-slide-duplicate-active img,
.js-effect-zoomUp .swiper-slide-prev img {
  animation: zoomUp 2s linear 0s normal both;
}
.js-effect-zoomUp .swiper-wrapper {
  background-color: black;
}
.js-effect-zoomUp .swiper-wrapper:before {
  opacity: 50%;
}

.swiper-wrapper:before {
  transition: all 0.3s ease-out;
  position: absolute;
  content: "";
  display: block;
  background-color: black;
  width: 100%;
  height: 100%;
  opacity: 0%;
  z-index: 210;
  pointer-events: none;
}

.l-h-mv-full .swiper-wrapper:before {
  transition: all 0.3s ease-out;
  position: absolute;
  content: "";
  display: block;
  background-color: black;
  width: 100%;
  height: 100%;
  opacity: 20%;
  z-index: 210;
}

/*# sourceMappingURL=style.css.map */
