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

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

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

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

del {
  text-decoration: line-through;
}

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

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

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

input,
select {
  vertical-align: middle;
}

/*----------------------------------------------------

	リセットCSS調整ファイルです。
	リセットCSSを調整、カスタマイズしたい場合に編集します。

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

	EXAMPLES FONT-SIZE
	------------------
	 77% = 9px
	 85% = 10px
	 93% = 11px
	100% = 12px
	108% = 13px
	116% = 14px
	124% = 15px
	131% = 16px
	139% = 17px
	147% = 18px
	154% = 19px
	162% = 20px
	170% = 21px
	177% = 22px
	185% = 23px
	193% = 24px
	200% = 25px
	---------------

====================================================*/
html {
  font-size: 62.5%;
}
@media screen and (max-width: 1024px) {
  html {
    font-size: 52.5%;
  }
}

body {
  *font-size: small;
  *font: x-small;
  _font-size: 14px;
}

ul,
li {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
  word-break: break-all;
}

img {
  vertical-align: middle;
}

* {
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: inherit;
}

/*----------------------------------------------------

	サイトの基本設定のファイルです。
	最初の設定以外、基本変更することはありません。

----------------------------------------------------*/
/*--------------------------
	フォントの設定
--------------------------*/
/*--------------------------
	カラーの設定
--------------------------*/
/*--------------------------
	レイアウトの設定
--------------------------*/
/*--------------------------
	グリッドのガター
--------------------------*/
/*--------------------------
	レスポンシブの設定
--------------------------*/
/*--------------------------
  アニメーションの設定
--------------------------*/
/*----------------------------------------------------

	Mixinをまとめたファイルです。
	基本的に変更することはありません。
	Mixinを追加したい場合、_mixin_●●.scssという
	別ファイルを生成し、追加してください。

----------------------------------------------------*/
/*--------------------------
	レスポンシブ関連
--------------------------*/
/*----------------------------------------------------

	自作関数をまとめたファイルです。
	基本的に変更することはありません。
	自作関数を追加したい場合、_functions_●●.scssという
	別ファイルを生成し、追加してください。

----------------------------------------------------*/
/*----------------------------------------------------

	初期設定を行うファイルです。
	デフォルトの設定を行う時以外、基本的に編集することはありません。

----------------------------------------------------*/
html {
  scroll-behavior: smooth;
  font-size: 10px;
  font-size: 0.520833vw; /* 10px / 1092px * 100 */
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.66666667vw; /* 10px / 375px * 100 */
  }
}

