﻿@charset "UTF-8";
/* --------------------------------------------------------------------------------
  リセットCSS
  --------------------------------------------------------------------------------
    - マージン、パディング、ボーダーはすべて0
    - フォントサイズは 16px（1.6rem） に揃える
    - 見出し、em、strong、b、th は太字にする
    - テーブルはボーダーあり
    - など
  --------------------------------------------------------------------------------
  ＜補足＞
    - Meyresweb CSS Reset に一部 Normalize.css を足した感じ
    - Meyersweb CSS Reset : https://meyerweb.com/eric/tools/css/reset/
    - Normalize.css: https://necolas.github.io/normalize.css/
----------------------------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  padding: 0;
  margin: 0;
  border: 0;
}

html {
  box-sizing: border-box;
  font-size: 62.5%; /* rootフォントサイズを10pxにする（16px * 62.55 = 10px） */
}

*,
::before,
::after {
  box-sizing: inherit;
  font-feature-settings: "palt";
  vertical-align: inherit;
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", Meiryo, "Helvetica Neue", Verdana, sans-serif;
  font-size: 1.6em; /* 16px（body で rem ではなく em を使うのはChromeのバグ対策） */
  line-height: 2;
  overflow-wrap: break-word;
  /* -webkit-text-size-adjust: 100%; */
  /* スマホを横向きにしたとき等に文字サイズを自動調整しない（CSSの指定どおり） */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  max-width: 100%;
  height: auto;
  line-height: 0;
  vertical-align: top;
}

ol,
ul {
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1.6rem;
  font-weight: bold;
}

b,
em,
strong {
  font-style: normal;
  font-weight: bold;
}

small {
  font-size: 80%;
}

/* sub, sup が行間に影響を及ぼすのを防ぐ */
sub,
sup {
  position: relative;
  margin-right: 0.3em;
  margin-left: 0.3em;
  font-size: 77%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  border-top: 1px solid #ccc;
}

pre,
code,
kbd,
samp,
tt {
  font-family: monospace;
}

/* アンカー */
a {
  color: #03c;
}

a:visited {
  color: #60a;
}

a:hover {
  color: #f00;
}

a:focus {
  outline: none;
}

a:hover,
a:active {
  outline: none;
}

/* テーブル */
table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}

th,
td {
  padding: 0.8rem 1.2rem;
  border: 1px solid #ddd;
}

th {
  font-weight: bold;
  text-align: left;
}

thead th {
  text-align: center;
  background-color: #dee2e6;
}

tbody th {
  background-color: #f9f9f9;
}

/* フォーム */
[disabled] {
  cursor: default;
}

button,
input,
select,
optgroup,
textarea {
  font-family: inherit;
  font-size: 100%;
}

button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  padding: 0;
  appearance: auto;
  cursor: pointer;
  background: none;
  border: 0;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  /* Firefox で button 要素に CSS で消せない padding と border がつくのを消す (normalize.css) */
  border-style: none;
}

button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  /* 上で消したボーダーを outline として表示 */
  outline: 1px dotted ButtonText;
}

textarea {
  display: block;
  overflow: auto;
}

input[type=text],
input[type=email],
textarea {
  width: 100%;
  padding: 0.5rem;
  font-size: 1.4rem;
  line-height: 2.4rem;
  border: 1px solid #ddd;
  border-radius: 0.3rem;
}

input:invalid,
textarea:invalid {
  background-color: #f0dddd;
}

select {
  /* Style select like a standard input */
  appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentcolor; /* Internet Explorer 11+ */
}

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

progress {
  /* Chrome, Firefox, Opera における調整 */
  vertical-align: baseline;
}

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

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

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

/* 画像リンクのホバー効果 */
a:hover img {
  opacity: 0.9;
}

/* アクセシビリティ */
[aria-busy=true] {
  /* Specify the progress cursor of updating elements */
  cursor: progress;
}

[aria-controls] {
  /* Specify the pointer cursor of trigger elements */
  cursor: pointer;
}

[aria-disabled=true] {
  /* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
  cursor: default;
}

@font-face {
  font-family: YuGothic;
  font-weight: 400;
  src: local("Yu Gothic Medium");
}
@font-face {
  font-family: YuGothic;
  font-weight: 700;
  src: local("Yu Gothic Bold");
}
body.font-yugothic {
  font-family: "Yu Gothic Medium", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* --------------------------------------------------------------------------------
   ベースのスタイル
   --------------------------------------------------------------------------------
    - 要素セレクタの初期値を定義
    - リセットCSSを上書きするイメージ
----------------------------------------------------------------------------------- */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  margin: 0;
  appearance: none;
}

/* Firefox */
input[type=number] {
  appearance: textfield;
}

body {
  position: relative;
}
body.active {
  overflow: hidden;
}
body > * {
  flex-shrink: 0;
}
body.no-scroll {
  overflow: hidden;
}
body.has-modal {
  overflow: hidden;
}

