@charset "UTF-8";
/* -----------------------------------------------------------------------
reset
------------------------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,700;1,700&display=swap");

html { scroll-behavior: smooth; }

body { line-height: 1; }

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

nav ul, li { list-style: none; }

blockquote, q { quotes: none; }

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

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

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

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

del { text-decoration: line-through; }

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

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

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

input, select { vertical-align: middle; }

/* -----------------------------------------------------------------------
ress +
------------------------------------------------------------------------- */
audio:not([controls]) { display: none; height: 0; }

hr { overflow: visible; }

[hidden], template { display: none; }

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

a { background-color: transparent; -webkit-text-decoration-skip: objects; }

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

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

b, strong { font-weight: bolder; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

input { border-radius: 0; }

[type="number"] { width: auto; }

[type="search"] { -webkit-appearance: textfield; }

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

textarea { overflow: auto; resize: vertical; }

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

optgroup { font-weight: bold; }

button { overflow: visible; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: 0; padding: 0; }

/*focus style */
button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { outline: 1px dotted ButtonText; }

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

button, select { text-transform: none; }

button, input, select, textarea { background-color: transparent; border-style: none; color: inherit; }

select { -moz-appearance: none; -webkit-appearance: none; appearance: none; }

select::-ms-expand { display: none; }

select::-ms-value { color: currentColor; }

legend { border: 0; color: inherit; display: table; max-width: 100%; white-space: normal; }

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

::-webkit-input-placeholder { color: inherit; opacity: 0.54; }

[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }

img { border-style: none; }

progress { vertical-align: baseline; }

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

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

@media screen { [hidden~="screen"] { display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) { position: absolute !important; clip: rect(0 0 0 0) !important; } }
[aria-busy="true"] { cursor: progress; }

[aria-controls] { cursor: pointer; }

[aria-disabled] { cursor: default; }

::-moz-selection { background-color: #333; color: #fff; text-shadow: none; }

::selection { background-color: #333; color: #fff; text-shadow: none; }

/* -----------------------------------------------------------------------
add
------------------------------------------------------------------------- */
input[type="button"], input[type="submit"] { -webkit-appearance: none; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

::before, ::after { box-sizing: inherit; text-decoration: inherit; vertical-align: inherit; }

/*safari*/
* { min-height: 0vw; }

/*----------------------------------------------------------
Properties
-----------------------------------------------------------*/
:root { --bgBody: #fff; --txBody: #000; --pointCl01:#0E4069; --lineCl01:#dedede; --btnCl01:#0068B4; --btnCl01ov:#00C7FD; --navCl01:#0E4069; --navCl01ov:#0068B5; --linkCl01:#003F87; --linkCl01ov:#0068B4; --bgCl01:#EEEEEE; --bgCl02:#00C6FC; --bgCl03:#0068B4; --voiceCl01:#FFCA1A; --hdrH:80px; --hdrHsp:calc(80/750 * 100vw); --trTime: .5s; --spMaxW:350px; --radius:15px; --radiusSp:6px; }

@media screen and (min-width: 1160px) { .forPC { display: inherit !important; } }
@media screen and (min-width: 768px) and (max-width: 1159px) { .forPC { display: none; } }
@media screen and (max-width: 767px) { .forPC { display: none; } }

@media screen and (min-width: 1160px) { .forTB { display: none; } }
@media screen and (min-width: 768px) and (max-width: 1159px) { .forTB { display: inherit !important; } }
@media screen and (max-width: 767px) { .forTB { display: none; } }

@media screen and (min-width: 1160px) { .forTB2 { display: none; } }
@media screen and (min-width: 768px) and (max-width: 1159px) { .forTB2 { display: none; } }
@media screen and (min-width: 768px) and (max-width: 1159px) and (max-width: 999px) { .forTB2 { display: inherit !important; } }

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

@media screen and (min-width: 1160px) { .forSP { display: none; } }
@media screen and (min-width: 768px) and (max-width: 1159px) { .forSP { display: none; } }
@media screen and (max-width: 767px) { .forSP { display: inherit !important; } }

/*-----------------------------------------------------
font size
--------------------------------------------------------*/
html { font-size: 10px; }

body { font-size: 16px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { body { font-size: 1.5rem; } }
@media screen and (max-width: 767px) { body { font-size: 1.5rem; } }
@media screen and (max-width: 374px) { body { font-size: 1.4rem; } }

.wrapBoxW, #container.second section, #mainImage #mainImageIn, .wrapBox, footer #ftrIn { max-width: 100%; margin: 0 auto; padding-left: 30px; padding-right: 30px; }
@media screen and (max-width: 767px) { .wrapBoxW, #container.second section, #mainImage #mainImageIn, .wrapBox, footer #ftrIn { padding-left: 20px; padding-right: 20px; } }

/* box --1240px-----------*/
.wrapBoxW { width: 1220px; }

/* box --1180px-----------*/
#container.second section, #mainImage #mainImageIn, .wrapBox { width: 1160px; }

/*bold*/
/*heavy*/
body { font-family: 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 400; }

input { font-family: 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 400; }

.font01 { font-family: "Open Sans", sans-serif; font-weight: 700; font-style: normal; }

.fontDef { font-family: 'Noto Sans JP',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 400; }

/*-------------------------------------------------------------------- title
---------------------------------------------------------------------*/
/* blue bg
-----------------------------*/
.cTitBg01, #container.second .faqPage h2 { margin-bottom: 40px; padding: 10px 20px; background-color: var(--bgCl02); color: var(--pointCl01); font-size: clamp(16px, 2.414vw, 28px); font-weight: 900; line-height: calc(45/28); text-align: left; }
@media screen and (max-width: 767px) { .cTitBg01, #container.second .faqPage h2 { padding: 10px 10px; margin-bottom: 30px; } }

/* gray bg
-----------------------------*/
.cTitBg02, #container section .faqBox h3, #container.second .companyPage h2, #container.second .pageType01 h2 { margin-bottom: 15px; padding: 10px 20px; background-color: var(--bgCl01); color: var(--pointCl01); font-size: clamp(14px, 1.724vw, 20px); font-weight: 700; line-height: calc(25/20); text-align: left; }
@media screen and (max-width: 767px) { .cTitBg02, #container section .faqBox h3, #container.second .companyPage h2, #container.second .pageType01 h2 { margin-bottom: 10px; padding: 8px 15px; } }

/* bold only
-----------------------------*/
.cTitBd01, #container.second .pageType01 h3 { margin-bottom: 5px; padding: 5px 20px; font-size: clamp(14px, 1.724vw, 20px); font-weight: 700; line-height: calc(25/20); text-align: left; }
@media screen and (max-width: 767px) { .cTitBd01, #container.second .pageType01 h3 { padding: 5px 0; } }

/*-------------------------------------------------------------------- text
---------------------------------------------------------------------*/
/* sp common
------------------------------------------------------*/
/* link
------------------------------------------------------*/
#container.second section p, #container.second section li, #container.second section td, #container.second section dd { word-break: break-all; }
#container.second section p a, #container.second section li a, #container.second section td a, #container.second section dd a { color: var(--linkCl01); text-decoration: underline; }
#container.second section p a:hover, #container.second section li a:hover, #container.second section td a:hover, #container.second section dd a:hover { color: var(--linkCl01ov); text-decoration: none; }

/*-------------------------------------------------------------------- list
---------------------------------------------------------------------*/
/* normal mark
------------------------------------------------------*/
ul.cList01 > li { padding-left: 1.2em; position: relative; }
ul.cList01 > li::before { content: "・"; position: absolute; top: 0; left: 0; }

/* ※ list
------------------------------------------------------*/
ul.cListAt01 > li, #mainImage #mainImageIn .mainImgBox ul > li { padding-left: 1.2em; position: relative; }
ul.cListAt01 > li::before, #mainImage #mainImageIn .mainImgBox ul > li::before { content: "※"; position: absolute; top: 0; left: 0; }

/* numberlist
------------------------------------------------------*/
/*(num)*/
ol.cListNum01 { counter-reset: num01; }
ol.cListNum01 > li { padding-left: 2em; position: relative; }
ol.cListNum01 > li::before { counter-increment: num01; content: "(" counter(num01) ")"; position: absolute; top: 0; left: 0; }

/*num0*/
ol.cListNum02 { counter-reset: num02; }
ol.cListNum02 > li { padding-left: 1.5em; position: relative; }
ol.cListNum02 > li::before { counter-increment: num02; content: counter(num02) "."; position: absolute; top: 0; left: 0; }

/*maru*/
ol.cListNum03 { counter-reset: num03; }
ol.cListNum03 > li { padding-left: 1.2em; position: relative; }
ol.cListNum03 > li::before { counter-increment: num03; content: counter(num03); border: var(--txBody) 1px solid; border-radius: 50vw; display: flex; justify-content: center; align-items: center; width: 1.2em; height: 1.2em; font-size: 0.8em; line-height: calc(14/8); position: absolute; top: 0; left: 0; margin-top: 0.4em; }

/*-------------------------------------------------------------------- table
---------------------------------------------------------------------*/
table.cTb01 { width: 100%; border-top: var(--lineCl01) 1px solid; }
table.cTb01 th, table.cTb01 td { border-bottom: var(--lineCl01) 1px solid; padding: 25px 0; text-align: left; vertical-align: top; position: relative; }
table.cTb01 th { font-weight: 500; }
@media screen and (max-width: 767px) { table.cTb01 th, table.cTb01 td { display: list-item; list-style-type: none; font-size: 1.4rem; line-height: 2; padding: 15px 0; }
  table.cTb01 th { border-bottom: none; padding-bottom: 0; }
  table.cTb01 td { padding-top: 0; } }

/*-------------------------------------------------------------------- btn
---------------------------------------------------------------------*/
/* cBtnMaru01 */
.cBtnMaru01, #mainImage #mainImageIn .mainImgBox .btn, #container.toppage #topBox06 .box06In .box06InR .btn, .cBtnMaru01--01, #container.toppage #topBox07 .btn, .cBtnMaru01--02, #container.toppage #topBoxFaq .btn { padding-bottom: 30px; }
.cBtnMaru01 a, #mainImage #mainImageIn .mainImgBox .btn a, #container.toppage #topBox06 .box06In .box06InR .btn a, .cBtnMaru01--01 a, #container.toppage #topBox07 .btn a, .cBtnMaru01--02 a, #container.toppage #topBoxFaq .btn a { display: block; width: 500px; height: 70px; max-width: 100%; margin: 0 auto; background-color: var(--btnCl01); border-radius: 50vw; position: relative; pointer-events: all; box-shadow: 0px 10px 0px 0px #ccc; }
.cBtnMaru01 a:hover, #mainImage #mainImageIn .mainImgBox .btn a:hover, #container.toppage #topBox06 .box06In .box06InR .btn a:hover, .cBtnMaru01--01 a:hover, #container.toppage #topBox07 .btn a:hover, .cBtnMaru01--02 a:hover, #container.toppage #topBoxFaq .btn a:hover { background-color: var(--btnCl01ov); }
.cBtnMaru01 a span, #mainImage #mainImageIn .mainImgBox .btn a span, #container.toppage #topBox06 .box06In .box06InR .btn a span, .cBtnMaru01--01 a span, #container.toppage #topBox07 .btn a span, .cBtnMaru01--02 a span, #container.toppage #topBoxFaq .btn a span { display: block; width: 100%; text-align: center; font-size: clamp(15px, 2.586vw, 30px); font-weight: 900; color: #fff; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.cBtnMaru01--01 a, #container.toppage #topBox07 .btn a { height: 95px; box-shadow: 0px 10px 0px 0px #009ec9; }
.cBtnMaru01--01 a span, #container.toppage #topBox07 .btn a span { font-size: clamp(21px, 3.448vw, 40px); }
.cBtnMaru01--02 a, #container.toppage #topBoxFaq .btn a { width: 345px; height: 48px; box-shadow: 0px 0px 0px 0px #ccc; }
.cBtnMaru01--02 a span, #container.toppage #topBoxFaq .btn a span { font-size: clamp(16px, 1.724vw, 20px); }
@media screen and (max-width: 767px) { .cBtnMaru01, #mainImage #mainImageIn .mainImgBox .btn, #container.toppage #topBox06 .box06In .box06InR .btn, .cBtnMaru01--01, #container.toppage #topBox07 .btn, .cBtnMaru01--02, #container.toppage #topBoxFaq .btn { padding-bottom: 15px; }
  .cBtnMaru01 a, #mainImage #mainImageIn .mainImgBox .btn a, #container.toppage #topBox06 .box06In .box06InR .btn a, .cBtnMaru01--01 a, #container.toppage #topBox07 .btn a, .cBtnMaru01--02 a, #container.toppage #topBoxFaq .btn a { width: 66.6667vw; height: 9.3333vw; box-shadow: 0px 5px 0px 0px #ccc; }
  .cBtnMaru01--01 a, #container.toppage #topBox07 .btn a { height: 12.6667vw; box-shadow: 0px 5px 0px 0px #009ec9; }
  .cBtnMaru01--02 a, #container.toppage #topBoxFaq .btn a { width: 74.6667vw; height: 9.3333vw; box-shadow: 0px 0px 0px 0px #ccc; } }

/*-------------------------------------------------------------------- other
---------------------------------------------------------------------*/
header h1 a, footer #ftrIn .logo a, .spNav .logo a, header h1 span, footer #ftrIn .logo span, .spNav .logo span { display: block; width: 100%; height: 100%; position: relative; overflow: hidden; white-space: nowrap; text-indent: 101%; }
header h1 a::before, footer #ftrIn .logo a::before, .spNav .logo a::before, header h1 span::before, footer #ftrIn .logo span::before, .spNav .logo span::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; background-position: left center; background-image: url("../images/logo.svg"); position: absolute; top: 0; left: 0; }

.anchor { display: block; padding-top: 100px; margin-top: -100px; }

/*-------------------------------------------------------------------- set
---------------------------------------------------------------------*/
/* faqBox
------------------------------*/
#container section .faqBox h3 { position: relative; padding-left: 60px; }
@media screen and (max-width: 767px) { #container section .faqBox h3 { padding-left: 40px; } }
#container section .faqBox h3 span { font-weight: 700; display: block; text-align: left; position: absolute; top: 0; left: 0; margin-left: 20px; margin-top: 10px; }
@media screen and (max-width: 767px) { #container section .faqBox h3 span { margin-left: 15px; margin-top: 8px; } }
#container section .faqBox .aBox + h3 { margin-top: 30px; }
@media screen and (max-width: 767px) { #container section .faqBox .aBox + h3 { margin-top: 15px; } }
#container section .faqBox .aBox { padding-left: 60px; position: relative; }
@media screen and (max-width: 767px) { #container section .faqBox .aBox { padding-left: 40px; } }
#container section .faqBox .aBox > span { display: block; text-align: left; position: absolute; top: 0; left: 0; margin-left: 20px; }
@media screen and (max-width: 767px) { #container section .faqBox .aBox > span { margin-left: 15px; } }
#container section .faqBox .aBox p, #container section .faqBox .aBox > span { font-size: clamp(14px, 1.724vw, 20px); line-height: calc(28/20); }

/*-----------------------------------------------------
base setting
--------------------------------------------------------*/
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

.iphone body, .ipad body, .ipod body { cursor: pointer; }

*:focus { outline: none; }

body { background-color: var(--bgBody); color: var(--txBody); }

html, body { height: 100%; }

body { width: 100%; }

a { color: var(--txBody); text-decoration: none; transition: all var(--trTime); }

strong { font-weight: bold; }

img { font-size: 0; line-height: 0; max-width: 100%; height: auto; -webkit-backface-visibility: hidden; -ms-interpolation-mode: bicubic; }

#wrapper { position: relative; overflow: hidden; }

/* -----------------------------------------------------------------------
clearfix
------------------------------------------------------------------------- */
.wrapBoxW, #container.second section, #mainImage #mainImageIn, .wrapBox, footer #ftrIn, .clearfix, header, section { display: block; }
.wrapBoxW::after, #container.second section::after, #mainImage #mainImageIn::after, .wrapBox::after, footer #ftrIn::after, .wrapBoxW::before, #container.second section::before, #mainImage #mainImageIn::before, .wrapBox::before, footer #ftrIn::before, .clearfix::after, .clearfix::before, header::after, header::before, section::after, section::before { content: ""; display: block; clear: both; }

/*-------------------------------------------------------------------- header
---------------------------------------------------------------------*/
#wrapper { padding-top: var(--hdrH); }
@media screen and (max-width: 767px) { #wrapper { padding-top: var(--hdrHsp); min-height: 100vh; display: flex; flex-direction: column; } footer { margin-top: auto; } }

header { height: var(--hdrH); width: 100%; position: fixed; top: 0; left: 0; right: 0; background-color: #fff; z-index: 50; }
@media screen and (max-width: 767px) { header { height: var(--hdrHsp); } }
header h1 { width: 220px; height: 67px; overflow: hidden; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto auto auto 0; margin-left: 35px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { header h1 { width: 18.9655%; margin-left: 3.0172%; } }

@media screen and (max-width: 767px) { header h1 { width: 110px; height: 33.5px; margin-left: 25px; } }
header nav { margin-left: 280px; padding-right: 295px; padding-top: 20px; position: relative; }
header nav > ul { text-align: right; height: 40px; }
header nav > ul li { display: inline-block; }
header nav > ul li:nth-child(n + 2) { margin-left: 30px; }
header nav > ul li a { display: block; height: 40px; line-height: 40px; font-size: calc(18/16 * 1em); font-weight: 700; color: var(--navCl01); }
header nav > ul li a:hover { color: var(--navCl01ov); }
header nav .hdrBtn { width: 295px; position: absolute; right: 0; top: 20px; padding-left: 30px; padding-right: 25px; }
header nav .hdrBtn ul { display: block; }
header nav .hdrBtn ul::after, header nav .hdrBtn ul::before { content: ""; display: block; clear: both; }
header nav .hdrBtn ul li a { display: block; height: 40px; line-height: 40px; text-align: center; border-radius: 50vw; font-size: calc(18/16 * 1em); font-weight: 700; }
header nav .hdrBtn ul li.login { width: calc(120/240 * 100%); float: left; }
header nav .hdrBtn ul li.login a { background-color: var(--btnCl01); color: #fff; }
header nav .hdrBtn ul li.login a:hover { background-color: var(--btnCl01ov); }
header nav .hdrBtn ul li.application { width: calc(105/240 * 100%); float: right; }
header nav .hdrBtn ul li.application a { background-color: #EEEEEE; color: var(--navCl01); }
header nav .hdrBtn ul li.application a:hover { color: var(--navCl01ov); }
@media screen and (max-width: 999px) { header nav { margin-left: 24.1379%; padding-right: 260px; }
  header nav > ul li:nth-child(n + 2) { margin-left: 1.8vw; }
  header nav > ul li a { font-size: 1em; }
  header nav .hdrBtn { width: 270px; padding-left: 30px; padding-right: 25px; }
  header nav .hdrBtn ul li a { font-size: 1em; } }

@media screen and (max-width: 767px) { header h1 { width: 110px; height: 33.5px; margin-left: 25px; } }
header nav.logout { margin-left: 280px; padding-right: 215px; padding-top: 20px; position: relative; }
header nav.logout > ul { text-align: right; height: 40px; }
header nav.logout > ul li { display: inline-block; }
header nav.logout > ul li:nth-child(n + 2) { margin-left: 30px; }
header nav.logout > ul li a { display: block; height: 40px; line-height: 40px; font-size: calc(18/16 * 1em); font-weight: 700; color: var(--navCl01); }
header nav.logout > ul li a:hover { color: var(--navCl01ov); }
header nav.logout .hdrBtn { width: 200px; position: absolute; right: 0; top: 20px; padding-left: 30px; padding-right: 25px; }
header nav.logout .hdrBtn ul { display: block; }
header nav.logout .hdrBtn ul::after, header nav .hdrBtn ul::before { content: ""; display: block; clear: both; }
header nav.logout .hdrBtn ul li a { display: block; height: 40px; line-height: 40px; text-align: center; border-radius: 50vw; font-size: calc(18/16 * 1em); font-weight: 700; }
header nav.logout .hdrBtn ul li.application { width: 100%; float: right; }
header nav.logout .hdrBtn ul li.application a { background-color: #EEEEEE; color: var(--navCl01); }
header nav.logout .hdrBtn ul li.application a:hover { color: var(--navCl01ov); }
@media screen and (max-width: 999px) { header nav.logout { margin-left: 24.1379%; padding-right: 215px; }
  header nav.logout > ul li:nth-child(n + 2) { margin-left: 1.8vw; }
  header nav.logout > ul li a { font-size: 1em; }
  header nav.logout .hdrBtn { width: 200px; padding-left: 30px; padding-right: 25px; }
  header nav.logout .hdrBtn ul li a { font-size: 1em; } }


/*-------------------------------------------------------------------- footer
---------------------------------------------------------------------*/
footer { position: relative; padding-bottom: 20px; background-color: var(--bgCl01); }
footer .pagetop { display: none; height: 105px; padding-top: 30px; padding-bottom: 30px; position: fixed; bottom: 0; right: 0; margin-right: 45px; z-index: 3000; }
footer .pagetop a { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: 45px; height: 45px; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto 0 auto auto; }
footer .pagetop a::before, footer .pagetop a::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; position: absolute; top: 0; left: 0; transition: opacity var(--trTime); }
footer .pagetop a::before { background-image: url("../images/btn_pagetop.svg"); z-index: 5; opacity: 1; }
footer .pagetop a::after { background-image: url("../images/btn_pagetop_ov.svg"); z-index: 4; opacity: 0; }
footer .pagetop a:hover::before { opacity: 0; }
footer .pagetop a:hover::after { opacity: 1; }
footer #ftrIn { width: 1260px; padding-top: 50px; padding-bottom: 110px; }
footer #ftrIn .logo { width: 150px; height: 45px; overflow: hidden; float: left; }
footer #ftrIn nav { margin-left: 200px; }
footer #ftrIn nav ul { width: 750px; max-width: 100%; margin-right: auto; text-align: left; }
footer #ftrIn nav ul li { display: inline-block; margin-right: 1.3em; }
footer #ftrIn nav ul li a { font-size: calc(18/16 * 1em); line-height: calc(30/18); color: var(--navCl01); font-weight: normal;}
footer #ftrIn nav ul li a:hover { color: var(--navCl01ov); }
footer #copy p { padding-right: 20px; text-align: right; font-size: 1em; font-weight: normal}
@media screen and (max-width: 767px) { footer .pagetop { height: 13.3333vw; padding-top: 0; padding-bottom: 30px; margin-right: 15px; }
  footer .pagetop a { width: 8.4vw; height: 8.4vw; bottom: auto; margin-top: 0; }
  footer .pagetop.ftrin { transform: translateY(-100%); }
  footer #ftrIn { padding-top: 8vw; padding-bottom: 6.6667vw; }
  footer #ftrIn .logo { width: 20vw; height: 6vw; margin-bottom: 10px; float: none; }
  footer #ftrIn nav { margin-left: 0; }
  footer #ftrIn nav ul li a { font-size: 1.3rem; }
  footer #copy p { font-size: 1rem; } }

/*-------------------------------------------------------------------- topicspath
---------------------------------------------------------------------*/
#topicsPath { background-color: var(--bgCl01); padding: 20px 35px; }
#topicsPath ul { text-align: left; }
#topicsPath ul li { display: inline-block; font-size: clamp(12px, 1.552vw, 18px); line-height: calc(25/18); font-weight: normal;}
#topicsPath ul li:nth-child(n + 2)::before { content: "＞"; margin: 0 0.2em; }
#topicsPath ul li a { color: var(--navCl01); }
#topicsPath ul li a.logged-in { color: var(--linkCl01); text-decoration: underline; }
#topicsPath ul li a:hover { color: var(--navCl01ov); }
@media screen and (max-width: 767px) { #topicsPath { padding: 10px 20px; } }

/*-------------------------------------------------------------------- mainTitle
---------------------------------------------------------------------*/
#mainTitle { padding-top: 290px; padding-bottom: 135px; overflow: hidden; position: relative; }
#mainTitle .inner { padding-top: 290px; background-color: var(--bgCl02); position: absolute; top: 0; left: 0; right: 0; }
#mainTitle .inner::before, #mainTitle .inner::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; position: absolute; bottom: 0; }
#mainTitle .inner::before { width: 290px; padding-top: 189px; background-image: url("../images/title/pic_maintit_01.svg"); left: 0; margin-left: 76px; margin-bottom: -50px; }
#mainTitle .inner::after { width: 321px; padding-top: 204px; background-image: url("../images/title/pic_maintit_02.svg"); right: 0; margin-right: 50px; margin-bottom: -50px; }
#mainTitle .inner h1 { width: 100%; text-align: center; font-size: clamp(24px, 4.138vw, 48px); font-weight: 900; color: var(--pointCl01); position: absolute; top: 50%; transform: translateY(-50%); }
#mainTitle .inner h1 span { display: block; margin-top: 10px; font-size: calc(38/48 * 100%); font-weight: bold; }
#mainTitle.faq .inner::before { width: 283px; padding-top: 218px; background-image: url("../images/title/pic_maintit_faq_01.svg"); margin-left: 114px; margin-bottom: -50px; }
#mainTitle.faq .inner::after { width: 289px; padding-top: 235px; background-image: url("../images/title/pic_maintit_faq_02.svg"); margin-right: 77px; margin-bottom: -50px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #mainTitle { padding-top: 25%; padding-bottom: 11.6379%; }
  #mainTitle .inner { padding-top: 25%; }
  #mainTitle .inner::before { width: 25%; padding-top: 16.2931%; margin-left: 6.5517%; margin-bottom: -4.3103%; }
  #mainTitle .inner::after { width: 27.6724%; padding-top: 17.5862%; margin-right: 4.3103%; margin-bottom: -4.3103%; }
  #mainTitle.faq .inner::before { width: 24.3966%; padding-top: 18.7931%; margin-left: 9.8276%; margin-bottom: -4.3103%; }
  #mainTitle.faq .inner::after { width: 24.9138%; padding-top: 20.2586%; margin-right: 6.6379%; margin-bottom: -4.3103%; } }
@media screen and (max-width: 767px) { #mainTitle { padding-top: 38.6667%; padding-bottom: 16%; }
  #mainTitle .inner { padding-top: 38.6667%; }
  #mainTitle .inner::before { background-image: url("../images/title/pic_maintit_01_sp.svg"); width: 23.7333%; padding-top: 25.2%; margin-left: 2.6667%; margin-bottom: -9.3333%; }
  #mainTitle .inner::after { background-image: url("../images/title/pic_maintit_02_sp.svg"); width: 26.9333%; padding-top: 27.2%; margin-right: 2%; margin-bottom: -9.3333%; }
  #mainTitle.faq .inner::before { background-image: url("../images/title/pic_maintit_faq_01_sp.svg"); width: 25.7333%; padding-top: 25.7333%; margin-left: 2.6667%; margin-bottom: -9.3333%; }
  #mainTitle.faq .inner::after { background-image: url("../images/title/pic_maintit_faq_02_sp.svg"); width: 21.6%; padding-top: 31.3333%; margin-right: 1.7333%; margin-bottom: -9.3333%; } }

/*-------------------------------------------------------------------- container
---------------------------------------------------------------------*/
#container { overflow: hidden; }
#container.toppage section { padding-bottom: 60px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage section { padding-bottom: 5.1724%; } }
@media screen and (max-width: 767px) { #container.toppage section { padding-bottom: 9.3333%; } }
#container.second { padding-bottom: 100px; }
#container.second section { padding-bottom: 60px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.second { padding-bottom: 8.6207%; }
  #container.second section { padding-bottom: 5.1724%; } }
@media screen and (max-width: 767px) { #container.second { padding-bottom: 13.3333%; }
  #container.second section { padding-bottom: 9.3333%; } }

/* base
-----------------------*/
div[id="container"] section p, div[id="container"] section li, div[id="container"] section dt, div[id="container"] section dd, div[id="container"] section th, div[id="container"] section td { font-size: calc(18/16 * 1em); line-height: calc(28/18); text-align: left; }
@media screen and (max-width: 767px) { div[id="container"] section p, div[id="container"] section li, div[id="container"] section dt, div[id="container"] section dd, div[id="container"] section th, div[id="container"] section td { font-size: 1.5rem; line-height: calc(40/28) !important; } }
div[id="container"] p + * { margin-top: 30px; }
div[id="container"] ul + * { margin-top: 30px; }
div[id="container"] ol + * { margin-top: 30px; }
div[id="container"] dl + * { margin-top: 30px; }
div[id="container"] table + * { margin-top: 30px; }

/*===========================================
_drawer.scss
=============================================*/
/*!------------------------------------*\
    Base
\*!------------------------------------*/
.drawer-open { overflow: hidden !important; }

.drawer-nav { position: fixed; z-index: 9000; top: 0; overflow: hidden; width: calc(608/750 * 100%); height: 100%; color: var(--pointCl01); background-color: #fff; }

.drawer-menu { margin: 0; padding: 0; list-style: none; }

/*! overlay */
.drawer-overlay { position: fixed; z-index: 100; top: 0; left: 0; display: none; width: 100%; height: 100%; background-color: #0E4069; mix-blend-mode: multiply; }

.drawer-open .drawer-overlay { display: block; }

/*!------------------------------------*\
    Right
\*!------------------------------------*/
.drawer--right .drawer-nav { right: -100%; -webkit-transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1); transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1); }

.drawer--right.drawer-open .drawer-nav, .drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger { right: 0; }

.drawer--right.drawer-open .drawer-hamburger { /*right: 16.25rem;*/ }

/*!------------------------------------*\
    Hamburger
\*!------------------------------------*/
.drawer-hamburger { position: fixed; z-index: 1205; top: 0; right: 0; display: block; box-sizing: border-box; width: 55px; height: 40px; padding: 0 12px; background-color: transparent; -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); border: 0; outline: 0; margin-top: calc((var(--hdrHsp) - 40px)/2); }

.drawer-hamburger:hover { cursor: pointer; }

.drawer-hamburger-icon { position: relative; display: block; }

.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after { width: 100%; height: 3px; -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1); transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1); background-color: var(--btnCl01); }

.drawer-hamburger-icon:before, .drawer-hamburger-icon:after { position: absolute; top: -8px; left: 0; content: ' '; }

.drawer-hamburger-icon:after { top: 8px; }

.drawer-open .drawer-hamburger { position: fixed; background-color: #fff; }

.drawer-open .drawer-hamburger-icon { background-color: transparent; }

.drawer-open .drawer-hamburger-icon:before, .drawer-open .drawer-hamburger-icon:after { top: 0; background-color: #0068B5; }

.drawer-open .drawer-hamburger-icon:before { -webkit-transform: rotate(30deg); transform: rotate(30deg); }

.drawer-open .drawer-hamburger-icon:after { -webkit-transform: rotate(-30deg); transform: rotate(-30deg); }

/*!------------------------------------*\
    accessibility
\*!------------------------------------*/
/*!
 * Only display content to screen readers
 * See: http://a11yproject.com/posts/how-to-hide-content
 */
.sr-only { position: absolute; overflow: hidden; clip: rect(0, 0, 0, 0); width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; }

/*!
 * Use in conjunction with .sr-only to only display content when it's focused.
 * Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
 * Credit: HTML5 Boilerplate
 */
.sr-only-focusable:active, .sr-only-focusable:focus { position: static; overflow: visible; clip: auto; width: auto; height: auto; margin: 0; }

/*!------------------------------------*\
    Container
\*!------------------------------------*/
.drawer-container { margin-right: auto; margin-left: auto; }

/*!------------------------------------*\
    add
\*!------------------------------------*/
.drawer--top.drawer-open .drawer-nav { top: 0; overflow: auto; -webkit-overflow-scrolling: touch; }

.drawer--left.drawer-open .drawer-nav, .drawer--left .drawer-hamburger, .drawer--left.drawer-open .drawer-navbar .drawer-hamburger { left: 0; overflow: auto; -webkit-overflow-scrolling: touch; }

.drawer--right.drawer-open .drawer-nav, .drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger { right: 0; overflow: auto; -webkit-overflow-scrolling: touch; }

.drawer--right .drawer-hamburger { right: 0px; }

/*-------------------------------------------------------------------- hamburger
---------------------------------------------------------------------*/
.drawer-hamburger { display: none; z-index: 99999; }

@media screen and (max-width: 767px) { .drawer-hamburger { display: block; }
  header nav { display: none; } }
/*-------------------------------------------------------------------- menu
---------------------------------------------------------------------*/
.spNav { padding: 9.3333vw 9.3333vw; }
.spNav > ul { padding-bottom: 4.6667vw; }
.spNav > ul li a { display: block; font-size: 1em; line-height: calc(17/15); padding: calc(2/3 * 1em) 0; font-weight: 700; text-align: left; color: var(--pointCl01); }
.spNav .spBtn { margin-bottom: 10.6667vw; }
.spNav .spBtn ul li { text-align: left; margin-bottom: 1em; }
.spNav .spBtn ul li a { display: inline-block; padding: 0 1em; height: calc(65/30 * 1em); line-height: calc(65/30 * 1em); text-align: center; border-radius: 50vw; font-size: calc(18/16 * 1em); font-weight: 700; }
.spNav .spBtn ul li.login a { background-color: var(--btnCl01); color: #fff; }
.spNav .spBtn ul li.login a:hover { background-color: var(--btnCl01ov); }
.spNav .spBtn ul li.application a { background-color: #EEEEEE; color: var(--navCl01); }
.spNav .spBtn ul li.application a:hover { color: var(--navCl01ov); }
.spNav .logo { width: 110px; height: 33.5px; }

/*-------------------------------------------------------------------- toppage
---------------------------------------------------------------------*/
/* mainImage
----------------------------------------------------*/
#mainImage { background-color: var(--bgCl02); position: relative; z-index: 20; }
#mainImage::before, #mainImage::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; position: absolute; bottom: 0; }
#mainImage::before { width: 235px; padding-top: 859px; background-image: url("../images/top/pic_main_01.svg"); left: 0; margin-left: -10px; margin-bottom: -190px; z-index: 1; }
#mainImage::after { width: 286px; padding-top: 860px; background-image: url("../images/top/pic_main_02.svg"); right: 0; margin-right: -10px; margin-bottom: -35px; z-index: 1; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #mainImage::before { width: 20.2586%; padding-top: 74.0517%; margin-left: -0.8621%; margin-bottom: -16.3793%; }
  #mainImage::after { width: 24.6552%; padding-top: 74.1379%; margin-right: -0.8621%; margin-bottom: -3.0172%; } }
#mainImage #mainImageIn { position: relative; z-index: 5; padding-top: 50px; padding-bottom: 60px; }
#mainImage #mainImageIn .mainTit { text-align: center; }
#mainImage #mainImageIn .mainTit p:nth-child(1) { padding-bottom: 20px; text-align: center; color: var(--pointCl01); font-size: clamp(16px, 2.069vw, 24px); font-weight: bold; line-height: calc(47/32); }
#mainImage #mainImageIn .mainTit p:nth-child(2) { text-align: center; color: var(--pointCl01); font-size: clamp(24px, 5.517vw, 64px); font-weight: 900; line-height: calc(86/64); }
#mainImage #mainImageIn .mainImgBox { background-color: #fff; width: 735px; max-width: calc(100% - 100px); margin: 0 auto; border-radius: var(--radius); margin: 30px auto 50px; }
#mainImage #mainImageIn .mainImgBox .priceImg { padding-top: calc(234/735 * 100%); position: relative; }
#mainImage #mainImageIn .mainImgBox .priceImg p { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: calc(727/735 * 100%); height: auto; padding-top: calc(245/735 * 100%); background-image: url("../images/top/main_price.svg"); position: absolute; top: 0; left: 0; margin-left: calc(60/735 * 100%); margin-top: calc(-40/735 * 100%); }
#mainImage #mainImageIn .mainImgBox ul { margin-left: calc(55/735 * 100%); margin-right: 10px; padding-bottom: 20px; text-align: left; }
#mainImage #mainImageIn .mainImgBox ul li { font-size: clamp(10px, 1.207vw, 14px); line-height: calc(3/2); }
#mainImage #mainImageIn > p { width: 78.1818%; margin: 0 auto; text-align: left; font-weight: bold; font-size: clamp(15px, 1.724vw, 20px); line-height: calc(34/20); text-shadow: 0 0 2px var(--bgCl02), 0 0 2px var(--bgCl02), 0 0 2px var(--bgCl02), 0 0 2px var(--bgCl02), 0 0 2px var(--bgCl02), 0 0 2px var(--bgCl02); }
@media screen and (max-width: 999px) { #mainImage #mainImageIn > p { padding-left: 20px; padding-right: 20px; } }
@media screen and (min-width: 768px) and (max-width: 1159px) { #mainImage #mainImageIn { padding-top: 4.5455%; padding-bottom: 5.4545%; }
  #mainImage #mainImageIn .mainTit p:nth-child(1) { padding-bottom: 1.8182%; }
  #mainImage #mainImageIn .mainImgBox { margin: 2.7273% auto 4.5455%; } }
@media screen and (max-width: 767px) { #mainImage::before { width: 22.8vw; padding-top: 34.1333vw; background-image: url("../images/top/pic_main_01_sp.svg"); left: 0; margin-left: 0; margin-bottom: -20.5333vw; }
  #mainImage::after { width: 40.2667vw; padding-top: 29.3333vw; background-image: url("../images/top/pic_main_02_sp.svg"); right: 0; margin-right: 2.6667vw; margin-bottom: -8.9333vw; }
  #mainImage #mainImageIn { padding-top: 6.6667vw; padding-bottom: 17.3333vw; }
  #mainImage #mainImageIn .mainTit { text-align: center; }
  #mainImage #mainImageIn .mainTit p:nth-child(1) { padding-bottom: 15px; }
  #mainImage #mainImageIn .mainTit p:nth-child(2) { font-size: 6vw; }
  #mainImage #mainImageIn .mainImgBox { max-width: 100%; margin: 10px auto 10px; border-radius: var(--radiusSp); }
  #mainImage #mainImageIn .mainImgBox .priceImg { padding-top: 35.8209%; }
  #mainImage #mainImageIn .mainImgBox .priceImg p { width: 97.9104%; padding-top: 36.2687%; background-image: url("../images/top/main_price_sp.svg"); margin-left: 5.6716%; margin-top: -3.7313%; }
  #mainImage #mainImageIn .mainImgBox ul { margin-left: 10px; margin-right: 10px; }
  #mainImage #mainImageIn > p { width: auto; margin: 0 auto; padding: 0; } }

/* container.toppage
----------------------------------------------------*/
#container.toppage section { width: 100%; padding-top: 100px; padding-bottom: 120px; padding-left: 0 !important; padding-right: 0 !important; z-index: 15; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage section { padding-top: 8.6207%; padding-bottom: 10.3448%; } }
@media screen and (max-width: 767px) { #container.toppage section { padding-top: 13.3333%; padding-bottom: 21.3333%; } }
#container.toppage section h2 { font-weight: 900; text-align: center; color: var(--pointCl01); font-size: clamp(20px, 3.879vw, 45px); line-height: calc(69/45); }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage section h2 { font-size: 3.5vw; } }
#container.toppage section p, #container.toppage section li { font-size: clamp(15px, 1.552vw, 18px); line-height: calc(28/18); }

#container.toppage section.bg01 { background-color: var(--bgCl01); }

#container.toppage section.bg02 { background-color: var(--bgCl02); }

/* topBox01
----------------------------------------------------*/
#container.toppage #topBox01 { position: relative; }
#container.toppage #topBox01::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 176px; padding-top: 287px; background-image: url("../images/top/pic_box01.svg"); position: absolute; right: 0; bottom: 0; margin-right: -30px; margin-bottom: -163px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox01::before { width: 15.1724%; padding-top: 24.7414%; margin-right: -2.5862%; margin-bottom: -14.0517%; } }
#container.toppage #topBox01 h2 { margin-bottom: 6.3636%; }
#container.toppage #topBox01 .box01In { display: block; }
#container.toppage #topBox01 .box01In::after, #container.toppage #topBox01 .box01In::before { content: ""; display: block; clear: both; }
#container.toppage #topBox01 .box01In .item { width: 31.8182%; float: left; margin-top: 30px; margin-right: 2.2727%; background-color: var(--bgCl02); border-radius: var(--radius); }
#container.toppage #topBox01 .box01In .item:nth-child(1), #container.toppage #topBox01 .box01In .item:nth-child(2), #container.toppage #topBox01 .box01In .item:nth-child(3) { margin-top: 0; }
#container.toppage #topBox01 .box01In .item:nth-child(3n) { margin-right: 0; }
#container.toppage #topBox01 .box01In .item .img { padding-top: calc(150/350 * 100%); padding-bottom: calc(55/350 * 100%); position: relative; }
#container.toppage #topBox01 .box01In .item .img > img { position: absolute; top: 0; left: 0; }
#container.toppage #topBox01 .box01In .item .img h3 { width: 100%; text-align: center; font-size: clamp(16px, 2.414vw, 28px); font-weight: 900; text-align: center; color: var(--pointCl01); position: absolute; top: 0; left: 0; margin-top: calc(150/350 * 100%); }
#container.toppage #topBox01 .box01In .item:nth-child(1) .img img { width: calc(183/350 * 100%); margin-left: calc(80/350 * 100%); margin-top: calc(35/350 * 100%); }
#container.toppage #topBox01 .box01In .item:nth-child(2) .img img { width: calc(174/350 * 100%); margin-left: calc(87/350 * 100%); margin-top: calc(22/350 * 100%); }
#container.toppage #topBox01 .box01In .item:nth-child(3) .img img { width: calc(199/350 * 100%); margin-left: calc(110/350 * 100%); margin-top: calc(12/350 * 100%); }
#container.toppage #topBox01 .box01In .item:nth-child(4) .img img { width: calc(209/350 * 100%); margin-left: calc(69/350 * 100%); margin-top: calc(19/350 * 100%); }
#container.toppage #topBox01 .box01In .item:nth-child(5) .img img { width: calc(161/350 * 100%); margin-left: calc(95/350 * 100%); margin-top: calc(28/350 * 100%); }
#container.toppage #topBox01 .box01In .item:nth-child(6) .img img { width: calc(157/350 * 100%); margin-left: calc(93/350 * 100%); margin-top: calc(22/350 * 100%); }
#container.toppage #topBox01 .box01In .item p { padding: 20px; background-color: #fff; border-radius: 0 0 var(--radius) var(--radius); }
@media screen and (max-width: 767px) { #container.toppage #topBox01::before { width: 23.4667vw; padding-top: 38.2667vw; margin-right: -4vw; margin-bottom: -24.4vw; }
  #container.toppage #topBox01 h2 { margin-bottom: 10.6667vw; }
  #container.toppage #topBox01 .box01In { display: block; }
  #container.toppage #topBox01 .box01In::after, #container.toppage #topBox01 .box01In::before { content: ""; display: block; clear: both; }
  #container.toppage #topBox01 .box01In .item { width: calc(50% - 5px); float: left; margin-right: 0; margin-top: 0; border-radius: var(--radiusSp); }
  #container.toppage #topBox01 .box01In .item:nth-child(2n) { float: right; }
  #container.toppage #topBox01 .box01In .item, #container.toppage #topBox01 .box01In .item:nth-child(3) { margin-top: 10px; }
  #container.toppage #topBox01 .box01In .item:nth-child(1), #container.toppage #topBox01 .box01In .item:nth-child(2) { margin-top: 0; }
  #container.toppage #topBox01 .box01In .item p { display: none; } }

  .box01In.mhBox .item .myliking--itt-text { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); white-space: nowrap; }

/* topBox02
----------------------------------------------------*/
#container.toppage #topBox02 h2 { margin-bottom: 5.4545%; }
#container.toppage #topBox02 h2 + p { padding-bottom: 4.5455%; }
#container.toppage #topBox02 .box02In { display: block; margin-top: 0; margin-bottom: 30px; }
#container.toppage #topBox02 .box02In::after, #container.toppage #topBox02 .box02In::before { content: ""; display: block; clear: both; }
#container.toppage #topBox02 .box02In .item { width: calc(50% - 15px); float: left; background-color: var(--bgCl03); border-radius: var(--radius); position: relative; }
#container.toppage #topBox02 .box02In .item:nth-child(2) { float: right; }
#container.toppage #topBox02 .box02In .item > span { width: 180px; height: 64px; background: url("../images/top/tit_bg_01.svg") center center no-repeat; background-size: contain; text-align: center; font-size: clamp(16px, 2.586vw, 30px); font-weight: bold; line-height: 50px; color: var(--bgCl03); position: absolute; top: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; margin-top: -15px; }
#container.toppage #topBox02 .box02In .item > div { padding-top: calc(234/534 * 100%); }
#container.toppage #topBox02 .box02In .item > div span { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; width: 100%; font-size: clamp(24px, 4.138vw, 48px); font-weight: 900; color: #fff; }
#container.toppage #topBox02 .linkBox { padding: 30px; background-color: var(--bgCl01); border-radius: var(--radius); }
#container.toppage #topBox02 .linkBox a { color: var(--linkCl01); text-decoration: underline; }
#container.toppage #topBox02 .linkBox a:hover { color: var(--linkCl01ov); text-decoration: none; }
@media screen and (max-width: 767px) { #container.toppage #topBox02 h2 { margin-bottom: 4vw; }
  #container.toppage #topBox02 h2 + p { padding-bottom: 9.3333vw; }
  #container.toppage #topBox02 .box02In { display: block; margin-top: 0; margin-bottom: 30px; }
  #container.toppage #topBox02 .box02In::after, #container.toppage #topBox02 .box02In::before { content: ""; display: block; clear: both; }
  #container.toppage #topBox02 .box02In .item { width: auto; float: none; margin: 0 auto; border-radius: var(--radiusSp); }
  #container.toppage #topBox02 .box02In .item:nth-child(2) { float: none; margin-top: 5.8667vw; }
  #container.toppage #topBox02 .box02In .item > span { width: 24vw; height: 8.5333vw; line-height: 6.6667vw; margin-top: -2vw; }
  #container.toppage #topBox02 .box02In .item > div { padding-top: calc(204/670 * 100%); }
  #container.toppage #topBox02 .linkBox { padding: 10px; border-radius: var(--radiusSp); } }

/* topBox03
----------------------------------------------------*/
#container.toppage #topBox03 { padding-bottom: 0; position: relative; }
#container.toppage #topBox03::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 235px; padding-top: 280px; background-image: url("../images/top/pic_box03_01.svg"); position: absolute; top: 0; left: 0; margin-left: -20px; margin-top: -104px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox03::before { width: 20.2586%; padding-top: 24.1379%; margin-left: -1.7241%; margin-top: -8.9655%; } }
#container.toppage #topBox03 h2 { margin-bottom: 5.4545%; }
#container.toppage #topBox03 .box03In { display: block; padding-bottom: 13.6364%; }
#container.toppage #topBox03 .box03In::after, #container.toppage #topBox03 .box03In::before { content: ""; display: block; clear: both; }
#container.toppage #topBox03 .box03In .item { width: 24.0909%; padding: 10px 5px; background-color: #fff; border-radius: 8px; margin-right: 1.1818%; margin-top: 1.1818%; float: left; display: flex; align-items: center; }
#container.toppage #topBox03 .box03In .item:nth-child(1), #container.toppage #topBox03 .box03In .item:nth-child(2), #container.toppage #topBox03 .box03In .item:nth-child(3), #container.toppage #topBox03 .box03In .item:nth-child(4) { margin-top: 0; }
#container.toppage #topBox03 .box03In .item:nth-child(4n) { margin-right: 0; }
#container.toppage #topBox03 .box03In .item > img { width: calc(49/265 * 100%); }
#container.toppage #topBox03 .box03In .item > span { flex: 1; display: block; text-align: left; font-weight: bold; line-height: calc(55/18); font-size: clamp(15px, 1.552vw, 18px); color: var(--pointCl01); }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox03 .box03In .item { padding: 10px 5px; }
  #container.toppage #topBox03 .box03In .item > span { font-size: 1.4vw; white-space: nowrap; } }
#container.toppage #topBox03 .box03InBtn { display: none; }
#container.toppage #topBox03 #topBox03Btm { background-color: var(--bgCl03); position: relative; }
#container.toppage #topBox03 #topBox03Btm::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 164px; padding-top: 265px; background-image: url("../images/top/pic_box03_02.svg"); position: absolute; right: 0; top: 0; margin-right: 24px; margin-top: -180px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox03 #topBox03Btm::before { width: 14.1379%; padding-top: 22.8448%; margin-right: 2.069%; margin-top: -15.5172%; } }
#container.toppage #topBox03 #topBox03Btm .wrapBox { padding-top: 80px; padding-bottom: 80px; display: flex; align-items: center; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox03 #topBox03Btm .wrapBox { padding-top: 6.8966%; padding-bottom: 6.8966%; } }
#container.toppage #topBox03 #topBox03Btm .wrapBox .img { width: 30%; }
#container.toppage #topBox03 #topBox03Btm .wrapBox .txt { flex: 1; color: #fff; padding-left: 4.5455%; }
#container.toppage #topBox03 #topBox03Btm .wrapBox .txt h3 { font-size: clamp(21px, 3.879vw, 45px); font-weight: 900; text-align: left; line-height: calc(60/45); margin-bottom: 20px; }
@media screen and (max-width: 767px) { #container.toppage #topBox03::before { width: 31.3333vw; padding-top: 37.3333vw; margin-left: -4.8vw; margin-top: -14.1333vw; }
  #container.toppage #topBox03 h2 { margin-bottom: 10.6667vw; }
  #container.toppage #topBox03 .box03In { padding-bottom: 0; }
  #container.toppage #topBox03 .box03In .item { width: calc(50% - 5px); float: left; padding: 10px 5px; border-radius: 5px; margin-right: 0; display: flex; align-items: center; }
  #container.toppage #topBox03 .box03In .item:nth-child(2n) { float: right; }
  #container.toppage #topBox03 .box03In .item:nth-child(1), #container.toppage #topBox03 .box03In .item:nth-child(2) { margin-top: 0; }
  #container.toppage #topBox03 .box03In .item:nth-child(n + 3) { margin-top: 10px; }
  #container.toppage #topBox03 .box03In .item > img { width: calc(49/265 * 100%); }
  #container.toppage #topBox03 .box03In .item > span { line-height: calc(34/28); }
  #container.toppage #topBox03 .box03InBtn { padding-top: 6.6667vw; padding-bottom: 18vw; text-align: center; }
  #container.toppage #topBox03 .box03InBtn span { display: block; width: 37.3333vw; margin: 0 auto; position: relative; height: 40px; line-height: 40px; font-weight: bold; font-size: 1.4rem; text-align: center; cursor: pointer; }
  #container.toppage #topBox03 .box03InBtn span::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: 5.3333vw; height: 5.3333vw; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto 0 auto auto; }
  #container.toppage #topBox03 .box03InBtn span.open::before { background-image: url("../images/top/open.svg"); }
  #container.toppage #topBox03 .box03InBtn span.close::before { background-image: url("../images/top/close.svg"); }
  #container.toppage #topBox03 #topBox03Btm::before { width: 22vw; padding-top: 35.3333vw; margin-right: 0vw; margin-top: -21.3333vw; }
  #container.toppage #topBox03 #topBox03Btm .wrapBox { padding-top: 18.6667vw; padding-bottom: 13.3333vw; display: block; }
  #container.toppage #topBox03 #topBox03Btm .wrapBox .img { width: 44vw; margin: 0 auto 6.6667vw; }
  #container.toppage #topBox03 #topBox03Btm .wrapBox .txt { padding-left: 0; }
  #container.toppage #topBox03 #topBox03Btm .wrapBox .txt h3 { font-size: 5.4vw; } }

/* topBox04
----------------------------------------------------*/
#container.toppage #topBox04 { position: relative; }
#container.toppage #topBox04::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 161px; padding-top: 237px; background-image: url("../images/top/pic_box04_01.svg"); position: absolute; top: 0; left: 0; margin-left: 28px; margin-top: -50px; }
#container.toppage #topBox04::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 224px; padding-top: 360px; background-image: url("../images/top/pic_box04_02.svg"); position: absolute; right: 0; bottom: 0; margin-right: 3px; margin-bottom: -45px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox04::before { width: 13.8793%; padding-top: 20.431%; margin-left: 2.4138%; margin-top: -4.3103%; }
  #container.toppage #topBox04::after { width: 19.3103%; padding-top: 31.0345%; margin-right: 0.2586%; margin-bottom: -3.8793%; } }
#container.toppage #topBox04 h2 { margin-bottom: 3.6364%; }
#container.toppage #topBox04 h2 + p { margin-bottom: 4.5455%; }
#container.toppage #topBox04 .subtit { background-color: var(--voiceCl01); border-radius: 12px; width: 627px; height: 66px; max-width: 100%; margin: 0 auto 4.5455%; position: relative; }
#container.toppage #topBox04 .subtit::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: 50px; height: 60px; background-image: url("../images/top/fukidashi_arrow_01.svg"); position: absolute; left: 0; right: 0; bottom: 0; margin-left: auto; margin-right: auto; margin-bottom: -23px; z-index: 1; }
#container.toppage #topBox04 .subtit h3 { width: 100%; font-size: clamp(17px, 2.759vw, 32px); font-weight: bold; text-align: center; color: var(--bgCl03); position: absolute; left: 0; top: 50%; transform: translateY(-50%); z-index: 2; }
#container.toppage #topBox04 .box04In { display: block; }
#container.toppage #topBox04 .box04In::after, #container.toppage #topBox04 .box04In::before { content: ""; display: block; clear: both; }
#container.toppage #topBox04 .box04In .item { width: 48.6364%; float: left; margin-right: 2.7273%; margin-bottom: 2.7273%; background-color: var(--bgCl01); border-radius: var(--radius); overflow: hidden; display: flex; }
#container.toppage #topBox04 .box04In .item:nth-child(2n) { margin-right: 0; }
#container.toppage #topBox04 .box04In .item .img { width: calc(212/535 * 100%); }
#container.toppage #topBox04 .box04In .item .txt { flex: 1; display: flex; align-items: center; }
#container.toppage #topBox04 .box04In .item .txt p { padding: 0 calc(36/320 * 100%); font-size: clamp(15px, 1.897vw, 22px); font-weight: bold; color: var(--pointCl01); }
@media screen and (max-width: 767px) { #container.toppage #topBox04::before { width: 7.4667vw; padding-top: 25.6vw; background-image: url("../images/top/pic_box04_01_sp.svg"); margin-left: 8vw; margin-top: -13.7333vw; }
  #container.toppage #topBox04::after { width: 33.0667vw; padding-top: 28.8vw; background-image: url("../images/top/pic_box04_02_sp.svg"); margin-right: 3.3333vw; margin-bottom: -13.8667vw; }
  #container.toppage #topBox04 h2 { margin-bottom: 5.3333vw; }
  #container.toppage #topBox04 h2 + p { margin-bottom: 6.6667vw; }
  #container.toppage #topBox04 .subtit { border-radius: var(--radiusSp); height: auto; margin: 0 auto 4.8vw; }
  #container.toppage #topBox04 .subtit::before { width: 6.6667vw; height: 8vw; margin-bottom: -3.0667vw; }
  #container.toppage #topBox04 .subtit h3 { padding: 7px; line-height: 1.5; position: relative; left: 0; top: 0; transform: translateY(0); }
  #container.toppage #topBox04 .box04In .item { width: auto; float: none; margin: 0 auto; margin-right: 0; margin-bottom: 4vw; border-radius: var(--radiusSp); }
  #container.toppage #topBox04 .box04In .item:nth-child(2n) { margin-right: 0; }
  #container.toppage #topBox04 .box04In .item .img { width: calc(210/670 * 100%); } }

/* topBox05
----------------------------------------------------*/
#container.toppage #topBox05 { position: relative; z-index: 10; padding-bottom: 0; }
#container.toppage #topBox05 h2 { margin-bottom: 60px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox05 h2 { margin-bottom: 5.4545%; } }
#container.toppage #topBox05 .imgBox { padding-top: 100px; padding-bottom: 315px; position: relative; }
#container.toppage #topBox05 .imgBox::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 1278px; padding-top: 280px; background-image: url("../images/top/pic_box05.svg"); position: absolute; top: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; z-index: 2; }
#container.toppage #topBox05 .imgBox::after { content: ""; display: block; width: 100%; padding-bottom: 315px; background: url("../images/top/bg_box05.svg") center top no-repeat; background-size: 100% auto; position: absolute; bottom: 0; left: 0; z-index: 1; }
@media screen and (min-width: 768px) and (max-width: 1399px) { #container.toppage #topBox05 .imgBox { padding-top: 7.1429%; padding-bottom: 22.5%; }
  #container.toppage #topBox05 .imgBox::before { width: 91.2857%; padding-top: 20%; }
  #container.toppage #topBox05 .imgBox::after { padding-bottom: 22.5%; } }
@media screen and (max-width: 767px) { #container.toppage #topBox05 h2 { margin-bottom: 9.3333vw; padding-left: 20px; padding-right: 20px; font-size: 4.7vw; }
  #container.toppage #topBox05 .imgBox { padding-top: 9.3333vw; padding-bottom: 28vw; }
  #container.toppage #topBox05 .imgBox::before { width: 116.9333vw; padding-top: 25.6vw; left: 50%; right: auto; transform: translateX(-50%); }
  #container.toppage #topBox05 .imgBox::after { width: 120vw; padding-bottom: 29.3333vw; left: 50%; right: auto; bottom: -1.3333vw; transform: translateX(-50%); } }

/* topBox06
----------------------------------------------------*/
#container.toppage #topBox06 { position: relative; z-index: 15; }
#container.toppage #topBox06::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 180px; padding-top: 234px; background-image: url("../images/top/pic_box06_01.svg"); position: absolute; top: 0; left: 0; margin-left: 60px; margin-top: -10px; }
#container.toppage #topBox06::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 326px; padding-top: 380px; background-image: url("../images/top/pic_box06_02.svg"); position: absolute; right: 0; bottom: 0; margin-right: 30px; margin-bottom: -165px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox06::before { width: 15.5172%; padding-top: 20.1724%; margin-left: 5.1724%; margin-top: -0.8621%; }
  #container.toppage #topBox06::after { width: 28.1034%; padding-top: 32.7586%; margin-right: 2.5862%; margin-bottom: -14.2241%; } }
#container.toppage #topBox06 h2 { margin-bottom: 8.1818%; }
#container.toppage #topBox06 .box06In { display: block; margin-bottom: 30px; }
#container.toppage #topBox06 .box06In::after, #container.toppage #topBox06 .box06In::before { content: ""; display: block; clear: both; }
#container.toppage #topBox06 .box06In .item { background-color: #fff; border-radius: var(--radius); }
#container.toppage #topBox06 .box06In .item h3 { background-color: var(--bgCl02); border-radius: var(--radius) var(--radius) 0 0; padding: 25px; text-align: center; color: var(--bgCl03); font-weight: 900; font-size: clamp(16px, 2.586vw, 30px); }
#container.toppage #topBox06 .box06In .box06InL { width: 31.8182%; float: left; position: relative; }
#container.toppage #topBox06 .box06In .box06InL .price { width: calc(195/350 * 100%); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); margin-top: 40px; }
#container.toppage #topBox06 .box06In .box06InR { width: 65.4545%; float: right; }
#container.toppage #topBox06 .box06In .box06InR .price { padding-top: 30px; padding-bottom: 15px; position: relative; }
#container.toppage #topBox06 .box06In .box06InR .price span.fukidashi { display: block; width: calc(157/720 * 100%); position: absolute; right: 0; top: 0; margin-right: calc(-10/720 * 100%); margin-top: calc(-80/720 * 100%); }
#container.toppage #topBox06 .box06In .box06InR .price img.priceimg { display: block; width: calc(589/720 * 100%); margin: 0 auto 20px; }
#container.toppage #topBox06 .box06In .box06InR .price p { text-align: center; color: var(--bgCl03); font-size: clamp(18px, 3.103vw, 36px); font-weight: bold; }
#container.toppage #topBox06 .box06In .box06InR .price p span { display: block; font-size: clamp(14px, 1.379vw, 16px); }
#container.toppage #topBox06 .box06In .box06InR dl.card { width: calc(589/720 * 100%); margin: 0 auto 40px; display: flex; justify-content: space-between; column-gap: 15px; }
#container.toppage #topBox06 .box06In .box06InR dl.card dt, #container.toppage #topBox06 .box06In .box06InR dl.card dd { background-color: var(--bgCl01); border-radius: 8px; padding: 15px; }
#container.toppage #topBox06 .box06In .box06InR dl.card dt span, #container.toppage #topBox06 .box06In .box06InR dl.card dd span { font-size: clamp(10px, 1.466vw, 17px); text-align: center; white-space: nowrap; line-height: calc(20/17); }
#container.toppage #topBox06 .box06In .box06InR dl.card dt { width: 80px; position: relative; }
#container.toppage #topBox06 .box06In .box06InR dl.card dt span { display: block; width: 100%; text-align: center; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
#container.toppage #topBox06 .box06In .box06InR dl.card dd { flex: 1; display: flex; justify-content: space-around; }
#container.toppage #topBox06 .box06In .box06InR dl.card dd span { display: block; }
#container.toppage #topBox06 .box06In .box06InR dl.card dd .txt { width: 6em; }
#container.toppage #topBox06 .box06In .box06InR dl.card dd .img { flex: 1; padding: 0 15px; }
#container.toppage #topBox06 .box06In .box06InR .btn { padding-bottom: 70px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox06 .box06In .box06InR dl.card { margin-bottom: calc(40/720 * 100%); }
  #container.toppage #topBox06 .box06In .box06InR .btn { padding: 0 30px calc(70/720 * 100%); } }
@media screen and (max-width: 767px) { #container.toppage #topBox06::before { width: 18.9333vw; padding-top: 42.6667vw; background-image: url("../images/top/pic_box06_01_sp.svg"); margin-left: 0vw; margin-top: -5.3333vw; }
  #container.toppage #topBox06::after { width: 34.9333vw; padding-top: 31.7333vw; background-image: url("../images/top/pic_box06_02_sp.svg"); margin-right: 0vw; margin-bottom: -13.3333vw; }
  #container.toppage #topBox06 h2 { margin-bottom: 9.3333vw; }
  #container.toppage #topBox06 .box06In { margin-bottom: 6.6667vw; }
  #container.toppage #topBox06 .box06In .item { border-radius: var(--radiusSp); }
  #container.toppage #topBox06 .box06In .item h3 { border-radius: var(--radiusSp) var(--radiusSp) 0 0; padding: 3.3333vw; }
  #container.toppage #topBox06 .box06In .box06InL { width: auto; float: none; margin: 0 auto; position: relative; margin-bottom: 6.6667vw; }
  #container.toppage #topBox06 .box06In .box06InL .price { width: 100%; position: static; transform: translate(0, 0); margin-top: 0; padding: 6vw 15px 5.3333vw; }
  #container.toppage #topBox06 .box06In .box06InL .price img { display: block; width: 27.3333vw; margin: 0 auto; }
  #container.toppage #topBox06 .box06In .box06InR { width: auto; float: none; margin: 0 auto; }
  #container.toppage #topBox06 .box06In .box06InR .price { padding-top: 8vw; padding-bottom: 3.3333vw; }
  #container.toppage #topBox06 .box06In .box06InR .price span.fukidashi { width: 20.9333vw; margin-right: -2vw; margin-top: -14.6667vw; }
  #container.toppage #topBox06 .box06In .box06InR .price img.priceimg { width: 78.5333vw; margin: 0 auto 10px; }
  #container.toppage #topBox06 .box06In .box06InR .price p span { padding-top: 10px; }
  #container.toppage #topBox06 .box06In .box06InR dl.card { width: calc(100% - 30px); margin: 0 auto 6.6667vw; column-gap: 10px; }
  #container.toppage #topBox06 .box06In .box06InR dl.card dt, #container.toppage #topBox06 .box06In .box06InR dl.card dd { border-radius: 5px; padding: 10px 5px; }
  #container.toppage #topBox06 .box06In .box06InR dl.card dt { width: 10.1333vw; }
  #container.toppage #topBox06 .box06In .box06InR dl.card dd .img { padding: 0 10px; }
  #container.toppage #topBox06 .box06In .box06InR .btn { padding-bottom: 6.6667vw; } }

/* topBox07
----------------------------------------------------*/
#container.toppage #topBox07 { position: relative; z-index: 10; }
#container.toppage #topBox07::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 120px; padding-top: 202px; background-image: url("../images/top/pic_box07_01.svg"); position: absolute; bottom: 0; left: 0; margin-left: 80px; margin-bottom: 160px; }
#container.toppage #topBox07::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 254px; padding-top: 260px; background-image: url("../images/top/pic_box07_02.svg"); position: absolute; bottom: 0; left: 0; margin-left: -58px; margin-bottom: -144px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox07::before { width: 10.3448%; padding-top: 17.4138%; margin-left: 6.8966%; margin-bottom: 13.7931%; }
  #container.toppage #topBox07::after { width: 21.8966%; padding-top: 22.4138%; margin-left: -5%; margin-bottom: -12.4138%; } }
#container.toppage #topBox07 h2 { margin-bottom: 5.4545%; }
#container.toppage #topBox07 .box07In { display: flex; }
#container.toppage #topBox07 .box07In dl { margin-top: 0; width: 25%; display: flex; flex-direction: column; }
#container.toppage #topBox07 .box07In dl dt, #container.toppage #topBox07 .box07In dl dd { display: flex; align-items: center; text-align: center; justify-content: center; border: var(--bgCl02) 2px solid; color: #4d4d4d; }
#container.toppage #topBox07 .box07In dl dt { padding: 20px 5px; background-color: var(--bgCl01); font-size: clamp(15px, 2.414vw, 28px); font-weight: bold; }
#container.toppage #topBox07 .box07In dl dd { flex-direction: column; flex: 1; padding: 20px 10px; background-color: #fff; font-size: clamp(20px, 2.414vw, 28px); font-weight: bold; }
#container.toppage #topBox07 .box07In dl dd span { display: block; font-size: clamp(12px, 1.724vw, 20px); font-weight: bold; }
#container.toppage #topBox07 .box07In dl:nth-child(1) dt { font-size: clamp(12px, 1.724vw, 20px); }
#container.toppage #topBox07 .box07In dl.mylinking { position: relative; }
#container.toppage #topBox07 .box07In dl.mylinking::before { content: ""; display: block; width: calc(100% + 4px); height: calc(100% + 14px); border: var(--bgCl03) 4px solid; border-top-width: 14px; position: absolute; top: -12px; left: -2px; }
#container.toppage #topBox07 .box07In dl.mylinking dt, #container.toppage #topBox07 .box07In dl.mylinking dd { border-color: var(--bgCl03); }
#container.toppage #topBox07 .box07In dl.mylinking dt { background-color: var(--bgCl03); position: relative; }
#container.toppage #topBox07 .box07In dl.mylinking dt span { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: calc(180 / 270 * 100%); background-image: url("../images/logo_f.svg"); position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; }
#container.toppage #topBox07 .box07In dl.mylinking dd { color: var(--pointCl01); font-size: clamp(20px, 4.052vw, 47px); font-weight: 900; }
#container.toppage #topBox07 .fukidashi { padding-top: 25px; width: 960px; max-width: 100%; margin: 0 auto; }
#container.toppage #topBox07 .fukidashi p { padding: 10px; background-color: var(--voiceCl01); border-radius: var(--radius); font-size: clamp(17px, 2.759vw, 32px); font-weight: bold; color: var(--bgCl03); text-align: center; line-height: calc(49/35); position: relative; z-index: 2; }
#container.toppage #topBox07 .fukidashi p::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: 63px; height: 55px; background-image: url("../images/top/fukidashi_arrow_02.svg"); position: absolute; right: 0; top: 0; z-index: 1; margin-top: -40px; margin-right: calc(60/960 * 100%); }
#container.toppage #topBox07 .btn { width: 700px; max-width: 100%; margin: 0 auto; margin-top: 4.0909%; padding-top: 9.0909%; position: relative; z-index: 1; }
#container.toppage #topBox07 .btn > span { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: 160px; height: 160px; background-image: url("../images/top/fukidashi_l.svg"); position: absolute; top: 0; left: 0; z-index: 2; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBox07 .btn > span { width: calc(160/700 * 100%); } }
@media screen and (max-width: 767px) { #container.toppage #topBox07::before { width: 16vw; padding-top: 26.9333vw; left: auto; right: 0; margin-left: auto; margin-bottom: -11.3333vw; }
  #container.toppage #topBox07::after { width: 33.8667vw; padding-top: 30vw; background-image: url("../images/top/pic_box07_02_sp.svg"); margin-left: -6.6667vw; margin-bottom: -15.4667vw; }
  #container.toppage #topBox07 h2 { margin-bottom: 8vw; }
  #container.toppage #topBox07 .box07In { display: block; }
  #container.toppage #topBox07 .box07In dl { width: auto; display: flex; flex-direction: row; }
  #container.toppage #topBox07 .box07In dl dt, #container.toppage #topBox07 .box07In dl dd { display: flex; border: none; border-bottom: var(--bgCl03) 2px solid; color: #0E4069; }
  #container.toppage #topBox07 .box07In dl dt { border-right: var(--bgCl03) 2px solid; }
  #container.toppage #topBox07 .box07In dl dt { width: calc(285/672 * 100%); padding: 15px 5px; }
  #container.toppage #topBox07 .box07In dl dd { padding: 15px 10px; }
  #container.toppage #topBox07 .box07In dl.mylinking { position: relative; /*
&::before{
	height: calc(100% + 4px);
	border-top-width: 4px;
	top: -2px;
}
*/ }
  #container.toppage #topBox07 .box07In dl.mylinking::before { display: none; }
  #container.toppage #topBox07 .box07In dl.mylinking dt, #container.toppage #topBox07 .box07In dl.mylinking dd { border-bottom: none; }
  #container.toppage #topBox07 .fukidashi { padding-top: 7.3333vw; }
  #container.toppage #topBox07 .fukidashi p { border-radius: var(--radiusSp); }
  #container.toppage #topBox07 .fukidashi p::before { width: 8.1333vw; height: 6.9333vw; margin-top: -6vw; margin-right: 21.8667vw; }
  #container.toppage #topBox07 .btn { margin-top: 10.1333vw; padding-top: 18.2667vw; }
  #container.toppage #topBox07 .btn > span { width: 21.3333vw; height: 21.3333vw; } }

/* topBoxFlow
----------------------------------------------------*/
#container.toppage #topBoxFlow { position: relative; z-index: 5; }
#container.toppage #topBoxFlow::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 66px; padding-top: 186px; background-image: url("../images/top/pic_boxflow_01.svg"); position: absolute; right: 0; bottom: 0; margin-right: 14px; margin-bottom: 100px; }
#container.toppage #topBoxFlow::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 222px; padding-top: 245px; background-image: url("../images/top/pic_boxflow_02.svg"); position: absolute; right: 0; bottom: 0; margin-right: 50px; margin-bottom: -147px; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBoxFlow::before { width: 5.6897%; padding-top: 16.0345%; margin-right: 1.2069%; margin-bottom: 8.6207%; }
  #container.toppage #topBoxFlow::after { width: 19.1379%; padding-top: 21.1207%; margin-right: 4.3103%; margin-bottom: -12.6724%; } }
#container.toppage #topBoxFlow h2 { margin-bottom: 10%; }
#container.toppage #topBoxFlow .boxFlowIn { display: block; margin-bottom: 30px; }
#container.toppage #topBoxFlow .boxFlowIn::after, #container.toppage #topBoxFlow .boxFlowIn::before { content: ""; display: block; clear: both; }
#container.toppage #topBoxFlow .boxFlowIn .item { width: 30.9091%; float: left; background-color: #fff; border-radius: var(--radius); position: relative; z-index: 1; }
#container.toppage #topBoxFlow .boxFlowIn .item:nth-child(n + 2) { margin-left: 3.6364%; }
#container.toppage #topBoxFlow .boxFlowIn .item:nth-child(n + 2)::before { content: ""; display: block; padding-left: calc(40/340 * 100%); height: 100%; background: url("../images/top/arrow_flow.svg") center center no-repeat; background-size: calc(22/40 * 100%) auto; position: absolute; top: 0; left: 0; transform: translateX(-100%); }
#container.toppage #topBoxFlow .boxFlowIn .item .img, #container.toppage #topBoxFlow .boxFlowIn .item .txt { position: relative; z-index: 1; }
#container.toppage #topBoxFlow .boxFlowIn .item span.num { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: calc(66/340 * 100%); height: auto; padding-top: calc(66/340 * 100%); position: absolute; top: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; transform: translateY(-50%); z-index: 2; }
#container.toppage #topBoxFlow .boxFlowIn .item:nth-child(1) span.num { background-image: url("../images/top/ico_num1_01.svg"); }
#container.toppage #topBoxFlow .boxFlowIn .item:nth-child(2) span.num { background-image: url("../images/top/ico_num1_02.svg"); }
#container.toppage #topBoxFlow .boxFlowIn .item:nth-child(3) span.num { background-image: url("../images/top/ico_num1_03.svg"); }
#container.toppage #topBoxFlow .boxFlowIn .item p { padding: calc(25/340 * 100%) calc(25/340 * 100%) calc(20/340 * 100%); }
#container.toppage #topBoxFlow .boxFlowIn .item p a { color: var(--linkCl01); text-decoration: none; }
#container.toppage #topBoxFlow .boxFlowIn .item p a:hover { color: var(--linkCl01ov); text-decoration: none; }
@media screen and (max-width: 767px) { #container.toppage #topBoxFlow::before { display: none; }
  #container.toppage #topBoxFlow::after { width: 29.6vw; padding-top: 32.6667vw; margin-right: 5.3333vw; margin-bottom: -16.4vw; }
  #container.toppage #topBoxFlow h2 { margin-bottom: 12.8vw; }
  #container.toppage #topBoxFlow .boxFlowIn { margin-bottom: 0; }
  #container.toppage #topBoxFlow .boxFlowIn .item { width: auto; float: none; margin: 0 auto; display: block; margin-bottom: 8vw; border-radius: var(--radiusSp); background-color: transparent; line-height: 1; display: flex; line-height: 1; }
  #container.toppage #topBoxFlow .boxFlowIn .item::after, #container.toppage #topBoxFlow .boxFlowIn .item::before { content: ""; display: block; clear: both; }
  #container.toppage #topBoxFlow .boxFlowIn .item:nth-child(n + 2) { margin-left: 0; margin-top: 6.6667vw; }
  #container.toppage #topBoxFlow .boxFlowIn .item:nth-child(n + 2)::before { display: none; }
  #container.toppage #topBoxFlow .boxFlowIn .item:nth-child(n + 2)::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; width: 4.9333vw; height: 2.9333vw; background-image: url("../images/top/arrow_flow_sp.svg"); transform: translateX(-50%); position: absolute; top: -9.3333vw; left: 50%; }
  #container.toppage #topBoxFlow .boxFlowIn .item span.num { width: 8.8vw; padding-top: 8.8vw; }
  #container.toppage #topBoxFlow .boxFlowIn .item .img { width: calc(334/670 * 100%); border-radius: var(--radiusSp) 0 0 var(--radiusSp); overflow: hidden; }
  #container.toppage #topBoxFlow .boxFlowIn .item .txt { flex: 1; background-color: #fff; border-radius: 0 var(--radiusSp) var(--radiusSp) 0; padding: 15px; display: flex; line-height: 1; align-items: center; } }

/* topBoxFaq
----------------------------------------------------*/
#container.toppage #topBoxFaq { padding-bottom: 230px; position: relative; pointer-events: none; }
#container.toppage #topBoxFaq::before { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 150px; padding-top: 205px; background-image: url("../images/top/pic_faq_01.svg"); position: absolute; bottom: 0; left: 0; margin-left: 0; margin-bottom: 110px; z-index: 100; }
#container.toppage #topBoxFaq::after { content: ""; display: block; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat; background-size: contain; overflow: hidden; white-space: nowrap; text-indent: 101%; line-height: 0; font-size: 0.1em; height: auto; width: 135px; padding-top: 160px; background-image: url("../images/top/pic_faq_02.svg"); position: absolute; bottom: 0; left: 0; margin-left: 170px; margin-bottom: 30px; z-index: 100; }
@media screen and (min-width: 768px) and (max-width: 1159px) { #container.toppage #topBoxFaq { padding-bottom: 19.8276%; }
  #container.toppage #topBoxFaq::before { width: 12.931%; padding-top: 17.6724%; margin-bottom: 9.4828%; }
  #container.toppage #topBoxFaq::after { width: 11.6379%; padding-top: 13.7931%; margin-left: 14.6552%; margin-bottom: 2.5862%; } }
#container.toppage #topBoxFaq h2 { margin-bottom: 7.2727%; }
#container.toppage #topBoxFaq .btn { margin-top: 7.2727%; }
@media screen and (max-width: 767px) { #container.toppage #topBoxFaq { padding-bottom: 54vw; }
  #container.toppage #topBoxFaq::before { width: 20vw; padding-top: 27.3333vw; margin-bottom: 5.3333vw; margin-left: -4.6667vw; }
  #container.toppage #topBoxFaq::after { width: 18vw; padding-top: 21.3333vw; margin-bottom: 3.4667vw; margin-left: 32.2667vw; }
  #container.toppage #topBoxFaq h2 { margin-bottom: 9.3333vw; }
  #container.toppage #topBoxFaq .btn { margin-top: 10.6667vw; } }

/*-------------------------------------------------------------------- faq
---------------------------------------------------------------------*/
/*-------------------------------------------------------------------- company
---------------------------------------------------------------------*/
#container.second .companyPage p { padding-left: 20px; padding-bottom: 10px; font-size: clamp(16px, 1.724vw, 20px); }
@media screen and (max-width: 767px) { #container.second .companyPage p { padding-left: 15px; padding-bottom: 0; } }

/*-------------------------------------------------------------------- type01(common)
---------------------------------------------------------------------*/
#container.second .pageType01 * + h2 { margin-top: 30px; }
#container.second .pageType01 * + h3 { margin-top: 15px; }
#container.second .pageType01 > p, #container.second .pageType01 > ul, #container.second .pageType01 > ol { margin-left: 20px; margin-right: 20px; }
#container.second .pageType01 p + ul, #container.second .pageType01 ol + ul, #container.second .pageType01 p + ol, #container.second .pageType01 ol + p { margin-top: 10px; }
#container.second .pageType01 ol ul { margin-top: 5px; }
#container.second .pageType01 p, #container.second .pageType01 li { font-size: clamp(16px, 1.724vw, 20px); line-height: calc(28/20); padding-bottom: 5px; }
#container.second .pageType01 p.lead { margin-left: 0; margin-right: 0; }
#container.second .pageType01 p.sig, #container.second .pageType01 p.end { margin-right: 0; margin-top: 60px; text-align: right; }
#container.second .pageType01 p.date { margin-top: 60px; margin-left: 0; }
@media screen and (max-width: 767px) { #container.second .pageType01 > p, #container.second .pageType01 > ul, #container.second .pageType01 > ol { margin-left: 0; margin-right: 0; } }

/*--------------------------------------------------------------------
error
---------------------------------------------------------------------*/
#container.second .errorPage p { padding-bottom: 20px; text-align: center; font-size: clamp(16px, 1.724vw, 20px); line-height: calc(28/20); }

/*--float--*/
.flL { float: left; }

.flR { float: right; }

.clear { clear: both; }

/*--textalign--*/
.txtL { text-align: left !important; }

.txtC { text-align: center !important; }

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

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

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

/*--textwrap--*/
.text { display: inline-block; }

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

.txtL-U {
  text-decoration: underline;
  color: var(--linkCl01);
}