body {
  background: #fff;
  color: #333;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

.wrap {
  overflow: hidden;
  position: relative;
}

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

sup {
  font-size: 50%;
  vertical-align: super;
}

/*----------------------------------------------------

	汎用クラスをまとめたファイルです。
	基本的に変更することはありません。
	汎用クラスを追加したい場合、_utility_●●.scssという
	別ファイルを生成し、追加してください。

	命名規則として、クラス名の頭に 
	u-* (utilityのu)という接頭辞をつけることを推奨します。

----------------------------------------------------*/
.u-txt-bold {
  font-weight: bold !important;
}

.u-txt-xsmall {
  font-size: 1.2rem;
}
@media screen and (max-width: 767px) {
  .u-txt-xsmall {
    font-size: 1rem !important;
  }
}

.u-txt-small {
  font-size: 1.4rem !important;
}
@media screen and (max-width: 767px) {
  .u-txt-small {
    font-size: 1.2rem !important;
  }
}

.u-txt-medium {
  font-size: 1.8rem !important;
}
@media screen and (max-width: 767px) {
  .u-txt-medium {
    font-size: 1.4rem !important;
  }
}

.u-txt-large {
  font-size: 2rem !important;
}
@media screen and (max-width: 767px) {
  .u-txt-large {
    font-size: 1.6rem !important;
  }
}

.u-link {
  color: #00B6EE;
  text-decoration: underline;
}
.u-link:hover {
  text-decoration: none;
}

.u-ul-default {
  margin: 1em 0;
  padding-left: 40px;
  list-style-type: disc;
}
.u-ul-default li {
  list-style: inherit;
}

.u-ol-default {
  margin: 1em 0;
  padding-left: 40px;
  list-style-type: decimal;
}
.u-ol-default li {
  list-style: inherit;
}

.u-ul-style > li {
  position: relative;
  padding-left: 1.3em;
}
.u-ul-style > li::before {
  content: "・";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.u-ul-style--asterisk > li::before {
  content: "※";
}
.u-ul-style--disc > li::before {
  content: "●";
  color: #000;
}
.u-ul-style--disc-red > li::before {
  content: "●";
  color: #00B6EE;
}
.u-ul-style--number > li {
  counter-increment: number;
}
.u-ul-style--number > li::before {
  content: counter(number) ".";
}
.u-ul-style--number-red > li {
  counter-increment: number;
}
.u-ul-style--number-red > li::before {
  content: counter(number) ".";
  color: #00B6EE;
}

.u-align-l {
  text-align: left !important;
}

.u-align-c {
  text-align: center !important;
}

.u-align-r {
  text-align: right !important;
}

@media screen and (max-width: 1000px) {
  .u-align-l-tab {
    text-align: left !important;
  }
  .u-align-c-tab {
    text-align: center !important;
  }
  .u-align-r-tab {
    text-align: right !important;
  }
}
@media screen and (max-width: 767px) {
  .u-align-l-sp {
    text-align: left !important;
  }
  .u-align-c-sp {
    text-align: center !important;
  }
  .u-align-r-sp {
    text-align: right !important;
  }
}
.u-iframe-responsive {
  position: relative;
  height: 0;
  width: 100%;
  padding-top: 56.25%;
}
.u-iframe-responsive iframe,
.u-iframe-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

/*--------------------------
	padding margin 調整用
--------------------------*/
.u-mt-s {
  margin-top: 2rem !important;
}
@media screen and (max-width: 767px) {
  .u-mt-s {
    margin-top: 1rem !important;
  }
}

.u-mt-m {
  margin-top: 4rem !important;
}
@media screen and (max-width: 767px) {
  .u-mt-m {
    margin-top: 2rem !important;
  }
}

.u-mt-l {
  margin-top: 6rem !important;
}
@media screen and (max-width: 767px) {
  .u-mt-l {
    margin-top: 3rem !important;
  }
}

.u-mt-xl {
  margin-top: 8rem !important;
}
@media screen and (max-width: 767px) {
  .u-mt-xl {
    margin-top: 4rem !important;
  }
}

.u-mb-s {
  margin-bottom: 2rem !important;
}
@media screen and (max-width: 767px) {
  .u-mb-s {
    margin-bottom: 1rem !important;
  }
}

.u-mb-m {
  margin-bottom: 4rem !important;
}
@media screen and (max-width: 767px) {
  .u-mb-m {
    margin-bottom: 2rem !important;
  }
}

.u-mb-l {
  margin-bottom: 6rem !important;
}
@media screen and (max-width: 767px) {
  .u-mb-l {
    margin-bottom: 3rem !important;
  }
}

.u-mb-xl {
  margin-bottom: 8rem !important;
}
@media screen and (max-width: 767px) {
  .u-mb-xl {
    margin-bottom: 4rem !important;
  }
}

.u-mt120 {
  margin-top: 12rem !important;
}

.u-mb120 {
  margin-bottom: 12rem !important;
}

.u-ml120 {
  margin-left: 12rem !important;
}

.u-mr120 {
  margin-right: 12rem !important;
}

.u-pt120 {
  padding-top: 12rem !important;
}

.u-pb120 {
  padding-bottom: 12rem !important;
}

.u-pl120 {
  padding-left: 12rem !important;
}

.u-pr120 {
  padding-right: 12rem !important;
}

.u-mt110 {
  margin-top: 11rem !important;
}

.u-mb110 {
  margin-bottom: 11rem !important;
}

.u-ml110 {
  margin-left: 11rem !important;
}

.u-mr110 {
  margin-right: 11rem !important;
}

.u-pt110 {
  padding-top: 11rem !important;
}

.u-pb110 {
  padding-bottom: 11rem !important;
}

.u-pl110 {
  padding-left: 11rem !important;
}

.u-pr110 {
  padding-right: 11rem !important;
}

.u-mt100 {
  margin-top: 10rem !important;
}

.u-mb100 {
  margin-bottom: 10rem !important;
}

.u-ml100 {
  margin-left: 10rem !important;
}

.u-mr100 {
  margin-right: 10rem !important;
}

.u-pt100 {
  padding-top: 10rem !important;
}

.u-pb100 {
  padding-bottom: 10rem !important;
}

.u-pl100 {
  padding-left: 10rem !important;
}

.u-pr100 {
  padding-right: 10rem !important;
}

.u-mt90 {
  margin-top: 9rem !important;
}

.u-mb90 {
  margin-bottom: 9rem !important;
}

.u-ml90 {
  margin-left: 9rem !important;
}

.u-mr90 {
  margin-right: 9rem !important;
}

.u-pt90 {
  padding-top: 9rem !important;
}

.u-pb90 {
  padding-bottom: 9rem !important;
}

.u-pl90 {
  padding-left: 9rem !important;
}

.u-pr90 {
  padding-right: 9rem !important;
}

.u-mt80 {
  margin-top: 8rem !important;
}

.u-mb80 {
  margin-bottom: 8rem !important;
}

.u-ml80 {
  margin-left: 8rem !important;
}

.u-mr80 {
  margin-right: 8rem !important;
}

.u-pt80 {
  padding-top: 8rem !important;
}

.u-pb80 {
  padding-bottom: 8rem !important;
}

.u-pl80 {
  padding-left: 8rem !important;
}

.u-pr80 {
  padding-right: 8rem !important;
}

.u-mt75 {
  margin-top: 7.5rem !important;
}

.u-mb75 {
  margin-bottom: 7.5rem !important;
}

.u-ml75 {
  margin-left: 7.5rem !important;
}

.u-mr75 {
  margin-right: 7.5rem !important;
}

.u-pt75 {
  padding-top: 7.5rem !important;
}

.u-pb75 {
  padding-bottom: 7.5rem !important;
}

.u-pl75 {
  padding-left: 7.5rem !important;
}

.u-pr75 {
  padding-right: 7.5rem !important;
}

.u-mt70 {
  margin-top: 7rem !important;
}

.u-mb70 {
  margin-bottom: 7rem !important;
}

.u-ml70 {
  margin-left: 7rem !important;
}

.u-mr70 {
  margin-right: 7rem !important;
}

.u-pt70 {
  padding-top: 7rem !important;
}

.u-pb70 {
  padding-bottom: 7rem !important;
}

.u-pl70 {
  padding-left: 7rem !important;
}

.u-pr70 {
  padding-right: 7rem !important;
}

.u-mt65 {
  margin-top: 6.5rem !important;
}

.u-mb65 {
  margin-bottom: 6.5rem !important;
}

.u-ml65 {
  margin-left: 6.5rem !important;
}

.u-mr65 {
  margin-right: 6.5rem !important;
}

.u-pt65 {
  padding-top: 6.5rem !important;
}

.u-pb65 {
  padding-bottom: 6.5rem !important;
}

.u-pl65 {
  padding-left: 6.5rem !important;
}

.u-pr65 {
  padding-right: 6.5rem !important;
}

.u-mt60 {
  margin-top: 6rem !important;
}

.u-mb60 {
  margin-bottom: 6rem !important;
}

.u-ml60 {
  margin-left: 6rem !important;
}

.u-mr60 {
  margin-right: 6rem !important;
}

.u-pt60 {
  padding-top: 6rem !important;
}

.u-pb60 {
  padding-bottom: 6rem !important;
}

.u-pl60 {
  padding-left: 6rem !important;
}

.u-pr60 {
  padding-right: 6rem !important;
}

.u-mt55 {
  margin-top: 5.5rem !important;
}

.u-mb55 {
  margin-bottom: 5.5rem !important;
}

.u-ml55 {
  margin-left: 5.5rem !important;
}

.u-mr55 {
  margin-right: 5.5rem !important;
}

.u-pt55 {
  padding-top: 5.5rem !important;
}

.u-pb55 {
  padding-bottom: 5.5rem !important;
}

.u-pl55 {
  padding-left: 5.5rem !important;
}

.u-pr55 {
  padding-right: 5.5rem !important;
}

.u-mt50 {
  margin-top: 5rem !important;
}

.u-mb50 {
  margin-bottom: 5rem !important;
}

.u-ml50 {
  margin-left: 5rem !important;
}

.u-mr50 {
  margin-right: 5rem !important;
}

.u-pt50 {
  padding-top: 5rem !important;
}

.u-pb50 {
  padding-bottom: 5rem !important;
}

.u-pl50 {
  padding-left: 5rem !important;
}

.u-pr50 {
  padding-right: 5rem !important;
}

.u-mt45 {
  margin-top: 4.5rem !important;
}

.u-mb45 {
  margin-bottom: 4.5rem !important;
}

.u-ml45 {
  margin-left: 4.5rem !important;
}

.u-mr45 {
  margin-right: 4.5rem !important;
}

.u-pt45 {
  padding-top: 4.5rem !important;
}

.u-pb45 {
  padding-bottom: 4.5rem !important;
}

.u-pl45 {
  padding-left: 4.5rem !important;
}

.u-pr45 {
  padding-right: 4.5rem !important;
}

.u-mt40 {
  margin-top: 4rem !important;
}

.u-mb40 {
  margin-bottom: 4rem !important;
}

.u-ml40 {
  margin-left: 4rem !important;
}

.u-mr40 {
  margin-right: 4rem !important;
}

.u-pt40 {
  padding-top: 4rem !important;
}

.u-pb40 {
  padding-bottom: 4rem !important;
}

.u-pl40 {
  padding-left: 4rem !important;
}

.u-pr40 {
  padding-right: 4rem !important;
}

.u-mt35 {
  margin-top: 3.5rem !important;
}

.u-mb35 {
  margin-bottom: 3.5rem !important;
}

.u-ml35 {
  margin-left: 3.5rem !important;
}

.u-mr35 {
  margin-right: 3.5rem !important;
}

.u-pt35 {
  padding-top: 3.5rem !important;
}

.u-pb35 {
  padding-bottom: 3.5rem !important;
}

.u-pl35 {
  padding-left: 3.5rem !important;
}

.u-pr35 {
  padding-right: 3.5rem !important;
}

.u-mt30 {
  margin-top: 3rem !important;
}

.u-mb30 {
  margin-bottom: 3rem !important;
}

.u-ml30 {
  margin-left: 3rem !important;
}

.u-mr30 {
  margin-right: 3rem !important;
}

.u-pt30 {
  padding-top: 3rem !important;
}

.u-pb30 {
  padding-bottom: 3rem !important;
}

.u-pl30 {
  padding-left: 3rem !important;
}

.u-pr30 {
  padding-right: 3rem !important;
}

.u-mt25 {
  margin-top: 2.5rem !important;
}

.u-mb25 {
  margin-bottom: 2.5rem !important;
}

.u-ml25 {
  margin-left: 2.5rem !important;
}

.u-mr25 {
  margin-right: 2.5rem !important;
}

.u-pt25 {
  padding-top: 2.5rem !important;
}

.u-pb25 {
  padding-bottom: 2.5rem !important;
}

.u-pl25 {
  padding-left: 2.5rem !important;
}

.u-pr25 {
  padding-right: 2.5rem !important;
}

.u-mt20 {
  margin-top: 2rem !important;
}

.u-mb20 {
  margin-bottom: 2rem !important;
}

.u-ml20 {
  margin-left: 2rem !important;
}

.u-mr20 {
  margin-right: 2rem !important;
}

.u-pt20 {
  padding-top: 2rem !important;
}

.u-pb20 {
  padding-bottom: 2rem !important;
}

.u-pl20 {
  padding-left: 2rem !important;
}

.u-pr20 {
  padding-right: 2rem !important;
}

.u-mt15 {
  margin-top: 1.5rem !important;
}

.u-mb15 {
  margin-bottom: 1.5rem !important;
}

.u-ml15 {
  margin-left: 1.5rem !important;
}

.u-mr15 {
  margin-right: 1.5rem !important;
}

.u-pt15 {
  padding-top: 1.5rem !important;
}

.u-pb15 {
  padding-bottom: 1.5rem !important;
}

.u-pl15 {
  padding-left: 1.5rem !important;
}

.u-pr15 {
  padding-right: 1.5rem !important;
}

.u-mt10 {
  margin-top: 1rem !important;
}

.u-mb10 {
  margin-bottom: 1rem !important;
}

.u-ml10 {
  margin-left: 1rem !important;
}

.u-mr10 {
  margin-right: 1rem !important;
}

.u-pt10 {
  padding-top: 1rem !important;
}

.u-pb10 {
  padding-bottom: 1rem !important;
}

.u-pl10 {
  padding-left: 1rem !important;
}

.u-pr10 {
  padding-right: 1rem !important;
}

.u-mt5 {
  margin-top: 0.5rem !important;
}

.u-mb5 {
  margin-bottom: 0.5rem !important;
}

.u-ml5 {
  margin-left: 0.5rem !important;
}

.u-mr5 {
  margin-right: 0.5rem !important;
}

.u-pt5 {
  padding-top: 0.5rem !important;
}

.u-pb5 {
  padding-bottom: 0.5rem !important;
}

.u-pl5 {
  padding-left: 0.5rem !important;
}

.u-pr5 {
  padding-right: 0.5rem !important;
}

.u-mt0 {
  margin-top: 0rem !important;
}

.u-mb0 {
  margin-bottom: 0rem !important;
}

.u-ml0 {
  margin-left: 0rem !important;
}

.u-mr0 {
  margin-right: 0rem !important;
}

.u-pt0 {
  padding-top: 0rem !important;
}

.u-pb0 {
  padding-bottom: 0rem !important;
}

.u-pl0 {
  padding-left: 0rem !important;
}

.u-pr0 {
  padding-right: 0rem !important;
}

@media screen and (max-width: 1000px) {
  .u-mt120-tab {
    margin-top: 12rem !important;
  }
  .u-mb120-tab {
    margin-bottom: 12rem !important;
  }
  .u-ml120-tab {
    margin-left: 12rem !important;
  }
  .u-mr120-tab {
    margin-right: 12rem !important;
  }
  .u-pt120-tab {
    padding-top: 12rem !important;
  }
  .u-pb120-tab {
    padding-bottom: 12rem !important;
  }
  .u-pl120-tab {
    padding-left: 12rem !important;
  }
  .u-pr120-tab {
    padding-right: 12rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt110-tab {
    margin-top: 11rem !important;
  }
  .u-mb110-tab {
    margin-bottom: 11rem !important;
  }
  .u-ml110-tab {
    margin-left: 11rem !important;
  }
  .u-mr110-tab {
    margin-right: 11rem !important;
  }
  .u-pt110-tab {
    padding-top: 11rem !important;
  }
  .u-pb110-tab {
    padding-bottom: 11rem !important;
  }
  .u-pl110-tab {
    padding-left: 11rem !important;
  }
  .u-pr110-tab {
    padding-right: 11rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt100-tab {
    margin-top: 10rem !important;
  }
  .u-mb100-tab {
    margin-bottom: 10rem !important;
  }
  .u-ml100-tab {
    margin-left: 10rem !important;
  }
  .u-mr100-tab {
    margin-right: 10rem !important;
  }
  .u-pt100-tab {
    padding-top: 10rem !important;
  }
  .u-pb100-tab {
    padding-bottom: 10rem !important;
  }
  .u-pl100-tab {
    padding-left: 10rem !important;
  }
  .u-pr100-tab {
    padding-right: 10rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt90-tab {
    margin-top: 9rem !important;
  }
  .u-mb90-tab {
    margin-bottom: 9rem !important;
  }
  .u-ml90-tab {
    margin-left: 9rem !important;
  }
  .u-mr90-tab {
    margin-right: 9rem !important;
  }
  .u-pt90-tab {
    padding-top: 9rem !important;
  }
  .u-pb90-tab {
    padding-bottom: 9rem !important;
  }
  .u-pl90-tab {
    padding-left: 9rem !important;
  }
  .u-pr90-tab {
    padding-right: 9rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt80-tab {
    margin-top: 8rem !important;
  }
  .u-mb80-tab {
    margin-bottom: 8rem !important;
  }
  .u-ml80-tab {
    margin-left: 8rem !important;
  }
  .u-mr80-tab {
    margin-right: 8rem !important;
  }
  .u-pt80-tab {
    padding-top: 8rem !important;
  }
  .u-pb80-tab {
    padding-bottom: 8rem !important;
  }
  .u-pl80-tab {
    padding-left: 8rem !important;
  }
  .u-pr80-tab {
    padding-right: 8rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt75-tab {
    margin-top: 7.5rem !important;
  }
  .u-mb75-tab {
    margin-bottom: 7.5rem !important;
  }
  .u-ml75-tab {
    margin-left: 7.5rem !important;
  }
  .u-mr75-tab {
    margin-right: 7.5rem !important;
  }
  .u-pt75-tab {
    padding-top: 7.5rem !important;
  }
  .u-pb75-tab {
    padding-bottom: 7.5rem !important;
  }
  .u-pl75-tab {
    padding-left: 7.5rem !important;
  }
  .u-pr75-tab {
    padding-right: 7.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt70-tab {
    margin-top: 7rem !important;
  }
  .u-mb70-tab {
    margin-bottom: 7rem !important;
  }
  .u-ml70-tab {
    margin-left: 7rem !important;
  }
  .u-mr70-tab {
    margin-right: 7rem !important;
  }
  .u-pt70-tab {
    padding-top: 7rem !important;
  }
  .u-pb70-tab {
    padding-bottom: 7rem !important;
  }
  .u-pl70-tab {
    padding-left: 7rem !important;
  }
  .u-pr70-tab {
    padding-right: 7rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt65-tab {
    margin-top: 6.5rem !important;
  }
  .u-mb65-tab {
    margin-bottom: 6.5rem !important;
  }
  .u-ml65-tab {
    margin-left: 6.5rem !important;
  }
  .u-mr65-tab {
    margin-right: 6.5rem !important;
  }
  .u-pt65-tab {
    padding-top: 6.5rem !important;
  }
  .u-pb65-tab {
    padding-bottom: 6.5rem !important;
  }
  .u-pl65-tab {
    padding-left: 6.5rem !important;
  }
  .u-pr65-tab {
    padding-right: 6.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt60-tab {
    margin-top: 6rem !important;
  }
  .u-mb60-tab {
    margin-bottom: 6rem !important;
  }
  .u-ml60-tab {
    margin-left: 6rem !important;
  }
  .u-mr60-tab {
    margin-right: 6rem !important;
  }
  .u-pt60-tab {
    padding-top: 6rem !important;
  }
  .u-pb60-tab {
    padding-bottom: 6rem !important;
  }
  .u-pl60-tab {
    padding-left: 6rem !important;
  }
  .u-pr60-tab {
    padding-right: 6rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt55-tab {
    margin-top: 5.5rem !important;
  }
  .u-mb55-tab {
    margin-bottom: 5.5rem !important;
  }
  .u-ml55-tab {
    margin-left: 5.5rem !important;
  }
  .u-mr55-tab {
    margin-right: 5.5rem !important;
  }
  .u-pt55-tab {
    padding-top: 5.5rem !important;
  }
  .u-pb55-tab {
    padding-bottom: 5.5rem !important;
  }
  .u-pl55-tab {
    padding-left: 5.5rem !important;
  }
  .u-pr55-tab {
    padding-right: 5.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt50-tab {
    margin-top: 5rem !important;
  }
  .u-mb50-tab {
    margin-bottom: 5rem !important;
  }
  .u-ml50-tab {
    margin-left: 5rem !important;
  }
  .u-mr50-tab {
    margin-right: 5rem !important;
  }
  .u-pt50-tab {
    padding-top: 5rem !important;
  }
  .u-pb50-tab {
    padding-bottom: 5rem !important;
  }
  .u-pl50-tab {
    padding-left: 5rem !important;
  }
  .u-pr50-tab {
    padding-right: 5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt45-tab {
    margin-top: 4.5rem !important;
  }
  .u-mb45-tab {
    margin-bottom: 4.5rem !important;
  }
  .u-ml45-tab {
    margin-left: 4.5rem !important;
  }
  .u-mr45-tab {
    margin-right: 4.5rem !important;
  }
  .u-pt45-tab {
    padding-top: 4.5rem !important;
  }
  .u-pb45-tab {
    padding-bottom: 4.5rem !important;
  }
  .u-pl45-tab {
    padding-left: 4.5rem !important;
  }
  .u-pr45-tab {
    padding-right: 4.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt40-tab {
    margin-top: 4rem !important;
  }
  .u-mb40-tab {
    margin-bottom: 4rem !important;
  }
  .u-ml40-tab {
    margin-left: 4rem !important;
  }
  .u-mr40-tab {
    margin-right: 4rem !important;
  }
  .u-pt40-tab {
    padding-top: 4rem !important;
  }
  .u-pb40-tab {
    padding-bottom: 4rem !important;
  }
  .u-pl40-tab {
    padding-left: 4rem !important;
  }
  .u-pr40-tab {
    padding-right: 4rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt35-tab {
    margin-top: 3.5rem !important;
  }
  .u-mb35-tab {
    margin-bottom: 3.5rem !important;
  }
  .u-ml35-tab {
    margin-left: 3.5rem !important;
  }
  .u-mr35-tab {
    margin-right: 3.5rem !important;
  }
  .u-pt35-tab {
    padding-top: 3.5rem !important;
  }
  .u-pb35-tab {
    padding-bottom: 3.5rem !important;
  }
  .u-pl35-tab {
    padding-left: 3.5rem !important;
  }
  .u-pr35-tab {
    padding-right: 3.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt30-tab {
    margin-top: 3rem !important;
  }
  .u-mb30-tab {
    margin-bottom: 3rem !important;
  }
  .u-ml30-tab {
    margin-left: 3rem !important;
  }
  .u-mr30-tab {
    margin-right: 3rem !important;
  }
  .u-pt30-tab {
    padding-top: 3rem !important;
  }
  .u-pb30-tab {
    padding-bottom: 3rem !important;
  }
  .u-pl30-tab {
    padding-left: 3rem !important;
  }
  .u-pr30-tab {
    padding-right: 3rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt25-tab {
    margin-top: 2.5rem !important;
  }
  .u-mb25-tab {
    margin-bottom: 2.5rem !important;
  }
  .u-ml25-tab {
    margin-left: 2.5rem !important;
  }
  .u-mr25-tab {
    margin-right: 2.5rem !important;
  }
  .u-pt25-tab {
    padding-top: 2.5rem !important;
  }
  .u-pb25-tab {
    padding-bottom: 2.5rem !important;
  }
  .u-pl25-tab {
    padding-left: 2.5rem !important;
  }
  .u-pr25-tab {
    padding-right: 2.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt20-tab {
    margin-top: 2rem !important;
  }
  .u-mb20-tab {
    margin-bottom: 2rem !important;
  }
  .u-ml20-tab {
    margin-left: 2rem !important;
  }
  .u-mr20-tab {
    margin-right: 2rem !important;
  }
  .u-pt20-tab {
    padding-top: 2rem !important;
  }
  .u-pb20-tab {
    padding-bottom: 2rem !important;
  }
  .u-pl20-tab {
    padding-left: 2rem !important;
  }
  .u-pr20-tab {
    padding-right: 2rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt15-tab {
    margin-top: 1.5rem !important;
  }
  .u-mb15-tab {
    margin-bottom: 1.5rem !important;
  }
  .u-ml15-tab {
    margin-left: 1.5rem !important;
  }
  .u-mr15-tab {
    margin-right: 1.5rem !important;
  }
  .u-pt15-tab {
    padding-top: 1.5rem !important;
  }
  .u-pb15-tab {
    padding-bottom: 1.5rem !important;
  }
  .u-pl15-tab {
    padding-left: 1.5rem !important;
  }
  .u-pr15-tab {
    padding-right: 1.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt10-tab {
    margin-top: 1rem !important;
  }
  .u-mb10-tab {
    margin-bottom: 1rem !important;
  }
  .u-ml10-tab {
    margin-left: 1rem !important;
  }
  .u-mr10-tab {
    margin-right: 1rem !important;
  }
  .u-pt10-tab {
    padding-top: 1rem !important;
  }
  .u-pb10-tab {
    padding-bottom: 1rem !important;
  }
  .u-pl10-tab {
    padding-left: 1rem !important;
  }
  .u-pr10-tab {
    padding-right: 1rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt5-tab {
    margin-top: 0.5rem !important;
  }
  .u-mb5-tab {
    margin-bottom: 0.5rem !important;
  }
  .u-ml5-tab {
    margin-left: 0.5rem !important;
  }
  .u-mr5-tab {
    margin-right: 0.5rem !important;
  }
  .u-pt5-tab {
    padding-top: 0.5rem !important;
  }
  .u-pb5-tab {
    padding-bottom: 0.5rem !important;
  }
  .u-pl5-tab {
    padding-left: 0.5rem !important;
  }
  .u-pr5-tab {
    padding-right: 0.5rem !important;
  }
}
@media screen and (max-width: 1000px) {
  .u-mt0-tab {
    margin-top: 0rem !important;
  }
  .u-mb0-tab {
    margin-bottom: 0rem !important;
  }
  .u-ml0-tab {
    margin-left: 0rem !important;
  }
  .u-mr0-tab {
    margin-right: 0rem !important;
  }
  .u-pt0-tab {
    padding-top: 0rem !important;
  }
  .u-pb0-tab {
    padding-bottom: 0rem !important;
  }
  .u-pl0-tab {
    padding-left: 0rem !important;
  }
  .u-pr0-tab {
    padding-right: 0rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt120-sp {
    margin-top: 12rem !important;
  }
  .u-mb120-sp {
    margin-bottom: 12rem !important;
  }
  .u-ml120-sp {
    margin-left: 12rem !important;
  }
  .u-mr120-sp {
    margin-right: 12rem !important;
  }
  .u-pt120-sp {
    padding-top: 12rem !important;
  }
  .u-pb120-sp {
    padding-bottom: 12rem !important;
  }
  .u-pl120-sp {
    padding-left: 12rem !important;
  }
  .u-pr120-sp {
    padding-right: 12rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt110-sp {
    margin-top: 11rem !important;
  }
  .u-mb110-sp {
    margin-bottom: 11rem !important;
  }
  .u-ml110-sp {
    margin-left: 11rem !important;
  }
  .u-mr110-sp {
    margin-right: 11rem !important;
  }
  .u-pt110-sp {
    padding-top: 11rem !important;
  }
  .u-pb110-sp {
    padding-bottom: 11rem !important;
  }
  .u-pl110-sp {
    padding-left: 11rem !important;
  }
  .u-pr110-sp {
    padding-right: 11rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt100-sp {
    margin-top: 10rem !important;
  }
  .u-mb100-sp {
    margin-bottom: 10rem !important;
  }
  .u-ml100-sp {
    margin-left: 10rem !important;
  }
  .u-mr100-sp {
    margin-right: 10rem !important;
  }
  .u-pt100-sp {
    padding-top: 10rem !important;
  }
  .u-pb100-sp {
    padding-bottom: 10rem !important;
  }
  .u-pl100-sp {
    padding-left: 10rem !important;
  }
  .u-pr100-sp {
    padding-right: 10rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt90-sp {
    margin-top: 9rem !important;
  }
  .u-mb90-sp {
    margin-bottom: 9rem !important;
  }
  .u-ml90-sp {
    margin-left: 9rem !important;
  }
  .u-mr90-sp {
    margin-right: 9rem !important;
  }
  .u-pt90-sp {
    padding-top: 9rem !important;
  }
  .u-pb90-sp {
    padding-bottom: 9rem !important;
  }
  .u-pl90-sp {
    padding-left: 9rem !important;
  }
  .u-pr90-sp {
    padding-right: 9rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt80-sp {
    margin-top: 8rem !important;
  }
  .u-mb80-sp {
    margin-bottom: 8rem !important;
  }
  .u-ml80-sp {
    margin-left: 8rem !important;
  }
  .u-mr80-sp {
    margin-right: 8rem !important;
  }
  .u-pt80-sp {
    padding-top: 8rem !important;
  }
  .u-pb80-sp {
    padding-bottom: 8rem !important;
  }
  .u-pl80-sp {
    padding-left: 8rem !important;
  }
  .u-pr80-sp {
    padding-right: 8rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt75-sp {
    margin-top: 7.5rem !important;
  }
  .u-mb75-sp {
    margin-bottom: 7.5rem !important;
  }
  .u-ml75-sp {
    margin-left: 7.5rem !important;
  }
  .u-mr75-sp {
    margin-right: 7.5rem !important;
  }
  .u-pt75-sp {
    padding-top: 7.5rem !important;
  }
  .u-pb75-sp {
    padding-bottom: 7.5rem !important;
  }
  .u-pl75-sp {
    padding-left: 7.5rem !important;
  }
  .u-pr75-sp {
    padding-right: 7.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt70-sp {
    margin-top: 7rem !important;
  }
  .u-mb70-sp {
    margin-bottom: 7rem !important;
  }
  .u-ml70-sp {
    margin-left: 7rem !important;
  }
  .u-mr70-sp {
    margin-right: 7rem !important;
  }
  .u-pt70-sp {
    padding-top: 7rem !important;
  }
  .u-pb70-sp {
    padding-bottom: 7rem !important;
  }
  .u-pl70-sp {
    padding-left: 7rem !important;
  }
  .u-pr70-sp {
    padding-right: 7rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt65-sp {
    margin-top: 6.5rem !important;
  }
  .u-mb65-sp {
    margin-bottom: 6.5rem !important;
  }
  .u-ml65-sp {
    margin-left: 6.5rem !important;
  }
  .u-mr65-sp {
    margin-right: 6.5rem !important;
  }
  .u-pt65-sp {
    padding-top: 6.5rem !important;
  }
  .u-pb65-sp {
    padding-bottom: 6.5rem !important;
  }
  .u-pl65-sp {
    padding-left: 6.5rem !important;
  }
  .u-pr65-sp {
    padding-right: 6.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt60-sp {
    margin-top: 6rem !important;
  }
  .u-mb60-sp {
    margin-bottom: 6rem !important;
  }
  .u-ml60-sp {
    margin-left: 6rem !important;
  }
  .u-mr60-sp {
    margin-right: 6rem !important;
  }
  .u-pt60-sp {
    padding-top: 6rem !important;
  }
  .u-pb60-sp {
    padding-bottom: 6rem !important;
  }
  .u-pl60-sp {
    padding-left: 6rem !important;
  }
  .u-pr60-sp {
    padding-right: 6rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt55-sp {
    margin-top: 5.5rem !important;
  }
  .u-mb55-sp {
    margin-bottom: 5.5rem !important;
  }
  .u-ml55-sp {
    margin-left: 5.5rem !important;
  }
  .u-mr55-sp {
    margin-right: 5.5rem !important;
  }
  .u-pt55-sp {
    padding-top: 5.5rem !important;
  }
  .u-pb55-sp {
    padding-bottom: 5.5rem !important;
  }
  .u-pl55-sp {
    padding-left: 5.5rem !important;
  }
  .u-pr55-sp {
    padding-right: 5.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt50-sp {
    margin-top: 5rem !important;
  }
  .u-mb50-sp {
    margin-bottom: 5rem !important;
  }
  .u-ml50-sp {
    margin-left: 5rem !important;
  }
  .u-mr50-sp {
    margin-right: 5rem !important;
  }
  .u-pt50-sp {
    padding-top: 5rem !important;
  }
  .u-pb50-sp {
    padding-bottom: 5rem !important;
  }
  .u-pl50-sp {
    padding-left: 5rem !important;
  }
  .u-pr50-sp {
    padding-right: 5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt45-sp {
    margin-top: 4.5rem !important;
  }
  .u-mb45-sp {
    margin-bottom: 4.5rem !important;
  }
  .u-ml45-sp {
    margin-left: 4.5rem !important;
  }
  .u-mr45-sp {
    margin-right: 4.5rem !important;
  }
  .u-pt45-sp {
    padding-top: 4.5rem !important;
  }
  .u-pb45-sp {
    padding-bottom: 4.5rem !important;
  }
  .u-pl45-sp {
    padding-left: 4.5rem !important;
  }
  .u-pr45-sp {
    padding-right: 4.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt40-sp {
    margin-top: 4rem !important;
  }
  .u-mb40-sp {
    margin-bottom: 4rem !important;
  }
  .u-ml40-sp {
    margin-left: 4rem !important;
  }
  .u-mr40-sp {
    margin-right: 4rem !important;
  }
  .u-pt40-sp {
    padding-top: 4rem !important;
  }
  .u-pb40-sp {
    padding-bottom: 4rem !important;
  }
  .u-pl40-sp {
    padding-left: 4rem !important;
  }
  .u-pr40-sp {
    padding-right: 4rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt35-sp {
    margin-top: 3.5rem !important;
  }
  .u-mb35-sp {
    margin-bottom: 3.5rem !important;
  }
  .u-ml35-sp {
    margin-left: 3.5rem !important;
  }
  .u-mr35-sp {
    margin-right: 3.5rem !important;
  }
  .u-pt35-sp {
    padding-top: 3.5rem !important;
  }
  .u-pb35-sp {
    padding-bottom: 3.5rem !important;
  }
  .u-pl35-sp {
    padding-left: 3.5rem !important;
  }
  .u-pr35-sp {
    padding-right: 3.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt30-sp {
    margin-top: 3rem !important;
  }
  .u-mb30-sp {
    margin-bottom: 3rem !important;
  }
  .u-ml30-sp {
    margin-left: 3rem !important;
  }
  .u-mr30-sp {
    margin-right: 3rem !important;
  }
  .u-pt30-sp {
    padding-top: 3rem !important;
  }
  .u-pb30-sp {
    padding-bottom: 3rem !important;
  }
  .u-pl30-sp {
    padding-left: 3rem !important;
  }
  .u-pr30-sp {
    padding-right: 3rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt25-sp {
    margin-top: 2.5rem !important;
  }
  .u-mb25-sp {
    margin-bottom: 2.5rem !important;
  }
  .u-ml25-sp {
    margin-left: 2.5rem !important;
  }
  .u-mr25-sp {
    margin-right: 2.5rem !important;
  }
  .u-pt25-sp {
    padding-top: 2.5rem !important;
  }
  .u-pb25-sp {
    padding-bottom: 2.5rem !important;
  }
  .u-pl25-sp {
    padding-left: 2.5rem !important;
  }
  .u-pr25-sp {
    padding-right: 2.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt20-sp {
    margin-top: 2rem !important;
  }
  .u-mb20-sp {
    margin-bottom: 2rem !important;
  }
  .u-ml20-sp {
    margin-left: 2rem !important;
  }
  .u-mr20-sp {
    margin-right: 2rem !important;
  }
  .u-pt20-sp {
    padding-top: 2rem !important;
  }
  .u-pb20-sp {
    padding-bottom: 2rem !important;
  }
  .u-pl20-sp {
    padding-left: 2rem !important;
  }
  .u-pr20-sp {
    padding-right: 2rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt15-sp {
    margin-top: 1.5rem !important;
  }
  .u-mb15-sp {
    margin-bottom: 1.5rem !important;
  }
  .u-ml15-sp {
    margin-left: 1.5rem !important;
  }
  .u-mr15-sp {
    margin-right: 1.5rem !important;
  }
  .u-pt15-sp {
    padding-top: 1.5rem !important;
  }
  .u-pb15-sp {
    padding-bottom: 1.5rem !important;
  }
  .u-pl15-sp {
    padding-left: 1.5rem !important;
  }
  .u-pr15-sp {
    padding-right: 1.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt10-sp {
    margin-top: 1rem !important;
  }
  .u-mb10-sp {
    margin-bottom: 1rem !important;
  }
  .u-ml10-sp {
    margin-left: 1rem !important;
  }
  .u-mr10-sp {
    margin-right: 1rem !important;
  }
  .u-pt10-sp {
    padding-top: 1rem !important;
  }
  .u-pb10-sp {
    padding-bottom: 1rem !important;
  }
  .u-pl10-sp {
    padding-left: 1rem !important;
  }
  .u-pr10-sp {
    padding-right: 1rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt5-sp {
    margin-top: 0.5rem !important;
  }
  .u-mb5-sp {
    margin-bottom: 0.5rem !important;
  }
  .u-ml5-sp {
    margin-left: 0.5rem !important;
  }
  .u-mr5-sp {
    margin-right: 0.5rem !important;
  }
  .u-pt5-sp {
    padding-top: 0.5rem !important;
  }
  .u-pb5-sp {
    padding-bottom: 0.5rem !important;
  }
  .u-pl5-sp {
    padding-left: 0.5rem !important;
  }
  .u-pr5-sp {
    padding-right: 0.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  .u-mt0-sp {
    margin-top: 0rem !important;
  }
  .u-mb0-sp {
    margin-bottom: 0rem !important;
  }
  .u-ml0-sp {
    margin-left: 0rem !important;
  }
  .u-mr0-sp {
    margin-right: 0rem !important;
  }
  .u-pt0-sp {
    padding-top: 0rem !important;
  }
  .u-pb0-sp {
    padding-bottom: 0rem !important;
  }
  .u-pl0-sp {
    padding-left: 0rem !important;
  }
  .u-pr0-sp {
    padding-right: 0rem !important;
  }
}
/*--------------------------
	margin マイナス調整用
--------------------------*/
.u-mt-70-negative {
  margin-top: -7rem !important;
}

@media screen and (max-width: 767px) {
  .u-mt-40-negative-sp {
    margin-top: -4rem !important;
  }
}
/*----------------------------------------------------

	レイアウト設定のファイルです。
	グリッドレイアウトのスタイルをまとめています。
	基本的には編集することはありません。

	命名規則として、クラス名の頭に 
	l-* (Layoutのl)という接頭辞をつけることを推奨します。

----------------------------------------------------*/
/*--------------------------
	グリッドシステム
--------------------------*/
.l-grid {
  display: flex;
  flex-wrap: wrap;
}
.l-grid_item {
  box-sizing: border-box;
  width: 16.667%;
}
.l-grid_item-1 {
  width: 8.33%;
}
.l-grid_item-2 {
  width: 16.667%;
}
.l-grid_item-3 {
  width: 25%;
}
.l-grid_item-4 {
  width: 33.333%;
}
.l-grid_item-5 {
  width: 41.666%;
}
.l-grid_item-6 {
  width: 50%;
}
.l-grid_item-7 {
  width: 58.333%;
}
.l-grid_item-8 {
  width: 66.666%;
}
.l-grid_item-9 {
  width: 75%;
}
.l-grid_item-10 {
  width: 83.33%;
}
.l-grid_item-11 {
  width: 91.666%;
}
.l-grid_item-12 {
  width: 100%;
}
@media screen and (max-width: 1000px) {
  .l-grid_item-1-tab {
    width: 8.33%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-2-tab {
    width: 16.667%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-3-tab {
    width: 25%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-4-tab {
    width: 33.333%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-5-tab {
    width: 41.666%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-6-tab {
    width: 50%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-7-tab {
    width: 58.333%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-8-tab {
    width: 66.666%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-9-tab {
    width: 75%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-10-tab {
    width: 83.33%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-11-tab {
    width: 91.666%;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid_item-12-tab {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-1-sp {
    width: 8.33%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-2-sp {
    width: 16.667%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-3-sp {
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-4-sp {
    width: 33.333%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-5-sp {
    width: 41.666%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-6-sp {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-7-sp {
    width: 58.333%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-8-sp {
    width: 66.666%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-9-sp {
    width: 75%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-10-sp {
    width: 83.33%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-11-sp {
    width: 91.666%;
  }
}
@media screen and (max-width: 767px) {
  .l-grid_item-12-sp {
    width: 100%;
  }
}
.l-grid--ai-center {
  align-items: center;
}
.l-grid.l-gutter-s {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  margin-bottom: -1rem;
}
.l-grid.l-gutter-s > .l-grid_item {
  margin-bottom: 1rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.l-grid.l-gutter-m {
  margin-left: -1rem;
  margin-right: -1rem;
  margin-bottom: -2rem;
}
.l-grid.l-gutter-m > .l-grid_item {
  margin-bottom: 2rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
.l-grid.l-gutter-l {
  margin-left: -2rem;
  margin-right: -2rem;
  margin-bottom: -4rem;
}
.l-grid.l-gutter-l > .l-grid_item {
  margin-bottom: 4rem;
  padding-left: 2rem;
  padding-right: 2rem;
}
.l-grid.l-gutter-xl {
  margin-left: -3rem;
  margin-right: -3rem;
  margin-bottom: -6rem;
}
.l-grid.l-gutter-xl > .l-grid_item {
  margin-bottom: 6rem;
  padding-left: 3rem;
  padding-right: 3rem;
}
.l-grid.l-gutter-2l {
  margin-left: -4rem;
  margin-right: -4rem;
  margin-bottom: -8rem;
}
.l-grid.l-gutter-2l > .l-grid_item {
  margin-bottom: 8rem;
  padding-left: 4rem;
  padding-right: 4rem;
}
@media screen and (max-width: 1000px) {
  .l-grid.l-gutter-s-tab {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    margin-bottom: -1rem;
  }
  .l-grid.l-gutter-s-tab > .l-grid_item {
    margin-bottom: 1rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid.l-gutter-m-tab {
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: -2rem;
  }
  .l-grid.l-gutter-m-tab > .l-grid_item {
    margin-bottom: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media screen and (max-width: 1000px) {
  .l-grid.l-gutter-l-tab {
    margin-left: -2rem;
    margin-right: -2rem;
    margin-bottom: -4rem;
  }
  .l-grid.l-gutter-l-tab > .l-grid_item {
    margin-bottom: 4rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .l-grid.l-gutter-s-sp {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
    margin-bottom: -1rem;
  }
  .l-grid.l-gutter-s-sp > .l-grid_item {
    margin-bottom: 1rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .l-grid.l-gutter-m-sp {
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: -2rem;
  }
  .l-grid.l-gutter-m-sp > .l-grid_item {
    margin-bottom: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .l-grid.l-gutter-l-sp {
    margin-left: -2rem;
    margin-right: -2rem;
    margin-bottom: -4rem;
  }
  .l-grid.l-gutter-l-sp > .l-grid_item {
    margin-bottom: 4rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.l-grid.l-grid-mb0 > .l-grid_item {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 1000px) {
  .l-grid.l-grid-mb0-tab > .l-grid_item {
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .l-grid.l-grid-mb0-sp > .l-grid_item {
    margin-bottom: 0 !important;
  }
}

/*----------------------------------------------------

	レイアウト設定のファイルです。
	レイアウトに関する汎用性の高いスタイルをまとめています。
	基本的には編集することはありません。

	命名規則として、クラス名の頭に 
	l-* (Layoutのl)という接頭辞をつけることを推奨します。

----------------------------------------------------*/
.l-section {
  margin: 8rem 0;
}
@media screen and (max-width: 767px) {
  .l-section {
    margin: 4rem 0;
  }
}

.l-inner {
  margin: 0 auto;
  width: 1000px;
}
@media screen and (max-width: 1200px) {
  .l-inner {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .l-inner {
    padding: 0 1.5rem;
    width: 100%;
  }
}

.l-flex {
  display: flex;
}
.l-flex--aic {
  align-items: center;
}

.l-pos-relative {
  position: relative;
}

.l-pos-center {
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
}

.l-clearfix:after {
  clear: both;
  content: "";
  display: block;
}

.l-left {
  float: left;
}

.l-right {
  float: right;
}

.header {
  position: relative;
  z-index: 999;
}
@media screen and (max-width: 767px) {
  .header {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
  }
}
.header__inner {
  height: 8rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 3rem;
}
@media screen and (max-width: 767px) {
  .header__inner {
    padding: 0 1rem;
    height: 5rem;
  }
}
.header__logo img {
  width: 35rem;
}
.header__menu {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .header__menu {
    background: #fff;
    padding: 0 0 0 1rem;
    width: 67%;
  }
}
.header__menu-01 {
  display: flex;
  margin-right: 2rem;
}
@media screen and (max-width: 767px) {
  .header__menu-01 {
    margin-right: 0;
    width: 100%;
  }
}
.header__menu-01 > li {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 1.5rem;
  position: relative;
}
.header__menu-01-contact {
  display: inline-block;
  width: 22rem;
  font-size: 1.8rem;
  color: #00B6EE;
  font-weight: bold;
  border: 0.3rem solid #00B6EE;
  text-align: center;
  padding-left: 4rem;
  position: relative;
  border-radius: 50px;
  padding-top: 1rem;
  padding-bottom: 1rem;
  transition: 0.15s;
}
.header__menu-01-contact::before {
  content: "";
  width: 3rem;
  height: 3rem;
  position: absolute;
  top: 50%;
  left: 3.5rem;
  transform: translateY(-50%);
  transition: 0.15s;
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="40.939" height="40.94" viewBox="0 0 40.939 40.94"><path id="airplane_icon" d="M47.806,7.694a1.239,1.239,0,0,0-1.252-.307L8.1,19.48A1.243,1.243,0,0,0,7.964,21.8l10.912,4.9a1.242,1.242,0,0,0,1.017-2.267l-7.928-3.558,33.061-10.4L34.655,43.455,28.391,28.866l4.724-4.724a1.243,1.243,0,1,0-1.757-1.757l-5.307,5.307-.011.016a1.24,1.24,0,0,0-.265,1.366l7.917,18.443a1.244,1.244,0,0,0,1.142.753H34.9a1.246,1.246,0,0,0,1.124-.87L48.113,8.946A1.243,1.243,0,0,0,47.806,7.694Z" transform="translate(-7.23 -7.33)" fill="%2300B6EE"/></svg>') center center no-repeat;
  background-size: 100%;
}
.header__menu-01-contact:hover {
  color: #fff;
  background: #00B6EE;
}
.header__menu-01-contact:hover::before {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="40.939" height="40.94" viewBox="0 0 40.939 40.94"><path id="airplane_icon" d="M47.806,7.694a1.239,1.239,0,0,0-1.252-.307L8.1,19.48A1.243,1.243,0,0,0,7.964,21.8l10.912,4.9a1.242,1.242,0,0,0,1.017-2.267l-7.928-3.558,33.061-10.4L34.655,43.455,28.391,28.866l4.724-4.724a1.243,1.243,0,1,0-1.757-1.757l-5.307,5.307-.011.016a1.24,1.24,0,0,0-.265,1.366l7.917,18.443a1.244,1.244,0,0,0,1.142.753H34.9a1.246,1.246,0,0,0,1.124-.87L48.113,8.946A1.243,1.243,0,0,0,47.806,7.694Z" transform="translate(-7.23 -7.33)" fill="%23fff"/></svg>') center center no-repeat;
  background-size: 100%;
}
@media screen and (max-width: 767px) {
  .header__menu-01-contact {
    width: 11rem;
    padding-left: 2rem;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
    border: 2px solid #00B6EE;
  }
  .header__menu-01-contact::before {
    width: 1.7rem;
    height: 1.7rem;
    left: 1.1rem;
  }
  .header__menu-01-contact:hover {
    color: #00B6EE;
    background: #fff;
  }
  .header__menu-01-contact:hover::before {
    background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="40.939" height="40.94" viewBox="0 0 40.939 40.94"><path id="airplane_icon" d="M47.806,7.694a1.239,1.239,0,0,0-1.252-.307L8.1,19.48A1.243,1.243,0,0,0,7.964,21.8l10.912,4.9a1.242,1.242,0,0,0,1.017-2.267l-7.928-3.558,33.061-10.4L34.655,43.455,28.391,28.866l4.724-4.724a1.243,1.243,0,1,0-1.757-1.757l-5.307,5.307-.011.016a1.24,1.24,0,0,0-.265,1.366l7.917,18.443a1.244,1.244,0,0,0,1.142.753H34.9a1.246,1.246,0,0,0,1.124-.87L48.113,8.946A1.243,1.243,0,0,0,47.806,7.694Z" transform="translate(-7.23 -7.33)" fill="%2300B6EE"/></svg>') center center no-repeat;
    background-size: 100%;
  }
  .header__menu-01-contact li {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 1000px) {
  .header__menu-01 {
    margin: 0;
  }
}
@media screen and (max-width: 1405px) {
  .header__menu-01 li {
    margin: 0 0 0 0.7rem;
  }
}
@media screen and (max-width: 767px) {
  .header__menu-01 {
    display: block;
    margin-right: 0;
    margin-bottom: 0;
  }
  .header__menu-01 > li {
    border-bottom: 1px solid #00B6EE;
  }
  .header__menu-01 > li:last-child {
    border-bottom: none;
  }
  .header__menu-01 a {
    display: inline-block;
    color: #00B6EE;
    padding: 0.3rem 1rem 0.3rem 3rem;
    width: 100%;
    font-size: 1.2rem;
  }
}

.header--clone {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transform: translateY(0%);
  transition: 0.25s;
}
.header--clone.hidden {
  transform: translateY(-100%);
}
.header--clone.is-top {
  transform: translateY(-100%) !important;
}

.footer {
  background: #00B6EE;
  color: #fff;
}
.footer__inner {
  padding: 7.5rem 0 8rem;
}
@media screen and (max-width: 767px) {
  .footer__inner {
    padding: 3rem 3rem 2rem;
  }
}

.footer-top__inner {
  text-align: center;
}
.footer-top__txt {
  font-size: 2.5rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .footer-top__txt {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.footer-top__logo {
  width: 40%;
  margin: 0 auto 6.5rem;
}
@media screen and (max-width: 767px) {
  .footer-top__logo {
    margin: 0 auto 2rem;
    width: 80%;
  }
}

.footer-btns {
  padding: 4rem 0;
  margin: 0 auto;
  max-width: 70rem;
}
@media screen and (max-width: 767px) {
  .footer-btns {
    padding: 3rem 0;
  }
}

.footer-copy {
  font-size: 1.4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer-copy {
    font-size: 1.2rem;
  }
}

.breadcrumb {
  display: flex;
  background: #fff;
  padding-top: 3rem;
  margin-bottom: 6rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .breadcrumb {
    padding-top: 1.5rem;
    margin-bottom: 4rem;
  }
}
.breadcrumb li {
  font-size: 1.6rem;
  padding: 0 1.7rem;
  color: #000;
  position: relative;
}
@media screen and (max-width: 767px) {
  .breadcrumb li {
    font-size: 1.2rem;
  }
}
.breadcrumb li::before {
  content: ">";
  position: absolute;
  top: 50%;
  right: -0.3rem;
  transform: translate(0, -50%);
}
.breadcrumb li:last-child {
  color: #00B6EE;
}
.breadcrumb li:last-child::before {
  content: "";
}
.breadcrumb__active {
  color: #00B6EE;
}

.menu-sp {
  background: #333;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 998;
  opacity: 0;
  pointer-events: none;
  transition: 0.25s;
}
.menu-sp.open {
  opacity: 1;
  pointer-events: auto;
}

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

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
input[type=radio],
select {
  appearance: none;
  margin: 0;
  padding: 0;
  width: 100%;
  background: #fff;
  font-size: 16px;
  color: inherit;
  font-family: inherit;
  background-color: #fff;
  background-image: none;
  border: none;
  border-radius: 5px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=radio]:focus,
select:focus {
  box-shadow: none;
  outline: none;
}

input[type=checkbox] {
  scale: 1.7;
}
@media screen and (max-width: 767px) {
  input[type=checkbox] {
    scale: 1.5;
  }
}

textarea {
  appearance: none;
  margin: 0;
  padding: 0;
  width: 100%;
  background: #fff;
  font-size: 16px;
  color: inherit;
  font-family: inherit;
  background-color: #fff;
  background-image: none;
  border: none;
  border-radius: 5px;
  padding: 1.8rem;
}
@media screen and (max-width: 767px) {
  textarea {
    padding: 1rem;
  }
}
textarea:focus {
  box-shadow: none;
  outline: none;
}

input[type=file] {
  display: none;
}

textarea {
  border: 2px solid #CCCCCC;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  textarea {
    font-size: 1.3rem;
  }
}

.form__inner {
  padding-bottom: 10rem;
  padding-top: 6.5rem;
  background: #F5F9FD;
  max-width: 600px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .form__inner {
    padding-top: 3rem;
    padding-bottom: 5rem;
    width: 100%;
  }
}
.form__ttl {
  font-size: 3.5rem;
  text-align: center;
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .form__ttl {
    font-size: 2rem;
    margin-bottom: 3.5rem;
  }
}
.form__txt {
  font-size: 1.6rem;
  width: 90%;
  margin: 0 auto;
  padding-bottom: 7rem;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .form__txt {
    font-size: 1.25rem;
    margin: 0 auto 2rem;
    padding-bottom: 3.5rem;
    margin-bottom: 3.5rem;
  }
}
.form__img {
  text-align: center;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767px) {
  .form__img {
    width: 80%;
    margin: 0 auto;
    margin-bottom: 4rem;
  }
}
.form__subttl {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 6rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .form__subttl {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
}
.form .form-contents {
  background: #fff;
  width: 90%;
  margin: 0 auto 7rem;
  padding: 6rem 2.5rem;
  box-shadow: 0px 10px 0px rgba(0, 0, 0, 0.15);
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-contents {
    margin: 0 auto 5rem;
    padding: 2rem 1.5rem;
  }
}
.form .form-contents:last-child {
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .form .form-contents:last-child {
    margin-bottom: 3.5rem;
  }
}
.form .form-contents__note {
  font-size: 1.6rem;
  color: #E50A17;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .form .form-contents__note {
    font-size: 1.3rem;
    margin-bottom: 2rem;
  }
}
.form .form-content {
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .form .form-content {
    margin-bottom: 2.5rem;
  }
}
.form .form-content:last-child {
  margin-bottom: 0;
}
.form .form-content--position {
  position: relative;
}
.form .form-content__ttl {
  font-size: 2rem;
  width: 100%;
  background: #F4F4F4;
  padding: 2rem 1.5rem;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl {
    font-size: 1.6rem;
    padding: 1rem;
    margin-bottom: 2rem;
  }
}
.form .form-content__ttl span {
  display: inline-block;
  position: relative;
}
.form .form-content__ttl span::after {
  content: "必須";
  background: #E50A17;
  color: #fff;
  font-size: 1.5rem;
  padding: 0 1.5rem;
  position: absolute;
  top: 50%;
  right: -8rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl span::after {
    font-size: 1.1rem;
    right: -7rem;
    padding: 0 1rem;
  }
}
.form .form-content__ttl--optional span::after {
  content: none;
}
.form .form-content__ttl--optional .form-optional {
  margin-left: 3rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl--optional .form-optional {
    margin-left: 2rem;
  }
}
.form .form-content__ttl .form__number {
  padding-left: 4.5rem;
  position: relative;
  max-width: 81%;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl .form__number {
    padding-left: 2.5rem;
    width: 75%;
  }
}
.form .form-content__ttl .form__number::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 3.5rem;
  height: 3.5rem;
  background: #333333;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl .form__number::before {
    width: 2rem;
    height: 2rem;
    font-size: 1.3rem;
  }
}
.form .form-content__ttl .form__number--01::before {
  content: "1";
}
.form .form-content__ttl .form__number--02::before {
  content: "2";
}
.form .form-content__ttl .form__number--03::before {
  content: "3";
}
.form .form-content__ttl .form__number--04::before {
  content: "4";
}
.form .form-content__ttl .form__number--05::before {
  content: "5";
}
.form .form-content__ttl .form__number--06::before {
  content: "6";
}
.form .form-content__ttl .form__number--07::before {
  content: "7";
}
.form .form-content__ttl .form__number--08::before {
  content: "8";
}
.form .form-content__ttl .form__number--09::before {
  content: "9";
  top: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl .form__number--09::before {
    top: 1.5rem;
  }
}
.form .form-content__ttl .form__number--10::before {
  content: "10";
  top: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl .form__number--10::before {
    top: 1.5rem;
  }
}
.form .form-content__ttl .form__number--11::before {
  content: "11";
  top: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__ttl .form__number--11::before {
    top: 1.5rem;
  }
}
.form .form-content__number {
  padding-left: 7rem;
  position: relative;
  max-width: 81%;
}
@media screen and (max-width: 767px) {
  .form .form-content__number {
    padding-left: 4rem;
    width: 75%;
  }
}
.form .form-content__number::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  width: 4rem;
  height: 4rem;
  background: #333333;
  color: #fff;
  font-size: 2.8rem;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .form .form-content__number::before {
    width: 2.5rem;
    height: 2.5rem;
    left: 0;
    font-size: 1.5rem;
  }
}
.form .form-content__number--01::before {
  content: "1";
}
.form .form-content__number--02::before {
  content: "2";
}
.form .form-content__number--03::before {
  content: "3";
}
.form .form-content__number--04::before {
  content: "4";
}
.form .form-content__number--05::before {
  content: "5";
}
.form .form-content__number--06::before {
  content: "6";
}
.form .form-content__number--07::before {
  content: "7";
}
.form .form-content__number--08::before {
  content: "8";
}
.form .form-content__number--09::before {
  content: "9";
  top: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__number--09::before {
    top: 1.5rem;
  }
}
.form .form-content__number--10::before {
  content: "10";
  top: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__number--10::before {
    top: 1.5rem;
  }
}
.form .form-content__number--11::before {
  content: "11";
  top: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__number--11::before {
    top: 1.5rem;
  }
}
.form .form-content__sample {
  display: inline-block;
  font-size: 1.6rem;
  color: #AAAAAA;
  display: inline-block;
  color: #AAAAAA;
}
.form .form-content__sample--mb {
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__sample--mb {
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .form .form-content__sample {
    font-size: 1.1rem;
  }
}
.form .form-content__check {
  margin-bottom: 2.5rem;
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .form .form-content__check {
    margin-bottom: 2rem;
    font-size: 1.3rem;
  }
}
.form .form-content__check label {
  cursor: pointer;
}
.form .form-content__url {
  position: relative;
}
.form .form-content__bg {
  background: #F5F9FD;
  padding: 3rem;
  width: 90%;
  margin-left: auto;
  margin-bottom: 4rem;
  display: none;
}
@media screen and (max-width: 767px) {
  .form .form-content__bg {
    padding: 1.5rem;
    margin-bottom: 2rem;
  }
}
.form .form-content__bg .form-content__sample {
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__bg .form-content__sample {
    margin-bottom: 1rem;
  }
}
.form .form-content__bg .form-content__sample:last-child {
  margin-bottom: 0;
}
.form .form-content__plus {
  width: 5rem;
  height: 5rem;
  color: #fff;
  background: #0075FF;
  cursor: pointer;
  position: relative;
  border-radius: 10px;
  transition: 0.15s;
}
@media screen and (max-width: 767px) {
  .form .form-content__plus {
    width: 3rem;
    height: 3rem;
  }
}
.form .form-content__plus::after {
  content: "+";
  font-size: 4rem;
  line-height: 4rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .form .form-content__plus::after {
    font-size: 2.4rem;
  }
}
.form .form-content__plus:hover {
  opacity: 0.8;
}
.form .form-content__txt {
  font-size: 1.6rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .form .form-content__txt {
    font-size: 1.3rem;
    margin-bottom: 1rem;
  }
}
.form .form-content__list {
  display: flex;
}
.form .form-content__list dt {
  width: 18%;
}
@media screen and (max-width: 767px) {
  .form .form-content__list dt {
    width: 25%;
  }
}
.form .form-content__list dd {
  width: 82%;
}
@media screen and (max-width: 767px) {
  .form .form-content__list dd {
    width: 75%;
  }
}
.form .active {
  display: block;
}
.form h4 {
  font-size: 1.7rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .form h4 {
    font-size: 1.4rem;
    margin-bottom: 1rem;
  }
}
.form input[type=text] {
  border: 2px solid #CCCCCC;
  width: 100%;
  border-radius: 5px;
  margin-bottom: 1rem;
  font-size: 1.6rem;
  padding: 2rem;
}
@media screen and (max-width: 767px) {
  .form input[type=text] {
    font-size: 2rem;
    padding: 1rem;
    font-size: 1.3rem;
  }
}
.form .input-error input[type=text] {
  border: 2px solid #E50A17;
  background: #fbebdd;
}
.form .input-error textarea {
  border: 2px solid #E50A17;
  background: #fbebdd;
}

label {
  display: flex;
  align-items: center;
}
label input[type=checkbox] {
  margin-right: 2rem;
}
@media screen and (max-width: 767px) {
  label input[type=checkbox] {
    margin-right: 1rem;
  }
}

input[type=text].input-error {
  border: 2px solid #E50A17;
  background: #fbebdd;
}

.radio-item {
  display: flex;
  margin-bottom: 3rem;
  justify-content: left;
}
@media screen and (max-width: 767px) {
  .radio-item {
    margin-bottom: 2rem;
  }
}
.radio-item--sb {
  justify-content: space-between;
}
.radio-item__wrap {
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .radio-item__wrap {
    font-size: 1.4rem;
  }
}
.radio-item__wrap--w50 {
  width: 50%;
}
.radio-item__style {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  padding: 5px 5rem;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .radio-item__style {
    padding: 5px 3rem;
    font-size: 1.3rem;
  }
}
.radio-item__style::before {
  border: 1px solid #cccccc;
  border-radius: 50%;
  content: "";
  display: block;
  height: 25px;
  left: 5px;
  position: absolute;
  top: 50%;
  width: 25px;
  box-sizing: content-box;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .radio-item__style::before {
    height: 19px;
    width: 19px;
  }
}
.radio-item__style::after {
  background: #0068b7;
  border-radius: 50%;
  content: "";
  display: block;
  height: 19px;
  left: 9px;
  opacity: 0;
  position: absolute;
  top: 50%;
  width: 19px;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .radio-item__style::after {
    height: 15px;
    width: 15px;
    left: 8px;
  }
}
.radio-item input[type=radio]:checked + .radio-item__style::before {
  border: 1px solid #0068b7;
}
.radio-item input[type=radio]:checked + .radio-item__style::after {
  opacity: 1;
}

.checkbox-flex {
  display: flex;
  flex-wrap: wrap;
}
.checkbox-flex label {
  width: 50%;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 2.5rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .checkbox-flex label {
    font-size: 1.2rem;
    margin-bottom: 2rem;
  }
}
.checkbox-flex label:last-child {
  margin-bottom: 0;
}
.checkbox-flex input {
  border: 3px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  .checkbox-flex .checkbox-select--s {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .checkbox-flex .text-small {
    font-size: 1.2rem;
  }
}

#programcat label.disabled {
  opacity: 0.5;
}

.offer-wrap {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .offer-wrap {
    margin-bottom: 2rem;
  }
}
.offer-wrap label {
  font-size: 1.8rem;
  font-weight: bold;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .offer-wrap label {
    font-size: 1.3rem;
  }
}

.upload-file .custom-file-input {
  font-size: 1.6rem;
  border: 2px solid #CCCCCC;
  background: #EEEEEE;
  cursor: pointer;
  margin-bottom: 4rem;
  border-radius: 10px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .upload-file .custom-file-input {
    font-size: 1.2rem;
    margin-bottom: 2rem;
  }
}
.upload-file .custom-file-input--02 {
  margin-bottom: 2rem;
}
.upload-file #file-name1,
.upload-file #file-name2 {
  padding: 1.3rem 3rem;
  font-size: 1.6rem;
  color: #CCCCCC;
  width: 70%;
  background: #fff;
  display: inline-block;
  border-right: 2px solid #CCCCCC;
  margin-right: 2rem;
  border-radius: 10px 0 0 10px;
  overflow: hidden;
  height: 7rem;
  white-space: nowrap;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .upload-file #file-name1,
  .upload-file #file-name2 {
    font-size: 1.3rem;
    margin-right: 0.5rem;
    padding: 1rem;
    width: 66%;
    height: 4rem;
  }
}

.confirmation .form__txt {
  padding-bottom: 7rem;
  border-bottom: 2px solid #cccccc;
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .confirmation .form__txt {
    padding-bottom: 3.5rem;
    margin-bottom: 3.5rem;
  }
}
.confirmation .form__txt--b-none {
  border-bottom: none;
}
.confirmation__contents .form__content {
  margin-bottom: 0;
}
.confirmation__contents h3 {
  background: none;
  font-size: 2.5rem;
  margin-bottom: 2rem;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .confirmation__contents h3 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
}
.confirmation__contents .form__number {
  padding-left: 6rem;
}
.confirmation__contents .form__number::before {
  left: 0;
}
.confirmation h4 {
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .confirmation h4 {
    font-size: 1.4rem;
  }
}
.confirmation h4 .form-optional {
  margin-left: 3rem;
}
@media screen and (max-width: 767px) {
  .confirmation h4 .form-optional {
    margin-left: 2rem;
  }
}
.confirmation .form-content__txt--gray {
  color: #AAAAAA;
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
  .confirmation .form-content__txt--gray {
    font-size: 1.3rem;
  }
}

.confirmation-txt {
  font-size: 1.8rem;
  color: #333333;
  border-bottom: 1px solid #666666;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .confirmation-txt {
    font-size: 1.4rem;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.confirmation-txt--b-none {
  border: none;
  padding-bottom: 0;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .confirmation-txt--b-none {
    margin-bottom: 1rem;
  }
}
.confirmation-txt span {
  font-size: 1.8rem;
  color: #AAAAAA;
}
@media screen and (max-width: 767px) {
  .confirmation-txt span {
    font-size: 1.3rem;
  }
}

.confirmation-textarea {
  font-size: 1.8rem;
  border-bottom: 1px solid #666666;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .confirmation-textarea {
    font-size: 1.3rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
  }
}
.confirmation-textarea--b-none {
  border: none;
}
.confirmation-textarea--disc {
  font-size: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .confirmation-textarea--disc {
    font-size: 2rem;
  }
}

.u-ul-style {
  padding-bottom: 2rem;
  margin-bottom: 2.5rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .u-ul-style {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    font-size: 1.3rem;
  }
}
.u-ul-style li {
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .u-ul-style li {
    margin-bottom: 1px;
  }
}
.u-ul-style li:last-child {
  margin-bottom: 0;
}
.u-ul-style .list-hiden {
  overflow: hidden;
}

.u-ul-style--disc li::after {
  color: #000;
}

.contact-form {
  background: #FFF;
  border-radius: 11px;
  -moz-box-shadow: 0px 0px 35px 25px rgba(0, 55, 118, 0.11);
  -webkit-box-shadow: 0px 0px 35px 25px rgba(0, 55, 118, 0.11);
  -ms-box-shadow: 0px 0px 35px 25px rgba(0, 55, 118, 0.11);
  box-shadow: 0px 0px 35px 25px rgba(0, 55, 118, 0.11);
  margin-bottom: 11rem;
}

.contact-form {
  padding: 7rem;
  width: 85%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .contact-form {
    padding: 6rem 3rem;
  }
}

.complete .form__txt {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .complete .contact-form-btn {
    margin-bottom: 2rem;
  }
}

.contact-form__ttl {
  font-size: 3rem;
  text-align: center;
  margin: 0 auto 7rem;
  border-bottom: 3px solid #f56500;
  padding-bottom: 2rem;
  width: 45%;
}
@media screen and (max-width: 767px) {
  .contact-form__ttl {
    font-size: 2.1rem;
    margin: 0 auto 3.5rem;
    padding-bottom: 1rem;
  }
}

.contact-form-btn a {
  margin: 0 auto;
  font-size: 1.8rem;
  font-weight: bold;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  color: #f56500;
  background: #fff;
  border: 3px solid #f56500;
  border-radius: 100vh;
  width: 60%;
  display: block;
  transition: 0.15s;
  cursor: pointer;
  text-align: center;
}
.contact-form-btn a:hover {
  color: #fff;
  background: #f56500;
  border: 3px solid #f56500;
}
@media screen and (max-width: 767px) {
  .contact-form-btn a {
    font-size: 1.4rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    width: 70%;
    border: 2px solid #f56500;
  }
  .contact-form-btn a:hover {
    border: 2px solid #f56500;
  }
}

.border-none {
  border-bottom: none;
}

.border-bottom {
  border-bottom: 1px solid #666666;
}

.hmb-btn {
  position: relative;
  cursor: pointer;
  height: 6rem;
  width: 6rem;
}
.hmb-btn__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.hmb-btn__hmb {
  position: relative;
  height: 2rem;
  width: 2.5rem;
}
.hmb-btn__hmb span {
  display: inline-block;
  transition: all 0.25s; /*アニメーションの設定*/
  position: absolute;
  left: 0;
  height: 2px;
  background: #fff;
  width: 100%;
}
.hmb-btn__hmb span:nth-of-type(1) {
  top: 0;
}
.hmb-btn__hmb span:nth-of-type(2) {
  top: 50%;
  transform: translate(0, -1px);
}
.hmb-btn__hmb span:nth-of-type(3) {
  bottom: 0;
}

.hmb-btn.active .hmb-btn__hmb span:nth-of-type(1) {
  top: 50%;
  left: 10%;
  transform: rotate(-45deg);
  width: 80%;
}
.hmb-btn.active .hmb-btn__hmb span:nth-of-type(2) {
  width: 50%;
  opacity: 0; /*真ん中の線は透過*/
}
.hmb-btn.active .hmb-btn__hmb span:nth-of-type(3) {
  top: 50%;
  left: 10%;
  transform: rotate(45deg);
  width: 80%;
}

.pagetop {
  background: rgba(0, 0, 0, 0.4);
  color: #fff;
  font-size: 2.4rem;
  line-height: 1;
  padding: 0.5rem 2rem;
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 999;
  cursor: pointer;
  transition: 0.25s;
  opacity: 0;
  pointer-events: none;
}
.pagetop.active {
  opacity: 1;
  pointer-events: all;
}

.send-btn {
  margin: 0 auto;
  font-size: 2rem;
  font-weight: bold;
  padding-top: 2rem;
  padding-bottom: 2rem;
  color: #fff;
  background: #f56500;
  border: 3px solid #f56500;
  border-radius: 100vh;
  width: 65%;
  display: block;
  transition: 0.15s;
  cursor: pointer;
  margin-bottom: 0;
}
.send-btn:hover {
  background: #fff;
  color: #f56500;
  border: 3px solid #f56500;
}
@media screen and (max-width: 767px) {
  .send-btn {
    font-size: 1.6rem;
    padding-top: 1.3rem;
    padding-bottom: 1.3rem;
    width: 80%;
    margin-bottom: 2rem;
  }
}
.send-btn--mb {
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .send-btn--mb {
    margin-bottom: 4rem;
  }
}

.back-btn {
  text-align: center;
  position: relative;
  width: 70%;
  margin: 0 auto;
  cursor: pointer;
}
.back-btn::before {
  content: "";
  margin: auto;
  position: absolute;
  top: -22px;
  bottom: 0;
  left: 12rem;
  width: 13px;
  height: 13px;
  border-top: 3px solid #F56500;
  border-right: 3px solid #F56500;
  transform: rotate(225deg);
}
@media screen and (max-width: 767px) {
  .back-btn::before {
    left: 4rem;
  }
}
.back-btn::after {
  content: "";
  margin: auto;
  position: absolute;
  top: -22px;
  bottom: 0;
  left: 12rem;
  width: 20px; /* ①棒の長さを15⇒20pxに変更 */
  height: 3px;
  background: #F56500;
}
@media screen and (max-width: 767px) {
  .back-btn::after {
    left: 4rem;
  }
}
.back-btn input[type=submit] {
  background: none;
  color: #F56500;
  font-size: 2rem;
  border: none;
  font-weight: bold;
  transition: 0.15s;
  text-align: center;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .back-btn input[type=submit] {
    font-size: 1.6rem;
  }
}
.back-btn:hover {
  opacity: 0.8;
}

/*------------------------------
	ナビゲーション
------------------------------*/
/*------------------------------
	ページネーション
------------------------------*/
.wp-pagenavi {
  text-align: center;
  clear: both;
  margin: 6rem 0;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi {
    margin: 4rem 0;
  }
}
.wp-pagenavi a,
.wp-pagenavi span {
  background-color: #fff;
  border: none !important;
  color: #999;
  font-size: 2rem;
  padding: 0.8rem 1.5rem !important;
  margin: 0 1.5rem !important;
  white-space: nowrap;
  border-radius: 50%;
  transition: 0.25s ease-in-out;
  text-align: center;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    font-size: 1.4rem;
    padding: 0.5rem 1.2rem !important;
    margin: 0 0.5rem !important;
  }
}
.wp-pagenavi a:hover {
  color: #00B6EE;
}
.wp-pagenavi span.current {
  color: #00B6EE;
  font-weight: bold;
}

.wp-content-header {
  margin-bottom: 2rem;
}

/*------------------------------
	Content( 記事の本文 )
------------------------------*/
.wp-content {
  line-height: 1.8;
  margin-bottom: 8rem;
  /* img */
}
.wp-content:after {
  content: "";
  clear: both;
  display: block;
}
.wp-content strong {
  font-weight: bold;
}
.wp-content em {
  font-style: italic;
}
.wp-content blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 4rem;
  -webkit-margin-end: 4rem;
}
.wp-content .aligncenter {
  display: block;
  margin: 0 auto;
}
.wp-content .alignright {
  float: right;
  margin-left: 1.5rem !important;
}
.wp-content .alignleft {
  float: left;
  margin-right: 1.5rem !important;
}
.wp-content img[class*=wp-image-],
.wp-content img[class*=attachment-] {
  height: auto;
  max-width: 100%;
  margin: 1.5rem 0;
}
.wp-content .wp-caption {
  max-width: 100%;
}
.wp-content p {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
  margin-bottom: 2rem;
  margin-top: 1rem;
}
.wp-content a {
  color: #00B6EE;
  text-decoration: underline;
}
.wp-content a:hover {
  text-decoration: none;
}
.wp-content ul {
  margin: 1em 0;
  padding-left: 4rem;
  list-style-type: disc;
}
.wp-content ul li {
  list-style-type: disc;
}
.wp-content ol {
  margin: 1em 0;
  padding-left: 4rem;
  list-style-type: decimal;
}
.wp-content ol li {
  list-style-type: decimal;
}
.wp-content blockquote {
  margin: 0 0 1em 0;
  padding: 50px 50px 40px;
  background: #f2f2f2;
  background: -moz-linear-gradient(top, rgb(255, 255, 255) 0%, rgb(248, 248, 248) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(255, 255, 255)), color-stop(100%, rgb(248, 248, 248)));
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#f8f8f8",GradientType=0 );
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  position: relative;
  border: 1px solid #c1c1c1;
}
.wp-content blockquote:before {
  content: '"';
  font-style: italic;
  font-size: 4rem;
  font-weight: bold;
  line-height: 4rem;
  width: 3rem;
  height: 3rem;
  position: absolute;
  top: 2rem;
  left: 2rem;
  color: #999;
}
.wp-content blockquote:after {
  content: '"';
  font-style: italic;
  font-size: 4rem;
  font-weight: bold;
  text-align: left;
  line-height: 6rem;
  width: 3rem;
  height: 3rem;
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  color: #999;
}
.wp-content pre {
  margin: 1em 0;
  padding: 1em;
  color: #000000;
  white-space: pre-wrap; /* css-3 */
  white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
  white-space: -pre-wrap; /* Opera 4-6 */
  white-space: -o-pre-wrap; /* Opera 7 */
  word-wrap: break-word; /* Internet Explorer 5.5+ */
}
.sec-ttl {
  font-size: 4rem;
  margin-bottom: 5rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec-ttl {
    font-size: 2rem;
    margin-bottom: 2.5rem;
  }
}

.sec-subttl {
  font-size: 2rem;
  margin-bottom: 1.5rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec-subttl {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}

.red-text {
  color: #EF0800;
}

.data-ul {
  display: flex;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .data-ul {
    display: block;
    margin-bottom: 3rem;
  }
}
.data-ul > li:first-child {
  margin-right: 12rem;
}
@media screen and (max-width: 767px) {
  .data-ul > li:first-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .data-ul > li {
    width: 100%;
  }
}

.data-ul-item {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .data-ul-item {
    display: block;
    margin-bottom: 2rem;
  }
}
.data-ul-item__ttl {
  background: #00B6EE;
  color: #fff;
  padding: 1rem 2rem;
  text-align: center;
  margin-right: 3rem;
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .data-ul-item__ttl {
    padding: 0.2rem 0;
    margin-bottom: 0.5rem;
    margin-right: 0;
    font-size: 1.6rem;
  }
}
.data-ul-item__data {
  font-size: 1.8rem;
  flex-grow: 2;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .data-ul-item__data {
    font-size: 1.4rem;
  }
}

.required {
  display: inline-block;
  position: relative;
}
.required::after {
  content: "必須";
  background: #E50A17;
  color: #fff;
  font-size: 2rem;
  padding: 0 1.5rem;
  position: absolute;
  top: 50%;
  right: -10rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .required::after {
    font-size: 1.3rem;
    right: -7rem;
    padding: 0 1rem;
  }
}

.form-optional {
  background: #333333;
  color: #fff;
  padding: 0 1.5rem;
  font-size: 1.5rem;
  font-weight: bold;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .form-optional {
    font-size: 1.1rem;
    padding: 0 1rem;
  }
}

.error-txt {
  color: #E50A17;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .error-txt {
    font-size: 1.3rem;
  }
}
.error-txt--mb {
  margin-top: 0;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .error-txt--mb {
    margin-bottom: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .page-header {
    padding-top: 5rem;
  }
}

#airplane_icon {
  transition: all 0.3s ease 0s;
}
#airplane_icon:hover {
  fill: #fb8c00;
}

/*----------------------------------------------------

	各ページの独自モジュールスタイルのCSS。

	【記述ルール】
	{ ページ名(top, about等) }○○○○

	階層はルートクラスより、三階層までが基本
	【例】
	.top-sec .top-sec__ttl span {		
	}
	※CSSに展開した場合

----------------------------------------------------*/
.top .mv {
  display: flex;
  flex-direction: row-reverse;
  position: relative;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .top .mv {
    display: block;
    padding-top: 5rem;
  }
}
.top .mv .mv-count {
  background: #00B6EE;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count {
    padding-bottom: 2.5rem;
  }
}
.top .mv .mv-count__logo {
  width: 85%;
  margin: 0 auto;
  padding-top: 10rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count__logo {
    padding-top: 2rem;
    padding-bottom: 1rem;
  }
}
.top .mv .mv-count__days {
  font-size: 6rem;
  color: #fff;
  padding: 0 18%;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count__days {
    font-size: 4rem;
    padding: 0;
    text-align: center;
  }
  .top .mv .mv-count__days .sp-arrow {
    position: relative;
  }
  .top .mv .mv-count__days .sp-arrow::before {
    content: "";
    width: 107%;
    height: 2px;
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .top .mv .mv-count__days .sp-arrow::after {
    content: "";
    width: 1.5rem;
    height: 2px;
    background: #fff;
    position: absolute;
    bottom: 0.5rem;
    right: -1.3rem;
    transform: rotate(45deg);
  }
}
.top .mv .mv-count__days--l {
  font-size: 8rem;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count__days--l {
    font-size: 4rem;
  }
}
.top .mv .mv-count__days--s {
  font-size: 4rem;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count__days--s {
    font-size: 2rem;
    writing-mode: vertical-rl;
  }
}
.top .mv .mv-count__days .current-day {
  font-size: 13rem;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count__days .current-day {
    font-size: 6rem;
  }
}
.top .mv .mv-count__down {
  color: #00B6EE;
  display: inline-block;
}
.top .mv .mv-count__down span {
  font-family: "DIN 2014", sans-serif;
  font-size: 18rem;
  line-height: 1;
  background: #fff;
  padding: 1rem 2rem;
  display: inline-block;
  border-right: 5px solid #00B6EE;
  margin-right: 2px;
}
@media screen and (max-width: 767px) {
  .top .mv .mv-count__down span {
    font-size: 5rem;
    border-right: 1px solid #00B6EE;
    padding: 0.6rem 0.5rem 0.5rem;
  }
}
.top .mv .mv-count__down span:last-child {
  border: none;
}
.top .access {
  padding-top: 14rem;
  padding-bottom: 16rem;
}
@media screen and (max-width: 767px) {
  .top .access {
    padding-top: 4rem;
    padding-bottom: 5rem;
  }
}
.top .access__map {
  margin-bottom: 9rem;
}
@media screen and (max-width: 767px) {
  .top .access__map {
    margin-bottom: 5rem;
    padding: 0 1.5rem;
  }
}
.top .top-bnr li {
  transition: 0.15s;
}
.top .top-bnr li:hover {
  opacity: 0.8;
}

/*----------------------------------------------------

	各ページの独自モジュールスタイルのCSS。

	【記述ルール】
	{ ページ名(top, about等) }○○○○

	階層はルートクラスより、三階層までが基本
	【例】
	.top-sec .top-sec__ttl span {		
	}
	※CSSに展開した場合

----------------------------------------------------*/
.contact__header {
  text-align: center;
  margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
  .contact__header {
    margin-bottom: 4rem;
  }
}
.contact__txt {
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .contact__txt {
    margin-bottom: 1.5rem;
  }
}
.contact__manual {
  color: #00B9EF;
  text-decoration: underline;
}
.contact__wrap {
  display: flex;
  margin-bottom: 5rem;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .contact__wrap {
    display: block;
    margin-bottom: 2.5rem;
  }
}
.contact__wrap:last-child {
  margin-bottom: 5rem;
}
.contact__wrap label {
  width: 16%;
  font-size: 2rem;
  margin-right: 5rem;
}
@media screen and (max-width: 767px) {
  .contact__wrap label {
    font-size: 1.3rem;
    width: 100%;
  }
}
.contact__wrap label span {
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .contact__wrap label span {
    margin-left: 0;
  }
}
.contact__wrap label .required {
  position: relative;
  text-align: right;
}
.contact__wrap label .required::after {
  content: "※";
  font-size: 2rem;
  background: none;
  color: #F11616;
  right: -4rem;
  top: 0;
}
@media screen and (max-width: 767px) {
  .contact__wrap label .required::after {
    font-size: 1.3rem;
    right: -3rem;
    top: 7px;
  }
}
.contact__wrap input {
  width: 60%;
  border: 1px solid #9A9A9A;
  border-radius: 0;
  font-size: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 2rem;
}
@media screen and (max-width: 767px) {
  .contact__wrap input {
    width: 100%;
    font-size: 1.6rem;
    padding-left: 1rem;
  }
}
.contact__wrap textarea {
  width: 60%;
  border: 1px solid #9A9A9A;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .contact__wrap textarea {
    width: 100%;
    font-size: 1.6rem;
  }
}
.contact__btn {
  width: 30rem;
  margin: 0 auto;
  text-align: center;
  position: relative;
  margin-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .contact__btn {
    width: 20rem;
    margin-bottom: 7rem;
  }
}
.contact__btn::after {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  border-top: 3px solid #00B6EE;
  border-right: 3px solid #00B6EE;
  position: absolute;
  top: 50%;
  right: 3rem;
  transform: rotate(45deg) translateY(-50%);
  transition: 0.15s;
}
@media screen and (max-width: 767px) {
  .contact__btn::after {
    width: 1rem;
    height: 1rem;
  }
}
.contact__btn input[type=submit] {
  color: #00B6EE;
  font-size: 2rem;
  border: 0.3rem solid #00B6EE;
  width: 30rem;
  padding-top: 1.3rem;
  padding-bottom: 1.3rem;
  border-radius: 40px;
  box-shadow: 0px 6px 0px #00B9EF;
  background: #fff;
  cursor: pointer;
  transition: 0.15s;
}
@media screen and (max-width: 767px) {
  .contact__btn input[type=submit] {
    width: 20rem;
    font-size: 1.6rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
.contact__btn:hover::after {
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}
.contact__btn:hover input[type=submit] {
  background: #00B6EE;
  color: #fff;
  box-shadow: none;
}

/*----------------------------------------------------
  リサイズ時のtransition停止
----------------------------------------------------*/
body.transition-stop * {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}

/*----------------------------------------------------
  見出し アニメーション
----------------------------------------------------*/
.a-heading-A {
  opacity: 0;
  transition: 0.65s;
}
.a-heading-A.active {
  opacity: 1;
}

/*----------------------------------------------------
  anim-txts
*/
/*----------------------------------------------------
  使用方法：

<h1 class="as a-anim-txts">
  <span class="anim-txt anim-txt-0">テ</span>
  <span class="anim-txt anim-txt-1">キ</span>
  <span class="anim-txt anim-txt-2">ス</span>
  <span class="anim-txt anim-txt-3">ト</span>
</h1>
----------------------------------------------------*/
.a-anim-txts > span {
  display: inline-block;
  opacity: 0;
  -webkit-transform: translate(60px, 0) skewX(-30deg) scale(1, 1);
  -moz-transform: translate(60px, 0) skewX(-30deg) scale(1, 1);
  transform: translate(60px, 0) skewX(-30deg) scale(1, 1);
}
.a-anim-txts > span:nth-child(1) {
  transition: 0.65s 0.0625s;
}
.a-anim-txts > span:nth-child(2) {
  transition: 0.65s 0.125s;
}
.a-anim-txts > span:nth-child(3) {
  transition: 0.65s 0.1875s;
}
.a-anim-txts > span:nth-child(4) {
  transition: 0.65s 0.25s;
}
.a-anim-txts > span:nth-child(5) {
  transition: 0.65s 0.3125s;
}
.a-anim-txts > span:nth-child(6) {
  transition: 0.65s 0.375s;
}
.a-anim-txts > span:nth-child(7) {
  transition: 0.65s 0.4375s;
}
.a-anim-txts > span:nth-child(8) {
  transition: 0.65s 0.5s;
}
.a-anim-txts > span:nth-child(9) {
  transition: 0.65s 0.5625s;
}
.a-anim-txts > span:nth-child(10) {
  transition: 0.65s 0.625s;
}
.a-anim-txts > span:nth-child(11) {
  transition: 0.65s 0.6875s;
}
.a-anim-txts > span:nth-child(12) {
  transition: 0.65s 0.75s;
}
.a-anim-txts > span:nth-child(13) {
  transition: 0.65s 0.8125s;
}
.a-anim-txts > span:nth-child(14) {
  transition: 0.65s 0.875s;
}
.a-anim-txts > span:nth-child(15) {
  transition: 0.65s 0.9375s;
}
.a-anim-txts > span:nth-child(16) {
  transition: 0.65s 1s;
}
.a-anim-txts > span:nth-child(17) {
  transition: 0.65s 1.0625s;
}
.a-anim-txts > span:nth-child(18) {
  transition: 0.65s 1.125s;
}
.a-anim-txts > span:nth-child(19) {
  transition: 0.65s 1.1875s;
}
.a-anim-txts > span:nth-child(20) {
  transition: 0.65s 1.25s;
}
.a-anim-txts > span:nth-child(21) {
  transition: 0.65s 1.3125s;
}
.a-anim-txts > span:nth-child(22) {
  transition: 0.65s 1.375s;
}
.a-anim-txts > span:nth-child(23) {
  transition: 0.65s 1.4375s;
}
.a-anim-txts > span:nth-child(24) {
  transition: 0.65s 1.5s;
}
.a-anim-txts > span:nth-child(25) {
  transition: 0.65s 1.5625s;
}
.a-anim-txts > span:nth-child(26) {
  transition: 0.65s 1.625s;
}
.a-anim-txts > span:nth-child(27) {
  transition: 0.65s 1.6875s;
}
.a-anim-txts > span:nth-child(28) {
  transition: 0.65s 1.75s;
}
.a-anim-txts > span:nth-child(29) {
  transition: 0.65s 1.8125s;
}
.a-anim-txts > span:nth-child(30) {
  transition: 0.65s 1.875s;
}
.a-anim-txts > span:nth-child(31) {
  transition: 0.65s 1.9375s;
}
.a-anim-txts > span:nth-child(32) {
  transition: 0.65s 2s;
}
.a-anim-txts > span:nth-child(33) {
  transition: 0.65s 2.0625s;
}
.a-anim-txts > span:nth-child(34) {
  transition: 0.65s 2.125s;
}
.a-anim-txts > span:nth-child(35) {
  transition: 0.65s 2.1875s;
}
.a-anim-txts > span:nth-child(36) {
  transition: 0.65s 2.25s;
}
.a-anim-txts > span:nth-child(37) {
  transition: 0.65s 2.3125s;
}
.a-anim-txts > span:nth-child(38) {
  transition: 0.65s 2.375s;
}
.a-anim-txts > span:nth-child(39) {
  transition: 0.65s 2.4375s;
}
.a-anim-txts > span:nth-child(40) {
  transition: 0.65s 2.5s;
}
.a-anim-txts > span:nth-child(41) {
  transition: 0.65s 2.5625s;
}
.a-anim-txts > span:nth-child(42) {
  transition: 0.65s 2.625s;
}
.a-anim-txts > span:nth-child(43) {
  transition: 0.65s 2.6875s;
}
.a-anim-txts > span:nth-child(44) {
  transition: 0.65s 2.75s;
}
.a-anim-txts > span:nth-child(45) {
  transition: 0.65s 2.8125s;
}
.a-anim-txts > span:nth-child(46) {
  transition: 0.65s 2.875s;
}
.a-anim-txts > span:nth-child(47) {
  transition: 0.65s 2.9375s;
}
.a-anim-txts > span:nth-child(48) {
  transition: 0.65s 3s;
}
.a-anim-txts > span:nth-child(49) {
  transition: 0.65s 3.0625s;
}
.a-anim-txts > span:nth-child(50) {
  transition: 0.65s 3.125s;
}
.a-anim-txts > span:nth-child(51) {
  transition: 0.65s 3.1875s;
}
.a-anim-txts > span:nth-child(52) {
  transition: 0.65s 3.25s;
}
.a-anim-txts > span:nth-child(53) {
  transition: 0.65s 3.3125s;
}
.a-anim-txts > span:nth-child(54) {
  transition: 0.65s 3.375s;
}
.a-anim-txts > span:nth-child(55) {
  transition: 0.65s 3.4375s;
}
.a-anim-txts > span:nth-child(56) {
  transition: 0.65s 3.5s;
}
.a-anim-txts > span:nth-child(57) {
  transition: 0.65s 3.5625s;
}
.a-anim-txts > span:nth-child(58) {
  transition: 0.65s 3.625s;
}
.a-anim-txts > span:nth-child(59) {
  transition: 0.65s 3.6875s;
}
.a-anim-txts > span:nth-child(60) {
  transition: 0.65s 3.75s;
}
.a-anim-txts > span:nth-child(61) {
  transition: 0.65s 3.8125s;
}
.a-anim-txts > span:nth-child(62) {
  transition: 0.65s 3.875s;
}
.a-anim-txts > span:nth-child(63) {
  transition: 0.65s 3.9375s;
}
.a-anim-txts > span:nth-child(64) {
  transition: 0.65s 4s;
}
.a-anim-txts > span:nth-child(65) {
  transition: 0.65s 4.0625s;
}
.a-anim-txts > span:nth-child(66) {
  transition: 0.65s 4.125s;
}
.a-anim-txts > span:nth-child(67) {
  transition: 0.65s 4.1875s;
}
.a-anim-txts > span:nth-child(68) {
  transition: 0.65s 4.25s;
}
.a-anim-txts > span:nth-child(69) {
  transition: 0.65s 4.3125s;
}
.a-anim-txts > span:nth-child(70) {
  transition: 0.65s 4.375s;
}
.a-anim-txts > span:nth-child(71) {
  transition: 0.65s 4.4375s;
}
.a-anim-txts > span:nth-child(72) {
  transition: 0.65s 4.5s;
}
.a-anim-txts > span:nth-child(73) {
  transition: 0.65s 4.5625s;
}
.a-anim-txts > span:nth-child(74) {
  transition: 0.65s 4.625s;
}
.a-anim-txts > span:nth-child(75) {
  transition: 0.65s 4.6875s;
}
.a-anim-txts > span:nth-child(76) {
  transition: 0.65s 4.75s;
}
.a-anim-txts > span:nth-child(77) {
  transition: 0.65s 4.8125s;
}
.a-anim-txts > span:nth-child(78) {
  transition: 0.65s 4.875s;
}
.a-anim-txts > span:nth-child(79) {
  transition: 0.65s 4.9375s;
}
.a-anim-txts > span:nth-child(80) {
  transition: 0.65s 5s;
}
.a-anim-txts > span:nth-child(81) {
  transition: 0.65s 5.0625s;
}
.a-anim-txts > span:nth-child(82) {
  transition: 0.65s 5.125s;
}
.a-anim-txts > span:nth-child(83) {
  transition: 0.65s 5.1875s;
}
.a-anim-txts > span:nth-child(84) {
  transition: 0.65s 5.25s;
}
.a-anim-txts > span:nth-child(85) {
  transition: 0.65s 5.3125s;
}
.a-anim-txts > span:nth-child(86) {
  transition: 0.65s 5.375s;
}
.a-anim-txts > span:nth-child(87) {
  transition: 0.65s 5.4375s;
}
.a-anim-txts > span:nth-child(88) {
  transition: 0.65s 5.5s;
}
.a-anim-txts > span:nth-child(89) {
  transition: 0.65s 5.5625s;
}
.a-anim-txts > span:nth-child(90) {
  transition: 0.65s 5.625s;
}
.a-anim-txts > span:nth-child(91) {
  transition: 0.65s 5.6875s;
}
.a-anim-txts > span:nth-child(92) {
  transition: 0.65s 5.75s;
}
.a-anim-txts > span:nth-child(93) {
  transition: 0.65s 5.8125s;
}
.a-anim-txts > span:nth-child(94) {
  transition: 0.65s 5.875s;
}
.a-anim-txts > span:nth-child(95) {
  transition: 0.65s 5.9375s;
}
.a-anim-txts > span:nth-child(96) {
  transition: 0.65s 6s;
}
.a-anim-txts > span:nth-child(97) {
  transition: 0.65s 6.0625s;
}
.a-anim-txts > span:nth-child(98) {
  transition: 0.65s 6.125s;
}
.a-anim-txts > span:nth-child(99) {
  transition: 0.65s 6.1875s;
}
.a-anim-txts > span:nth-child(100) {
  transition: 0.65s 6.25s;
}
.a-anim-txts.active span {
  opacity: 1;
  -webkit-transform: translate(0, 0) skewX(0deg) scale(1, 1);
  -moz-transform: translate(0, 0) skewX(0deg) scale(1, 1);
  transform: translate(0, 0) skewX(0deg) scale(1, 1);
}

/*----------------------------------------------------
  slide-box-A
*/
/*----------------------------------------------------
  使用方法：

  <div class="as a-slide-box-A">
    <img src="./img/sample.jpg" alt="" />
  </div>
----------------------------------------------------*/
.a-slide-box-A {
  overflow: hidden;
  opacity: 1;
  position: relative;
  -webkit-transform: scale(1, 0);
  -moz-transform: scale(1, 0);
  transform: scale(1, 0);
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  transform-origin: top center;
  transition: 0.65s;
}
.a-slide-box-A:after {
  background: #bbb; /* Old browsers */
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 1;
  transition: 0.65s 0.65s;
}
.a-slide-box-A img {
  transition: 0.65s 0.65s;
  -webkit-transform: scale(1.5, 1.5);
  -moz-transform: scale(1.5, 1.5);
  transform: scale(1.5, 1.5);
  -webkit-transform-origin: center center;
  -moz-transform-origin: center center;
  transform-origin: center center;
}
.a-slide-box-A.a-slide-box-A--t {
  -webkit-transform: scale(1, 0);
  -moz-transform: scale(1, 0);
  transform: scale(1, 0);
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  transform-origin: top center;
}
.a-slide-box-A.a-slide-box-A--b {
  -webkit-transform: scale(1, 0);
  -moz-transform: scale(1, 0);
  transform: scale(1, 0);
  -webkit-transform-origin: bottom center;
  -moz-transform-origin: bottom center;
  transform-origin: bottom center;
}
.a-slide-box-A.a-slide-box-A--l {
  -webkit-transform: scale(0, 1);
  -moz-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  transform-origin: left center;
}
.a-slide-box-A.a-slide-box-A--r {
  -webkit-transform: scale(0, 1);
  -moz-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  transform-origin: right center;
}
.a-slide-box-A.active {
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  transform: scale(1, 1);
}
.a-slide-box-A.active:after {
  opacity: 0;
}
.a-slide-box-A.active img {
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  transform: scale(1, 1);
}

/*----------------------------------------------------
  slide-box-B
*/
/*----------------------------------------------------
  使用方法：

  <div class="as a-slide-box-B">
    <div class="slide-box-B__bg">
      <img src="" alt="">
    </div>
  </div>
----------------------------------------------------*/
.a-slide-box-B {
  display: block;
}
.a-slide-box-B img {
  vertical-align: middle;
}
.a-slide-box-B .slide-box-B__bg {
  background: #fff;
  display: inline-block;
  position: relative;
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  transform-origin: right center;
  overflow: hidden;
}
.a-slide-box-B .slide-box-B__bg img {
  opacity: 0;
  -webkit-transform: scale(1.1, 1.1);
  -moz-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  transform-origin: right center;
  transition: all 0.65s;
}
.a-slide-box-B .slide-box-B__bg:after {
  background: #fff;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 99;
  margin-left: 100%;
  -webkit-transform: translate(-100%, 0);
  -moz-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
  transition: all 0.65s;
}
.a-slide-box-B.a-slide-box-B--t .slide-box-B__bg {
  -webkit-transform-origin: bottom center;
  -moz-transform-origin: bottom center;
  transform-origin: bottom center;
}
.a-slide-box-B.a-slide-box-B--t .slide-box-B__bg img {
  -webkit-transform-origin: bottom center;
  -moz-transform-origin: bottom center;
  transform-origin: bottom center;
}
.a-slide-box-B.a-slide-box-B--t .slide-box-B__bg:after {
  margin: 100% 0 0 0;
  -webkit-transform: translate(0, -100%);
  -moz-transform: translate(0, -100%);
  transform: translate(0, -100%);
}
.a-slide-box-B.a-slide-box-B--b .slide-box-B__bg {
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  transform-origin: top center;
}
.a-slide-box-B.a-slide-box-B--b .slide-box-B__bg img {
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  transform-origin: top center;
}
.a-slide-box-B.a-slide-box-B--b .slide-box-B__bg:after {
  margin: -100% 0 0 0;
  -webkit-transform: translate(0, 100%);
  -moz-transform: translate(0, 100%);
  transform: translate(0, 100%);
}
.a-slide-box-B.a-slide-box-B--l .slide-box-B__bg {
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  transform-origin: right center;
}
.a-slide-box-B.a-slide-box-B--l .slide-box-B__bg img {
  -webkit-transform-origin: right center;
  -moz-transform-origin: right center;
  transform-origin: right center;
}
.a-slide-box-B.a-slide-box-B--l .slide-box-B__bg:after {
  margin: 0 0 0 100%;
  -webkit-transform: translate(-100%, 0);
  -moz-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
}
.a-slide-box-B.a-slide-box-B--r .slide-box-B__bg {
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  transform-origin: left center;
}
.a-slide-box-B.a-slide-box-B--r .slide-box-B__bg img {
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  transform-origin: left center;
}
.a-slide-box-B.a-slide-box-B--r .slide-box-B__bg:after {
  margin: 0 0 0 -100%;
  -webkit-transform: translate(100%, 0);
  -moz-transform: translate(100%, 0);
  transform: translate(100%, 0);
}
.a-slide-box-B.active .slide-box-B__bg img {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  transform: scale(1, 1);
}
.a-slide-box-B.active .slide-box-B__bg:after {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  transform: translate(0, 0);
}

/*----------------------------------------------------
  スライダー
----------------------------------------------------*/
.slide-gallery {
  overflow: hidden;
}
.slide-gallery .slide-gallery__inner {
  height: 220px;
  width: 3840px;
  -webkit-animation: slide 60s linear infinite;
  -moz-animation: slide 60s linear infinite;
  animation: slide 60s linear infinite;
  position: relative;
}
@keyframes slide {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-1920px, 0, 0);
    -moz-transform: translate3d(-1920px, 0, 0);
    transform: translate3d(-1920px, 0, 0);
  }
}

/*----------------------------------------------------

	JavaScriptなどの制御による状態の変化を表すスタイルの設定ファイルです。
	汎用的なstateのスタイルをまとめています。
	基本的には編集することはありません。

	命名規則として、クラス名の頭に 
	is-* という接頭辞をつけることを推奨します。

----------------------------------------------------*/
/*--------------------------
	レスポンシブ関係 ファブレットはなし
--------------------------*/
@media screen and (max-width: 1000px) {
  .is-Pc {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .is-Tab {
    display: none;
  }
}
@media screen and (min-width: 1001px) {
  .is-Tab {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .is-Sp {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .is-Pc_Tab {
    display: none;
  }
}

@media screen and (min-width: 1001px) {
  .is-Tab_Sp {
    display: none;
  }
}

.is-none {
  display: none;
}

/*----------------------------------------------------

	読み込み専用のマスターファイルです。
	このファイルに直接スタイルを書き込まないでください。

----------------------------------------------------*/
/*--------------------------
	Base
--------------------------*/
/*--------------------------
	utility
--------------------------*/
/*--------------------------
	Layout
--------------------------*/
/*--------------------------
	module
--------------------------*/
/*--------------------------
	page
--------------------------*/
/*--------------------------
	animation
--------------------------*/
/*--------------------------
	state
--------------------------*/

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