/* ==========================================================================
 Base
========================================================================== */
@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 200;
  src: url("/assets/font/noto-sans-cjk/thin/NotoSansCJKjp-Thin-set.eot");
  src: url("/assets/font/noto-sans-cjk/thin/NotoSansCJKjp-Thin-set.eot?") format("embedded-opentype"), url("/assets/font/noto-sans-cjk/thin/NotoSansCJKjp-Thin-set.woff") format("woff"), url("/assets/font/noto-sans-cjk/thin/NotoSansCJKjp-Thin-set.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/font/noto-sans-cjk/light/NotoSansCJKjp-Light-set.eot");
  src: url("/assets/font/noto-sans-cjk/light/NotoSansCJKjp-Light-set.eot?") format("embedded-opentype"), url("/assets/font/noto-sans-cjk/light/NotoSansCJKjp-Light-set.woff") format("woff"), url("/assets/font/noto-sans-cjk/light/NotoSansCJKjp-Light-set.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/font/noto-sans-cjk/regular/NotoSansCJKjp-Regular-set.eot");
  src: url("/assets/font/noto-sans-cjk/regular/NotoSansCJKjp-Regular-set.eot?") format("embedded-opentype"), url("/assets/font/noto-sans-cjk/regular/NotoSansCJKjp-Regular-set.woff") format("woff"), url("/assets/font/noto-sans-cjk/regular/NotoSansCJKjp-Regular-set.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 500;
  src: url("/assets/font/noto-sans-cjk/medium/NotoSansCJKjp-Medium-set.eot");
  src: url("/assets/font/noto-sans-cjk/medium/NotoSansCJKjp-Medium-set.eot?") format("embedded-opentype"), url("/assets/font/noto-sans-cjk/medium/NotoSansCJKjp-Medium-set.woff") format("woff"), url("/assets/font/noto-sans-cjk/medium/NotoSansCJKjp-Medium-set.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/font/noto-sans-cjk/bold/NotoSansCJKjp-Bold-set.eot");
  src: url("/assets/font/noto-sans-cjk/bold/NotoSansCJKjp-Bold-set.eot?") format("embedded-opentype"), url("/assets/font/noto-sans-cjk/bold/NotoSansCJKjp-Bold-set.woff") format("woff"), url("/assets/font/noto-sans-cjk/bold/NotoSansCJKjp-Bold-set.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "NotoSansCJKjp";
  font-style: normal;
  font-weight: 900;
  src: url("/assets/font/noto-sans-cjk/black/NotoSansCJKjp-Black-set.eot");
  src: url("/assets/font/noto-sans-cjk/black/NotoSansCJKjp-Black-set.eot?") format("embedded-opentype"), url("/assets/font/noto-sans-cjk/black/NotoSansCJKjp-Black-set.woff") format("woff"), url("/assets/font/noto-sans-cjk/black/NotoSansCJKjp-Black-set.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "openSans";
  font-style: normal;
  font-weight: 300;
  src: url("/assets/font/open-sans/OpenSans-Light.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "openSans";
  font-style: normal;
  font-weight: 400;
  src: url("/assets/font/open-sans/OpenSans-Regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "openSans";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/font/open-sans/OpenSans-SemiBold.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "openSans";
  font-style: normal;
  font-weight: 700;
  src: url("/assets/font/open-sans/OpenSans-Bold.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: "NotoSeif";
  font-style: normal;
  font-weight: 600;
  src: url("/assets/font/noto-serif/NotoSerifJP-Regular.otf") format("truetype");
  /* Safari, Android, iOS */
}
.serif {
  font-family: "NotoSeif";
}

/* ==========================================================================
 Base
========================================================================== */
html {
  overflow-y: scroll;
  font-size: 0.625em;
  box-sizing: border-box;
}

@media screen and (max-width: 375px) {
  html {
    font-size: 0.6em;
  }
}
@media screen and (max-width: 320px) {
  html {
    font-size: 0.55em;
  }
}
body {
  color: #2A2C32;
  font-family: "NotoSansCJKjp", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Osaka", "ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  font-feature-settings: "palt";
  -webkit-font-feature-settings: "palt";
  -moz-font-feature-settings: "palt";
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}
/*normalize*/
body {
  -webkit-print-color-adjust: exact !important;
}

input {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background: transparent;
}

a:active, a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 1em;
  margin: 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td, th {
  padding: 0;
}

* {
  box-sizing: border-box;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

html, body {
  padding: 0;
  margin: 0;
  height: 100%;
  min-height: 100%;
  word-break: break-all;
  hyphens: auto;
  -moz-hyphens: auto;
}

ol, ul, li, dl, dt, dd {
  margin: 0;
  padding: 0;
  line-height: 1.8;
}

.serv-list {
  list-style: circle;
}

.is-table {
  display: block;
  box-sizing: content-box;
  position: relative;
  top: -20px;
  -webkit-overflow-scrolling: touch;
  border: 10px solid #ccc;
  overflow-x: hidden;
}

a {
  cursor: pointer;
  outline: none;
  text-decoration: none;
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

h1, h2, h3, h4, h5, h6, p, li, dt, dd {
  margin: 0;
  padding: 0;
  font-weight: normal;
}

h3 {
  margin-bottom: 0.4em;
}

p {
  line-height: 1.8;
}

small {
  font-weight: normal;
}

.preload * {
  transition: none !important;
}

h1, h2, h3, h4, h5 {
  word-break: break-all;
  hyphens: auto;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
}

mark.blue {
  background: linear-gradient(transparent 60%, rgba(208, 255, 0, 1) 61%);
  position: relative;
}

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

.mb2 {
  margin-bottom: 2px !important;
}

.mb4 {
  margin-bottom: 4px !important;
}

.mb6 {
  margin-bottom: 6px !important;
}

.mb8 {
  margin-bottom: 8px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb12 {
  margin-bottom: 12px !important;
}

.mb24 {
  margin-bottom: 24px !important;
}

.mb36 {
  margin-bottom: 36px !important;
}

.mb48 {
  margin-bottom: 48px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb72 {
  margin-bottom: 72px !important;
}

.mb84 {
  margin-bottom: 84px !important;
}

.mb96 {
  margin-bottom: 96px !important;
}

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

.mt2 {
  margin-top: 2px !important;
}

.mt4 {
  margin-top: 4px !important;
}

.mt6 {
  margin-top: 6px !important;
}

.mt8 {
  margin-top: 8px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt12 {
  margin-top: 12px !important;
}

.mt24 {
  margin-top: 24px !important;
}

.mt36 {
  margin-top: 36px !important;
}

.mt48 {
  margin-top: 48px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt72 {
  margin-top: 72px !important;
}

.mt84 {
  margin-top: 84px !important;
}

.mt96 {
  margin-top: 96px !important;
}

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

.ml2 {
  margin-left: 2px !important;
}

.ml4 {
  margin-left: 4px !important;
}

.ml6 {
  margin-left: 6px !important;
}

.ml8 {
  margin-left: 8px !important;
}

.ml10 {
  margin-top: 10px !important;
}

.ml12 {
  margin-left: 12px !important;
}

.ml24 {
  margin-left: 24px !important;
}

.ml36 {
  margin-left: 36px !important;
}

.ml48 {
  margin-left: 48px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml72 {
  margin-left: 72px !important;
}

.ml84 {
  margin-left: 84px !important;
}

.ml96 {
  margin-left: 96px !important;
}

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

.mr2 {
  margin-right: 2px !important;
}

.mr4 {
  margin-right: 4px !important;
}

.mr6 {
  margin-right: 6px !important;
}

.mr8 {
  margin-right: 8px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr12 {
  margin-right: 12px !important;
}

.mr24 {
  margin-right: 24px !important;
}

.mr36 {
  margin-right: 36px !important;
}

.mr48 {
  margin-right: 48px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr72 {
  margin-right: 72px !important;
}

.mr84 {
  margin-right: 84px !important;
}

.mr96 {
  margin-right: 96px !important;
}

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

.pb2 {
  padding-bottom: 2px !important;
}

.pb4 {
  padding-bottom: 4px !important;
}

.pb6 {
  padding-bottom: 6px !important;
}

.pb8 {
  padding-bottom: 8px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb12 {
  padding-bottom: 12px !important;
}

.pb24 {
  padding-bottom: 24px !important;
}

.pb36 {
  padding-bottom: 36px !important;
}

.pb48 {
  padding-bottom: 48px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb72 {
  padding-bottom: 72px !important;
}

.pb84 {
  padding-bottom: 84px !important;
}

.pb96 {
  padding-bottom: 96px !important;
}

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

.pt2 {
  padding-top: 2px !important;
}

.pt4 {
  padding-top: 4px !important;
}

.pt6 {
  padding-top: 6px !important;
}

.pt8 {
  padding-top: 8px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt12 {
  padding-top: 12px !important;
}

.pt24 {
  padding-top: 24px !important;
}

.pt36 {
  padding-top: 36px !important;
}

.pt48 {
  padding-top: 48px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt72 {
  padding-top: 72px !important;
}

.pt84 {
  padding-top: 84px !important;
}

.pt96 {
  padding-top: 96px !important;
}

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

.pl2 {
  padding-left: 2px !important;
}

.pl4 {
  padding-left: 4px !important;
}

.pl6 {
  padding-left: 6px !important;
}

.pl8 {
  padding-left: 8px !important;
}

.pl10 {
  padding-top: 10px !important;
}

.pl12 {
  padding-left: 12px !important;
}

.pl24 {
  padding-left: 24px !important;
}

.pl36 {
  padding-left: 36px !important;
}

.pl48 {
  padding-left: 48px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pl72 {
  padding-left: 72px !important;
}

.pl84 {
  padding-left: 84px !important;
}

.pl96 {
  padding-left: 96px !important;
}

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

.pr2 {
  padding-right: 2px !important;
}

.pr4 {
  padding-right: 4px !important;
}

.pr6 {
  padding-right: 6px !important;
}

.pr8 {
  padding-right: 8px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr12 {
  padding-right: 12px !important;
}

.pr24 {
  padding-right: 24px !important;
}

.pr36 {
  padding-right: 36px !important;
}

.pr48 {
  padding-right: 48px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pr72 {
  padding-right: 72px !important;
}

.pr84 {
  padding-right: 84px !important;
}

.pr96 {
  padding-right: 96px !important;
}

@media screen and (max-width: 600px) {
  .xs-mb0 {
    margin-bottom: 0 !important;
  }
  .xs-mb2 {
    margin-bottom: 2px !important;
  }
  .xs-mb4 {
    margin-bottom: 4px !important;
  }
  .xs-mb6 {
    margin-bottom: 6px !important;
  }
  .xs-mb8 {
    margin-bottom: 8px !important;
  }
  .xs-mb10 {
    margin-bottom: 10px !important;
  }
  .xs-mb12 {
    margin-bottom: 12px !important;
  }
  .xs-mb24 {
    margin-bottom: 24px !important;
  }
  .xs-mb36 {
    margin-bottom: 36px !important;
  }
  .xs-mb48 {
    margin-bottom: 48px !important;
  }
  .xs-mb60 {
    margin-bottom: 60px !important;
  }
  .xs-mb72 {
    margin-bottom: 72px !important;
  }
  .xs-mb84 {
    margin-bottom: 84px !important;
  }
  .xs-mb96 {
    margin-bottom: 96px !important;
  }
  .xs-mt0 {
    margin-top: 0 !important;
  }
  .xs-mt2 {
    margin-top: 2px !important;
  }
  .xs-mt4 {
    margin-top: 4px !important;
  }
  .xs-mt6 {
    margin-top: 6px !important;
  }
  .xs-mt8 {
    margin-top: 8px !important;
  }
  .xs-mt10 {
    margin-top: 10px !important;
  }
  .xs-mt12 {
    margin-top: 12px !important;
  }
  .xs-mt24 {
    margin-top: 24px !important;
  }
  .xs-mt36 {
    margin-top: 36px !important;
  }
  .xs-mt48 {
    margin-top: 48px !important;
  }
  .xs-mt60 {
    margin-top: 60px !important;
  }
  .xs-mt72 {
    margin-top: 72px !important;
  }
  .xs-mt84 {
    margin-top: 84px !important;
  }
  .xs-mt96 {
    margin-top: 96px !important;
  }
  .xs-ml0 {
    margin-left: 0 !important;
  }
  .xs-ml2 {
    margin-left: 2px !important;
  }
  .xs-ml4 {
    margin-left: 4px !important;
  }
  .xs-ml6 {
    margin-left: 6px !important;
  }
  .xs-ml8 {
    margin-left: 8px !important;
  }
  .xs-ml10 {
    margin-top: 10px !important;
  }
  .xs-ml12 {
    margin-left: 12px !important;
  }
  .xs-ml24 {
    margin-left: 24px !important;
  }
  .xs-ml36 {
    margin-left: 36px !important;
  }
  .xs-ml48 {
    margin-left: 48px !important;
  }
  .xs-ml60 {
    margin-left: 60px !important;
  }
  .xs-ml72 {
    margin-left: 72px !important;
  }
  .xs-ml84 {
    margin-left: 84px !important;
  }
  .xs-ml96 {
    margin-left: 96px !important;
  }
  .xs-mr0 {
    margin-right: 0 !important;
  }
  .xs-mr2 {
    margin-right: 2px !important;
  }
  .xs-mr4 {
    margin-right: 4px !important;
  }
  .xs-mr6 {
    margin-right: 6px !important;
  }
  .xs-mr8 {
    margin-right: 8px !important;
  }
  .xs-mr10 {
    margin-right: 10px !important;
  }
  .xs-mr12 {
    margin-right: 12px !important;
  }
  .xs-mr24 {
    margin-right: 24px !important;
  }
  .xs-mr36 {
    margin-right: 36px !important;
  }
  .xs-mr48 {
    margin-right: 48px !important;
  }
  .xs-mr60 {
    margin-right: 60px !important;
  }
  .xs-mr72 {
    margin-right: 72px !important;
  }
  .xs-mr84 {
    margin-right: 84px !important;
  }
  .xs-mr96 {
    margin-right: 96px !important;
  }
  .xs-pb0 {
    padding-bottom: 0 !important;
  }
  .xs-pb2 {
    padding-bottom: 2px !important;
  }
  .xs-pb4 {
    padding-bottom: 4px !important;
  }
  .xs-pb6 {
    padding-bottom: 6px !important;
  }
  .xs-pb8 {
    padding-bottom: 8px !important;
  }
  .xs-pb10 {
    padding-bottom: 10px !important;
  }
  .xs-pb12 {
    padding-bottom: 12px !important;
  }
  .xs-pb24 {
    padding-bottom: 24px !important;
  }
  .xs-pb36 {
    padding-bottom: 36px !important;
  }
  .xs-pb48 {
    padding-bottom: 48px !important;
  }
  .xs-pb60 {
    padding-bottom: 60px !important;
  }
  .xs-pb72 {
    padding-bottom: 72px !important;
  }
  .xs-pb84 {
    padding-bottom: 84px !important;
  }
  .xs-pb96 {
    padding-bottom: 96px !important;
  }
  .xs-pt0 {
    padding-top: 0 !important;
  }
  .xs-pt2 {
    padding-top: 2px !important;
  }
  .xs-pt4 {
    padding-top: 4px !important;
  }
  .xs-pt6 {
    padding-top: 6px !important;
  }
  .xs-pt8 {
    padding-top: 8px !important;
  }
  .xs-pt10 {
    padding-top: 10px !important;
  }
  .xs-pt12 {
    padding-top: 12px !important;
  }
  .xs-pt24 {
    padding-top: 24px !important;
  }
  .xs-pt36 {
    padding-top: 36px !important;
  }
  .xs-pt48 {
    padding-top: 48px !important;
  }
  .xs-pt60 {
    padding-top: 60px !important;
  }
  .xs-pt72 {
    padding-top: 72px !important;
  }
  .xs-pt84 {
    padding-top: 84px !important;
  }
  .xs-pt96 {
    padding-top: 96px !important;
  }
  .xs-pl0 {
    padding-left: 0 !important;
  }
  .xs-pl2 {
    padding-left: 2px !important;
  }
  .xs-pl4 {
    padding-left: 4px !important;
  }
  .xs-pl6 {
    padding-left: 6px !important;
  }
  .xs-pl8 {
    padding-left: 8px !important;
  }
  .xs-pl10 {
    padding-top: 10px !important;
  }
  .xs-pl12 {
    padding-left: 12px !important;
  }
  .xs-pl24 {
    padding-left: 24px !important;
  }
  .xs-pl36 {
    padding-left: 36px !important;
  }
  .xs-pl48 {
    padding-left: 48px !important;
  }
  .xs-pl60 {
    padding-left: 60px !important;
  }
  .xs-pl72 {
    padding-left: 72px !important;
  }
  .xs-pl84 {
    padding-left: 84px !important;
  }
  .xs-pl96 {
    padding-left: 96px !important;
  }
  .xs-pr0 {
    padding-right: 0 !important;
  }
  .xs-pr2 {
    padding-right: 2px !important;
  }
  .xs-pr4 {
    padding-right: 4px !important;
  }
  .xs-pr6 {
    padding-right: 6px !important;
  }
  .xs-pr8 {
    padding-right: 8px !important;
  }
  .xs-pr10 {
    padding-right: 10px !important;
  }
  .xs-pr12 {
    padding-right: 12px !important;
  }
  .xs-pr24 {
    padding-right: 24px !important;
  }
  .xs-pr36 {
    padding-right: 36px !important;
  }
  .xs-pr48 {
    padding-right: 48px !important;
  }
  .xs-pr60 {
    padding-right: 60px !important;
  }
  .xs-pr72 {
    padding-right: 72px !important;
  }
  .xs-pr84 {
    padding-right: 84px !important;
  }
  .xs-pr96 {
    padding-right: 96px !important;
  }
}
.text-center {
  text-align: center !important;
}

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

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

.-full {
  width: 100% !important;
  max-width: 999% !important;
}

.lh10 {
  line-height: 1;
}

.lh12 {
  line-height: 1.2;
}

.lh14 {
  line-height: 1.4;
}

.lh16 {
  line-height: 1.6;
}

.lh18 {
  line-height: 1.8;
}

.lh20 {
  line-height: 2;
}

.lh24 {
  line-height: 2.4;
}

.va-top {
  vertical-align: top;
}

.va-mdl {
  vertical-align: middle;
}

.va-btm {
  vertical-align: bottom;
}

.fl-img {
  float: left;
  margin-right: 12px;
  margin-bottom: 12px;
}

.fr-img {
  float: right;
  margin-left: 12px;
  margin-bottom: 12px;
}

@media screen and (max-width: 1023px) {
  .sm-text-center {
    text-align: center !important;
  }
  .sm-text-left {
    text-align: left !important;
  }
  .sm-text-right {
    text-align: right !important;
  }
  .sm-full {
    width: 100% !important;
    max-width: 999% !important;
  }
}
@media screen and (max-width: 600px) {
  .xs-text-center {
    text-align: center !important;
  }
  .xs-text-left {
    text-align: left !important;
  }
  .xs-text-right {
    text-align: right !important;
  }
  .xs-full {
    width: 100% !important;
    max-width: 999% !important;
  }
}
.transparent {
  background: none !important;
}

.alpha10 {
  opacity: 0.1 !important;
}

.alpha20 {
  opacity: 0.2 !important;
}

.alpha30 {
  opacity: 0.3 !important;
}

.alpha40 {
  opacity: 0.4 !important;
}

.alpha50 {
  opacity: 0.5 !important;
}

.alpha60 {
  opacity: 0.6 !important;
}

.alpha70 {
  opacity: 0.7 !important;
}

.alpha80 {
  opacity: 0.8 !important;
}

.alpha90 {
  opacity: 0.9 !important;
}

.fc-w {
  color: #fff !important;
}

.fc-bk {
  color: #333 !important;
}

.border-none {
  border: none !important;
}

.bd-t-none {
  border-top: none !important;
}

.bd-l-none {
  border-left: none !important;
}

.bd-b-none {
  border-bottom: none !important;
}

.bd-r-none {
  border-right: none !important;
}

.round-corner-02 {
  border-radius: 2px;
}

.round-corner-04 {
  border-radius: 4px;
}

.round-corner-08 {
  border-radius: 8px;
}

.round-corner-12 {
  border-radius: 12px;
}

.round-corner-16 {
  border-radius: 16px;
}

.round-corner-20 {
  border-radius: 20px;
}

.round-corner-24 {
  border-radius: 24px;
}

.round-corner-28 {
  border-radius: 28px;
}

.round-corner-99 {
  border-radius: 99px;
}

.round-corner-half {
  border-radius: 50%;
}

[class*=border-] {
  border-width: 1px;
  border-style: solid;
  border-color: #333;
}

.border-gray {
  border-color: #c2c2c2;
}

.border-green {
  border-color: #a9ca04;
}

.wa {
  display: inline-block;
  width: auto;
  min-width: 2em;
  max-width: 100%;
}

.wa.mw10 {
  max-width: 10%;
}

.wa.mw20 {
  max-width: 20%;
}

.wa.mw30 {
  max-width: 30%;
}

.wa.mw40 {
  max-width: 40%;
}

.wa.mw50 {
  max-width: 50%;
}

.wa.mw60 {
  max-width: 60%;
}

.wa.mw70 {
  max-width: 70%;
}

.wa.mw80 {
  max-width: 80%;
}

.wa.mw90 {
  max-width: 90%;
}

.af-hr1 {
  border-right: #c2c2c2 1px solid;
}

.top-hr {
  border-top: #c2c2c2 1px solid;
}

@media screen and (max-width: 600px) {
  .af-hr2 {
    border-right: none;
    border-bottom: #c2c2c2 1px solid;
  }
}
/*media-width-display*/
@media print, screen and (min-width: 601px) {
  .is-sp {
    display: none !important;
  }
}
@media screen and (max-width: 600px) {
  .is-pc {
    display: none !important;
  }
}
.is-none {
  display: none !important;
}

/*row*/
.-row {
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
  align-items: stretch;
}

@media print, screen and (min-width: 1024px) {
  .pc-row {
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    align-items: stretch;
  }
}
@media screen and (max-width: 1023px) {
  .sp-row {
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    align-items: stretch;
  }
}
[class*=-row] .col-1 {
  width: 8.3333%;
}

[class*=-row] .col-2 {
  width: 16.6666%;
}

[class*=-row] .col-3 {
  width: 25%;
}

[class*=-row] .col-4 {
  width: 33.3333%;
}

[class*=-row] .col-5 {
  width: 41.6666%;
}

[class*=-row] .col-6 {
  width: 50%;
}

[class*=-row] .col-7 {
  width: 58.3333%;
}

[class*=-row] .col-8 {
  width: 66.6666%;
}

[class*=-row] .col-9 {
  width: 75%;
}

[class*=-row] .col-10 {
  width: 83.3333%;
}

[class*=-row] .col-11 {
  width: 91.6666%;
}

[class*=-row] .col-12 {
  width: 100%;
}

[class*=-row2] .col-1 {
  width: 8.3333%;
}

[class*=-row] .col-2 {
  width: 16.6666%;
}

[class*=-row] .col-3 {
  width: 25%;
}

[class*=-row2] .col-4 {
  width: 25%;
}

[class*=-row] .col-5 {
  width: 41.6666%;
}

[class*=-row] .col-6 {
  width: 50%;
}

[class*=-row] .col-7 {
  width: 58.3333%;
}

[class*=-row] .col-8 {
  width: 66.6666%;
}

[class*=-row] .col-9 {
  width: 75%;
}

[class*=-row] .col-10 {
  width: 83.3333%;
}

[class*=-row] .col-11 {
  width: 91.6666%;
}

[class*=-row] .col-12 {
  width: 100%;
}

@media screen and (max-width: 1023px) {
  [class*=-row] .sm-col-1 {
    width: 8.3333%;
  }
  [class*=-row] .sm-col-2 {
    width: 16.6666%;
  }
  [class*=-row] .sm-col-3 {
    width: 25%;
  }
  [class*=-row] .sm-col-4 {
    width: 33.3333%;
  }
  [class*=-row] .sm-col-5 {
    width: 41.6666%;
  }
  [class*=-row] .sm-col-6 {
    width: 50%;
  }
  [class*=-row] .sm-col-7 {
    width: 58.3333%;
  }
  [class*=-row] .sm-col-8 {
    width: 66.6666%;
  }
  [class*=-row] .sm-col-9 {
    width: 75%;
  }
  [class*=-row] .sm-col-10 {
    width: 83.3333%;
  }
  [class*=-row] .sm-col-11 {
    width: 91.6666%;
  }
  [class*=-row] .sm-col-12 {
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  [class*=-row] .xs-col-1 {
    width: 8.3333%;
  }
  [class*=-row] .xs-col-2 {
    width: 16.6666%;
  }
  [class*=-row] .xs-col-3 {
    width: 25%;
  }
  [class*=-row] .xs-col-4 {
    width: 33.3333%;
  }
  [class*=-row] .xs-col-5 {
    width: 41.6666%;
  }
  [class*=-row] .xs-col-6 {
    width: 50%;
  }
  [class*=-row] .xs-col-7 {
    width: 58.3333%;
  }
  [class*=-row] .xs-col-8 {
    width: 66.6666%;
  }
  [class*=-row] .xs-col-9 {
    width: 75%;
  }
  [class*=-row] .xs-col-10 {
    width: 83.3333%;
  }
  [class*=-row] .xs-col-11 {
    width: 91.6666%;
  }
  [class*=-row] .xs-col-12 {
    width: 100%;
  }
}
.separate.-row .col {
  padding: 14px;
}

.separate.-row .col2 {
  padding: 14px 35px;
}

.collspace.-row .col {
  padding: 0;
}

.xs-fixed-row {
  min-width: 767px;
}

.xs-fixed-half-row {
  min-width: 540px;
}

[class*=-row].text-left {
  justify-content: flex-start;
}

[class*=-row].text-center {
  justify-content: center;
}

[class*=-row].text-right {
  justify-content: flex-end;
}

[class*=-row].vertical-middle {
  align-content: center;
  align-items: center;
}

[class*=-row].vertical-bottom {
  align-content: flex-end;
  align-items: flex-end;
}

@media print, screen and (min-width: 1024px) {
  [class*=-row].md-text-left {
    justify-content: flex-start;
  }
  [class*=-row].md-text-center {
    justify-content: center;
  }
  [class*=-row].md-text-right {
    justify-content: flex-end;
  }
}
@media screen and (max-width: 1023px) {
  [class*=-row].sm-text-left {
    justify-content: flex-start;
  }
  [class*=-row].sm-text-center {
    justify-content: center;
  }
  [class*=-row].sm-text-right {
    justify-content: flex-end;
  }
}
@media screen and (max-width: 600px) {
  [class*=-row].xs-text-left {
    justify-content: flex-start;
  }
  [class*=-row].xs-text-center {
    justify-content: center;
  }
  [class*=-row].xs-text-right {
    justify-content: flex-end;
  }
  .xs-order-01 {
    order: 1;
  }
  .xs-order-02 {
    order: 2;
  }
  .xs-order-03 {
    order: 3;
  }
  .xs-order-04 {
    order: 4;
  }
  .xs-order-05 {
    order: 5;
  }
  .xs-order-06 {
    order: 6;
  }
  .xs-order-07 {
    order: 7;
  }
  .xs-order-08 {
    order: 8;
  }
  .xs-order-09 {
    order: 9;
  }
  .xs-order-10 {
    order: 10;
  }
}
.text.-row .col {
  padding: 16px;
}

/*=========================================
    module
=========================================*/
/*h*/
main h2.ttl {
  font-size: 3.6rem;
  font-weight: bold;
}

main h3.ttl {
  font-size: 1.8rem;
  font-weight: bold;
}

.ttl, .ttl + p {
  color: #015DB2;
}

[class*=-ttl] {
  font-weight: bold;
  line-height: 1.4;
  color: #2A2C32;
  padding: 0.4em 2.4rem;
  margin-bottom: 1.6rem;
}

h1[class*=-ttl] {
  font-size: 3.6rem;
}

h2[class*=-ttl] {
  font-size: 3rem;
}

h3[class*=-ttl] {
  font-size: 2.4rem;
}

h4[class*=-ttl] {
  font-size: 2rem;
}

h5[class*=-ttl] {
  font-size: 120%;
}

section .tip-ttl {
  padding-left: 10px;
  margin-bottom: 0.5em;
  border-left: #004387 3px solid;
}

section .piece-ttl {
  margin-bottom: 0;
  position: relative;
  border-bottom: #ddd 2px solid;
  padding: 0 0 0;
  display: inline-block;
  line-height: 1.3;
}

section .piece-ttl:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 4em;
  max-width: 50%;
  height: 2px;
  background-color: #004387;
}

section span.piece-ttl {
  padding-bottom: 0.4em;
  min-width: 10em;
  padding-left: 1em;
  padding-right: 1em;
  font-weight: bold;
}

section span.piece-ttl:after {
  left: 50%;
  margin-left: -2em;
}

/*
    list
*/
ul, ol {
  padding-left: 1.5em;
  margin-bottom: 1em;
}

ul ul,
ol ol,
ol ul,
ul ol {
  padding-left: 1.5em;
}

ul li, ol li {
  margin-bottom: 0.5em;
}

/*数字リスト NN*/
.sn li {
  list-style-type: decimal-leading-zero;
}

/*注釈リスト ※*/
.idt > li {
  list-style: none;
  text-indent: -2.5em;
}

.idt > li > .head {
  display: inline-block;
  width: 2.5em;
  text-indent: 0;
  text-align: right;
  padding-right: 0.5em;
}

.idt.txt {
  padding-left: 4em;
}

.idt.txt > li .head {
  width: 4em;
  font-weight: bold;
}

.idt.txt > li {
  text-indent: -4em;
}

.idt.txt > li ul,
.idt.txt > li ol {
  padding-top: 0.5em;
}

.idt.txt > li ul li,
.idt.txt > li ol li {
  text-indent: 0;
  padding-left: 0;
}

.idt.txt > li .idt li {
  text-indent: -2.5em;
}

.idt.txt > li .idt li .head {
  width: 2.5em;
}

.idt > li div {
  text-indent: 0;
}

.ti0 {
  text-indent: 0;
}

ol.lr li {
  list-style-type: lower-roman;
}

/*注釈リスト ※N*/
.idt.sn {
  padding-left: 2.3em;
}

/*注釈リスト画像 <img>*/
.idt.caution {
  padding-left: 2em;
}

.idt.caution strong {
  position: relative;
  display: inline-block;
  width: calc(100% - 2.2em);
  text-indent: 0;
}

.idt.caution strong span {
  display: inline-block;
  position: relative;
  background-color: #fff;
  padding-right: 0.3em;
  z-index: 2;
}

.idt.caution strong:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -1px;
  width: 100%;
  height: 2px;
  background-color: #CB0A23;
}

/*リストスタイルなし*/
.ns li {
  list-style: none;
}

.ns li .head {
  display: inline-block;
  width: auto;
  margin-right: 2em;
}

/*パネルタイプリスト*/
ul.panel li,
ol.panel li {
  padding: 1em 1em 1em 3em;
  position: relative;
}

ul.panel li:nth-child(odd),
ol.panel li:nth-child(odd) {
  background-color: #f4f4f4;
}

/*アローリスト*/
.arr .head:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 8px solid black;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
}

/*text*/
p {
  margin-bottom: 1em;
}

p:last-child {
  margin-bottom: 0;
}

.fs50 {
  font-size: 5rem !important;
}

.fs40 {
  font-size: 4rem !important;
}

.fs38 {
  font-size: 3.8rem !important;
}

.fs36 {
  font-size: 3.6rem !important;
}

.fs34 {
  font-size: 3.4rem !important;
}

.fs32 {
  font-size: 3.2rem !important;
}

.fs30 {
  font-size: 3rem !important;
}

.fs28 {
  font-size: 2.8rem !important;
}

.fs26 {
  font-size: 2.6rem !important;
}

.fs24 {
  font-size: 2.4rem !important;
}

.fs22 {
  font-size: 2.2rem !important;
}

.fs20 {
  font-size: 2rem !important;
}

.fs18 {
  font-size: 1.8rem !important;
}

.fs16 {
  font-size: 1.6rem !important;
}

.fs14 {
  font-size: 1.4rem !important;
}

.fs12 {
  font-size: 1.2rem !important;
}

.aside {
  color: #999 !important;
}

.ctn {
  color: #CB0A23 !important;
}

mark.ctn {
  background: #ffecec;
}

@media screen and (max-width: 1023px) {
  .sm-fs40 {
    font-size: 4rem !important;
  }
  .sm-fs38 {
    font-size: 3.8rem !important;
  }
  .sm-fs36 {
    font-size: 3.6rem !important;
  }
  .sm-fs34 {
    font-size: 3.4rem !important;
  }
  .sm-fs32 {
    font-size: 3.2rem !important;
  }
  .sm-fs30 {
    font-size: 3rem !important;
  }
  .sm-fs28 {
    font-size: 2.8rem !important;
  }
  .sm-fs26 {
    font-size: 2.6rem !important;
  }
  .sm-fs24 {
    font-size: 2.4rem !important;
  }
  .sm-fs22 {
    font-size: 2.2rem !important;
  }
  .sm-fs20 {
    font-size: 2rem !important;
  }
  .sm-fs18 {
    font-size: 1.8rem !important;
  }
  .sm-fs16 {
    font-size: 1.6rem !important;
  }
  .sm-fs14 {
    font-size: 1.4rem !important;
  }
  .sm-fs12 {
    font-size: 1.2rem !important;
  }
}
@media screen and (max-width: 600px) {
  .xs-fs40 {
    font-size: 4rem !important;
  }
  .xs-fs38 {
    font-size: 3.8rem !important;
  }
  .xs-fs36 {
    font-size: 3.6rem !important;
  }
  .xs-fs34 {
    font-size: 3.4rem !important;
  }
  .xs-fs32 {
    font-size: 3.2rem !important;
  }
  .xs-fs30 {
    font-size: 3rem !important;
  }
  .xs-fs28 {
    font-size: 2.8rem !important;
  }
  .xs-fs26 {
    font-size: 2.6rem !important;
  }
  .xs-fs24 {
    font-size: 2.4rem !important;
  }
  .xs-fs22 {
    font-size: 2.2rem !important;
  }
  .xs-fs20 {
    font-size: 2rem !important;
  }
  .xs-fs18 {
    font-size: 1.8rem !important;
  }
  .xs-fs16 {
    font-size: 1.6rem !important;
  }
  .xs-fs14 {
    font-size: 1.4rem !important;
  }
  .xs-fs12 {
    font-size: 1.2rem !important;
  }
  .xs-fs11 {
    font-size: 1.1rem !important;
  }
}
/*link*/
a {
  text-decoration: underline;
  color: #015DB2;
  transition: 0.3s;
}

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

a[target=_blank]:after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.1em;
  margin-right: 0.1em;
  background: url(../img/svg/icon-blank.svg) no-repeat center bottom;
  background-size: contain;
}

.img > a[target=_blank]:after,
.owl-item li > a[target=_blank]:after,
a.img[target=_blank]:after {
  display: none;
}

a[target=_blank]:hover:after {
  opacity: 0.9;
}

.arr-link:after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.4em;
  margin-right: 0.4em;
  background: url(../img/svg/icon-arr-right-blue.svg) no-repeat center center;
  background-size: contain;
  vertical-align: -2px;
  transform: translateX(0);
  transition: 0.3s;
}

.arr-link:hover:after {
  transform: translateX(3px);
  opacity: 0.9;
}

/*icon*/
i {
  font-style: normal;
  position: relative;
}

i:before {
  content: "";
  display: inline-block;
  position: relative;
  width: 1.3em;
  height: 1.3em;
  line-height: 1;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

i.i-notice:before {
  background-image: url(../img/svg/icon-notice.svg);
  top: 0.3em;
}

i.i-close:before {
  background-image: url(../img/svg/icon-close-bk.svg);
  width: 19px;
}

.head i {
  margin-left: -0.2em;
}

/*btn*/
[class*=-btn] {
  appearance: none;
  position: relative;
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1;
  padding: 20px 36px;
  border: #707070 1px solid;
  cursor: pointer;
  text-decoration: none;
  background-color: #fff;
  color: #707070;
  text-align: center;
  transition: 0.3s;
  min-width: 10em;
}

[class*=-btn].disabled {
  pointer-events: none;
  opacity: 0.5;
}

.blk-btn {
  background-color: #333;
  color: #fff;
  border: none;
}

.blk-btn:hover {
  background-color: #666;
  color: #fff;
}

.blk-btn[target=_blank]:after,
.blue-btn[target=_blank]:after {
  background-image: url(../img/svg/icon-blank-w.svg);
  margin-left: 10px;
  transition: 0.3s;
}

.blue-btn {
  background-color: #004385;
  color: #fff;
  border: none;
}

.blue-btn:hover {
  background-color: #1b6bbb;
  color: #fff;
}

.green-btn {
  background-color: #0db205;
  color: #fff;
  border: none;
}

.green-btn:hover {
  background-color: #14d809;
  color: #fff;
}

.imp-btn {
  background-color: #f25020;
  border-color: #f25020;
  color: #fff;
}

.imp-btn:hover {
  background-color: #f26a41;
  border-color: #f26a41;
  color: #fff;
}

[class*=-btn]:after {
  position: absolute;
  display: block;
  width: 16px;
  height: 16px;
  top: 50%;
  transform: translateY(-50%);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: 0.3s;
}

.close-btn:after {
  content: "";
  background-image: url(../img/svg/icon-close-bk.svg);
  left: 20px;
}

.green-btn[target=_blank]:after {
  display: none;
}

.zip-btn {
  border: #231815 1px solid;
  padding: 20px 20px 20px 50px;
  background: #fff url(../img/svg/zip-icon-bg.svg) no-repeat 10px top;
  background-size: 20px;
  min-height: 140px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  text-decoration: underline;
}

.zip-btn:hover {
  background-color: #fffde3;
}

.round-btn {
  border-radius: 999px;
}

.faq-btn {
  line-height: 24px;
  font-size: 1.6rem;
}

.faq-btn:before {
  content: "?";
  display: inline-block;
  background: #bbb;
  color: #fff;
  border-radius: 50%;
  line-height: 25px;
  width: 24px;
  height: 24px;
  text-align: center;
  font-size: 16px;
  margin-right: 6px;
  transition: 0.3s;
}

.faq-btn:hover:before {
  background: #228bed;
}

[class*=-btn].-row.column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding-left: 10px;
  padding-right: 10px;
  line-height: 1.4;
  margin-left: 0;
  margin-right: 0;
}

.active > .ac-tgl-btn,
.ac-tgl-btn:hover {
  background: #004387;
  border-color: #004387;
  color: #fff;
}

span[class*=-btn].-row.column {
  cursor: auto;
}

/*movie*/
.movie {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.26%;
}

.movie > iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.movie > .jstream-eqPlayer {
  position: absolute !important;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  background: #fff !important;
}

.movie > .jstream-eqPlayer > div {
  width: 100% !important;
  height: 100% !important;
}

.movies .movie + h3.blue-ttl {
  font-size: 1.6rem;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.movie .jstream-eqPlayer .errorDialog {
  background: #222;
}

.movie .jstream-eqPlayer .errorContent .bl, .jstream-eqPlayer .errorContent .br {
  background-image: none;
}

/*area*/
.bg-white {
  background-color: #fff;
}

.bg-gray {
  background-color: #f4f4f4;
}

.bg-red {
  background-color: #CB0A23;
}

/*-box*/
.box {
  padding: 20px;
  margin-bottom: 20px;
}

[class*=-box] .col {
  padding: 1em 0.7em;
}

.gray-box .col {
  border: #c2c2c2 1px solid;
}

.gray-box .col.bg-gray {
  border-right: none;
}

@media screen and (max-width: 600px) {
  .gray-box .xs-col-12.bg-gray {
    border-right: #c2c2c2 1px solid;
    border-bottom: none;
  }
  .box {
    padding-left: 0;
    padding-right: 0;
  }
  .box.border-gray,
  .box.bg-gray {
    padding-left: 12px;
    padding-right: 12px;
  }
}
.stepbar-box {
  padding-right: 20px;
}

.stepbar-box .col-3 {
  width: calc((100% - 30px) / 4);
  padding: 1px;
}

.stepbar__item {
  box-sizing: border-box;
  position: relative;
  width: calc((100% - 30px) / 4);
  height: 100px;
  margin: 0 5px;
  padding: 1px;
  background: #a9ca04;
}

/* 重なり順を設定 */
.stepbar__item:nth-child(1) {
  z-index: 4;
}

.stepbar__item:nth-child(2) {
  z-index: 3;
}

.stepbar__item:nth-child(3) {
  z-index: 2;
}

.stepbar__item:nth-child(4) {
  z-index: 1;
}

.stepbar__item:first-child {
  margin-left: 0;
}

.stepbar__item:last-child {
  margin-right: 0;
}

.stepbar__item::before {
  position: absolute;
  content: "";
  top: 0;
  left: 1px;
  width: 0;
  height: 0;
  border-top: 50px solid transparent;
  border-right: 0;
  border-bottom: 50px solid transparent;
  border-left: 20px solid #a9ca04;
}

.stepbar__item::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 50px solid transparent;
  border-right: 0;
  border-bottom: 50px solid transparent;
  border-left: 20px solid #ffffff;
}

.stepbar__item-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #ffffff;
  font-weight: bold;
  line-height: 1.5 !important;
}

.stepbar__item-inner--current {
  background: transparent;
  color: #ffffff;
}

.stepbar__item .stepbar__item-inner::before {
  position: absolute;
  content: "";
  top: 0;
  left: 100%;
  width: 0;
  height: 0;
  border-top: 50px solid transparent;
  border-right: 0;
  border-bottom: 50px solid transparent;
  border-left: 20px solid #a9ca04;
}

.stepbar__item .stepbar__item-inner::after {
  position: absolute;
  content: "";
  top: 0;
  left: calc(100% - 1px);
  width: 0;
  height: 0;
  border-top: 50px solid transparent;
  border-right: 0;
  border-bottom: 50px solid transparent;
  border-left: 20px solid #ffffff;
}

@media screen and (max-width: 1023px) {
  .stepbar__item-inner {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .stepbar__item-inner {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 600px) {
  .stepbar-box .col-3 {
    width: calc((100% - 30px) / 2);
    margin-bottom: 20px;
  }
  .stepbar__item:nth-child(3) {
    margin-left: 0;
  }
  .stepbar__item-inner {
    padding-left: 20px;
  }
}
/*
    cmn layout
*/
.inner {
  width: 100%;
  max-width: 1200px;
  margin: auto;
}

.inner2 {
  width: 100%;
  max-width: 1800px;
  margin: auto;
}

.inner3 {
  padding: 20px 5px;
  width: 100%;
  max-width: 1200px;
  margin: auto;
}

/*header*/
header {
  border-bottom: #b3b3b3 1px solid;
}

@media print, screen and (min-width: 1025px) { /*for PC*/
  header .inner {
    padding: 0 10px;
  }
  header .upr .logo {
    padding-top: 30px;
    width: 264px;
  }
  header .upr nav {
    flex: 1;
    text-align: right;
  }
  header .upr nav p {
    display: inline-block;
    vertical-align: top;
    line-height: 1;
  }
  header .simple-header .logo {
    padding-bottom: 30px;
  }
  header a {
    text-decoration: none;
  }
  .gnav a {
    display: block;
    font-size: 13px;
    color: #333;
    line-height: 1;
    text-align: center;
  }
  .gnav a:hover {
    color: #168cd3;
  }
  .gnav a span {
    padding-top: 4px;
  }
  .gnav .img {
    display: block;
    line-height: 1;
    padding-top: 50px;
    padding-left: 20px;
  }
  .login-gnav {
    width: 198px !important;
    padding-top: 40px;
  }
  .login-gnav a {
    background: #004387;
    color: #fff;
    padding: 7px 34px 8px 34px;
    border-radius: 100px;
    position: relative;
    height: 42px;
  }
  .login-gnav a:hover {
    background: #006ad2;
    color: #fff;
  }
  .sitemap-gnav,
  .dil-gnav,
  .faq-gnav {
    padding-top: 54px;
  }
  .faq-gnav a,
  .dil-gnav a,
  .sitemap-gnav a {
    padding: 4px 10px;
  }
  .sitemap-gnav a {
    border-right: #b3b3b3 2px solid;
  }
  header .btm {
    padding-top: 17px;
  }
  header .tgl {
    display: none;
  }
  header .mega-menu {
    position: relative;
  }
  header .nav {
    padding: 26px 0;
    display: block !important;
  }
  header .nav a {
    display: inline-block;
    color: #333;
    font-size: 16px;
    margin-right: 30px;
    line-height: 1;
    padding: 6px 0;
    position: relative;
  }
  header .nav > div {
    display: inline-block;
    margin: 0;
    padding: 0;
    position: static;
  }
  header .nav > div > .subnav {
    position: absolute;
    width: 100%;
    height: 0;
    overflow: hidden;
    z-index: 200;
    opacity: 0;
    transition: 0.3s;
    left: 0;
    top: 100%;
    margin-top: -7px;
    background-color: #e6e6e6;
  }
  header .nav > div:hover > .subnav {
    opacity: 1;
    height: 450px; /* 1.300->400 for heijyun-nenkin 2.400->450 for shisanunyoupe-jishinsetsu*/
  }
  header .subnav .inner {
    height: 100%;
    padding: 20px;
  }
  header .nav > div > a:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -20px;
    margin-left: -15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 15px 20px 15px;
    border-color: transparent transparent #e6e6e6 transparent;
    opacity: 0;
    transition: 0.3s;
  }
  header .nav > div:hover > a:after {
    opacity: 1;
  }
  header .subnav > .inner > .-row {
    align-items: flex-start;
  }
  header .subnav .border {
    border-left: #b3b3b3 1px solid;
    padding-left: 20px;
  }
  header .subnav li {
    list-style: none;
    margin-bottom: 1em;
  }
  header .subnav li a {
    font-size: 1.5rem;
    border-bottom: transparent 2px solid;
  }
  header .subnav li a:hover {
    border-color: #006ad2;
  }
  header .subnav .icon-menu {
    padding-bottom: 20px;
  }
  /* add for heijyun-nenkin start */
  header .subnav .icon-menu .item-category {
    display: inline-block;
  }
  header .subnav .icon-menu .item-category.temporary .head {
    background-color: #008cd4;
  }
  header .subnav .icon-menu .item-category.level .head {
    background-color: #80bd3b;
  }
  header .subnav .icon-menu .item-category .head {
    text-align: center;
    font-size: 1.2em;
    line-height: 1;
    padding: 0.5em;
    margin: 4px;
    color: #fff;
  }
  /* add for heijyun-nenkin end */
  header .subnav .icon-menu .item {
    display: inline-block;
    vertical-align: top;
    margin: 4px;
    background: #fff;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 1) 80%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#fff", endColorstr="#fff",GradientType=0 );
    border-radius: 6px;
    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2);
    width: 114px;
    height: 114px;
    padding: 4px;
    transition: 0.3s;
  }
  header .subnav .icon-menu .item a {
    display: flex;
    font-size: 1.3rem;
    align-items: center;
    justify-content: center;
    align-content: center;
    width: 106px;
    height: 106px;
    color: #000;
    background-color: #fff;
    text-align: center;
    margin: 0;
    border-radius: 4px;
  }
  header .subnav .icon-menu .item + .item-disable {
    pointer-events: none;
  }
  header .subnav .icon-menu .item + .item-disable a {
    opacity: 0.5;
    color: #333 !important;
    background-color: #777 !important;
    border-color: #bbb;
  }
  header .subnav .icon-menu .item:hover {
    background: rgb(12, 76, 140);
    background: linear-gradient(to bottom, rgba(12, 76, 140, 1) 20%, rgba(12, 76, 140, 1) 20%, rgba(166, 202, 4, 1) 80%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#0c4c8c", endColorstr="#a6ca04",GradientType=0 );
  }
  header .subnav .icon-menu .item a svg {
    margin-bottom: 8px;
    height: 36px;
    fill: #A1C315;
  }
  header .subnav .icon-menu .item a span {
    display: inline-block;
    width: 100%;
    text-align: center;
  }
  header .subnav .icon-menu .item a span:nth-child(2) {
    height: 1em;
  }
  header .nav .contact-nav,
  .item-contact-nav {
    float: right;
    margin-right: 0;
    border-radius: 100px;
    background: rgb(12, 76, 140); /* Old browsers */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(12, 76, 140, 1) 20%, rgba(12, 76, 140, 1) 20%, rgba(166, 202, 4, 1) 80%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#0c4c8c", endColorstr="#a6ca04",GradientType=0 ); /* IE6-9 */
    padding: 3px;
    position: relative;
    top: -9px;
    text-decoration: none;
  }
  header .nav .contact-nav:hover,
  .item-contact-nav:hover {
    border-bottom: none;
  }
  .contact-nav span,
  .item-contact-nav span {
    display: block;
    text-align: center;
    border-radius: 100px;
    background: #fff;
    padding: 10px 24px;
  }
  .item-contact-nav span {
    padding: 5px 24px;
  }
  [lang=ja] .lng-gnav.lng-jp a,
  [lang=en] .lng-gnav.lng-en a {
    color: #999;
  }
  [lang=ja] .lng-gnav.lng-jp a span,
  [lang=en] .lng-gnav.lng-en a span {
    border-color: #004387;
  }
  [lang=ja] .lng-gnav.lng-jp a:hover,
  [lang=en] .lng-gnav.lng-en a:hover {
    color: #168cd3;
  }
  .lng-gnav {
    width: 62px;
    padding-top: 54px;
  }
  .lng-gnav a {
    font-size: 13px;
  }
  .lng-gnav.lng-jp {
    margin-left: 4px;
  }
  .lng-gnav span {
    display: inline-block;
    border-bottom: #fff 2px solid;
    padding-bottom: 4px;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1300px) {
  header .nav a {
    margin-right: 2.3vw;
  }
}
@media screen and (max-width: 1024px) { /*for TAB*/
  html.no-scroll {
    height: 100%;
    overflow: hidden;
  }
  header .is-pc {
    display: none !important;
  }
  header .is-sp {
    display: block !important;
  }
  header {
    height: 100px;
    position: relative;
  }
  header .logo {
    width: 220px;
  }
  header .tgl {
    display: block;
    height: 100%;
    width: 80px;
    position: absolute;
    top: 0;
    right: 0;
    background: #004485;
    text-align: center;
    padding-top: 50px;
  }
  header .tgl i {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 20px;
    background: #fff;
    border-top: 9px #004485 solid;
    border-bottom: 8px #004485 solid;
    transition: 0.3s;
  }
  header .tgl i:before {
    content: "";
    display: block;
    position: absolute;
    top: -9px;
    left: 0;
    right: 0;
    width: 40px;
    height: 3px;
    background: #fff;
    transition: 0.3s;
  }
  header .tgl i:after {
    content: "";
    display: block;
    position: absolute;
    bottom: -9px;
    left: 0;
    right: 0;
    width: 40px;
    height: 3px;
    background: #fff;
    transition: 0.3s;
  }
  header .tgl.active i {
    background-color: #004485;
  }
  header .tgl.active i:before {
    transform: rotate(45deg);
    top: 0;
  }
  header .tgl.active i:after {
    transform: rotate(315deg);
    bottom: 0;
  }
  header .tgl img {
    width: 40px;
  }
  header .upr {
    padding: 24px;
  }
  header .nav {
    display: none;
    background: #004485;
    position: absolute;
    left: 0;
    right: 0;
    top: 99px;
    padding: 3vw 4vw 100px;
    z-index: 200;
  }
  header .nav a {
    display: block;
    color: #fff;
    margin: 10px 0;
    padding: 10px;
    text-decoration: none;
  }
  header .nav > .contact-nav {
    margin-top: 40px;
  }
  header .nav > .contact-nav,
  header .nav > .is-sp a {
    display: block;
    max-width: 300px;
    border: #fff 1px solid;
    border-radius: 100px;
    text-align: center;
    background: #fff;
    color: #015DB2;
  }
  header .nav.active {
    max-height: calc(100vh - 99px);
    overflow: scroll;
  }
  header .nav .is-sp div {
    border-top: #376fa2 1px solid;
    padding-top: 20px;
    margin-top: 20px;
  }
  .nav .icon-menu {
    display: none;
  }
  .nav .subnav .-row,
  .nav .subnav ul,
  .nav .subnav li,
  .nav .subnav .col {
    width: 100%;
    margin: 0;
  }
  .nav .subnav li {
    list-style: none;
  }
  .nav .subnav a {
    padding: 10px 10px;
    margin: 0;
  }
  .nav .subnav .wa {
    width: 100%;
  }
  .nav .subnav li.-row .col-10 {
    display: none;
  }
  .nav .subnav li .mypage-movie-break {
    display: none;
  }
  .lng-gnav {
    width: 80px;
    display: inline-block;
    text-align: center;
    padding: 10px 0;
  }
  .lng-gnav a {
    font-size: 13px;
  }
  [lang=ja] .lng-gnav.lng-jp a,
  [lang=en] .lng-gnav.lng-en a {
    color: #004485;
    background: #fff;
  }
  .item-contact-nav {
    display: block;
    margin-right: 0;
    border-radius: 100px;
    background: rgb(12, 76, 140); /* Old browsers */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(12, 76, 140, 1) 20%, rgba(12, 76, 140, 1) 20%, rgba(166, 202, 4, 1) 80%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#0c4c8c", endColorstr="#a6ca04",GradientType=0 ); /* IE6-9 */
    padding: 3px;
    position: relative;
    text-decoration: none;
    margin-top: 10px;
  }
  .item-contact-nav:hover {
    border-bottom: none;
  }
  .item-contact-nav span {
    display: block;
    text-align: center;
    border-radius: 100px;
    background: #fff;
    padding: 16px 24px;
  }
}
@media screen and (max-width: 640px) {
  header .nav a {
    font-size: 14px;
  }
}
@media screen and (max-width: 480px) {
  header .nav > .contact-nav,
  header .nav > .is-sp a {
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 419px) {
  .nav .subnav li .mypage-movie-break {
    display: inline;
  }
}
@media screen and (max-width: 374px) {
  header .upr {
    padding: 28px 24px;
  }
  header .logo {
    width: 180px;
  }
  header .nav a {
    margin: 7px 0;
    font-size: 12px;
  }
  header .nav .is-sp div {
    padding-top: 0;
  }
  .lng-gnav {
    padding-bottom: 0;
  }
}
/*Breadcrumb*/
.Breadcrumb {
  display: none;
}

@media print, screen and (min-width: 769px) { /*for PC and TAB(Horizontal)*/
  .Breadcrumb {
    display: block;
    border-bottom: #b3b3b3 1px solid;
  }
  .Breadcrumb .inner {
    padding: 20px 10px;
    max-width: none !important;
    padding-left: 16px;
    width: 100% !important;
  }
  .Breadcrumb a,
  .Breadcrumb span {
    display: inline-block;
    font-size: 14px;
    font-weight: 300;
    color: #666;
    position: relative;
    padding-right: 1.8em;
    margin-right: 1em;
  }
  .Breadcrumb a {
    text-decoration: underline;
  }
  .Breadcrumb a:after,
  .Breadcrumb span:not(.current):after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -6px;
    width: 6px;
    height: 14px;
    background: url(../img/cmn/arr-breadcrumb.gif) no-repeat 0 0;
  }
  .Breadcrumb a:hover {
    color: #0670b0;
  }
}
@media screen and (max-width: 1024px) {
  .Breadcrumb .inner {
    padding: 20px 20px;
  }
}
/*information*/
section.information {
  border-bottom: #b3b3b3 1px solid;
}

section.information .inner {
  display: table;
}

section.information .inner > div {
  display: table-cell;
  vertical-align: middle;
  padding: 24px 10px;
  font-size: 14px;
}

section.information .important .head {
  background: #ed6869;
  color: #fff;
  text-align: center;
  width: 140px;
}

section.information .important .head span {
  display: inline-block;
}

section.information .important .-content {
  width: auto;
}

section.information .important .-content p {
  line-height: 1.6;
}

@media screen and (max-width: 1024px) { /*for SP and TAB*/
  section.information {
    padding: 10px 0;
  }
  section.information .inner > div {
    padding: 16px 10px;
  }
  section.information .important .head {
    width: 90px;
    text-align: left;
    padding: 0 0 0 20px;
  }
  section.information .important .-content p {
    font-size: 12px;
    padding-right: 10px;
  }
}
/*main-visual*/
.main-visual {
  border-bottom: #b3b3b3 1px solid;
  position: relative;
  max-width: 100%;
  overflow: hidden;
}

.main-visual > .inner {
  position: relative;
}

.main-visual.no-photo h1 {
  color: inherit;
}

.main-visual.no-photo h1 small {
  font-size: 80%;
  line-height: 1.3;
}

.main-visual h1,
.main-visual .head {
  font-size: 5rem;
  margin: 0;
  padding: 1.5em 4rem;
  line-height: 1;
  color: #fff;
}

.main-visual h1 small {
  display: block;
  padding: 0.5em 0;
  font-size: 50%;
}

.main-visual h1 span,
.main-visual .head span {
  display: block;
  line-height: 1.8;
}

.main-visual .background,
.main-visual .background img {
  width: 100%;
}

.is-img {
  width: 100%;
  height: 900px;
  display: block;
}

.is-background {
  background-color: #eeffff;
}

.th-color {
  background-color: #ffffcc;
}

.main-visual .background + .inner {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}

.main-visual .-row {
  color: #fff;
  border-bottom: #fff 1px solid;
  padding-bottom: 30px;
}

.main-visual .col {
  border-right: #fff 1px solid;
  padding: 30px 10px;
}

.main-visual .title {
  width: 40%;
}

.main-visual .data {
  width: 24%;
  text-align: center;
}

.main-visual h3 {
  font-size: 2rem;
}

.main-visual h3 + p {
  font-size: 1.4rem;
}

.main-visual .data strong {
  font-size: 7rem;
  font-weight: normal;
}

.main-visual .data span {
  display: block;
  text-align: center;
  font-size: 1.6rem;
}

.main-visual .data small {
  font-size: 3.2rem;
}

/*numerical-value*/
.main-visual.numerical-value {
  height: auto;
  background-color: #464646;
  color: #fff;
}

.main-visual.numerical-value .inner {
  padding-top: 24px;
  position: static;
  transform: translate(0, 0);
}

.main-visual.numerical-value .-row {
  padding: 24px 0;
  margin-bottom: 0;
  border: none;
}

.main-visual.numerical-value .title,
.main-visual.numerical-value .data {
  padding: 20px 40px;
  max-width: 100%;
}

.main-visual.numerical-value .title {
  width: auto;
  border: none;
}

.main-visual.numerical-value .data {
  width: auto;
  border-right: none;
  border-left: #fff 1px solid;
}

@media screen and (max-width: 1023px) {
  .corporate .main-visual .inner {
    padding: 0 20px;
  }
  .corporate .main-visual h1 {
    padding: 0.8em 0 0;
  }
  .main-visual .title {
    width: 100%;
    border: none;
  }
  .main-visual .data {
    width: 250px;
  }
  .main-visual .col:last-child {
    border: none;
  }
}
@media screen and (max-width: 767px) {
  .main-visual h1 {
    font-size: 3rem;
    padding: 1.5em 1em;
  }
}
@media screen and (max-width: 600px) {
  .main-visual .data {
    width: 100%;
    border-right: none;
    border-bottom: #fff 1px solid;
  }
  .main-visual .-row {
    border-bottom: none;
  }
}
/*sub-nav*/
.sub-nav {
  border-bottom: #b3b3b3 1px solid;
  margin-bottom: 4.8rem;
}

.sub-nav .-row > p,
.sub-nav .-row > div {
  display: inline-block;
  margin: 0;
  padding: 1em;
}

.sub-nav .-row > .parent {
  padding: 1em 2em;
}

.sub-nav .-row > .child {
  border-left: #b3b3b3 1px solid;
  flex: 1;
  max-width: calc(100% - 160px);
}

.sub-nav a {
  position: relative;
  display: inline-block;
  margin: 0 1em;
  padding: 1em 0;
  text-decoration: none;
}

.sub-nav .current:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0;
  border-bottom: #004485 4px solid;
}

.sub-nav .mypage-movie-break {
  display: none;
}

@media screen and (max-width: 600px) {
  .sub-nav .-row > .child {
    max-width: 100%;
  }
}
@media screen and (max-width: 400px) {
  .sub-nav .mypage-movie-break {
    display: inline;
  }
}
/*entry*/
.sub-nav.entries {
  margin-bottom: 48px;
}

.sub-nav.archive {
  border-bottom: none;
}

.sub-nav.entries .-row > div {
  padding-top: 2em;
}

.sub-nav.entries .-row > article {
  padding-top: 1em;
}

.sub-nav.entries .parent {
  width: 160px;
  text-align: right;
}

.entries article ul li {
  list-style: none;
  position: relative;
  padding-left: 60px;
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: #c2c2c2 1px dotted;
}

.entries article ul li:last-child {
  border-bottom: none;
}

.entries article ul li .date {
  display: block;
  font-size: 1.4rem;
  color: #777;
}

.entries article ul li a {
  display: block;
  padding: 0.3rem 0 0;
  margin: 0;
  width: auto;
  max-width: 100%;
  /* white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; */
  overflow-wrap: normal;
}

.entries article ul li:before {
  content: "";
  position: absolute;
  display: -ms-flex;
  display: flex;
  width: 50px;
  height: 50px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  justify-content: center;
  align-items: center;
  flex-direction: row;
  font-size: 1.2rem;
  color: #fff;
  font-weight: bold;
}

.entries article ul li a:after {
  display: none;
}

.entries article ul li.pdf:before {
  background-color: #f14343;
  content: "PDF";
}

.entries article ul li.blank:before {
  background: #6c6c6c url(../img/svg/icon-blank-w.svg) no-repeat center center;
  background-size: 18px;
}

.entries article ul li.self:before {
  background: #015DB2 url(../img/svg/icon-arr-right-w.svg) no-repeat center center;
  background-size: 10px;
}

.entries article ol li {
  list-style: none;
  display: inline-block;
  padding: 0;
  margin: 5px;
}

.entries article ol li a {
  padding: 0.8em 1.4em;
  border: #c3c3c3 1px solid;
  margin: 0;
}

.entries article ol li a.current {
  pointer-events: none;
  background-color: #228bed;
  border-color: #228bed;
  color: #fff;
}

.entries article ol li a.current:after {
  display: none;
}

.entries article ol li a:hover {
  background-color: #228bed;
  color: #fff;
}

.entry .detail {
  margin-bottom: 48px;
}

.entry .detail + .sub-nav.entries {
  border-top: #b3b3b3 1px solid;
}

.entry .detail article {
  width: 100%;
  max-width: 1000px;
  margin: auto;
  padding: 0 24px 48px;
}

.entry .detail .entry-head {
  border-bottom: #ccc 1px dotted;
  margin-bottom: 48px;
}

.entry .detail .entry-head p {
  padding: 1em;
  color: #999;
}

.entry .detail [class*=-ttl] {
  margin-left: -2.4rem;
  margin-right: -2.4rem;
}

@media screen and (max-width: 767px) {
  .sub-nav {
    margin-bottom: 0;
  }
  .sub-nav nav.-row,
  .sub-nav nav > p {
    display: block;
    border: none;
  }
  .sub-nav nav > p.parent {
    padding: 0;
  }
  .sub-nav nav > p.parent a {
    display: block;
    background: #004485;
    color: #fff;
    margin: 0;
    padding: 1em 1em 1em 3em;
    line-height: 1;
  }
  .sub-nav nav > p.parent a.current {
    padding: 1em;
  }
  .sub-nav nav > p.parent a:before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    background: url(../img/svg/icon-arr-left-w.svg) no-repeat center center;
    background-size: contain;
  }
  .sub-nav nav > p.parent a.current:before {
    display: none;
  }
  .sub-nav .-row > .child {
    border: none;
  }
  .sub-nav nav > p.child a {
    margin: 0;
    padding: 1em;
    border: #fff 1px solid;
  }
  .sub-nav nav > p.child a.current {
    border-color: #004485;
  }
  .sub-nav nav > p.child a:after {
    display: none;
  }
  .sub-nav.entries {
    margin-bottom: 0;
    padding-bottom: 36px;
  }
  .sub-nav.entries .-row > .parent {
    width: 100%;
    text-align: left;
  }
  .sub-nav.entries .-row > .child {
    width: 100%;
    border-left: none;
  }
}
/*footer*/
footer,
footer .btm-content {
  border-top: #b3b3b3 1px solid;
}

.simple-footer,
.simple-footer .btm-content {
  border: none;
}

footer {
  width: 100%;
  padding: 50px 0 10px;
}

footer .btm-content {
  text-align: center;
  padding: 34px 0 30px;
}

footer .btm-content p {
  padding: 8px;
}

footer .btm-content p img {
  width: 350px;
}

footer .btm-content p small {
  font-size: 12px;
  color: #999;
}

footer .bnr-content {
  padding: 10px 0;
}

footer .sitemap-content {
  padding: 25px 0 55px;
}

footer .sitemap-content p {
  display: inline-block;
  line-height: 1.2;
  padding: 0 1em;
  border-left: #b3b3b3 1px solid;
  margin: 10px 0 10px 0px;
}

footer .sitemap-content p:last-child {
  border-right: #b3b3b3 1px solid;
}

footer .sitemap-content p a {
  color: #999;
  font-weight: normal;
  font-size: 15px;
}

footer .sitemap-content p a:hover {
  color: #0670b0;
}

footer .related-content {
  padding: 25px 0 55px;
  border-top: #b3b3b3 1px solid;
  text-align: center;
}

footer .related-content p {
  display: inline-block;
  line-height: 1.2;
  padding: 0 1em;
  margin: 10px 0 10px 0px;
}

footer .related-content p img {
  width: 180px;
}

footer .related-content p a {
  font-weight: normal;
  font-size: 15px;
}

@media screen and (max-width: 740px) {
  footer .related-content p {
    padding: 0 0.8em;
    display: block;
    text-align: left;
    margin-bottom: 1em;
  }
  footer .related-content p a {
    vertical-align: 2px;
    padding-left: 0.8em;
  }
}
@media screen and (max-width: 640px) {
  footer {
    padding-top: 20px;
  }
  footer .btm-content p img {
    width: 270px;
  }
  footer .btm-content p small {
    font-size: 10px;
  }
  footer .sitemap-content {
    padding: 0px 20px 30px;
  }
  footer .sitemap-content p {
    line-height: 1.1;
    padding: 0 0.8em;
  }
  footer .sitemap-content p a {
    font-size: 12px;
    vertical-align: 2px;
  }
  footer .related-content p {
    line-height: 1.1;
    padding: 0 0.8em;
    display: block;
    text-align: left;
    margin-bottom: 1em;
  }
  footer .related-content p img {
    width: 160px;
  }
  footer .related-content p a {
    font-size: 12px;
    vertical-align: 2px;
    padding-left: 0.8em;
  }
}
/*================================
    MODULE
================================*/
/*list*/
.list {
  padding-left: 1.4em;
}

.list li {
  margin-bottom: 0.5em;
  list-style: disc;
}

.list.-num li {
  list-style: decimal;
}

.indent {
  padding-left: 1.4em;
  text-indent: -1.4em;
}

.indent span.head {
  display: inline-block;
  width: 1.4em;
  text-indent: 0;
}

/*p*/
.half {
  max-width: 510px;
}

/*img*/
.img a {
  display: block;
}

a img {
  transition: 0.3s;
  width: 100%;
}

a:hover img {
  opacity: 0.7;
}

/*content-list*/
.content-list .col {
  padding: 2.4rem;
}

.content-list h3 {
  font-size: 2.4rem;
}

.content-list h3 a {
  text-decoration: none;
}

.content-list h3 a:hover {
  text-decoration: underline;
}

.content-list .img {
  margin-bottom: 2.4rem;
}

@media screen and (max-width: 600px) {
  .content-list .col {
    padding: 1.6rem;
  }
}
/*beginning*/
.beginning {
  padding-left: 2.4rem;
  padding-right: 2.4rem;
}

.beginning h2 {
  font-size: 2.8rem;
  font-weight: normal;
  margin-bottom: 1em;
}

.beginning h3 {
  font-size: 2.5rem;
  font-weight: normal;
  margin-bottom: 1em;
}

.beginning p {
  line-height: 2.2em;
}

/*ttl*/
[class*=-ttl] {
  font-weight: 400;
  line-height: 1.7;
}

.product-ttl {
  color: #4c4c4c;
  font-size: 40px;
}

.sec-ttl {
  position: relative;
  padding: 10px 0;
}

.sec-ttl span {
  font-size: 30px;
  line-height: 30px;
}

.sec-ttl small {
  font-size: 14px;
  float: right;
  line-height: 30px;
}

.gray-ttl {
  background-color: #ddd;
}

.blk-ttl {
  background-color: #004387;
  color: #fff;
}

.blue-ttl {
  color: #004387;
}

.bluettl2 {
  color: #004387;
  margin-bottom: 30px;
  font-size: 2.4rem;
}

@media screen and (max-width: 1024px) {
  [class*=-ttl] {
    line-height: 1.4;
  }
  .product-ttl {
    font-size: 30px;
    margin-bottom: 10px;
  }
  .sec-ttl span {
    font-size: 26px;
  }
  .sec-ttl small {
    font-size: 10px;
    line-height: 42px;
  }
}
@media screen and (max-width: 374px) {
  .sec-ttl span {
    font-size: 22px;
  }
}
/*icon*/
[class*=-img-icon] {
  display: inline-block;
  margin-right: 0.4em;
  width: 30px;
  vertical-align: 4px;
}

.zip-img-icon {
  width: 18px;
  vertical-align: 0px;
}

[class*=-img-icon]:before {
  display: none;
}

@media screen and (max-width: 767px) {
  .pdf-img-icon {
    width: 28px;
  }
}
.documents .pdf-img-icon {
  vertical-align: 1px;
}

/*table*/
.tables h2 {
  font-size: 2.8rem;
  margin-bottom: 0.6em;
}

[class*=-table] {
  width: 100%;
}

.th-left th,
.td-left td {
  text-align: left !important;
}

.th-center th,
.td-center td {
  text-align: center !important;
}

.th-right th,
.td-right td {
  text-align: right !important;
}

.tbl-fixed {
  table-layout: fixed;
}

.basic-table {
  border-collapse: collapse;
  border-bottom: #b3b3b3 1px solid;
}

.basic-table th,
.basic-table td {
  border-top: #b3b3b3 1px solid;
  border-right: #b3b3b3 1px solid;
  padding: 2em;
  text-align: left;
  vertical-align: top;
}

.middle.basic-table th,
.middle.basic-table td {
  vertical-align: middle;
}

.basic-table th {
  width: 220px;
  font-weight: bold;
}

.basic-table th:last-child,
.basic-table td:last-child {
  border-right: none;
}

.basic-table .bd-right:last-child {
  border-right: #b3b3b3 1px solid;
}

.basic-table p {
  margin-bottom: 1em;
}

.basic-table p:last-child {
  margin-bottom: 0;
}

.basic-table th p {
  font-weight: bold;
}

.basic-table.tr-flat th,
.basic-table.tr-flat td {
  width: auto;
  font-weight: normal;
}

.always_basic-table {
  border-collapse: collapse;
  border-bottom: #b3b3b3 1px solid;
}

.always_basic-table th,
.always_basic-table td {
  border-top: #b3b3b3 1px solid;
  border-right: #b3b3b3 1px solid;
  padding: 0; /*編集　もともとのbasic-tableはiphoneサイズだとテーブル表示ではなくなっている（会社概要参照） */
  text-align: left;
  vertical-align: top;
}

.middle.always_basic-table th,
.middle.always_basic-table td {
  vertical-align: middle;
}

.always_basic-table th {
  width: auto;
  font-weight: bold;
}

.always_basic-table th:last-child,
.always_basic-table td:last-child {
  border-right: none;
}

.always_basic-table .bd-right:last-child {
  border-right: #b3b3b3 1px solid;
}

.always_basic-table p {
  margin-bottom: 1em;
}

.always_basic-table p:last-child {
  margin-bottom: 0;
}

.always_basic-table th p {
  font-weight: bold;
}

.always_basic-table th {
  width: 25%;
}

.always_basic-table.tr-flat th,
.always_basic-table.tr-flat td {
  width: 150px;
  font-weight: normal;
}

.default-table {
  border-collapse: collapse;
  border: #b3b3b3 1px solid;
}

.default-table th,
.default-table td {
  border: #b3b3b3 1px solid;
  padding: 5px;
}

.default-table th {
  font-weight: bold;
}

.default-table td {
  text-align: center;
}

.default-table .thead th {
  text-align: center;
  font-weight: normal;
}

.default-table .thead th {
  background-color: #ceeba6;
}

.default-table .thead:nth-child(even) th {
  background-color: #eff8e3;
}

.default-table .spacer {
  padding: 0;
  width: 4px;
}

.semi-compact-table th,
.semi-compact-table td {
  width: auto;
  min-width: 1px;
  padding: 20px;
}

table .mark {
  background: #ffff41;
}

.simple-table {
  border-bottom: #b3b3b3 1px solid;
}

.simple-table th,
.simple-table td {
  border-top: #b3b3b3 1px solid;
  border-right: #b3b3b3 1px solid;
  padding: 1em 0.2em;
}

.simple-table th:last-child,
.simple-table td:last-child {
  border-right: none;
}

.simple-table .bd-right:last-child {
  border-right: #b3b3b3 1px solid;
}

.simple-table .bd-left {
  border-left: #b3b3b3 1px solid;
}

.simple-table th {
  background-color: #f4f4f4;
}

.rate-table th,
.rate-table td {
  border-bottom: #b3b3b3 1px solid;
  padding: 1em 0.8em;
}

.rate-table tr:last-child th,
.rate-table tr:last-child td {
  border-bottom: none;
}

.rate-table .gray-bg {
  border-bottom: none;
  padding: 0.2em;
}

.rate-table .gray-bg div {
  background-color: #efefef;
  padding: 1em 0.2em;
}

.compact-table th,
.compact-table td {
  padding: 2px;
}

.grid-area {
  height: auto;
  width: 100%;
}

.grid-area.for-allview {
  overflow-x: auto;
  overflow-y: hidden;
}

.grid-area.for-allview table {
  table-layout: auto;
}

@media screen and (max-width: 1024px) {
  .grid-area {
    overflow-x: auto;
    overflow-y: hidden;
  }
}
.gird-area .grid-table {
  max-width: 999%;
}

.grid-table th, .grid-table td {
  padding-left: 10px;
  padding-right: 10px;
}

/*
    download-table only 2columns layout.
    /kouiki_dairiten_dfl_special_page/loggedin.html
*/
.download-table .cell-th,
.download-table .cell-td {
  border: #b3b3b3 1px solid;
  width: 48%;
  padding: 10px;
  vertical-align: middle;
  align-content: center;
  justify-content: center;
}

.download-table .cell-th {
  text-align: center;
  background: #efefef;
}

.download-table .cell-td {
  text-align: center;
  border-top: none;
  min-height: 200px;
}

.download-table .spacer {
  border: none;
  width: 4%;
  padding: 0;
  background: none;
}

.download-table p {
  width: 100%;
}

.download-table [target=_blank]:after {
  display: none !important;
}

.w-compact th, .w-compact td {
  padding-left: 0px;
  padding-right: 0px;
}

.nowrap,
.nowrap th,
.nowrap td {
  white-space: nowrap;
}

th.wrap-auto, td.wrap-auto {
  white-space: normal;
}

[class*=-table] .blank {
  background-size: 30px 30px;
  background-image: linear-gradient(-45deg, #f0f0f0 25%, transparent 25%, transparent 50%, #f0f0f0 50%, #f0f0f0 75%, transparent 75%, transparent);
}

@media screen and (max-width: 767px) {
  .basic-table:not(.all-table),
  .basic-table:not(.all-table) tr,
  .basic-table:not(.all-table) th,
  .basic-table:not(.all-table) td {
    display: block;
    border: none;
    position: relative;
  }
  .basic-table:not(.all-table) tr {
    overflow: hidden;
  }
  .basic-table:not(.all-table) th,
  .basic-table:not(.all-table) td {
    width: 100%;
  }
  .basic-table th,
  .basic-table td {
    padding: 1em;
  }
  .basic-table:not(.all-table) th {
    padding: 0;
    margin-bottom: -2px;
    z-index: 2;
  }
  .basic-table:not(.all-table) th p {
    display: inline-block;
    border-bottom: #004485 2px solid;
    padding: 1em;
  }
  .basic-table:not(.all-table) td {
    border-top: #c2c2c2 2px solid;
  }
  .xs-th-left th,
  .xs-td-left td {
    text-align: left !important;
  }
  .xs-th-center th,
  .xs-td-center td {
    text-align: center !important;
  }
  .xs-th-right th,
  .xs-td-right td {
    text-align: right !important;
  }
  .xs-nowrap,
  .xs-nowrap th,
  .xs-nowrap td {
    white-space: nowrap;
  }
  .download-table .cell-th,
  .download-table .cell-td {
    width: 100%;
  }
  .download-table .cell-td {
    min-height: 100px;
    margin-bottom: 20px;
  }
}
/*btns*/
.btns .btn {
  display: inline-block;
  margin: 10px;
}

/*exp*/
.exp {
  margin-bottom: 2em;
}

.exp p {
  margin-bottom: 0;
  line-height: 1.4;
}

.exp strong {
  font-size: 8rem;
  font-weight: normal;
  color: #004387;
}

.exp.large strong {
  font-size: 12rem;
}

.exp small {
  font-size: 3.2rem;
}

/*dl*/
.term dl dt {
  display: inline-block;
  position: relative;
  padding: 1em 0 0 0;
  font-weight: bold;
}

.term dl dt:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  height: 2px;
  width: 5em;
  background-color: #c2c2c2;
}

.term dl dt:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  height: 2px;
  width: 3em;
  background-color: #004387;
}

.term dl dd {
  display: block;
  padding: 1em 1em 2em;
  font-weight: 300;
}

dl.bll dt,
dl.bll dd {
  padding: 0.5em 0 0.5em 2em;
  border-left: #a9ca04 5px solid;
  margin: 0;
}

dl.bll dt [class*=-ttl] {
  padding: 0;
}

/*accordion*/
.accordion dt {
  position: relative;
}

.accordion dt .icon {
  position: absolute;
  right: 10px;
  top: 50%;
  display: block;
  width: 40px;
  height: 40px;
  background: #fff;
  border: #c2c2c2 1px solid;
  border-radius: 50%;
  margin-top: -20px;
  transition: 0.3s;
}

.accordion dt .icon:before,
.accordion dt .icon:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 22px;
  height: 2px;
  background: #005176;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}

.accordion dt .icon:after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.accordion dt.active .icon:after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.accordion .idt [class*=-ttl] {
  font-size: 2rem;
  padding-left: 2em;
}

.idt > li .head.circle {
  display: inline-block;
  width: 1.8em;
  height: 1.8em;
  background-color: #004385;
  color: #fff;
  border-radius: 50%;
  padding: 0;
  line-height: 1.8em;
  text-align: center;
  margin-right: 0.4em;
  text-indent: 0;
}

.accordion dd li > div {
  padding-left: 2em;
}

.idt > li .head.circle i {
  margin: 0;
}

.idt > li .head.circle i:before {
  display: none;
}

.faq dl {
  border: #c2c2c2 1px solid;
  border-radius: 12px;
  margin-bottom: 30px;
  overflow: hidden;
}

.faq dt {
  padding: 16px 10px 16px 92px;
  position: relative;
  background-color: #fff;
  transition: 0.3s;
}

.faq dd {
  padding: 28px 10px 28px 92px;
  position: relative;
  line-height: 1.8;
}

.faq dt.active {
  background-color: #a8cb04;
}

.faq dt > span.head,
.faq dd > span.head {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  line-height: 1;
  font-size: 4rem;
  font-weight: bold;
  width: 60px;
  text-align: right;
}

.faq dt > span.head {
  color: #004387;
  white-space: nowrap;
}

.faq dd > span.head {
  color: #b5b5b5;
  top: 40px;
}

.faq dt [class*=-ttl] {
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 48px;
}

/*TAB*/
.tab-area {
  max-width: 100%;
  overflow-x: hidden !important;
}

.js-tab {
  text-align: center;
  padding: 0;
  position: relative;
  z-index: 2;
  border: #fff 1px solid;
  border-bottom-color: #b3b3b3;
  padding: 1em 0.2em;
  cursor: pointer;
  transition: all 0.2s ease-out;
}

.tab-content {
  border-top: solid 1px #b3b3b3;
  margin-top: -1px;
}

.tab {
  display: none;
  padding: 20px;
}

.js-tab.is-active {
  border: #b3b3b3 1px solid;
  border-bottom-color: #fff;
  pointer-events: none;
}

.tab.is-show {
  display: block;
}

.tab-content ul {
  max-width: 960px;
  margin: auto;
}

.tab-content li {
  border-bottom: #efefef 1px solid;
  padding: 20px;
  margin: 0;
  align-items: center;
  transition: 0.5s;
}

.tab-content li:hover {
  background-color: #fffff0;
}

.tab-content [class*=-btn] {
  font-size: 1.4rem;
  padding: 0.6em 1em;
}

.tab-content li > span {
  flex: 1;
  font-size: 2rem;
}

@media screen and (min-width: 991px) {
  .js-tab:hover {
    background: #006ad2;
    color: #fff;
  }
}
@media screen and (max-width: 640px) {
  .tab {
    padding: 20px 10px;
  }
  .agency .tab-content {
    padding-left: 20px;
    padding-right: 20px;
  }
  .tab-content ul {
    padding: 0;
  }
  .tab-content li {
    padding: 20px 2px;
  }
  .tab-content li > span {
    font-size: 1.6rem;
    padding-right: 0.6em;
  }
  .tab-content .-btn {
    min-width: 1px;
  }
  .tab-item.-row {
    margin-left: -21px;
    margin-right: -21px;
  }
}
/*==============================
    input
==============================*/
.lever {
  cursor: pointer;
  background-color: #fff;
}

::placeholder {
  color: #c2c2c2;
}

:disabled {
  background-color: #c2c2c2;
  border-color: #c2c2c2;
  opacity: 0.3;
}

[class*=-item-wrap] {
  display: inline-block;
  position: relative;
}

[class*=-item-wrap] input {
  display: none;
}

[class*=-item-wrap] .lever {
  position: relative;
  display: block;
  border: transparent 3px solid;
}

[class*=-item-wrap] :checked + .lever {
  font-weight: bold;
}

[class*=-item-wrap] .lever:before {
  content: "";
  display: block;
  position: relative;
  position: absolute;
  box-sizing: border-box;
}

[class*=-item-wrap] .lever .img {
  vertical-align: top;
}

[class*=-item-wrap] .lever .img + .txt {
  padding-left: 1em;
}

label {
  display: inline-block;
}

input, textarea, button, select {
  outline: none;
  border-radius: 0;
}

/*lever*/
.lever {
  display: table;
}

.lever span {
  display: table-cell;
  vertical-align: middle;
}

.lever span img {
  max-width: 100px;
  border: #707070 1px solid;
}

/*radio-wrap*/
.radio-item-wrap {
  vertical-align: middle;
}

.radio-item-wrap .lever {
  position: relative;
  display: block;
  border: #707070 1px solid;
  padding: 13px 9px 14px 44px;
}

.radio-item-wrap.default .lever {
  border: none;
}

.radio-item-wrap .lever:before {
  width: 24px;
  height: 24px;
  left: 10px;
  top: 50%;
  margin-top: -12px;
  border-radius: 50%;
  border: #707070 1px solid;
}

.radio-item-wrap input:checked + .lever {
  border: #333 4px solid;
  background-color: #f4f4f4;
  padding: 10px 6px 11px 41px;
}

.radio-item-wrap input:checked + .lever:before {
  left: 7px;
  border: #333 4px solid;
}

/*radio-wrap semantic*/
.radio-semantic-area {
  margin: 0 0 24px;
}

.radio-semantic-area .item {
  width: 180px;
  max-width: 20%;
  text-align: center;
}

.radio-semantic-area .col .item {
  width: 160px;
}

.radio-semantic-area .-row {
  margin: 0;
}

.radio-semantic-area .col {
  padding: 20px;
}

.radio-semantic-area [class*=-ttl] {
  margin-left: 0;
  margin-right: 0;
}

.radio-semantic-area .col-6 .item {
  max-width: 50%;
}

.radio-item-wrap.semantic .lever,
.radio-item-wrap.semantic input:checked + .lever {
  padding: 48px 3px 10px;
  font-size: 1.4rem;
  color: #707070;
  text-align: center;
  border: none;
  font-weight: normal;
  background: transparent;
}

.radio-item-wrap.semantic .lever:before,
.radio-item-wrap.semantic .lever:after,
.radio-item-wrap.semantic input:checked + .lever:before,
.radio-item-wrap.semantic input:checked + .lever:after {
  content: "";
  display: block;
  border: #c2c2c2 6px solid;
  border-radius: 50%;
  position: absolute;
  left: 50%;
  top: 20px;
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.radio-item-wrap.semantic input:checked + .lever:before,
.radio-item-wrap.semantic input:checked + .lever:after {
  border-color: #333;
}

.radio-item-wrap.semantic .lever:before {
  width: 48px;
  height: 48px;
}

.radio-item-wrap.semantic .lever:after {
  width: 20px;
  height: 20px;
}

.radio-item-wrap.semantic input:checked + .lever {
  color: #333;
}

.imgs p {
  text-align: center;
  font-size: 1.4rem;
  padding-left: 1em;
  padding-right: 1em;
}

@media screen and (max-width: 374px) {
  .radio-item-wrap.semantic .lever:before,
  .radio-item-wrap.semantic .lever:after,
  .radio-item-wrap.semantic input:checked + .lever:before,
  .radio-item-wrap.semantic input:checked + .lever:after {
    border-width: 4px;
  }
  .radio-item-wrap.semantic .lever:before {
    width: 34px;
    height: 34px;
  }
  .radio-item-wrap.semantic .lever:after {
    width: 17px;
    height: 17px;
  }
}
/*semantic radio-stars*/
.input-range {
  display: none;
}

.range-group {
  position: relative;
}

.range-group > a {
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: 10px 20px;
  text-decoration: none;
}

.range-group > a:before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  background: url(../img/svg/icon-star.svg) no-repeat center top;
  background-size: contain;
  opacity: 0.5;
}

.range-group > a.on:before {
  opacity: 1;
  background: url(../img/svg/icon-star-on.svg) no-repeat center top;
}

.range-group > a:hover:before {
  opacity: 1;
}

.range-group > a:after {
  text-decoration: none;
  color: #707070;
  opacity: 0;
  display: block;
  text-align: center;
  margin-left: -80%;
  margin-right: -80%;
  font-size: 1.4rem;
}

.range-group > a:hover:after {
  opacity: 1;
}

.range-group input[value="1"] ~ a:nth-child(2):after,
.range-group input[value="2"] ~ a:nth-child(3):after,
.range-group input[value="3"] ~ a:nth-child(4):after,
.range-group input[value="4"] ~ a:nth-child(5):after,
.range-group input[value="5"] ~ a:nth-child(6):after {
  opacity: 1;
}

@media screen and (max-width: 600px) {
  .range-group > a,
  .range-group > a:before {
    width: 40px;
    height: 40px;
  }
}
/*chk*/
.chk-item-wrap {
  vertical-align: middle;
}

.chk-item-wrap .lever {
  position: relative;
  display: block;
  border: #707070 1px solid;
  padding: 14px 9px 14px 44px;
}

.chk-item-wrap .lever:before {
  width: 26px;
  height: 26px;
  left: 9px;
  top: 50%;
  margin-top: -13px;
  border: #707070 1px solid;
}

.chk-item-wrap input:checked + .lever {
  border: #333 4px solid;
  background-color: #f4f4f4;
  padding: 11px 6px 11px 41px;
}

.chk-item-wrap input:checked + .lever:before {
  left: 6px;
  border: #333 4px solid;
}

.chk-item-wrap input:checked + .lever:after {
  content: "";
  width: 22px;
  height: 22px;
  position: absolute;
  left: 14px;
  top: 50%;
  margin-top: -13px;
  background-image: url(../img/svg/icon-chk.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

/*select*/
select:focus {
  outline: none;
}

.select-item-wrap {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  vertical-align: middle;
}

.select-item-wrap select {
  appearance: none;
  border-radius: 0;
  background-color: #fff;
  font-size: 1.8rem;
  padding: 12px 78px 12px 20px;
  border: #707070 1px solid;
  color: #c2c2c2;
  outline: none;
}

.select-item-wrap select:disabled {
  background-color: #c2c2c2;
  border-color: #c2c2c2;
  opacity: 0.5;
}

.select-item-wrap select::-ms-expand {
  display: none;
}

.select-item-wrap select.selected {
  color: #333;
}

.select-item-wrap:before {
  content: "";
  position: absolute;
  width: 51px;
  height: 100%;
  right: 1px;
  top: 1px;
  bottom: 1px;
  background: #333;
  pointer-events: none;
  border-left: #333 1px solid;
}

.select-item-wrap:after {
  content: "";
  position: absolute;
  width: 52px;
  height: 14px;
  right: 1px;
  top: 50%;
  margin-top: -6px;
  background-image: url(../img/svg/icon-arr-dwn-w.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}

.-full select {
  width: 100%;
}

@media screen and (max-width: 640px) {
  .select-item-wrap {
    display: block;
  }
  .select-item-wrap select {
    width: 100%;
  }
}
/*text*/
.input-text-item-wrap {
  position: relative;
  display: inline-block;
  max-width: 100%;
  height: 53px;
  overflow: hidden;
  vertical-align: middle;
  font-size: 1.6rem;
}

.input-text__dummy {
  display: inline-block;
  overflow: hidden;
  min-width: 280px;
  max-width: 100%;
  padding: 3px 15px;
  white-space: nowrap;
  opacity: 0;
  height: 53px;
  font-size: 1.6rem;
}

.input-text__dummy::before {
  content: "";
}

.input-text__dummy:empty::before {
  content: attr(data-placeholder);
}

.input-text-item-wrap .input-text {
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 2px 14px;
  display: block;
  appearance: none;
  border: #707070 1px solid;
  box-shadow: none;
  height: 53px;
  min-width: 1px;
  max-width: 100%;
  caret-color: #015DB2;
  font-size: 1.6rem;
}

.input-text-item-wrap .input-text:disabled {
  background-color: #c2c2c2;
  border-color: #c2c2c2;
  opacity: 0.5;
}

.-full .input-text__dummy,
.-full .input-text {
  min-width: 1px;
}

.input-text-item-wrap .input-text:focus {
  border-color: #015DB2;
}

.input-text-item-wrap.wide-spec .input-text__dummy {
  min-width: 1px;
}

.input-row {
  margin-left: 0;
  margin-right: 0;
}

.input-row .col {
  border: #707070 1px solid;
  padding: 0;
  height: 53px;
}

.input-row .col.ttl {
  background-color: #F4F4F4;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 2px 20px;
  margin-right: -1px;
  margin-bottom: 10px;
}

.input-row .col.wrap {
  border: none;
  flex: 1;
  margin-bottom: 10px;
  max-width: 100%;
}

.input-row .col.ttl label {
  line-height: 1;
  color: #333;
}

@media screen and (max-width: 640px) {
  .input-row.-row {
    display: block;
  }
  .input-row .col.ttl {
    margin-left: -15px;
    margin-right: -15px;
  }
  .input-row .col.wrap {
    width: 100%;
    flex: none;
  }
  .input-text-item-wrap {
    display: block;
  }
  .input-text-item-wrap,
  .input-text-item-wrap .input-text,
  .input-text__dummy {
    min-width: 100px;
  }
}
@media screen and (max-width: 414px) {
  .input-row .col.ttl {
    margin-left: -13px;
    margin-right: -13px;
  }
}
/*textarea*/
.text-box p {
  margin-bottom: 2px;
}

.text-box textarea {
  width: 100%;
  max-width: 100%;
  min-width: 1em;
  padding: 1em 1.4em;
  outline: none;
  border: #707070 1px solid;
  caret-color: #015DB2;
  vertical-align: middle;
}

.text-box textarea:focus {
  border-color: #015DB2;
}

/*email*/
.email-wrap,
.email-wrap .input-text {
  padding-left: 58px;
  font-size: 16px;
}

.email-wrap:before {
  content: "";
  display: block;
  position: absolute;
  width: 53px;
  height: 100%;
  left: 0;
  top: 0;
  background: url(../img/svg/icon-email-bk.svg) no-repeat center center;
  background-size: 20px;
  z-index: 2;
  opacity: 0.5;
}

/*password*/
.password-wrap,
.password-wrap .input-text {
  padding-left: 53px;
  padding-right: 0px;
  font-size: 16px;
}

.password-wrap:before {
  content: "";
  display: block;
  position: absolute;
  width: 53px;
  height: 100%;
  left: 0;
  top: 0;
  background: url(../img/svg/icon-password-bk.svg) no-repeat center center;
  background-size: 20px;
  z-index: 2;
  opacity: 0.5;
}

.pw-display {
  position: absolute;
  width: 53px;
  height: 53px;
  right: 0;
  top: 0;
  display: block;
}

.pw-display input {
  height: 0;
  right: 0;
  overflow: hidden;
  display: none;
}

.pw-display:after {
  content: "表示";
  display: block;
  width: 53px;
  height: 53px;
  text-align: center;
  font-size: 1.1rem;
  font-weight: normal;
  line-height: 1.4rem;
  color: #fff;
  background: #333 url(../img/svg/icon-look-w.svg) no-repeat center 70%;
  background-size: 18px;
  z-index: 2;
  padding: 10px 0;
  box-sizing: border-box;
  cursor: pointer;
}

.pw-display.view:after {
  content: "非表示";
  background: #333 url(../img/svg/icon-unlook-w.svg) no-repeat center 70%;
  background-size: 18px;
}

.password-wrap .input-text__dummy {
  visibility: hidden;
}

.birth .col-year {
  width: 44%;
  white-space: nowrap;
}

.birth .col-month {
  width: 28%;
}

.birth .col-day {
  width: 28%;
}

.birth .col-year label,
.postal .hyphen {
  display: inline-block;
  width: 25px;
  text-align: center;
  vertical-align: middle;
  font-size: 1.8rem;
  color: #707070;
}

.birth .col-year .input-text-item-wrap.-full {
  width: calc(100% - 30px) !important;
}

@media screen and (max-width: 600px) {
  .birth .col-year {
    width: 100%;
    white-space: nowrap;
  }
  .birth .col-year .input-text-item-wrap.-full {
    display: inline-block;
  }
  .birth .col-month,
  .birth .col-day {
    width: 50%;
  }
  .postal .input-text-item-wrap {
    display: inline-block;
  }
}
/*data*/
[class*=-data] {
  padding: 0;
}

[class*=-data] p {
  padding: 1em;
  margin: 0;
}

.basic-data {
  border: #c2c2c2 1px solid;
}

.basic-data .head {
  background-color: #f4f4f4;
  font-weight: bold;
}

/*data*/
.data-sec {
  border-top: none;
}

.data-sec > .-row {
  margin-bottom: 36px;
}

.data-sec .gray-ttl {
  margin-bottom: 4px;
}

.data-sec table {
  table-layout: fixed;
}

.data-sec table.tl-auto {
  table-layout: auto;
}

.data-sec table th,
.data-sec table td {
  width: auto;
  vertical-align: middle;
  text-align: center;
}

table.report .nbt,
table.report .panel {
  border-top: none;
  padding: 10px;
}

table.report .panel {
  background-color: #004387;
  color: #fff;
}

.detailed {
  background-color: #e9f1f8;
}

.detailed .wa {
  min-width: 1px;
}

.data-sec .register-table th {
  width: 300px;
}

.data-sec .birth {
  margin-left: -5px;
  margin-right: -5px;
}

.data-sec .birth .col {
  padding: 5px;
}

.data-sec .btns {
  padding: 24px 0;
  text-align: center;
}

.data-sec .btns [class*=-btn] {
  margin: 0 10px;
}

.data-sec .unchor a:hover,
.data-sec .unchor a.active {
  background-color: #006ad2;
  border-color: #006ad2;
  color: #fff;
}

.data-sec .unchor a.active {
  pointer-events: none;
}

.data-sec .rate-table th {
  text-align: left;
}

.data-sec .rate-table .text-center th {
  text-align: center;
}

.data-sec .rate-table td {
  text-align: right;
}

@media screen and (max-width: 1024px) {
  .data-sec table {
    table-layout: auto;
  }
}
@media screen and (max-width: 600px) {
  .data-sec .separate.-row .col {
    padding-left: 0;
    padding-right: 0;
  }
  .data-sec .xs-fixed-row.separate.-row .col,
  .data-sec .xs-fixed-half-row.separate.-row .col {
    padding-left: 10px;
    padding-right: 10px;
  }
  .data-sec .unchor {
    text-align: center;
  }
  .data-sec .unchor a {
    padding: 0.8em 1em;
    min-width: 1px;
  }
  .data-sec .btns [class*=-btn] {
    min-width: 7em;
  }
  .data-sec table {
    table-layout: auto;
  }
  .data-sec .register-table th {
    width: 100%;
    text-align: left;
  }
}
/*text-*/
.text-sec p {
  line-height: 1.6;
}

/*select-*/
[class*=select-].box {
  padding-bottom: 10px;
}

[class*=select-] [class*=-btn] {
  padding: 0.7em 1em;
  min-width: 1px;
  margin: 0 5px 10px;
}

.select-word a.-btn:hover {
  background-color: #006ad2;
  border-color: #006ad2;
  color: #fff;
}

.select-word a.-btn.disabled {
  opacity: 0.5;
  pointer-events: none;
}

@media screen and (max-width: 600px) {
  [class*=select-] [class*=-btn] {
    font-size: 1.4rem;
  }
  .index [class*=select-].box {
    padding: 10px 10px 0;
  }
}
/*tip*/
[class*=-tip] {
  display: inline-block;
  border: #707070 1px solid;
  color: #707070;
  font-size: 1.4rem;
  line-height: 1;
  padding: 0.8rem 1.2rem;
  text-align: center;
  min-width: 100px;
  margin-left: 3px;
  margin-right: 3px;
  margin-bottom: 10px;
}

[class*=-tip].wa {
  min-width: 1px;
}

small[class*=-tip] {
  font-size: 75%;
  padding: 0.2em 0.7em;
  min-width: 1px;
  vertical-align: 1px;
}

.red-tip {
  background-color: #CB0A23;
  border-color: #CB0A23;
  color: #fff;
}

.gray-tip {
  background-color: #41444E;
  border-color: #41444E;
  color: #fff;
}

[class*=-ttl] [class*=-tip] {
  margin-bottom: 0;
  margin-left: 10px;
  line-height: 1;
  padding: 0.2em 0.3em;
  min-width: 60px;
}

@media screen and (max-width: 768px) {
  [class*=-tip] {
    font-size: 1.3rem;
    min-width: 80px;
  }
}
/*area*/
[class*=-area] {
  width: 100%;
  max-width: 100%;
}

[class*=-area] canvas {
  margin: auto;
}

.form-area {
  overflow-x: auto;
}

.-row.form-area {
  max-width: 640px;
  margin: auto;
}

.-row.form-area .birth {
  margin-left: -5px;
  margin-right: -5px;
}

.-row.form-area .birth .col {
  padding: 5px;
}

.scroll-box {
  border: #b3b3b3 1px solid;
  padding: 20px;
  overflow-y: scroll;
}

.scroll-box.term {
  height: 300px;
}

.term {
  font-size: 1.4rem;
}

@media screen and (max-width: 600px) {
  .index .-row.form-area > .col {
    padding-left: 0;
    padding-right: 0;
    overflow: hidden;
  }
}
/*group*/
.group {
  background-size: 30px 30px;
  background-image: linear-gradient(-45deg, #F6F6F6 25%, transparent 25%, transparent 50%, #F6F6F6 50%, #F6F6F6 75%, transparent 75%, transparent);
  padding: 20px;
}

.group:hover {
  animation: stripes 2s linear infinite;
}
@keyframes stripes {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 60px 30px;
  }
}
.group .tips {
  background-color: #fff8ba;
  padding: 24px;
}

/*-----------------------------
    page-layout
*/
.page-content article .inner {
  padding: 20px 48px;
}

article section {
  padding: 24px 0 60px;
}

@media screen and (max-width: 1024px) {
  .page-content article .inner {
    padding: 20px;
  }
  .page-content article.agency .inner {
    padding: 20px 0;
  }
  .page-content article.agency .inner section {
    margin: auto;
    width: 100%;
  }
  .xl-pl-pr0 {
    padding-left: 0;
    padding-right: 0;
  }
}
/*-----------------------------
    login
*/
.login article {
  width: 100%;
  max-width: 420px;
  margin: auto;
}

.login article form {
  width: 100%;
}

/*-----------------------------
    directory-map
*/
.directory-map .idt > li {
  text-indent: 0;
}

.directory-map .primary > li {
  font-weight: bold;
}

.directory-map .secondary > li {
  font-weight: 400;
}

.directory-map .tertiary > li {
  font-size: 14px;
}

@media print {
  html, body {
    width: 1200px !important;
    transform: scale(0.97); /*要調整*/
    transform-origin: 0 0;
  }
  header, footer, main {
    width: 1200px !important;
    max-width: 999%;
  }
  .page-content article .inner {
    padding: 20px;
  }
  .page-content article.agency .inner {
    padding: 20px 0;
  }
  .sp-none {
    display: none !important;
  }
  .swiper-container {
    width: 1200px !important;
    max-height: 1500px !important;
  }
}
.align-justify-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.mf_finder_searchBox_submit span {
  display: block !important;
}

.flex {
  display: flex;
}

header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background-color: #fff;
}

.gnav {
  padding-bottom: 18px;
  height: 116px;
}

footer {
  padding: 0;
}

h3 {
  margin-bottom: 0;
}

a {
  text-decoration: none;
}

ul, ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

ul li, ol li {
  padding: 0;
  margin: 0;
}

ul ul, ol ol, ol ul, ul ol {
  padding: 0;
}

p {
  padding: 0;
  margin: 0;
}

button, input, optgroup, textarea {
  appearance: auto;
}

select {
  appearance: none;
}

[class*=-btn] {
  padding: 0;
}

a img {
  width: auto;
  transition: unset;
}

:disabled {
  background-color: initial;
  opacity: 1;
  border-color: initial;
}

@media screen and (max-width: 1024px) {
  header {
    height: auto;
  }
}
/* .page-content 打消し */
.page-content article .inner {
  padding: 0;
}

.article section {
  padding: 0;
}

@media screen and (max-width: 1024px) {
  .page-content article .inner {
    padding: 0;
  }
  .page-content article.agency .inner {
    padding: 0;
  }
  .page-content article.agency .inner section {
    margin: 0;
    width: 100%;
  }
}
.l-main {
  position: relative;
  padding-top: 171px;
}
@media screen and (1081px <= width <= 1420px) {
  .l-main {
    padding-top: 195px;
  }
}
@media screen and (width <= 1080px) {
  .l-main {
    min-width: initial;
    padding-top: 74px;
  }
}

.l-accordion-unit {
  margin-bottom: 32px;
}
.l-accordion-unit:last-child {
  margin-bottom: 0;
}
.l-accordion-unit .c-accordion {
  overflow: hidden;
  border: 1px solid #40408b;
  border-radius: 6px;
}
.l-accordion-unit .c-accordion__trigger {
  position: relative;
  width: 100%;
  padding: 12px 50px;
  font-size: 24px;
  font-weight: bold;
  color: #000064;
  background: #e5e5ef;
}
.l-accordion-unit .c-accordion__trigger br {
  display: none;
}
@media screen and (max-width: 1080px) {
  .l-accordion-unit .c-accordion__trigger br {
    display: block;
  }
}
.l-accordion-unit .c-accordion__trigger .circle {
  position: absolute;
  top: 50%;
  right: 12px;
  bottom: 50%;
  display: block;
  width: 36px;
  height: 36px;
  margin: auto;
  background: #fff;
  border-radius: 100px;
}
.l-accordion-unit .c-accordion__trigger .circle::before, .l-accordion-unit .c-accordion__trigger .circle::after {
  position: absolute;
  display: block;
  width: 20px;
  height: 2px;
  content: "";
  background-color: #000064;
}
.l-accordion-unit .c-accordion__trigger .circle::before {
  top: 17px;
  left: 8px;
}
.l-accordion-unit .c-accordion__trigger .circle::after {
  top: 17px;
  left: 9px;
  display: block;
  transform: rotate(90deg);
}
.l-accordion-unit .c-accordion__trigger.is-open {
  color: #fff;
  background-color: #40408b;
}
.l-accordion-unit .c-accordion__trigger.is-open .circle::after {
  display: none;
}
.l-accordion-unit .c-accordion__panel {
  padding: 40px 24px;
}
.l-accordion-unit .c-accordion__panel.list-panel {
  padding: 24px;
}
.l-accordion-unit .c-accordion__panel .l-tabs-result-list {
  gap: 36px 12px;
}
.l-accordion-unit .c-accordion__panel-movie-inner {
  width: 100%;
  max-width: 996px;
  margin: 0 auto;
}
.l-accordion-unit .c-accordion__panel-movie-list {
  display: flex;
  gap: 36px;
  justify-content: center;
  margin-bottom: 36px;
}
.l-accordion-unit .c-accordion__panel-movie-list li {
  border: 1px solid #c3c3c3;
}
.l-accordion-unit .c-accordion__panel-movie-list li img {
  width: 480px;
  height: auto;
}
.l-accordion-unit .c-accordion__panel-movie-caption {
  display: block;
  margin-bottom: 17px;
  font-size: 23px;
  color: #000;
}
.l-accordion-unit .c-accordion__panel-movie-link {
  position: relative;
  padding-right: 30px;
  font-size: 26px;
  color: #000064;
  text-decoration: underline;
  background: url("/assets/images/icon/arrow-double.svg") no-repeat;
  background-position: right;
}
.l-accordion-unit .c-accordion__panel-movie-link:hover {
  color: #00e;
}
.l-accordion-unit .c-accordion__panel-pamphlet-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 480px));
  gap: 24px 36px;
  align-items: stretch;
  justify-content: center;
}
.l-accordion-unit .c-accordion__panel-pamphlet-list li {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.l-accordion-unit .c-accordion__panel-pamphlet-list li p.list-hd {
  height: 100%;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  color: #000064;
}
.l-accordion-unit .c-accordion__panel-pamphlet-list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  max-height: 120px;
  padding: 33px 12px;
  font-size: 20px;
  line-height: 27px;
  color: #000;
  text-align: center;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.1);
  transition: none;
}
.l-accordion-unit .c-accordion__panel-pamphlet-list li a:hover {
  padding: 31px 10px;
  border-color: #7f99ff;
  border-width: 2px;
}
.l-accordion-unit .c-accordion__panel-pamphlet-caption {
  position: relative;
  max-width: 996px;
  padding-left: 20px;
  margin: 16px auto 0;
  font-size: 16px;
  line-height: 1.2;
  color: #000;
}
.l-accordion-unit .c-accordion__panel-pamphlet-caption::before {
  position: absolute;
  left: 0;
  font-size: 16px;
  content: "※";
}
.l-accordion-unit .c-accordion__panel-agreement-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 480px));
  gap: 24px 36px;
  align-items: stretch;
  justify-content: center;
}
.l-accordion-unit .c-accordion__panel-agreement-list li {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.l-accordion-unit .c-accordion__panel-agreement-list li p.list-hd {
  height: 100%;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  color: #000064;
}
.l-accordion-unit .c-accordion__panel-agreement-list li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  max-height: 120px;
  padding: 32px 12px;
  font-size: 20px;
  line-height: 27px;
  color: #000;
  text-align: center;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.1);
  transition: none;
}
.l-accordion-unit .c-accordion__panel-agreement-list li a:hover {
  padding: 31px 10px;
  border-color: #7f99ff;
  border-width: 2px;
}
.l-accordion-unit .c-accordion__panel-agency-unit {
  margin-bottom: 36px;
}
.l-accordion-unit .c-accordion__panel-agency-unit:last-child {
  margin-bottom: 0;
}
.l-accordion-unit .c-accordion__panel-agency-unit .agency-hd {
  position: relative;
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  color: #000064;
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list-wrap {
  padding-top: 16px;
  background: #f3f3f3;
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list-wrap .grouped-alphabet {
  position: relative;
  padding-left: 20px;
  margin: 0 0 0 16px;
  font-size: 18px;
  font-weight: bold;
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list-wrap .grouped-alphabet::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 18px;
  height: 18px;
  font-size: 34px;
  color: #000;
  content: "";
  background: #0091ff;
  transform: translateY(-50%);
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list-wrap .category-list {
  padding-bottom: 16px;
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list-wrap .category-list:last-child {
  padding-bottom: 16px;
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list {
  display: grid;
  flex-wrap: wrap;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px 32px;
  padding: 16px 16px 16px;
  line-height: 1.2;
  background: #f3f3f3;
}
@media screen and (width <= 1080px) {
  .l-accordion-unit .c-accordion__panel-agency-unit .category-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (width <= 600px) {
  .l-accordion-unit .c-accordion__panel-agency-unit .category-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list li {
  position: relative;
  padding-left: 20px;
  font-size: 16px;
  line-height: 1.2;
}
.l-accordion-unit .c-accordion__panel-agency-unit .category-list li::before {
  position: absolute;
  top: 10px;
  left: 0;
  font-size: 34px;
  line-height: 1.2;
  color: #000;
  content: "・";
  transform: translateY(-50%);
}

@media screen and (width <= 768px) {
  .l-accordion-unit .c-accordion__trigger {
    padding-right: 60px;
    padding-left: 10px;
    font-size: 16px;
  }
  .l-accordion-unit .c-accordion__trigger br {
    display: block;
  }
  .l-accordion-unit .c-accordion__panel {
    padding: 20px 8px;
  }
  .l-accordion-unit .c-accordion__panel-movie-inner {
    width: 100%;
  }
  .l-accordion-unit .c-accordion__panel-movie-list {
    flex-direction: column;
    gap: 20px;
    margin-bottom: 20px;
  }
  .l-accordion-unit .c-accordion__panel-movie-list li img {
    width: 100%;
  }
  .l-accordion-unit .c-accordion__panel-movie-caption {
    margin-bottom: 20px;
    font-size: 18px;
    text-align: justify;
  }
  .l-accordion-unit .c-accordion__panel-movie-link {
    font-size: 18px;
  }
  .l-accordion-unit .c-accordion__panel-movie-link::before {
    right: -28px;
    width: 16px;
    height: 16px;
  }
  .l-accordion-unit .c-accordion__panel-pamphlet-list {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .l-accordion-unit .c-accordion__panel-pamphlet-list li {
    width: 100%;
  }
  .l-accordion-unit .c-accordion__panel-pamphlet-list li p.list-hd {
    margin-bottom: 8px;
    font-size: 16px;
    text-align: center;
  }
  .l-accordion-unit .c-accordion__panel-pamphlet-list li a {
    min-height: 128px;
    font-size: 16px;
    line-height: 1.4;
  }
  .l-accordion-unit .c-accordion__panel-pamphlet-list li a br.sp-none {
    display: none;
  }
  .l-accordion-unit .c-accordion__panel-pamphlet .c-accordion__panel-pamphlet-caption {
    margin-top: 24px;
  }
  .l-accordion-unit .c-accordion__panel-agreement-list {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .l-accordion-unit .c-accordion__panel-agreement-list li {
    width: 100%;
  }
  .l-accordion-unit .c-accordion__panel-agreement-list li p.list-hd {
    margin-bottom: 8px;
    font-size: 16px;
    text-align: center;
  }
  .l-accordion-unit .c-accordion__panel-agreement-list li a {
    min-height: 128px;
    font-size: 16px;
    line-height: 1.4;
  }
  .l-accordion-unit .c-accordion__panel-agency-unit {
    margin-bottom: 24px;
  }
  .l-accordion-unit .c-accordion__panel-agency .category-list {
    flex-wrap: wrap;
    gap: 12px 16px;
  }
  .l-accordion-unit .c-accordion__panel-agency .category-list li {
    font-size: 18px;
  }
  .l-accordion-unit .c-accordion__panel-agency .agency-hd {
    font-size: 18px;
  }
  .l-accordion-unit .c-accordion__panel-agency .agency-hd::before {
    font-size: 18px;
  }
}
.js-search-unit:not(.is-disabled) .c-accordion.sort {
  border: 1px solid rgb(64, 64, 139);
}
.js-search-unit:not(.is-disabled) .c-accordion.sort .c-accordion__trigger:not(.is-open) {
  color: #000;
  background: #ededf4;
}

.emergency-news {
  width: calc(100% - 60px);
  max-width: 1620px;
  margin: 16px auto 40px;
}
.emergency-news .emergency-news-header {
  padding-bottom: 6px;
  padding-left: 24px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  color: #c00;
  background-image: url("/assets/images/icon/important-icon.svg");
  background-repeat: no-repeat;
  background-position: left 3px;
  background-size: 16px;
}
.emergency-news .emergency-news-wrapper {
  position: relative;
  line-height: 1.2;
  padding-bottom: 6px;
  font-size: 20px;
  font-weight: bold;
  color: #c00;
}
.emergency-news .emergency-news-list a {
  display: block;
  width: fit-content;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
}
.emergency-news .emergency-news-list a:hover {
  color: #00e;
}
.emergency-news .emergency-news-list a span.arrow {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 0.8em;
}
.emergency-news .emergency-news-list a span.arrow::before,
.emergency-news .emergency-news-list a span.arrow::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.emergency-news .emergency-news-list a span.arrow::before {
  transform: rotate(45deg) translate(-50%, 0);
}
.emergency-news .emergency-news-list a span.arrow::after {
  transform: rotate(-45deg) translate(-50%, 0);
}
@media screen and (width <= 768px) {
  .emergency-news {
    width: calc(100% - 20px);
    margin-top: 8px;
    margin-bottom: 30px;
  }
  .emergency-news .emergency-news-header {
    padding-bottom: 4px;
    padding-left: 24px;
    font-size: 16px;
    line-height: 1.4;
    background-position: left 2px;
  }
  .emergency-news .emergency-news-wrapper {
    padding: 0 10px 4px;
    font-size: 16px;
  }
  .emergency-news .emergency-news-list a {
    padding: 0 10px;
    font-size: 16px;
  }
  .emergency-news .emergency-news-list a span.arrow::before,
  .emergency-news .emergency-news-list a span.arrow::after {
    width: 6px;
  }
}

.important-news {
  width: calc(100% - 60px);
  max-width: 1620px;
  margin: 0 auto 40px;
}
.important-news .important-news-header {
  padding-bottom: 16px;
  padding-left: 38px;
  margin-bottom: 25px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  color: #c00;
  background-image: url("/assets/images/icon/important-icon.svg");
  background-repeat: no-repeat;
  background-position: left 4px;
  background-size: 28px;
  border-bottom: 1px solid #000064;
}
.important-news .important-news-wrapper {
  padding-left: 41px;
}
.important-news .important-news-wrapper ul.important-news-list li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 16px;
  line-height: 1.2;
}
.important-news .important-news-wrapper ul.important-news-list li::before, .important-news .important-news-wrapper ul.important-news-list li::after {
  position: absolute;
  top: 0.7em;
  display: block;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.important-news .important-news-wrapper ul.important-news-list li::before {
  left: 0;
  transform: rotate(45deg) translate(-50%, 0);
}
.important-news .important-news-wrapper ul.important-news-list li::after {
  left: 0;
  transform: rotate(-45deg) translate(-50%, 0);
}
.important-news .important-news-wrapper ul.important-news-list li:last-child {
  margin-bottom: 0;
}
.important-news .important-news-wrapper ul.important-news-list li a {
  font-size: 20px;
  font-weight: bold;
  color: #000064;
}
.important-news .important-news-wrapper ul.important-news-list li a:hover {
  color: #f00;
  text-decoration: underline;
}
.important-news .important-news-wrapper ul.important-news-list li a span.arrow {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 0.8em;
}
.important-news .important-news-wrapper ul.important-news-list li a span.arrow::before, .important-news .important-news-wrapper ul.important-news-list li a span.arrow::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.important-news .important-news-wrapper ul.important-news-list li a span.arrow::before {
  transform: rotate(45deg) translate(-50%, 0);
}
.important-news .important-news-wrapper ul.important-news-list li a span.arrow::after {
  transform: rotate(-45deg) translate(-50%, 0);
}
@media screen and (width <= 768px) {
  .important-news {
    width: calc(100% - 20px);
    margin-bottom: 30px;
  }
  .important-news .important-news-header {
    padding-bottom: 8px;
    padding-left: 40px;
    margin-bottom: 20px;
    font-size: 22px;
    line-height: 1.4;
    background-position: left 2px;
  }
  .important-news .important-news-wrapper {
    padding: 0 10px;
  }
  .important-news .important-news-wrapper ul.important-news-list li {
    padding-left: 16px;
    margin-bottom: 13px;
  }
  .important-news .important-news-wrapper ul.important-news-list li::before, .important-news .important-news-wrapper ul.important-news-list li::after {
    top: 0.6em;
    width: 6px;
  }
  .important-news .important-news-wrapper ul.important-news-list li a {
    font-size: 16px;
  }
}

.recommended-info {
  width: calc(100% - 60px);
  max-width: 1620px;
  margin: 0 auto 60px;
}
.recommended-info .recommended-info-header {
  padding-bottom: 16px;
  margin-bottom: 24px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  border-bottom: 1px solid #000064;
}
.recommended-info .recommended-info-wrapper {
  overflow: hidden;
}
.recommended-info .swiper {
  z-index: 0;
}
.recommended-info .swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide {
  width: 524px;
  height: auto;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a {
  display: flex;
  align-items: flex-start;
  height: 100%;
  border: 1px solid #c3c3c3;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a:hover .carousel-caption p {
  color: #00e;
  text-decoration: underline;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a img {
  display: block;
  width: 100%;
  max-width: 50%;
  height: 100%;
  object-fit: cover;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption {
  display: flex;
  flex: 1;
  align-items: center;
  padding: 24px 16px;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  color: #000;
  -webkit-box-orient: vertical;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p span.arrow {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 0.8em;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p span.arrow::before, .recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p span.arrow::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p span.arrow::before {
  transform: rotate(45deg) translate(-50%, 0);
}
.recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p span.arrow::after {
  transform: rotate(-45deg) translate(-50%, 0);
}
.recommended-info .swiper .swiper-controllers {
  position: relative;
  margin-top: 30px;
}
.recommended-info .swiper .swiper-controllers .buttons {
  display: flex;
  gap: 34px;
  align-items: center;
  justify-content: end;
  width: 140px;
  margin-left: auto;
}
.recommended-info .swiper .swiper-controllers .buttons .swiper-autoplay-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
}
.recommended-info .swiper .swiper-controllers .buttons .swiper-button-prev,
.recommended-info .swiper .swiper-controllers .buttons .swiper-button-next {
  position: static;
  width: 16px;
  height: 16px;
  margin-top: 0;
}
.recommended-info .swiper .swiper-controllers .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
  top: 10px;
  right: 140px;
  left: unset;
  display: flex;
  gap: 20px;
  align-items: center;
  width: auto;
  padding: 0;
  margin: 0;
}
.recommended-info .swiper .swiper-controllers .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
  background: #000064;
  opacity: 1;
}
.recommended-info .swiper .swiper-controllers .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 40px;
  background: #fff;
  border: 1px solid #000064;
  border-radius: 10px;
}
@media screen and (width <= 768px) {
  .recommended-info {
    width: calc(100% - 20px);
    margin: 0 auto 40px;
  }
  .recommended-info .recommended-info-header {
    padding-bottom: 8px;
    margin-bottom: 20px;
    font-size: 22px;
  }
  .recommended-info .swiper .swiper-wrapper {
    align-items: stretch;
  }
  .recommended-info .swiper .swiper-wrapper .swiper-slide {
    height: auto;
  }
  .recommended-info .swiper .swiper-wrapper .swiper-slide a {
    flex-direction: column;
    height: 100%;
  }
  .recommended-info .swiper .swiper-wrapper .swiper-slide a img {
    max-width: 100%;
    height: auto;
  }
  .recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption {
    display: flex;
    flex: 1;
    align-items: flex-start;
    padding: 8px 6px 12px;
    font-size: 14px;
    font-weight: 500;
  }
  .recommended-info .swiper .swiper-wrapper .swiper-slide a .carousel-caption p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    font-size: 14px;
    -webkit-box-orient: vertical;
  }
  .recommended-info .swiper .swiper-controllers {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
  }
  .recommended-info .swiper .swiper-controllers .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    position: static;
  }
  .recommended-info .swiper .swiper-controllers .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
  }
  .recommended-info .swiper .swiper-controllers .buttons {
    margin-left: 0;
  }
}

.l-past-exchange-rates-section {
  width: 100%;
  max-width: 1230px;
  padding: 36px 20px;
  margin: 0 auto;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-header {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  justify-content: space-between;
  margin-bottom: 36px;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-header h2 {
  font-size: 36px;
  font-weight: bold;
  line-height: 1.2;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-header .l-button_box {
  display: flex;
  gap: 16px;
  align-items: start;
  margin-left: auto;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-header .l-button_box .l-button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 350px;
  height: 54px;
  padding: 2px 48px 3px 38px;
  font-size: 24px;
  font-weight: bold;
  color: #000064;
  text-align: center;
  background: url("/assets/images/icon/arrow-double.svg") no-repeat;
  background-position: right 20px center;
  border: 1px solid #000064;
  border-radius: 6px;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-header .l-button_box .l-button:hover {
  color: #fff;
  background: #000064 url("/assets/images/icon/arrow-double-hover.svg") no-repeat;
  background-position: right 20px center;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-content .no-data {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 240px;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-content .no-data-text {
  font-size: 28px;
  font-weight: bold;
  color: #ef4d63;
  text-align: center;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-content h3 {
  margin-bottom: 24px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-content h3 span {
  display: inline-block;
}
.l-past-exchange-rates-section .l-past-exchange-rates-section-content .sp-only {
  display: none;
}
@media screen and (width <= 768px) {
  .l-past-exchange-rates-section {
    max-width: initial;
    padding: 24px 10px 40px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-header {
    flex-direction: column;
    margin-bottom: 30px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-header h2 {
    font-size: 20px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-header .l-button_box {
    flex-direction: column;
    gap: 10px;
    margin-left: auto;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-header .l-button_box .l-button {
    width: 260px;
    min-width: auto;
    height: 30px;
    font-size: 16px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .no-data {
    height: 96px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .no-data-text {
    font-size: 20px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content h3 {
    margin-bottom: 10px;
    font-size: 16px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content p {
    margin-bottom: 10px;
    font-size: 14px;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .sp-only {
    display: block;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table-wrap {
    max-width: 600px;
    margin: auto;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table.cross-rate {
    width: 100%;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table .sticky {
    position: sticky;
    left: 0;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table .sticky::before, .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table .sticky::after {
    position: absolute;
    top: 0;
    display: block;
    width: 1px;
    height: 100%;
    content: "";
    background: #ddd;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table .sticky::before {
    left: 0;
  }
  .l-past-exchange-rates-section-inner .l-past-exchange-rates-section-content .c_table .sticky::after {
    right: 0;
  }
}

.l-past-exchange-rates-search-section {
  background: #f2f9ff;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner {
  width: 100%;
  max-width: 1230px;
  padding: 40px 20px 80px;
  margin: 0 auto;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner h3 {
  margin-bottom: 40px;
  font-size: 28px;
  font-weight: bold;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit {
  margin-bottom: 32px;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit:last-child {
  margin-bottom: 0;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit h4 {
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .error-text {
  margin-top: 16px;
  font-size: 18px;
  line-height: 1;
  color: #f00;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box {
  display: flex;
  gap: 24px;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box.is-wrong .l-past-exchange-rates-select {
  background-color: #ffefef;
  border-color: #999;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box.is-wrong .l-past-exchange-rates-select::before {
  background-color: #ffefef;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box.is-wrong .l-past-exchange-rates-select select {
  background-color: #ffefef;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select_wrap {
  flex-direction: column;
  gap: 0;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select {
  background: #ffefef;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select::before {
  background-color: #ffefef;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select_wrap .error-text {
  margin-top: 16px;
  margin-right: auto;
  font-size: 18px;
  line-height: 1;
  color: #f00;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select {
  background-color: #ffefef;
  border-color: #999;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select select {
  background-color: #ffefef;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view .l-past-exchange-rates-select_wrap {
  width: 688px;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select {
  width: 100%;
  background: #fff;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .notice {
  margin-top: 16px;
  font-size: 18px;
  color: #000;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: center;
  margin-top: 48px;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box button {
  width: 220px;
  height: 60px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #000064;
  border: 1px solid #000064;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  transition: 0.3s;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box button:hover {
  background: #1d389f;
  border-color: #1d389f;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box button.clear {
  color: #000064;
  background: #fff;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box button.clear:hover {
  background: #f3f3f3;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-select_wrap {
  display: flex;
  gap: 10px;
  align-items: center;
  width: calc((100% - 48px) / 3);
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-select_wrap.is-column {
  flex-direction: column;
  gap: 0;
  align-items: flex-start;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select {
  position: relative;
  width: 356px;
  padding-left: 8px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #999;
  border-radius: 6px;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select::before {
  position: absolute;
  right: 0;
  width: 24px;
  height: 100%;
  pointer-events: none;
  content: "";
  background-color: #fff;
  background-image: url("/assets/images/icon/arrow.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 16px;
  border-radius: 6px;
}
.l-past-exchange-rates-search-section .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select select {
  width: 100%;
  cursor: pointer;
  background: #fff;
  border: none;
}
@media screen and (width <= 768px) {
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner {
    padding: 16px 10px 24px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner h3 {
    margin-bottom: 20px;
    font-size: 16px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit {
    margin-bottom: 16px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .error-text {
    font-size: 14px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box {
    gap: 4%;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box .l-past-exchange-rates-select_wrap {
    width: 32%;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-search_box .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select {
    width: 100%;
    min-width: 85px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view.is-wrong .l-past-exchange-rates-select_wrap .error-text {
    font-size: 14px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view .l-past-exchange-rates-select_wrap {
    width: 100%;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .l-past-exchange-rates-view .l-past-exchange-rates-select_wrap .l-past-exchange-rates-select {
    width: 100%;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit .notice {
    margin-top: 20px;
    font-size: 16px;
    line-height: 1.2;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-unit h4 {
    margin-bottom: 16px;
    font-size: 16px;
    font-weight: normal;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box {
    margin-top: 32px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box button {
    height: 40px;
    font-size: 18px;
  }
  .l-past-exchange-rates-search-section .l-past-exchange-rates-search-inner .l-past-exchange-rates-search-button_box button.clear span {
    display: none;
  }
}

.l-product_accordion__inner {
  width: 100%;
  max-width: 1230px;
  padding: 0 20px 80px;
  margin: 0 auto;
}
.l-product_accordion__inner .agency-title {
  padding-top: 32px;
  margin-top: -32px;
  margin-bottom: 32px;
  font-size: 24px;
  font-weight: bold;
  color: black;
  text-align: center;
}
@media screen and (width <= 768px) {
  .l-product_accordion__inner {
    padding: 0 2px 24px;
  }
  .l-product_accordion__inner .agency-title {
    font-size: 16px;
    text-indent: -40px;
  }
}

.l-product_details__inner {
  position: relative;
  width: 100%;
  max-width: 1230px;
  padding: 36px 20px 0;
  margin: 0 auto;
}
.l-product_details__inner .l-product_details__stop-tag {
  position: absolute;
  top: 36px;
  right: 20px;
  display: inline-block;
  width: 200px;
  padding: 1px 8px;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #ef4d63;
  border-radius: 4px;
}
.l-product_details__button {
  display: flex;
  align-items: center;
  width: 140px;
  height: 30px;
  padding-left: 10px;
  margin-bottom: 36px;
  font-size: 14px;
  line-height: 30px;
  color: #000;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #000064;
  border-radius: 6px;
}
.l-product_details__button img {
  margin-right: 21px;
}
.l-product_details__notice {
  margin-top: -20px;
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: bold;
  color: #cb0a23;
}
.l-product_details__stop-notice {
  margin-top: -20px;
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: bold;
  color: #ef4d63;
}
.l-product_details__content {
  display: flex;
  gap: 24px;
  margin-bottom: 36px;
}
.l-product_details__content-image-wrap {
  width: 50%;
}
.l-product_details__content-image {
  box-sizing: border-box;
  aspect-ratio: 1/1;
  padding: 10px 30px;
  margin-bottom: 16px;
  line-height: 1.2;
  border: 1px solid #c3c3c3;
}
.l-product_details__content-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.l-product_details__content .l-product_details__content_caption {
  position: relative;
  padding-left: 20px;
  font-size: 16px;
  line-height: 1.2;
}
.l-product_details__content .l-product_details__content_caption::before {
  position: absolute;
  left: 0;
  font-size: 16px;
  content: "※";
}
.l-product_details__content-info {
  position: relative;
  flex: 1;
}
.l-product_details__content-info h1 {
  display: flex;
  justify-content: space-between;
  max-width: calc(100% - 180px);
  margin-bottom: 12px;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.2;
}
.l-product_details__content-info h1.p100 {
  width: 100%;
  max-width: 100%;
}
.l-product_details__content-info .l-product_details__content-info-link {
  position: absolute;
  top: 0;
  right: 0;
  padding-right: 26px;
  font-size: 18px;
  text-decoration: underline;
}
.l-product_details__content-info .l-product_details__content-info-link::before {
  position: absolute;
  top: 12px;
  right: 0;
  display: block;
  width: 16px;
  height: 8px;
  content: "";
  background-image: url("/assets/images/icon/arrow.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.l-product_details__content-info .l-product_details__content-info-link:hover {
  color: #00e;
}
.l-product_details__content-info .l-product_details__hd {
  margin-bottom: 12px;
  font-size: 18px;
  font-weight: medium;
}
.l-product_details__content-info ul.l-product_details__tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-bottom: 24px;
}
.l-product_details__content-info ul.l-product_details__tag-list li {
  padding: 1px 8px 0;
  font-size: 14px;
  line-height: 1.4;
  background: #e3e8ff;
  border-radius: 6px;
}
.l-product_details__content-info ul.l-product_details__link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding: 24px;
  line-height: 1.2;
  background: #f2f9ff;
  border-radius: 6px;
}
.l-product_details__content-info ul.l-product_details__link-list li {
  width: calc(50% - 12px);
  height: auto;
  min-height: 80px;
  font-size: 16px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.1);
}
.l-product_details__content-info ul.l-product_details__link-list li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 12px;
  line-height: 1.4;
  color: #000;
  text-align: center;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
  transition: none;
}
.l-product_details__content-info ul.l-product_details__link-list li a span {
  font-size: 14px;
  color: #666;
}
.l-product_details__content-info ul.l-product_details__link-list li a:hover {
  border: 2px solid #7f99ff;
}
@media screen and (width <= 1080px) {
  .l-product_details.stop-tag .l-product_details__inner {
    padding-top: 70px;
  }
  .l-product_details.stop-tag .l-product_details__inner .l-product_details__stop-tag {
    top: 20px;
    right: 10px;
  }
  .l-product_details.stop-tag .l-product_details__inner .l-product_details__content-info-link {
    top: 70px;
    right: 10px;
  }
  .l-product_details__inner {
    padding: 24px 0 0;
  }
  .l-product_details__button {
    margin-left: 20px;
  }
  .l-product_details__notice {
    width: calc(100% - 40px);
    margin: -20px auto 20px;
    font-size: 18px;
  }
  .l-product_details__stop-notice {
    width: calc(100% - 40px);
    margin: -20px auto 20px;
    font-size: 18px;
  }
  .l-product_details__content {
    flex-direction: column;
  }
  .l-product_details__content-image-wrap {
    width: 100%;
    max-width: 80%;
    margin: auto;
  }
  .l-product_details__content-info {
    position: initial;
  }
  .l-product_details__content-info h1 {
    max-width: initial;
    margin-right: 20px;
    margin-left: 20px;
    font-size: 24px;
  }
  .l-product_details__content-info .l-product_details__content-info-link {
    top: 24px;
    right: 20px;
    font-size: 16px;
    font-weight: 500;
  }
  .l-product_details__content-info .l-product_details__hd {
    margin-right: 20px;
    margin-left: 20px;
    font-size: 18px;
  }
  .l-product_details__content-info .l-product_details__tag-list {
    margin-right: 20px;
    margin-left: 20px;
  }
  .l-product_details__content-info .l-product_details__tag-list li {
    font-size: 12px;
  }
  .l-product_details__content-info ul.l-product_details__link-list {
    gap: 12px;
  }
  .l-product_details__content-info ul.l-product_details__link-list li {
    width: calc(50% - 6px);
    height: 80px;
  }
  .l-product_details__content-info ul.l-product_details__link-list li a {
    padding: 12px 6px;
  }
  .l-product_details__content-info ul.l-product_details__link-list li a span {
    font-size: 12px;
  }
}
@media screen and (width <= 375px) {
  .l-product_details__content-info ul.l-product_details__link-list li {
    font-size: 14px;
  }
}

.l-stop-sale-result {
  padding: 40px 20px 80px;
}
.l-stop-sale-result-inner {
  max-width: 1200px;
  margin: 0 auto;
}
.l-stop-sale-result-inner .l-stop-sale-result-number {
  display: flex;
  justify-content: space-between;
  width: 194px;
  margin: 0 auto 24px;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.l-stop-sale-result-inner .l-stop-sale-result-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, 276px);
  gap: 32px;
  justify-content: center;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item {
  max-width: 276px;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item a {
  color: #000;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item a:hover .l-stop-sale-result-item-img {
  border: 2px solid #7f99ff;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item a:hover .l-stop-sale-result-item-title {
  text-decoration: underline;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item a .l-stop-sale-result-item-img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 276px;
  height: 90px;
  padding: 10px;
  margin-bottom: 12px;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item a .l-stop-sale-result-item-img img {
  width: 100%;
  max-width: 240px;
  height: auto;
  max-height: 60px;
  object-fit: contain;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item a .l-stop-sale-result-item-title {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item .keyword-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item .keyword-list .keyword-item {
  padding: 0 12px;
  font-size: 14px;
  line-height: 1.6;
  background: #e3e8ff;
  border-radius: 6px;
}
@media screen and (width <= 768px) {
  .l-stop-sale-result {
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .l-stop-sale-result .l-stop-sale-result-inner {
    padding: 0 10px;
  }
  .l-stop-sale-result .l-stop-sale-result-inner .l-stop-sale-result-number {
    margin-bottom: 19px;
    font-size: 20px;
  }
  .l-stop-sale-result .l-stop-sale-result-inner .l-stop-sale-result-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
  }
  .l-stop-sale-result .l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item {
    max-width: unset;
  }
  .l-stop-sale-result .l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item .l-stop-sale-result-item-img {
    width: 100%;
  }
  .l-stop-sale-result .l-stop-sale-result-inner .l-stop-sale-result-list .l-stop-sale-result-item .l-stop-sale-result-item-img img {
    display: block;
    width: auto;
    max-width: min(240px, 100%);
    height: auto;
    max-height: 60px;
    object-fit: contain;
  }
}

.l-stop-sale-search {
  padding: 40px 20px;
  background: #f2f9ff;
}
.l-stop-sale-search-inner {
  max-width: 1200px;
  margin: 0 auto;
}
.l-stop-sale-search .l-stop-sale-unit {
  position: relative;
  margin-bottom: 24px;
}
.l-stop-sale-search .l-stop-sale-unit.is-disabled input[type=text] {
  opacity: 0.3;
}
.l-stop-sale-search .l-stop-sale-unit.is-disabled .c-accordion.sort .c-accordion__trigger img {
  opacity: 0.3;
}
.l-stop-sale-search .l-stop-sale-unit:last-child {
  margin-bottom: 0;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-header {
  margin-bottom: 16px;
  font-size: 20px;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-header.is-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 36px;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-header span {
  font-weight: normal;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-header label {
  display: flex;
  gap: 8px;
  align-items: center;
  font-weight: bold;
  cursor: pointer;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-input {
  padding: 14px 16px;
  font-size: 20px;
  border: 1px solid #999;
  border-radius: 6px;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-suggest-list-wrap {
  position: absolute;
  top: 100%;
  z-index: 1;
  visibility: hidden;
  width: 100%;
  padding: 12px 0;
  background: #fff;
  border: 1px solid #c3c3c3;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-suggest-list-wrap .l-stop-sale-unit-suggest-list li {
  padding: 8px 16px;
  font-size: 18px;
  line-height: 1.2;
  cursor: pointer;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-suggest-list-wrap .l-stop-sale-unit-suggest-list li:hover,
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-suggest-list-wrap .l-stop-sale-unit-suggest-list li.is-highlighted {
  background: #f1f4ff;
}
.l-stop-sale-search .l-stop-sale-unit .l-stop-sale-unit-suggest-list-wrap .l-stop-sale-unit-suggest-number {
  padding: 4px 16px;
  color: #c3c3c3;
}
@media screen and (width <= 768px) {
  .l-stop-sale-search {
    padding: 22px 10px;
  }
  .l-stop-sale-search .l-stop-sale-unit-header {
    margin-bottom: 8px;
    line-height: 1.2;
  }
  .l-stop-sale-search .l-stop-sale-unit-header span {
    display: block;
    margin-top: 12px;
    margin-left: 0;
    line-height: 1.2;
  }
}

.l-stop-sale__inner {
  width: 100%;
  max-width: 1230px;
  padding: 0 20px;
  margin: 0 auto;
}
.l-stop-sale__header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 36px;
  margin-bottom: 52px;
}
.l-stop-sale__header-inner h2 {
  font-size: 36px;
  font-weight: bold;
  line-height: 1;
  color: #000;
}
.l-stop-sale__header-inner .l-header__button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 48px 7px 38px;
  font-size: 24px;
  font-weight: bold;
  color: #000064;
  background: url("/assets/images/icon/arrow-double.svg") no-repeat;
  background-position: right 18px center;
  border: 1px solid #000064;
  border-radius: 6px;
}
.l-stop-sale__header-inner .l-header__button:hover {
  color: #fff;
  background: #000064 url("/assets/images/icon/arrow-double-hover.svg") no-repeat;
  background-position: right 18px center;
}
@media screen and (width <= 768px) {
  .l-stop-sale__header-inner {
    flex-direction: column;
    padding: 0 0 24px;
    margin-bottom: 0;
  }
  .l-stop-sale__header-inner h2 {
    margin-top: 24px;
    margin-right: auto;
    margin-bottom: 16px;
    font-size: 20px;
  }
  .l-stop-sale__header-inner .l-header__button {
    width: 100%;
    max-width: 260px;
    min-height: 30px;
    padding: 6px 12px;
    margin-left: auto;
    font-size: 16px;
    line-height: 1;
  }
}

.l-tabs__header-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  padding-top: 40px;
  margin-bottom: 52px;
}
.l-tabs__header-inner .l-tabs__header-button_box {
  display: flex;
  gap: 16px;
  margin-left: auto;
}
.l-tabs__header-inner h2 {
  font-size: 36px;
  font-weight: bold;
  line-height: 1.2;
  color: #000;
}
.l-tabs__header-inner .l-header__button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 48px 7px 38px;
  font-size: 24px;
  font-weight: bold;
  color: #000064;
  background: url("/assets/images/icon/arrow-double.svg") no-repeat;
  background-position: right 18px center;
  border: 1px solid #000064;
  border-radius: 6px;
}
.l-tabs__header-inner .l-header__button:hover {
  color: #fff;
  background: #000064 url("/assets/images/icon/arrow-double-hover.svg") no-repeat;
  background-position: right 18px center;
}
@media screen and (width <= 768px) {
  .l-tabs__header-inner {
    flex-direction: column;
    padding: 0 0 24px;
    margin-bottom: 0;
  }
  .l-tabs__header-inner h2 {
    margin-top: 24px;
    margin-right: auto;
    margin-bottom: 16px;
    font-size: 20px;
  }
  .l-tabs__header-inner .l-header__button {
    width: 100%;
    max-width: 260px;
    margin-left: auto;
    font-size: 16px;
    line-height: 1;
    background-position: right 8px center;
  }
  .l-tabs__header .l-tabs__list .l-tabs__button {
    height: 61px;
    font-size: 14px;
  }
}

.l-tabs__panel-unit {
  position: relative;
}
.l-tabs__panel-unit.is-disabled .l-tabs-radio-kana-index label {
  pointer-events: none;
}
.l-tabs__panel-unit.is-disabled .l-tabs-radio-kana-index .l-tabs-radio-initial-inner label {
  pointer-events: none;
}
.l-tabs__panel-unit.is-disabled .l-tabs-radio-initial-wrap .l-tabs-radio-initial.is-active {
  pointer-events: none;
}
.l-tabs__panel-unit.is-disabled input[type=text] {
  opacity: 0.3;
}
.l-tabs__panel-unit.is-disabled .l-tabs-radio-content .l-tabs-radio-kana-index {
  opacity: 0.3;
}
.l-tabs__panel-unit.is-disabled .l-tabs-radio-content .l-tabs-radio-initial-wrap {
  opacity: 0.3;
}
.l-tabs__panel-unit.is-disabled .c-accordion .c-accordion__trigger img {
  opacity: 0.3;
}
.l-tabs__panel-unit .l-tabs-radio-kana-index label {
  cursor: pointer;
}
.l-tabs__panel-unit .l-tabs-radio-kana-index label.word-disabled {
  pointer-events: none;
  opacity: 0.3;
}
.l-tabs__panel-unit .l-tabs__unit-header {
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
}
.l-tabs__panel-unit .l-tabs__unit-header.is-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 36px;
}
.l-tabs__panel-unit .l-tabs__unit-header span {
  margin-left: 24px;
  font-size: 20px;
  font-weight: 500;
}
.l-tabs__panel-unit .l-tabs__unit-header label {
  display: flex;
  gap: 8px;
  align-items: center;
  cursor: pointer;
}
.l-tabs__panel-unit .l-tabs__unit-input {
  padding: 14px 16px;
  font-size: 20px;
  border: 1px solid #999;
  border-radius: 6px;
}
.l-tabs__panel-unit .l-tabs__unit-suggest-list-wrap {
  position: absolute;
  top: 100%;
  z-index: 1;
  visibility: hidden;
  width: 100%;
  padding: 12px 0;
  background: #fff;
  border: 1px solid #c3c3c3;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.l-tabs__panel-unit .l-tabs__unit-suggest-list-wrap .l-tabs__unit-suggest-list li {
  padding: 8px 16px;
  font-size: 18px;
  line-height: 1.2;
  cursor: pointer;
}
.l-tabs__panel-unit .l-tabs__unit-suggest-list-wrap .l-tabs__unit-suggest-list li:hover,
.l-tabs__panel-unit .l-tabs__unit-suggest-list-wrap .l-tabs__unit-suggest-list li.is-highlighted {
  background-color: #f1f4ff;
}
.l-tabs__panel-unit .l-tabs__unit-suggest-list-wrap .l-tabs__unit-suggest-number {
  padding: 4px 16px;
  color: #c3c3c3;
}
.l-tabs__panel-unit .l-tabs-radio-content {
  padding: 20px 30px;
  background: #fff;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-kana-index {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 43px;
  padding-bottom: 17px;
  margin-bottom: 16px;
  font-size: 22px;
  border-bottom: 1px solid #c3c3c3;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-kana-index label {
  cursor: pointer;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-initial-wrap {
  height: 35px;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-initial-wrap .l-tabs-radio-initial-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  font-size: 22px;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-initial-wrap .l-tabs-radio-initial-inner label {
  cursor: pointer;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-initial-wrap .l-tabs-radio-initial-inner label.word-disabled {
  pointer-events: none;
  opacity: 0.3;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc((100% - 60px) / 4);
  min-height: 60px;
  max-height: 80px;
  padding: 12px;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li:hover {
  padding: 11px;
  border: 2px solid #7f99ff;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li.is-checked {
  background-color: #f1f4ff;
  border-color: #7f99ff;
  opacity: 1;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li div {
  display: flex;
  align-items: center;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li div input[type=radio] {
  margin-right: 8px;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li div label {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  padding: 8px 0;
  font-size: clamp(18px, 1.8vw, 22px);
  line-height: 1.4;
  white-space: nowrap;
  cursor: pointer;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li div label:has(input[type=radio]:checked) {
  background-color: #f1f4ff;
  border-color: #7f99ff;
}
.l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li div label span.sub {
  display: block;
  font-size: 14px;
  line-height: 1.2;
}
.l-tabs__panel-unit.radio .l-tabs__unit-header .l-tabs__unit-header-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 36px;
}
.l-tabs__panel-unit.radio .l-tabs__unit-header label {
  font-size: 20px;
  font-weight: bold;
  cursor: pointer;
}
.l-tabs__panel-unit.radio .l-tabs__unit-header p {
  margin-left: 24px;
  font-weight: normal;
}
.l-tabs__panel-unit.radio .l-tabs-radio-initial {
  display: none;
}
.l-tabs__panel-unit.radio .l-tabs-radio-initial.is-active {
  display: block;
}
@media screen and (width <= 768px) {
  .l-tabs__panel-unit {
    margin-bottom: 20px;
  }
  .l-tabs__panel-unit .l-tabs__unit-suggest-list-wrap .l-tabs__unit-suggest-list .l-tabs__unit-suggest-item {
    font-size: 20px;
  }
  .l-tabs__panel-unit .l-tabs-radio-content {
    width: 100vw;
    padding: 20px 10px;
    margin-left: calc(50% - 50vw);
  }
  .l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-kana-index {
    display: grid;
    grid-template-columns: repeat(2, minmax(100px, 180px)) 150px;
    gap: 30px 5%;
    font-size: 18px;
  }
  .l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-initial-wrap {
    height: auto;
    min-height: 35px;
  }
  .l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-initial-wrap .l-tabs-radio-initial-inner {
    display: grid;
    grid-template-columns: repeat(2, minmax(100px, 180px)) 150px;
    gap: 30px 5%;
    font-size: 18px;
  }
  .l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li {
    width: calc((100% - 30px) / 2);
    min-height: 40px;
  }
  .l-tabs__panel-unit .l-tabs-radio-content .l-tabs-radio-content-list li div label {
    font-size: 18px;
  }
  .l-tabs__panel-unit.radio .l-tabs__unit-header-inner p {
    margin-top: 12px;
    margin-left: 0;
    line-height: 1.2;
  }
  .l-tabs__panel-unit .l-tabs__unit-header {
    margin-bottom: 8px;
    line-height: 1.2;
  }
  .l-tabs__panel-unit .l-tabs__unit-header-inner {
    flex-direction: column;
  }
  .l-tabs__panel-unit .l-tabs__unit-header span {
    display: block;
    margin-top: 12px;
    margin-left: 0;
    line-height: 1.2;
  }
}
.l-tabs__panel-unit.disabled-view .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item {
  opacity: 0.3;
}
.l-tabs__panel-unit.disabled-view .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item.is-disabled {
  pointer-events: none;
}
.l-tabs__panel-unit.disabled-view .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item.is-checked {
  opacity: 1;
}
.l-tabs__panel-unit.disabled-view.disabled-view .l-tabs-radio-content-list li.is-disabled {
  pointer-events: none;
  opacity: 0.3;
}
.l-tabs__panel-unit.disabled-view.disabled-view .l-tabs-radio-content-list li.is-checked {
  opacity: 1;
}

.l-tabs-result-section {
  padding: 40px 20px 80px;
}
.l-tabs-result-section .l-tabs-result-number {
  display: flex;
  justify-content: space-between;
  width: 194px;
  margin: 0 auto 24px;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.l-tabs-result-section .l-tabs-result-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, 276px);
  gap: 32px;
  justify-content: center;
}
.l-tabs-result-section .l-tabs-result-list li {
  max-width: 276px;
}
.l-tabs-result-section .l-tabs-result-item .l-tabs-result-item-stop-tag {
  display: inline-block;
  padding: 2px 8px;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  background: #ef4d63;
  border-radius: 4px;
}
.l-tabs-result-section .l-tabs-result-item a {
  color: #000;
}
.l-tabs-result-section .l-tabs-result-item a:hover .l-tabs-result-item-img {
  border: 2px solid #7f99ff;
}
.l-tabs-result-section .l-tabs-result-item a:hover .l-tabs-result-item-title {
  text-decoration: underline;
}
.l-tabs-result-section .l-tabs-result-item-img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 276px;
  height: 90px;
  padding: 10px;
  margin-bottom: 12px;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.l-tabs-result-section .l-tabs-result-item-img img {
  width: 100%;
  max-width: 240px;
  height: auto;
  max-height: 60px;
  object-fit: contain;
}
.l-tabs-result-section .l-tabs-result-item-title {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
}
.l-tabs-result-section .keyword-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.l-tabs-result-section .keyword-list .keyword-item {
  padding: 0 12px;
  font-size: 14px;
  line-height: 1.6;
  background: #e3e8ff;
  border-radius: 6px;
}
@media screen and (width <= 768px) {
  .l-tabs-result-section {
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .l-tabs-result-section .l-tabs-result-number {
    margin-bottom: 19px;
    font-size: 20px;
  }
  .l-tabs-result-section .l-tabs-result-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
  }
  .l-tabs-result-section .l-tabs-result-list .l-tabs-result-item {
    max-width: unset;
  }
  .l-tabs-result-section .l-tabs-result-list .l-tabs-result-item-img {
    width: 100%;
  }
  .l-tabs-result-section .l-tabs-result-list .l-tabs-result-item-img img {
    display: block;
    width: auto;
    max-width: min(240px, 100%);
    height: auto;
    max-height: 60px;
    object-fit: contain;
  }
}

.l-tabs__inner {
  width: 100%;
  max-width: 1230px;
  padding: 0 20px;
  margin: 0 auto;
}
.l-tabs__panel-unit {
  margin-bottom: 24px;
}
.l-tabs__panel-unit:last-child {
  margin-bottom: 0;
}

.l-tabs__panel {
  display: none;
}
.l-tabs__panel-inner {
  max-width: 1200px;
  margin: 0 auto;
}
.l-tabs__panel.is-active {
  display: block;
  border-top: 1px solid #000064;
}
.l-tabs__panel .l-tabs-search-section {
  padding: 40px 20px;
  background: #f2f9ff;
}
.l-tabs__panel .l-tabs-today-exchange-rate-section {
  padding: 40px 20px;
  background: #f2f9ff;
}
.l-tabs__panel .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate {
  font-size: 28px;
  font-weight: bold;
}
.l-tabs__panel .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 36px;
}
.l-tabs__panel .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate-link-list li a {
  padding-right: 24px;
  font-size: 18px;
  color: #000064;
  text-decoration: underline;
  background: url("/assets/images/icon/arrow.svg") no-repeat;
  background-position: right center;
}
.l-tabs__panel .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate-link-list li a:hover {
  color: #00e;
}
.l-tabs__panel .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate-link-list li a span {
  position: relative;
}
.l-tabs__panel .l-tabs-exchange-rate-section {
  padding: 40px 0 80px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs__panel-inner {
  display: flex;
  flex-direction: column;
  gap: 36px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs__panel-inner .notice {
  position: relative;
  padding-left: 20px;
  font-size: 18px;
  font-weight: 500;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs__panel-inner .notice::before {
  position: absolute;
  top: 0%;
  left: 0;
  content: "※";
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit {
  overflow: hidden;
  border: 1px solid #40408b;
  border-radius: 6px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 11px 30px;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  background: #40408b;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-header br.sp-only {
  display: none;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body {
  padding: 24px 30px 36px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .hd {
  margin-bottom: 20px;
  font-size: 16px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .hd.no-margin {
  margin-bottom: 0;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange-rate-notice-list {
  margin-bottom: 20px;
  margin-left: 20px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange-rate-notice-list li {
  position: relative;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange-rate-notice-list li::before {
  position: absolute;
  left: -12px;
  font-size: 16px;
  content: "・";
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table {
  max-width: 1080px;
  margin: auto;
  border-color: #d9d9d9;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table.even thead td {
  max-width: 216px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table.even tbody th,
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table.even tbody td {
  width: 20%;
  max-width: 216px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table.divide_half th,
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table.divide_half td {
  width: 50%;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td {
  text-align: center;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.bold {
  font-weight: bold;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.bg {
  background: #f4f4f8;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: flex-end;
  margin-top: 24px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a {
  width: 320px;
  margin-top: 0;
  margin-left: initial;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a span {
  display: block;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a span::before, .l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a span::after {
  right: -25px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a span::before {
  top: 30%;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a span::after {
  top: 70%;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a {
  display: block;
  width: 212px;
  padding: 9px 36px 9px 10px;
  margin-top: 24px;
  margin-left: auto;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  color: #000064;
  background: #fff;
  border: 1px solid #000064;
  border-radius: 6px;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a:hover {
  color: #00e;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a span {
  position: relative;
  display: block;
  text-align: center;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a span::before, .l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a span::after {
  position: absolute;
  right: -25px;
  width: 10px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a span::before {
  top: 30%;
  transform: translateY(-50%);
  rotate: 45deg;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a span::after {
  top: 73%;
  transform: translateY(-50%);
  rotate: -45deg;
}
.l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body a span br.sp-only {
  display: none;
}

.l-tabs__list {
  display: flex;
  gap: 16px;
  justify-content: center;
}
.l-tabs__list .l-tabs__button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  height: 97px;
  font-size: 24px;
  font-weight: bold;
  color: #666;
  border: 1px solid #c3c3c3;
}
.l-tabs__list .l-tabs__button:hover {
  background: #f2f9ff;
}
.l-tabs__list .l-tabs__button.is-active {
  color: #fff;
  background-color: #000064;
  border-color: #000064;
}

@media screen and (width <= 1080px) {
  .l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box {
    flex-direction: column;
  }
  .l-tabs__panel .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit-body .cross-rate-link-box a {
    margin-left: auto;
  }
}
@media screen and (width <= 768px) {
  .l-tabs__panel .l-tabs-search-section {
    padding: 22px 10px;
  }
  .exchange_rate .l-tabs__header-inner {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 30px;
  }
  .exchange_rate .l-tabs__header-inner h2 {
    margin-top: 24px;
    margin-bottom: 15px;
    font-size: 20px;
  }
  .exchange_rate .l-tabs__header-inner .l-tabs__header-button-box {
    flex-direction: column;
    gap: 10px;
    width: 230px;
    margin-left: auto;
  }
  .exchange_rate .l-tabs-today-exchange-rate-section {
    padding: 16px 10px 24px;
  }
  .exchange_rate .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate {
    margin-bottom: 12px;
    font-size: 16px;
  }
  .exchange_rate .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate-link-list {
    flex-direction: column;
    gap: 16px;
  }
  .exchange_rate .l-tabs-today-exchange-rate-section .l-tabs-today-exchange-rate-link-list li a {
    font-size: 14px;
  }
  .exchange_rate .l-tabs-exchange-rate-section {
    padding: 24px 2px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs__panel-inner {
    gap: 16px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs__panel-inner .notice {
    margin-top: 14px;
    font-size: 16px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit {
    border-radius: 0;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-header {
    flex-direction: column;
    align-items: start;
    padding: 10px;
    font-size: 18px;
    line-height: 1.2;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-header a {
    padding: 5px 39px 5px 14px;
    margin-left: auto;
    font-size: 16px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-header a span::before, .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-header a span::after {
    right: -24px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-header br.sp-only {
    display: block;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body {
    padding: 16px 8px 24px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .hd {
    margin-bottom: 16px;
    font-size: 16px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table-wrap {
    position: relative;
    max-width: 800px;
    margin: auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table-wrap .l-tabs-exchange_table {
    width: 800px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table {
    width: 100%;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table th.sticky,
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky {
    position: sticky;
    left: 0;
    z-index: 1;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table th.sticky::before, .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table th.sticky::after,
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky::before,
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky::after {
    position: absolute;
    width: 1px;
    height: 100%;
    content: "";
    background: #d9d9d9;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table th.sticky::before,
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky::before {
    top: 0;
    left: 0;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table th.sticky::after,
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky::after {
    top: 0;
    right: 0;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td {
    font-size: 12px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky-heading {
    text-align: left;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .l-tabs-exchange_table td.sticky-heading span {
    position: sticky;
    left: 190px;
    z-index: 1;
    display: inline-block;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .cross-rate-link-box {
    gap: 16px;
    margin-top: 16px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .cross-rate-link-box a {
    min-width: 310px;
    padding: 6px 36px 6px 10px;
    font-size: 16px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body .cross-rate-link-box a span::before {
    top: 20%;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body a {
    width: 186px;
    padding: 6px 36px 6px 10px;
    font-size: 16px;
    line-height: 1;
    white-space: nowrap;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body a span::before, .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body a span::after {
    top: 50%;
    right: -24px;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body a span::before {
    top: 30%;
  }
  .exchange_rate .l-tabs-exchange-rate-section .l-tabs-exchange-rate-unit .l-tabs-exchange-rate-unit-body a span::after {
    top: 65%;
  }
}
.top-banner {
  padding: 60px 20px;
}
.top-banner .top-section-inner {
  max-width: 1486px;
  margin: auto;
}
.top-banner .top-section-inner ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: center;
}
@media screen and (width <= 768px) {
  .top-banner {
    padding: 36px 10px;
  }
  .top-banner .top-section-inner {
    max-width: 80%;
  }
  .top-banner .top-section-inner ul li {
    width: 136px;
  }
  .top-banner .top-section-inner ul li a {
    display: block;
  }
}

.top-menu {
  padding: 60px 25px 0;
}
.top-menu a span {
  position: relative;
  display: inline-block;
  margin-right: 18px;
}
.top-menu a span::before, .top-menu a span::after {
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.top-menu a span::before {
  right: -18px;
  transform: rotate(45deg) translate(-50%, 0);
}
.top-menu a span::after {
  right: -18px;
  transform: rotate(-45deg) translate(-50%, 0);
}
.top-menu .top-section-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: space-between;
  max-width: 1620px;
  margin: 0 auto;
}
.top-menu .top-section-inner .top-menu_box h4 {
  margin-bottom: 24px;
  font-size: 20px;
  font-weight: bold;
}
.top-menu .top-section-inner .top-menu_box .top-menu-list_box {
  display: flex;
  gap: 24px;
}
.top-menu .top-section-inner .top-menu_box .top-menu-item h5 {
  position: relative;
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  color: #0000c0;
  text-indent: 16px;
  white-space: nowrap;
}
.top-menu .top-section-inner .top-menu_box .top-menu-item h5::before {
  position: absolute;
  left: -16px;
  color: #1746ff;
  content: "・";
}
.top-menu .top-section-inner .top-menu_box .top-menu-item ul li {
  margin-bottom: 12px;
}
.top-menu .top-section-inner .top-menu-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.top-menu .top-section-inner .top-menu-list .top-menu-item ul li a {
  padding-left: 16px;
  font-size: 16px;
  color: #000;
}
@media screen and (width <= 1460px) {
  .top-menu {
    display: none;
  }
}

.top-mv {
  background: #fff;
}
.top-mv .sp-only {
  display: none;
}
.top-mv .pc-only {
  display: block;
}
.top-mv-inner {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
}
.top-mv-inner .top-mv-img {
  width: 100%;
  height: auto;
}
.top-mv-inner .top-mv-img.from-1080 {
  display: none;
}
.top-mv-inner .top-mv_box {
  position: absolute;
  top: 3.7878787879%;
  right: 1.6666666667%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 33.125%;
  height: 89.3939393939%;
  padding: 5.6818181818% 3.0208333333%;
  text-align: center;
  background: url("/assets/images/top/box-bg.png") no-repeat #fff;
  background-color: #fff;
  background-position: -11px 120px;
  border-radius: 28px 0;
  box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.25);
}
.top-mv-inner .top-mv_box .top-mv_box-hd {
  margin-bottom: 7%;
  font-size: clamp(18px, 2.1875vw, 42px);
  font-weight: bold;
  line-height: 1.2;
}
.top-mv-inner .top-mv_box .top-mv_box-hd br {
  display: block;
}
.top-mv-inner .top-mv_box .top-mv_box-hd .hd-strong {
  font-size: clamp(18px, 2.8125vw, 54px);
}
.top-mv-inner .top-mv_box a {
  box-sizing: border-box;
  display: block;
  width: 100%;
  background-size: cover;
  border: 4px solid #fff;
  border-radius: 12px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.top-mv-inner .top-mv_box a.simulation_btn {
  position: relative;
  display: flex;
  align-items: center;
  padding: 5.6818181818% 0;
  margin-bottom: 5.6818181818%;
  font-size: clamp(20px, 1.875vw, 36px);
  font-weight: bold;
  line-height: 1;
  color: #000064;
  text-align: center;
  background: #cff5ff;
  background: linear-gradient(90deg, rgb(207, 245, 255) 0%, rgb(181, 240, 255) 39%, rgb(78, 218, 255) 100%);
}
.top-mv-inner .top-mv_box a.simulation_btn:hover {
  opacity: 0.6;
}
.top-mv-inner .top-mv_box a.simulation_btn .text {
  margin: auto;
  white-space: nowrap;
}
.top-mv-inner .top-mv_box a.restart_btn {
  display: flex;
  gap: 0.625%;
  align-items: center;
  justify-content: center;
  padding: 1.6% 0;
  font-size: clamp(18px, 1.4583333333vw, 28px);
  font-weight: bold;
  line-height: 1;
  color: #000064;
  background: #e8e8e8;
}
.top-mv-inner .top-mv_box a.restart_btn:hover {
  opacity: 0.6;
}
.top-mv-inner .top-mv_box a.restart_btn img {
  width: 1.875vw;
  height: auto;
}
@media screen and (width >= 1920px) {
  .top-mv-inner img {
    border-radius: 0 0 28px 28px;
  }
}
@media screen and (width <= 1080px) {
  .top-mv .top-mv-inner .top-mv-img.from-1080 {
    display: block;
    margin-bottom: 8px;
  }
  .top-mv .pc-only {
    display: none;
  }
  .top-mv-inner .top-mv_box {
    position: static;
    display: grid;
    grid-template: "hd hd" auto "simulation restart" auto/60% 40%;
    gap: 17px 8px;
    justify-content: center;
    width: calc(100% - 20px);
    padding: 18px 10px;
    margin: auto;
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  }
  .top-mv-inner .top-mv_box .top-mv_box-hd {
    grid-area: hd;
    margin-bottom: 0;
    font-size: 20px;
  }
  .top-mv-inner .top-mv_box .top-mv_box-hd .hd-strong {
    display: inline-block;
    font-size: 20px;
  }
  .top-mv-inner .top-mv_box .top-mv_box-hd br {
    display: none;
  }
  .top-mv-inner .top-mv_box a.simulation_btn {
    grid-area: simulation;
    width: auto;
    min-width: 0;
    height: 60px;
    padding: 0;
    margin-bottom: 0;
  }
  .top-mv-inner .top-mv_box a.simulation_btn .text {
    margin-left: 50%;
    font-size: 20px;
    transform: translate(-50%, 0);
  }
  .top-mv-inner .top-mv_box a.restart_btn {
    grid-area: restart;
    gap: 16px;
    width: auto;
    min-width: 0;
    height: 60px;
    padding: 0;
    font-size: 16px;
    text-align: left;
  }
  .top-mv-inner .top-mv_box a.restart_btn img {
    width: 18px;
  }
}
@media screen and (width <= 768px) {
  .top-mv .sp-only {
    display: block;
  }
  .top-mv .pc-only {
    display: none;
  }
  .top-mv-inner .top-mv_box .top-mv_box-hd br {
    display: block;
  }
  .top-mv-inner .top-mv_box a.simulation_btn {
    display: flex;
    justify-content: center;
  }
  .top-mv-inner .top-mv_box a.simulation_btn .text {
    position: relative;
    margin: auto;
    font-size: 14px;
    text-align: left;
    transform: none;
  }
  .top-mv-inner .top-mv_box a.restart_btn {
    font-size: 14px;
  }
}
@media screen and (width <= 500px) {
  .top-mv-inner .top-mv_box a.restart_btn {
    gap: 8px;
  }
  .top-mv-inner .top-mv_box a.restart_btn span br {
    display: block;
  }
}

.todays-rate {
  width: calc(100% - 60px);
  max-width: 1620px;
  padding: 13px;
  margin: 0 auto 48px;
  overflow-x: auto;
  background: #d5edff;
  border: 2px solid #fff;
  box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.15);
}
.todays-rate .sp-only {
  display: none;
}
.todays-rate-inner {
  display: flex;
  gap: 20px;
  align-items: center;
}
.todays-rate .hd_box {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-weight: bold;
  line-height: 1.4;
  color: #000064;
  white-space: nowrap;
}
.todays-rate .hd_box .hd {
  margin: 0;
  font-size: 18px;
}
.todays-rate .hd_box .date {
  font-size: 14px;
}
.todays-rate .rate-unit {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 6px 16px;
  white-space: nowrap;
  background: #fff;
  border: 1px solid #0091ff;
  border-radius: 12px;
}
.todays-rate .rate-unit:hover {
  opacity: 0.6;
}
.todays-rate .rate-unit .arrow {
  position: relative;
  display: inline-block;
  width: 1em;
  height: 0.8em;
}
.todays-rate .rate-unit .arrow::before, .todays-rate .rate-unit .arrow::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.todays-rate .rate-unit .arrow::before {
  transform: rotate(45deg) translate(-50%, 0);
}
.todays-rate .rate-unit .arrow::after {
  transform: rotate(-45deg) translate(-50%, 0);
}
.todays-rate .rate-unit .hd {
  padding-right: 20px;
  margin: 0;
  font-size: 18px;
  font-weight: bold;
  color: #000064;
  border-right: 1px solid #000064;
}
.todays-rate .rate-unit .currency_box {
  display: flex;
  gap: 10px;
  padding-left: 20px;
  font-weight: bold;
  line-height: 1.4;
  color: #000064;
}
.todays-rate .rate-unit .currency_box .currency {
  margin: 0;
  font-size: 14px;
}
.todays-rate .rate-unit .currency_box .currency .rate {
  color: #666;
}
.todays-rate .rate-unit .currency_box .unit {
  margin: 0;
  font-size: 12px;
  color: #666;
}
@media screen and (width <= 1080px) {
  .todays-rate .sp-only {
    display: block;
  }
  .todays-rate {
    width: calc(100% - 20px);
    margin-bottom: 30px;
  }
  .todays-rate-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .todays-rate-inner .hd_box {
    flex-direction: row;
    grid-column: 1/3;
    gap: 12px;
    align-items: baseline;
  }
  .todays-rate-inner .hd_box .hd {
    font-size: 16px;
  }
  .todays-rate-inner .hd_box .date {
    font-size: 12px;
    transform: translate(0, 2px);
  }
  .todays-rate-inner .rate-unit {
    gap: 0;
    padding: 6px 10px 6px 20px;
  }
  .todays-rate-inner .rate-unit .arrow {
    margin-left: auto;
  }
  .todays-rate-inner .rate-unit p.hd {
    padding-right: 10px;
    font-size: 12px;
    line-height: 18px;
  }
  .todays-rate-inner .rate-unit .currency_box {
    flex-direction: column;
    gap: 8px;
    padding-right: 8px;
    padding-left: 10px;
  }
  .todays-rate-inner .rate-unit .currency_box .currency {
    font-size: 12px;
    line-height: 1;
  }
  .todays-rate-inner .rate-unit .currency_box .unit {
    font-size: 10px;
  }
}

.top-news {
  padding: 44px 20px 60px;
  border-bottom: 1px solid #7f7fb1;
}
.top-news a span.arrow {
  position: relative;
  display: inline-block;
  margin-right: 18px;
}
.top-news a span.arrow::before, .top-news a span.arrow::after {
  position: absolute;
  top: -6px;
  left: 6px;
  display: block;
  width: 6px;
  height: 1px;
  content: "";
  background: #1746ff;
}
.top-news a span.arrow::before {
  right: -18px;
  transform: rotate(45deg) translate(-50%, 0);
}
.top-news a span.arrow::after {
  right: -18px;
  transform: rotate(-45deg) translate(-50%, 0);
}
.top-news .top-section-inner {
  display: flex;
  gap: 36px;
  max-width: 1620px;
  margin: 0 auto;
}
.top-news .top-section-inner .top-news_box {
  flex: 1;
  min-width: 0;
  padding: 30px 24px 37px;
  border: 1px solid #000064;
}
.top-news .top-section-inner .top-news_box .box-header {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  padding-left: 16px;
  margin-bottom: 31px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1;
}
.top-news .top-section-inner .top-news_box .box-header::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 4px;
  height: 24px;
  content: "";
  background: #1746ff;
}
.top-news .top-section-inner .top-news_box .box-header > span {
  width: 180px;
}
.top-news .top-section-inner .top-news_box .box-header a {
  width: 225px;
  padding-right: 18px;
  margin-left: auto;
  font-size: 18px;
  text-align: right;
}
.top-news .top-section-inner .top-news_box .box-header a span {
  position: relative;
}
.top-news .top-section-inner .top-news_box .box-header a span::before {
  position: absolute;
  top: 50%;
  right: -18px;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
  transform: translateY(3px) rotate(-45deg);
}
.top-news .top-section-inner .top-news_box .box-header a span::after {
  position: absolute;
  top: 50%;
  right: -18px;
  width: 8px;
  height: 1px;
  content: "";
  background: #1746ff;
  transform: translateY(-3px) rotate(45deg);
}
.top-news .top-section-inner .top-news_box .box-header a:hover {
  color: #00e;
  text-decoration: underline;
}
.top-news .top-section-inner .top-news_box .news-list li {
  padding-bottom: 12px;
  margin-bottom: 16px;
  line-height: 1.2;
  border-bottom: 1px solid #d9d9d9;
}
.top-news .top-section-inner .top-news_box .news-list li:last-child {
  margin-bottom: 0;
}
.top-news .top-section-inner .top-news_box .news-list li a:hover {
  color: #00e;
}
.top-news .top-section-inner .top-news_box .news-list li .news-date {
  margin-bottom: 8px;
  font-size: 16px;
  line-height: 1;
  color: #4d4d4d;
}
@media screen and (width <= 768px) {
  .top-news {
    padding: 0 10px 30px;
  }
  .top-news .top-section-inner {
    flex-direction: column;
    gap: 20px;
  }
  .top-news .top-section-inner .top-news_box {
    padding: 20px 10px;
  }
  .top-news .top-section-inner .top-news_box .box-header {
    margin-bottom: 20px;
    font-size: 20px;
  }
  .top-news .top-section-inner .top-news_box .box-header::before {
    height: 20px;
  }
  .top-news .top-section-inner .top-news_box .box-header a {
    font-size: 16px;
  }
  .top-news .top-section-inner .top-news_box .news-list li {
    padding-bottom: 0;
    margin-bottom: 16px;
    border-bottom: none;
  }
  .top-news .top-section-inner .top-news_box .news-list li .news-date {
    font-size: 16px;
  }
}

.insurance-info {
  width: calc(100% - 60px);
  max-width: 1620px;
  margin: 0 auto 48px;
}
.insurance-info .sp-only {
  display: none;
}
.insurance-info-header {
  padding-bottom: 16px;
  margin-bottom: 24px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2;
  border-bottom: 1px solid #000064;
}
.insurance-info .insurance-info-wrapper {
  display: grid;
  grid-template-columns: 60% 1fr;
  gap: 24px;
}
.insurance-info .insurance-info-wrapper .insurance-link {
  position: relative;
  display: block;
  width: calc(100% - 80px);
  margin: 0 auto 24px;
  overflow: hidden;
  font-weight: bold;
  line-height: 1.6;
  color: #000;
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.insurance-info .insurance-info-wrapper .insurance-link:last-child {
  margin-bottom: 0;
}
.insurance-info .insurance-info-wrapper .insurance-link:hover {
  opacity: 1;
}
.insurance-info .insurance-info-wrapper .insurance-link:hover span {
  opacity: 0.6;
}
.insurance-info .insurance-info-wrapper .insurance-link span {
  pointer-events: none;
}
.insurance-info .insurance-info-wrapper .insurance-link span.text br {
  display: none;
}
.insurance-info .insurance-info-wrapper .insurance-link span.deco_icon {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 80px;
  background: #daf4ff;
  border-radius: 11px 0 30px;
}
.insurance-info .insurance-info-wrapper .insurance-link span.deco_icon img {
  width: 46px;
  height: 46px;
}
.insurance-info .insurance-info-wrapper .insurance-link span.arrow_icon {
  position: absolute;
  top: 50%;
  right: 24px;
  width: 32px;
  height: 32px;
  background: #000064;
  border-radius: 32px;
  transform: translateY(-50%);
}
.insurance-info .insurance-info-wrapper .insurance-link span.arrow_icon::before, .insurance-info .insurance-info-wrapper .insurance-link span.arrow_icon::after {
  position: absolute;
  left: 53%;
  width: 8px;
  height: 2px;
  pointer-events: none;
  content: "";
  background: #fff;
}
.insurance-info .insurance-info-wrapper .insurance-link span.arrow_icon::before {
  top: 40%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.insurance-info .insurance-info-wrapper .insurance-link span.arrow_icon::after {
  top: 58%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.insurance-info .insurance-info-wrapper .insurance-main {
  padding: 48px 0 40px;
  background: #b8f0ff;
}
.insurance-info .insurance-info-wrapper .insurance-main-hd {
  padding: 22px 0;
  margin-bottom: 48px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color: #000064;
  text-align: center;
  background: #eafaff;
}
.insurance-info .insurance-info-wrapper .insurance-main .insurance-link {
  display: flex;
  align-items: center;
  height: 152px;
  font-size: 28px;
  line-height: 1.2;
}
@media screen and (width <= 1420px) {
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link {
    font-size: 24px;
  }
}
.insurance-info .insurance-info-wrapper .insurance-main .insurance-link .deco_icon {
  width: 17%;
  max-width: 120px;
  height: 80px;
}
.insurance-info .insurance-info-wrapper .insurance-main .insurance-link .text {
  display: inline-block;
  width: 100%;
  text-align: center;
  white-space: nowrap;
}
.insurance-info .insurance-info-wrapper .insurance-main .insurance-link .text br {
  display: none;
}
.insurance-info .insurance-info-wrapper .insurance-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px 40px;
  background: #b8f0ff;
}
.insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link {
  display: flex;
  align-items: center;
  width: 100%;
  height: 112px;
  font-size: 28px;
}
@media screen and (width <= 1420px) {
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link {
    font-size: clamp(20px, 1.5vw, 28px);
  }
}
.insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .deco_icon {
  width: 26.3%;
  max-width: 120px;
  height: 80px;
}
.insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .text {
  display: flex;
  align-items: center;
  margin-left: 30%;
  line-height: 1.2;
  white-space: nowrap;
}
.insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .text br {
  display: block;
}
@media screen and (width <= 1080px) {
  .insurance-info {
    width: calc(100% - 20px);
    margin: 0 auto 30px;
  }
  .insurance-info-header {
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 22px;
  }
  .insurance-info .insurance-info-wrapper {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
  }
  .insurance-info .insurance-info-wrapper .insurance-main {
    width: 100%;
    padding-top: 13px;
    padding-bottom: 15px;
  }
  .insurance-info .insurance-info-wrapper .insurance-main-hd {
    padding: 8px 0;
    margin-bottom: 22px;
    font-size: 20px;
  }
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% - 20px);
    height: 80px;
    padding: 0;
    font-size: 18px;
  }
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link .deco_icon {
    width: 18%;
    max-width: 64px;
    height: 40px;
    border-radius: 7px 0 15px;
  }
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link .deco_icon img {
    width: 24px;
    height: 24px;
  }
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link .text {
    margin-left: unset;
    line-height: 1.2;
    text-align: center;
  }
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link .text br {
    display: none;
  }
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link .arrow_icon {
    width: 24px;
    height: 24px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list {
    flex-flow: row wrap;
    gap: 10px;
    justify-content: center;
    padding: 15px 10px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item {
    width: calc(50% - 5px);
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link {
    display: grid;
    grid-template-columns: 80% 1fr;
    row-gap: 16px;
    padding: 0 0 18px;
    font-size: 18px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .deco_icon {
    position: static;
    grid-column: 1/3;
    align-self: start;
    width: 26.3%;
    max-width: 64px;
    height: 40px;
    border-radius: 7px 0 15px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .deco_icon img {
    width: 24px;
    height: 24px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .text {
    margin-left: 18px;
    line-height: 1.5;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .text br {
    display: none;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .arrow_icon {
    position: static;
    width: 24px;
    height: 24px;
    margin-right: 24px;
    margin-left: auto;
    transform: translate(0, 0);
  }
}
@media screen and (width <= 768px) {
  .insurance-info .insurance-info-wrapper .insurance-main .insurance-link span.text br {
    display: block;
  }
  .insurance-info .insurance-info-wrapper .insurance-link span.text br {
    display: block;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link {
    display: grid;
    grid-template-areas: "deco deco" "text arrow";
    grid-template-columns: 8fr 2fr;
    align-items: center;
    height: 100%;
    padding-bottom: 10px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .text {
    display: flex;
    grid-area: text;
    align-items: center;
    padding-left: 10px;
    margin-left: unset;
    line-height: 1.2;
    text-align: left;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .text br {
    display: block;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .deco_icon {
    position: static;
    display: flex;
    grid-area: deco;
    align-items: center;
    align-self: start;
    justify-content: center;
    width: 26.3%;
    max-width: 64px;
    height: 40px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .deco_icon img {
    width: 24px;
    height: 24px;
  }
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link .arrow_icon {
    position: static;
    display: flex;
    grid-area: arrow;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    transform: translate(0, 0);
  }
}
@media screen and (width <= 500px) {
  .insurance-info .insurance-info-wrapper .insurance-list .insurance-item .insurance-link span.arrow_icon {
    margin-right: 10px;
  }
}

.contractor-service {
  width: calc(100% - 60px);
  max-width: 1620px;
  margin: 0 auto 70px;
}
.contractor-service-header {
  padding-bottom: 16px;
  margin-bottom: 24px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  border-bottom: 1px solid #000064;
}
.contractor-service .contractor-service-wrapper {
  display: flex;
  padding: 30px 40px;
  background: #99d3ff;
}
.contractor-service .contractor-service-wrapper .contractor-service-list {
  display: flex;
  gap: 22px;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item {
  width: 33.3333333333%;
  overflow: hidden;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.25);
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 176px;
  overflow: hidden;
  font-weight: bold;
  line-height: 1.6;
  color: #000;
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link:hover {
  opacity: 1;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link:hover span {
  opacity: 0.6;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span {
  pointer-events: none;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.deco_icon {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25%;
  max-width: 120px;
  height: 41%;
  max-height: 80px;
  background: #daf4ff;
  border-radius: 11px 0 30px;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.deco_icon img {
  width: 50%;
  max-width: 68px;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.arrow_icon {
  position: absolute;
  top: 50%;
  right: 24px;
  width: 32px;
  height: 32px;
  background: #000064;
  border-radius: 32px;
  transform: translateY(-50%);
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.arrow_icon::before, .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.arrow_icon::after {
  position: absolute;
  left: 53%;
  width: 8px;
  height: 2px;
  pointer-events: none;
  content: "";
  background: #fff;
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.arrow_icon::before {
  top: 40%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.arrow_icon::after {
  top: 58%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.text {
  font-size: 24px;
  line-height: 1.2;
}
@media screen and (width <= 1420px) {
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.text {
    font-size: clamp(20px, 1.5vw, 24px);
  }
}
@media screen and (width <= 1080px) {
  .contractor-service {
    width: calc(100% - 20px);
    margin: 0 auto 30px;
  }
  .contractor-service-header {
    padding-bottom: 8px;
    margin-bottom: 20px;
    font-size: 22px;
  }
  .contractor-service .contractor-service-wrapper {
    flex-direction: column;
    gap: 20px;
    width: 100%;
    padding: 26px 10px;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list {
    flex-direction: column;
    gap: 20px;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item {
    width: 100%;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link {
    height: 80px;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.text {
    font-size: 18px;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.text br {
    display: none;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.deco_icon {
    width: 60px;
    height: 40px;
    border-radius: 5px 0 20px;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.deco_icon img {
    width: 24px;
    height: 24px;
  }
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.arrow_icon {
    width: 24px;
    height: 24px;
  }
}
@media screen and (width <= 500px) {
  .contractor-service .contractor-service-wrapper .contractor-service-list .contractor-service-item .contractor-service-link span.text br {
    display: block;
  }
}

.c-accordion__panel[hidden] {
  display: none;
}
.c-accordion__panel.is-open {
  display: block;
}
.c-accordion__panel .c-accordion__panel-notice img {
  width: 100%;
}
.c-accordion__panel-button_box {
  display: grid;
  grid-template: "hd hd" 1fr "simulation restart" auto/5fr 4fr;
  gap: 13px 8px;
  width: calc(100% - 32px);
  margin: 16px 0 0 16px;
  border-radius: 28px 0;
}
.c-accordion__panel-button_box .c-accordion__panel_btn_box-hd {
  grid-area: hd;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  color: #1746ff;
  text-align: left;
  border: none;
}
.c-accordion__panel-button_box .c-accordion__panel_btn_box-hd br {
  display: none;
}
.c-accordion__panel-button_box .simulation_btn {
  position: relative;
  box-sizing: border-box;
  display: flex;
  grid-area: simulation;
  gap: 8px;
  align-items: center;
  width: auto;
  width: 100%;
  height: 55px;
  padding: 10px 8px 11px;
  text-align: center;
  background: linear-gradient(90deg, rgb(207, 245, 255) 0%, rgb(181, 240, 255) 39%, rgb(78, 218, 255) 100%);
  border: 2px solid #fff;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.c-accordion__panel-button_box .simulation_btn:hover {
  opacity: 0.6;
}
.c-accordion__panel-button_box .simulation_btn .text {
  display: inline-block;
  width: 100%;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.2;
  color: #000064;
  text-align: center;
}
.c-accordion__panel-button_box .restart_btn {
  box-sizing: border-box;
  display: flex;
  grid-area: restart;
  gap: 8px;
  align-items: center;
  justify-content: center;
  padding: 10px 6px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #000064;
  text-align: left;
  background: #e8e8e8;
  border: 2px solid #fff;
  border-radius: 6px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.c-accordion__panel-button_box .restart_btn:hover {
  opacity: 0.6;
}
.c-accordion__panel-button_box .restart_btn br {
  display: none;
}
.c-accordion__panel-button_box .restart_btn img {
  width: 18px;
  height: 18px;
}
.c-accordion__trigger.is-open {
  font-weight: bold;
}
.c-accordion .c-accordion-content {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: stretch;
  max-width: 1140px;
  margin: 0 auto;
}
.c-accordion .c-accordion-content-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 212px;
  min-height: 80px;
  padding: 12px 8px;
  border: 1px solid #c3c3c3;
  border-radius: 6px;
}
.c-accordion.sort {
  overflow: hidden;
  border: 1px solid rgba(64, 64, 139, 0.3);
  border-radius: 6px;
}
.c-accordion.sort:has(.c-accordion__panel.is-open) {
  border: 1px solid rgb(64, 64, 139);
}
.c-accordion.sort .c-accordion__trigger {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 9px 0;
  margin: auto;
  font-size: 20px;
  font-weight: bold;
  color: #999;
  background: #f2f2f7;
  border-color: #9999c1;
}
.c-accordion.sort .c-accordion__trigger.is-open {
  color: #000;
  background: #ededf4;
}
.c-accordion.sort .c-accordion__trigger.is-open img {
  opacity: 1;
  transform: rotate(0deg);
}
.c-accordion.sort .c-accordion__trigger img {
  transform: rotate(180deg);
  transition: transform 0.3s ease;
}
.c-accordion.sort .c-accordion__panel {
  padding: 16px 15px;
  background: #fff;
}
.c-accordion.sort .c-accordion__panel .c-accordion-header {
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: bold;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content {
  max-width: 1140px;
  margin: 0 auto 25px;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content:last-child {
  margin-bottom: 0;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background-color: #fff;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item:hover {
  padding: 10px 8px;
  border-color: #7f99ff;
  border-width: 2px;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item.is-checked {
  background-color: #f1f4ff;
  opacity: 1;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item-inner {
  display: flex;
  align-items: center;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item-inner input[type=radio] {
  margin-right: 8px;
  margin-left: 0;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item-inner label {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  padding: 8px 0;
  cursor: pointer;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item-inner label span {
  display: inline-block;
  flex: 1;
  font-size: 22px;
  line-height: 1.2;
  text-align: left;
}
.c-accordion.sort .c-accordion__panel .c-accordion-content.two-divisions .c-accordion-content-item {
  width: calc((100% - 20px) / 2);
}
.c-accordion.sort .c-accordion__panel .c-accordion-content.three-divisions .c-accordion-content-item {
  width: calc((100% - 40px) / 3);
}
.c-accordion.sort .c-accordion__panel .c-accordion-content.four-divisions .c-accordion-content-item {
  width: calc((100% - 60px) / 4);
}
@media screen and (width <= 1212px) {
  .c-accordion.sort .c-accordion-content {
    gap: 20px;
  }
  .c-accordion.sort .c-accordion-content .c-accordion-content-item {
    width: calc((100% - 40px) / 3);
  }
}
@media screen and (width <= 768px) {
  .c-accordion.sort .c-accordion__panel .c-accordion__trigger {
    height: 59px;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-header {
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 1;
    text-align: center;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion__panel {
    padding: 20px 32px;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content {
    flex-direction: column;
    gap: 16px;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content.three-divisions, .c-accordion.sort .c-accordion__panel .c-accordion-content.kinds {
    flex-flow: row wrap;
    align-items: stretch;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content.three-divisions .c-accordion-content-item, .c-accordion.sort .c-accordion__panel .c-accordion-content.kinds .c-accordion-content-item {
    width: calc(50% - 8px);
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item {
    width: 100%;
    min-height: 50px;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item.sp-100 {
    width: 100%;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item .c-accordion-content-item-inner label span {
    max-width: none;
  }
  .c-accordion.sort .c-accordion__panel .c-accordion-content .c-accordion-content-item .c-accordion-content-item-inner label span br {
    display: none;
  }
}

@media screen and (width <= 500px) {
  .c-accordion__panel-button_box .c-accordion__panel_btn_box-hd br {
    display: block;
  }
  .c-accordion__panel-button_box .restart_btn br {
    display: block;
  }
}
html:not(.js-acc-inited) .c-accordion.sort [data-acc-panel] {
  visibility: hidden;
}

.c-shere-button {
  position: fixed;
  top: 186px;
  right: 0;
  z-index: 1;
  height: 0;
}
.c-shere-button img {
  width: 60px;
}

.c_table-wrap {
  overflow-x: auto;
}

.c_table {
  width: 100%;
  border-collapse: collapse;
}
.c_table th,
.c_table td {
  padding: 12px 16px;
  vertical-align: middle;
  text-align: center;
  border: 1px solid #ddd;
}
.c_table th.bg,
.c_table td.bg {
  background: #f4f4f8;
}
.c_table th.bold,
.c_table td.bold {
  font-weight: bold;
}
.c_table.cross-rate thead tr td {
  max-width: 300px;
}
.c_table.cross-rate th,
.c_table.cross-rate td {
  width: 25%;
  max-width: 300px;
  white-space: nowrap;
}
.c_table.cross-rate th.border_bottom,
.c_table.cross-rate td.border_bottom {
  border-bottom: 1px solid #666;
}
.c_table.cross-rate th.day,
.c_table.cross-rate td.day {
  width: 150px;
}
.c_table.cross-rate th.currency,
.c_table.cross-rate td.currency {
  width: 150px;
}
.c_table.cross-rate th.sticky,
.c_table.cross-rate td.sticky {
  position: sticky;
  left: 0;
  z-index: 1;
}
.c_table.cross-rate th.sticky-rate,
.c_table.cross-rate td.sticky-rate {
  position: sticky;
  left: 149px;
  z-index: 2;
}
.c_table.cross-rate th.sticky-rate::before,
.c_table.cross-rate td.sticky-rate::before {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 1px;
  height: 100%;
  content: "";
  background: #d9d9d9;
}
.c_table.cross-rate th.sticky-rate::after,
.c_table.cross-rate td.sticky-rate::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1px;
  height: 100%;
  content: "";
  background: #d9d9d9;
}
.c_table.cross-rate td {
  padding: 10px 12px;
}
@media screen and (width <= 1080px) {
  .c_table.cross-rate th.day,
  .c_table.cross-rate td.day {
    width: 90px;
  }
  .c_table.cross-rate th.currency,
  .c_table.cross-rate td.currency {
    width: 90px;
  }
  .c_table.cross-rate th.sticky,
  .c_table.cross-rate td.sticky {
    position: sticky;
    left: 0;
    z-index: 1;
  }
  .c_table.cross-rate th.sticky-rate,
  .c_table.cross-rate td.sticky-rate {
    position: sticky;
    left: 89px;
    z-index: 2;
  }
  .c_table.cross-rate td.sticky-heading span {
    position: sticky;
    left: 190px;
    z-index: 1;
    display: inline-block;
    text-align: left;
  }
}
.c_table.cross-rate-one-currency {
  min-width: 840px;
  table-layout: fixed;
}
.c_table.cross-rate-one-currency th,
.c_table.cross-rate-one-currency td {
  white-space: nowrap;
}
.c_table.cross-rate-one-currency th.day,
.c_table.cross-rate-one-currency td.day {
  width: 150px;
}
.c_table.cross-rate-one-currency th.currency,
.c_table.cross-rate-one-currency td.currency {
  width: 150px;
}
.c_table.cross-rate-one-currency td:not(.day, .currency) {
  width: calc((100% - 300px) / 4);
}
@media screen and (width <= 1080px) {
  .c_table.cross-rate-one-currency {
    min-width: 700px;
  }
  .c_table.cross-rate-one-currency th.day,
  .c_table.cross-rate-one-currency td.day {
    width: 90px;
  }
  .c_table.cross-rate-one-currency th.currency,
  .c_table.cross-rate-one-currency td.currency {
    width: 90px;
  }
  .c_table.cross-rate-one-currency td.sticky-heading span {
    position: sticky;
    left: 190px;
    z-index: 1;
    display: inline-block;
    text-align: left;
  }
}
@media screen and (width <= 768px) {
  .c_table th,
  .c_table td {
    padding: 8px 4px;
    font-size: 14px;
    line-height: 1.2;
  }
}

.c-to-top-button {
  position: fixed;
  right: 5px;
  bottom: 30px;
  z-index: 100;
  display: flex;
  flex-direction: column;
  gap: 3px;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  padding-top: 4px;
  font-size: 14px;
  font-weight: bold;
  pointer-events: none;
  background: #fff;
  border: 1px solid #000064;
  border-radius: 100%;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  opacity: 0;
  transition: opacity 0.2s;
}
.c-to-top-button.is-visible {
  pointer-events: auto;
  opacity: 1;
}

.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper {
  position: relative;
  display: flex;
  gap: 24px;
  align-items: center;
  margin-bottom: 16px;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-accordion-header {
  width: 160px;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: bold;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-label {
  display: flex;
  gap: 4px;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  color: #1746ff;
  cursor: pointer;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content {
  position: absolute;
  top: -11px;
  left: 330px;
  z-index: 0;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  gap: 4px;
  width: auto;
  max-width: 594px;
  padding: 12px 16px;
  font-size: 14px;
  line-height: 1.2;
  color: #333;
  pointer-events: none;
  background-color: #ffe6b1;
  border-radius: 8px;
  opacity: 0;
  transition: opacity 0.4s;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content.long {
  padding: 4px 16px;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content-line {
  display: flex;
  gap: 4px;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content-line-hd {
  white-space: nowrap;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content.is-visible {
  visibility: visible;
  opacity: 1;
}
.c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content::before {
  position: absolute;
  top: 24%;
  left: -30px;
  z-index: 1;
  display: block;
  width: 30px;
  height: 30px;
  content: "";
  background-image: url("/assets/images/icon/tooltip-arrow.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media screen and (width <= 768px) {
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-label {
    font-size: 12px;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-label img {
    width: 20px;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper {
    flex-wrap: wrap;
    row-gap: 0;
    align-items: center;
    justify-content: end;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-accordion-header {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
    max-width: unset;
    max-height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.4s ease;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content-line {
    display: flex;
    gap: 4px;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content-line-hd {
    white-space: nowrap;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content.is-visible {
    max-height: 700px;
    padding: 16px 15px;
    margin-top: 28px;
    overflow: visible;
    opacity: 1;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content::before {
    position: absolute;
    top: -30px;
    right: 60px;
    left: unset;
    z-index: 1;
    display: block;
    width: 30px;
    height: 30px;
    content: "";
    background-image: url("/assets/images/icon/tooltip-arrow.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transform: rotate(90deg);
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content span {
    font-size: 16px;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip-wrapper .c-tooltip-content span::before {
    left: 0;
    font-size: 16px;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip .c-tooltip_box {
    top: 40px;
    left: 0;
  }
  .c-accordion.sort .c-accordion__panel .c-tooltip .c-tooltip_box::before {
    top: -30px;
    left: 24px;
    transform: rotate(180deg);
  }
}
/*# sourceMappingURL=maps/style.css.map */

