@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Lexend+Zetta:wght@100;200;300;400;500;600;700;800;900&display=swap);
@import url(https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500;1,600;1,700;1,800&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap);

* {
    box-sizing: border-box;
    word-break: break-all;
    word-wrap: break-word
}

html {
    font-size: 10px;
    -webkit-tap-highlight-color: transparent;
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    overflow-x: hidden;
    font-size: 16px;
    color: #23366f;
    font-family: "Noto Sans JP", sans-serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "小塚ゴシック", "Noto Sans Japanese", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
    font-weight: 500;
    height: 100%;
    margin: 0;
    padding: 0;
    line-height: 1.6;
    width: 100%;
    background-color: #fff;
    letter-spacing: .05em
}

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

a:hover {
    text-decoration: none;
    opacity: .75
}

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

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

p {
    margin: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    text-align: left
}

dd,
dl,
dt {
    margin: 0;
    padding: 0
}

figure {
    margin: 0
}

figcaption,
figure,
main {
    display: block
}

article,
aside,
footer,
header,
nav,
section {
    display: block
}

pre {
    font-family: monospace;
    font-size: 1em
}

b,
strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

img {
    border-style: none;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    height: auto;
    max-width: 100%;
    vertical-align: middle
}

input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: none;
    appearance: none;
    font-family: inherit
}

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

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText
}

textarea {
    overflow: auto
}

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

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

[hidden] {
    display: none
}

address {
    font-style: normal
}

table {
    border-collapse: collapse
}

.wrapper {
    max-width: 1500px;
    margin-right: auto;
    margin-left: auto;
    padding: 0 5%
}

body {
    padding-top: 104px;
    position: relative
}

header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9980;
    display: flex;
    width: 100%;
    height: 104px;
    background: #fff;
    box-shadow: 0 4px 9px 0 rgba(58, 61, 62, .25)
}

.header__inner {
    display: grid;
    grid-template-areas: "user user" "logo links";
    align-content: end;
    padding-left: 0 !important
}

.header__inner.container {
    width: 100%;
    padding-bottom: 6px
}

.header__userName {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-row: 1;
    grid-column: 1;
    grid-area: user;
    text-align: right;
    font-size: 1.4rem;
    font-weight: 500;
    position: relative;
    z-index: 1
}

.header__logo {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    grid-row: 2;
    grid-column: 1;
    grid-area: logo;
    line-height: 1
}

.header__logo a {
    display: block
}

.header__links {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
    grid-row: 2;
    grid-column: 2;
    grid-area: links;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 0 9px
}

.header__links__item a {
    display: block;
    position: relative;
    text-align: center
}

.header__links__item.is-active .header__links__item-ico {
    position: relative;
    display: inline-block
}

.header__links__item.is-active .header__links__item-ico:before {
    content: "";
    width: 6px;
    aspect-ratio: 1/1;
    background: #cb4b40;
    border-radius: 50%;
    position: absolute;
    top: 5px;
    right: 5px
}

.header__links__item-title {
    font-size: 8px;
    font-weight: 500;
    display: block;
    line-height: 1.2;
    text-align: center
}

header.is-login {
    padding-top: 2px
}

header.is-login .header__inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    min-height: 80px
}

.header__lineWrap {
    padding-bottom: 3px
}

footer {
    padding: 30px 0 20px;
    border-top: 2px solid #039;
    background: #fff
}

.footer__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px 0;
    margin-bottom: 10px
}

.footer__links__item {
    width: calc(50% - 16px);
    font-size: 1.4rem;
    font-weight: 500
}

.footer__links__item a {
    position: relative;
    display: block;
    padding-left: 18px
}

.footer__links__item a:before {
    content: ">";
    position: absolute;
    top: 0;
    left: 0
}

.footer__logo {
    text-align: center
}

.footer__copy {
    display: block;
    text-align: center;
    margin-top: 15px;
    font-size: 1.2rem
}

/*! Lity - v2.3.1 - 2018-04-20
* http://sorgalla.com/lity/
* Copyright (c) 2015-2018 Jan Sorgalla; Licensed MIT */
.lity {
    z-index: 9990;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    white-space: nowrap;
    background: #0b0b0b;
    background: rgba(0, 0, 0, .9);
    outline: 0 !important;
    opacity: 0;
    transition: opacity .3s ease
}

.lity.lity-opened {
    opacity: 1
}

.lity.lity-closed {
    opacity: 0
}

.lity * {
    box-sizing: border-box
}

.lity-wrap {
    z-index: 9990;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    text-align: center;
    outline: 0 !important
}

.lity-wrap:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -.25em
}

.lity-loader {
    z-index: 9991;
    color: #fff;
    position: absolute;
    top: 50%;
    margin-top: -.8em;
    width: 100%;
    text-align: center;
    font-size: 14px;
    font-family: Arial, Helvetica, sans-serif;
    opacity: 0;
    transition: opacity .3s ease
}

.lity-loading .lity-loader {
    opacity: 1
}

.lity-container {
    z-index: 9992;
    position: relative;
    text-align: left;
    vertical-align: middle;
    display: inline-block;
    white-space: normal;
    max-width: 100%;
    max-height: 100%;
    outline: 0 !important
}

.lity-content {
    z-index: 9993;
    width: 100%;
    transform: scale(1);
    transition: transform .3s ease
}

.lity-closed .lity-content,
.lity-loading .lity-content {
    transform: scale(.8)
}

.lity-content:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6)
}

.lity-close {
    z-index: 9994;
    width: 35px;
    height: 35px;
    position: absolute;
    right: 25px;
    top: 10px;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    padding: 0;
    color: transparent;
    font-style: normal;
    font-size: 35px;
    font-family: Arial, Baskerville, monospace;
    line-height: 35px;
    border: 0;
    background: 0 0;
    outline: 0;
    box-shadow: none
}

.lity-close:after,
.lity-close:before {
    content: "";
    width: 23px;
    height: 1px;
    background: #23366f;
    position: absolute;
    top: 50%;
    left: calc(50% - 11px)
}

.lity-close:before {
    transform: rotate(45deg)
}

.lity-close:after {
    transform: rotate(-45deg)
}

.lity-close::-moz-focus-inner {
    border: 0;
    padding: 0
}

.lity-close:active,
.lity-close:focus,
.lity-close:hover,
.lity-close:visited {
    text-decoration: none;
    text-align: center;
    padding: 0;
    font-style: normal;
    font-size: 35px;
    font-family: Arial, Baskerville, monospace;
    line-height: 35px;
    border: 0;
    background: 0 0;
    outline: 0;
    box-shadow: none
}

.lity-image img {
    max-width: 100%;
    display: block;
    line-height: 0;
    border: 0
}

.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container,
.lity-iframe .lity-container,
.lity-vimeo .lity-container,
.lity-youtube .lity-container {
    width: 100%;
    max-width: 964px
}

.lity-iframe-container {
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    overflow: auto;
    pointer-events: auto;
    transform: translateZ(0);
    -webkit-overflow-scrolling: touch
}

.lity-iframe-container iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6);
    background: #000
}

.lity-hide {
    display: none
}

.subPage-title {
    background: url(../images/img/top/hello_bg.png) no-repeat bottom/cover;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 500;
    padding: 27px 0
}

.subPage-title__inner {
    display: block;
    max-width: 1000px;
    margin: 0 auto;
    padding-right: 15px;
    padding-left: 15px
}

.subPage-dl {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.subPage-dl__dt {
    background: #e9f7fc;
    padding: 7px 15px;
    border-bottom: 1px solid #91bfe3
}

.subPage-dl__dd {
    background: #fff;
    padding: 30px 15px;
    border-bottom: 1px solid #e8f2f7
}

.subPage-dl__dd:has(.subPage-dl__dd__btnWrap) {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px
}

.subPage-dl__dd__btnWrap {
    flex: 0 0 auto
}

.subPage-dl__dd__btnWrap a {
    display: block
}

.subpage-flow {
    counter-reset: flow;
    display: flex;
    justify-content: space-between;
    max-width: 252px;
    margin-left: auto;
    margin-right: auto
}

.subpage-flow__item {
    counter-increment: flow;
    padding: 0 14px;
    text-align: center;
    font-size: 1.2rem;
    color: #b1b1b1
}

.subpage-flow__item:before {
    content: counter(flow);
    width: 26px;
    border: 2px solid #a6adaf;
    border-radius: 50%;
    line-height: 26px;
    display: inline-block
}

.subpage-flow__item:nth-of-type(n+2) {
    position: relative
}

.subpage-flow__item:nth-of-type(n+2):after {
    content: "";
    width: 44px;
    height: 1px;
    background: #bebebe;
    position: absolute;
    top: 14px;
    left: -43px
}

.subpage-flow__item.is-active {
    color: #2167ae
}

.subpage-flow__item.is-active:before {
    color: #fff;
    background: #2167ae;
    border-color: #2167ae
}

.subpage-flow__item.is-active:after {
    background: #2167ae
}

.subpage-addrInspection {
    padding: 15px;
    border: 1px solid #5495cf
}

.subpage-addrZip {
    display: flex;
    gap: 10px;
    width: 100%
}
.subpage-addrZip .text-type01 {
    max-width: unset;
    flex: 1
}

.subpage-addrZip input {
    max-width: 200px
}

.subpage-addrZip__btn {
    font-weight: 400;
    color: #fff;
    display: inline-block;
    background: #2167ae;
    padding: 13px 10px;
    border-radius: 5px;
    width: 87px;
    border: none;
    background-color: #2167ae;
    font-size: 16px;
    cursor: pointer
}

.subpage-addrZip__modal {
    background: #fff;
    max-width: calc(100% - 30px);
    width: 430px;
    margin-left: 15px;
    padding: 45px 15px 60px
}

.subpage-addrZip__modal .hdg-type01 {
    width: 100%;
    position: static
}

.subpage-addrZip__modal:has(.subpage-addrZip__modal__inner) {
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.subpage-addrZip__modal:has(.subpage-addrZip__modal__inner)::-webkit-scrollbar {
    display: none
}

.grid .box-blue {
    border-radius: 8px
}
.grid .fc--blue {
    margin-bottom: 6.5px
}
.subpage-addrZip__modal__box {
    border: 1px solid #e7e7e7;
    padding: 20px;
    height: 45vh;
    overflow-y: scroll
}
#modal01 .list-type01__item:nth-last-of-type(n+2) {
    margin-top: 5px
}

.subpage-finish {
    padding-top: 75px;
    background: url(../images/img/common/ico_finish.svg) no-repeat top/54px 54px;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.4;
    font-weight: 500
}

.subpage-error {
    padding-top: 75px;
    background: url(../images/img/common/ico_error.svg) no-repeat top/54px 54px;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.4;
    font-weight: 500
}

.subPage-otherTetsuduki {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto
}

.subPage-otherTetsuduki.is-ver2 {
    border-top: 1px solid #c9d0d2;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.subPage-otherTetsuduki.is-ver2 .subPage-otherTetsuduki__item {
    border-bottom: 1px solid #c9d0d2
}

.subPage-otherTetsuduki__item {
    background: #fff;
    border-bottom: 1px solid #f1f1f1;
    font-size: 1.6rem
}

.subPage-otherTetsuduki__item a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 24px 36px 24px 20px;
    position: relative
}

.subPage-otherTetsuduki__item a:after {
    content: "";
    line-height: 1;
    width: 8px;
    height: 15px;
    background: url(../images/img/common/link_list01_arrow.svg) no-repeat center/contain;
    position: absolute;
    top: calc(50% - 7px);
    right: 20px
}

.subPage-otherTetsuduki__item p span {
    line-height: 1.4;
    display: inline-block
}

.subPage-otherTetsuduki__item__image {
    flex: 0 0 auto
}

.question {
    display: inline-block;
    padding-right: 35px;
    position: relative;
    line-height: 1.4
}

.question__ico {
    position: absolute;
    top: 0;
    right: 0
}

.subPage-btnWrap {
    padding: 60px 15px;
    background: #eceeef;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.subPage-btnWrap_narrow {
    padding: 10px 15px;
    background: #eceeef;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.subPage-btnWrap__txtBox {
    max-width: 680px;
    margin-left: auto;
    margin-right: auto
}

.flatpickr-calendar {
    border-radius: 24px
}

.flatpickr-current-month {
    display: flex;
    justify-content: center;
    height: 42px;
    padding-top: 15.48px
}

.flatpickr-current-month input.cur-year {
    order: 1
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
    order: 2;
    padding: 0
}

.flatpickr-month {
    border-radius: 24px 24px 0 0
}

.flatpickr-months .flatpickr-month {
    height: 42px;
    background: #eceeef
}

.flatpickr-weekdays {
    height: 44px;
    background: #eceeef
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
    padding-top: 16px
}

span.flatpickr-weekday {
    font-size: 14px;
    color: #23366f
}

.dayContainer {
    padding: 10px 0
}

.flatpickr-day {
    border: 2px solid transparent;
    color: #23366f
}

.flatpickr-day.today {
    border: none
}

.flatpickr-day.selected {
    color: #23366f;
    border-color: #2167ae;
    background-color: unset
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.nextMonthDay,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.prevMonthDay {
    color: #45484a;
    opacity: .5
}

.flatpickr-months .flatpickr-next-month,
.flatpickr-months .flatpickr-prev-month {
    top: 8px
}

.hdg-type01 {
    color: #fff;
    background: #23366f;
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 10px 15px;
    margin-bottom: 20px;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.hdg-type02 {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 20px
}

.hdg-type03 {
    display: inline-block;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.4;
    color: #fff;
    background: #2167ae;
    padding: 10px 55px;
    border-radius: 9999px;
    background-image: url(../images/img/login/deco_left.svg), url(../images/img/login/deco_right.svg);
    background-repeat: no-repeat;
    background-position: left 33px top 50%, right 33px top 50%
}

.hdg-type04 {
    font-size: 1.8rem;
    font-weight: 500;
    border-left: 3px solid #23366f;
    padding-left: 7px;
    line-height: 1.3;
    margin-bottom: 20px
}

.hdg-type05 {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 10px
}

.hdg-type06 {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    padding-bottom: 10px;
    border-bottom: 1px solid #23366f;
    margin-bottom: 10px
}

.hdg-type07 {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 20px
}

.hdg-type08 {
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 1.6rem;
    background: #f3f3f3;
    line-height: 1.4;
    border-top: 1px solid rgba(216, 224, 223, .8745098039);
    border-bottom: 1px solid #fff;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.hdg-type09 {
    color: #fff;
    background: #23366f;
    font-size: 1.7rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 10px 15px;
    margin-bottom: 20px
}

.hdg-check {
    font-size: 1.8rem;
    font-weight: 700;
    padding-left: 30px;
    background: url(../images/img/reissuedeductcert/ico_check.svg) no-repeat top 4px left 2px;
    margin-bottom: 20px
}

.hdg-alert {
    font-size: 1.8rem;
    font-weight: 700;
    padding-left: 30px;
    background: url(../images/img/reissuedeductcert/ico_alert.svg) no-repeat top 4px left 2px;
    margin-bottom: 20px
}

.hdg-alert02 {
    font-size: 1.8rem;
    font-weight: 700;
    padding-left: 30px;
    background: url(../images/img/cancel/ico_info.svg) no-repeat top 5px left 2px;
    margin-bottom: 20px
}

.hdg-blue {
    font-size: 1.6rem;
    font-weight: 700;
    background: #c7ebf9;
    padding: 10px 15px
}

.container {
    max-width: 1000px;
    margin: 0 auto;
    padding-right: 15px;
    padding-left: 15px
}

.box-blue {
    background: #f4f9fc;
    padding: 15px
}

.box-blue.is-project {
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.box-blue02 {
    background: #e9f7fc;
    padding: 15px
}

.box-blue02.is-project {
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.box-red {
    background: #ffe3e1;
    padding: 15px
}

.box-red.is-project {
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.box-white {
    background: #fff;
    padding: 10px 15px
}

.box-brown {
    background: #dad2bd;
    padding: 20px 15px;
    border-radius: 10px
}

.box-type01 {
    padding: 20px 15px;
    background: #fff;
    border: 1px solid #23366f
}

.btn-type01 {
    max-width: 340px;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 400;
    display: inline-block;
    border-radius: 9999px;
    padding: 16px;
    background: #2167ae;
    text-decoration: none
}

.btn-type01.is-inactive {
    pointer-events: none;
    background: #a6adaf;
    color: #2b2e31;
    border-color: #a6adaf;
    opacity: .5
}

.btn-type02 {
    max-width: 340px;
    width: 100%;
    text-align: center;
    color: #23366f;
    font-size: 1.8rem;
    font-weight: 400;
    display: inline-block;
    border-radius: 9999px;
    padding: 14px 16px;
    background: #ff9187
}

.btn-type03 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #fff;
    color: #2167ae;
    text-align: center;
    text-decoration: none;
    max-width: 360px;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 16px 15px
}

.btn-type03.is-blank {
    padding-right: 50px;
    padding-left: 50px;
    background: url(../images/img/common/ico_blank.svg) no-repeat right 25px top 50%/19px 12px;
    background-color: #fff
}

.btn-type04 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    text-align: center;
    text-decoration: none;
    max-width: 360px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    padding: 13px 15px
}

.btn-type04.is-inactive {
    pointer-events: none;
    background: #a6adaf;
    color: #2b2e31;
    border-color: #a6adaf;
    opacity: .5
}

.btn-type05 {
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    text-align: center;
    min-width: 92px;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 9px 25px
}

.btn-type06 {
    display: inline-block;
    border-radius: 9999px;
    background: #ff9187;
    color: #23366f;
    text-align: center;
    min-width: 92px;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 9px 0
}

.btn-type07 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.33;
    font-weight: 400;
    padding: 16px 56px 16px 24px;
    background: url(../images/img/common/ico_blank.svg) no-repeat right 25px top 50%/19px 12px;
    background-color: #fff;
    letter-spacing: 0
}

.btn-type08 {
    min-width: 154px;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 400;
    display: inline-block;
    border-radius: 9999px;
    padding: 6px 15px;
    background: #2167ae
}

.btn-type09 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    color: #2167ae;
    text-align: center;
    max-width: 310px;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 700;
    padding: 16px 35px;
    padding-right: 46px;
    background: url(../images/img/common/ico_blank02@2x.png) no-repeat right 15px top 50%/21px 21px;
    background-color: #fff
}

.btn-type10 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #fff;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    padding: 13px 15px
}

.btn-type11 {
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    text-align: center;
    min-width: 92px;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 9px 10px
}

.btn-type12 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    text-align: center;
    max-width: 310px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    padding: 13px 15px
}

.btn-type12.is-inactive {
    pointer-events: none;
    background: #a6adaf;
    color: #2b2e31;
    border-color: #a6adaf;
    opacity: .5
}

.btn-type13 {
    border: 2px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.8rem;
    line-height: 1.33;
    font-weight: 400;
    padding: 15px 56px 15px 24px;
    background: url(../images/img/common/ico_blank.svg) no-repeat right 25px top 50%/19px 12px;
    background-color: #fff
}

.btn-type14 {
    max-width: 340px;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 400;
    display: inline-block;
    border-radius: 9999px;
    padding: 6px 15px;
    background: #2167ae
}

.btn-type15 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.33;
    font-weight: 400;
    padding: 16px 56px 16px 24px;
    background: url(../images/img/common/ico_blank.svg) no-repeat right 25px top 50%/19px 12px;
    background-color: #fff;
    letter-spacing: 0
}

.btn-type16 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    padding: 13px 15px
}

.btn-type16.is-inactive {
    pointer-events: none;
    background: #a6adaf;
    color: #2b2e31;
    border-color: #a6adaf;
    opacity: .5
}

.btn-type17 {
    border: 2px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #fff;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    padding: 12px 15px
}

.btn-type18 {
    border: 1px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    text-align: center;
    max-width: 360px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.2;
    padding: 13px 15px
}

.btn-type18.is-inactive {
    pointer-events: none;
    background: #a6adaf;
    color: #2b2e31;
    border-color: #a6adaf;
    opacity: .5
}

.btn-type18__inner {
    display: inline-block;
    padding-right: 30px;
    background: url(../images/img/changeaccount/ico_blank_white.svg) no-repeat right
}

.btn-type19 {
    border: 2px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    background: #fff;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 400;
    padding: 8px 15px
}

.btn-type20 {
    min-width: 147px;
    text-align: center;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 400;
    display: inline-block;
    border-radius: 9999px;
    padding: 8px 15px;
    background: #2167ae
}

.btn-type21 {
    min-width: 147px;
    text-align: center;
    color: #2167ae;
    font-size: 1.6rem;
    font-weight: 400;
    display: inline-block;
    border-radius: 9999px;
    padding: 7px 15px;
    border: 1px solid #2167ae;
    background: #fff
}

.btn-type22 {
    border: 2px solid #2167ae;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 9999px;
    color: #2167ae;
    text-align: center;
    max-width: 340px;
    width: 100%;
    font-size: 1.8rem;
    line-height: 1.33;
    font-weight: 400;
    padding: 10px 24px 10px 24px;
    background-color: #fff
}

.btn-type22:after {
    content: "";
    width: 19px;
    height: 12px;
    display: block;
    background: url(../images/img/common/ico_blank.svg) no-repeat center/19px 12px
}

.btn-type23 {
    border: 2px solid #2167ae;
    display: inline-block;
    border-radius: 9999px;
    color: #2167ae;
    text-align: center;
    text-decoration: none;
    max-width: 340px;
    width: 100%;
    font-size: 1.6rem;
    line-height: 1.33;
    font-weight: 400;
    padding: 16px 0;
    background-color: #fff;
    letter-spacing: 0
}

.btn-type23::after {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    vertical-align: -5px;
    background: url(../images/img/common/ico_plus.svg)
}

.link-type01 {
    font-size: 1.8rem;
    font-weight: 400;
    display: inline-block;
    padding-right: 29px;
    color: #2167ae;
    background: url(../images/img/common/link_type01_arrow.svg) no-repeat right/18px 13px
}

.link-type02:not(:hover) {
    text-decoration: underline;
    color: #23366f
}

.link-type03 {
    background: url(../images/img/common/link_type03_arrow.svg) no-repeat right 0 top calc(50% + 1px)/7px 14px;
    font-size: 1.6rem;
    display: inline-block;
    padding-right: 12px;
    color: #23366f
}

.link-type04 {
    background: url(../images/img/common/link_type03_arrow.svg) no-repeat left/7px 12px;
    font-size: 1.6rem;
    display: inline-block;
    padding-left: 13px;
    color: #23366f;
    font-weight: 500
}

.link-blank {
    color: #2167ae;
    font-size: 1.6rem;
    font-weight: 500;
    display: inline-block;
    padding-right: 26px;
    background: url(../images/img/common/ico_blank.svg) no-repeat right/14.25px 9px
}

.link-blank02 {
    font-size: 1.4rem;
    font-weight: 700;
    display: inline-block;
    padding-right: 25px;
    background: url(../images/img/common/ico_blank02@2x.png) no-repeat right/21px 21px
}

.link-blank02:not(:hover) {
    text-decoration: underline
}

.link-blank03 {
    font-size: 1.4rem;
    font-weight: 500;
    display: inline-block;
    padding-right: 25px;
    color: #23366f;
    background: url(../images/img/common/ico_blank02@2x.png) no-repeat right/21px 21px
}

.link-blank03:not(:hover) {
    text-decoration: underline
}

.link-blank04 {
    background: url(../images/img/common/link_type03_arrow.svg), url(../images/img/common/ico_blank04.svg);
    background-size: 7px 12px, 20px 12px;
    background-repeat: no-repeat;
    background-position: left, right;
    font-size: 1.6rem;
    display: inline-block;
    padding-left: 13px;
    padding-right: 30px;
    color: #23366f;
    font-weight: 500
}

.link-blank05 {
    font-size: 1.4rem;
    font-weight: 500;
    display: inline-block;
    padding-right: 30px;
    color: #23366f;
    background: url(../images/img/common/ico_blank04.svg) no-repeat right
}

.link-blank05:not(:hover) {
    text-decoration: underline
}

.link-blank06 {
    padding-right: 30px;
    background: url(../images/img/common/ico_blank04.svg) no-repeat top 50% right 5px
}

.link-blank06:not(:hover) {
    text-decoration: underline
}

.link-back {
    font-size: 1.8rem;
    font-weight: 400;
    display: inline-block;
    padding-left: 25px;
    color: #2167ae;
    background: url(../images/img/common/link_back_arrow.svg) no-repeat left/10px 19px;
    border: none;
    text-decoration: none
}

.link-pdf {
    font-size: 1.6rem;
    font-weight: 400;
    display: inline-block;
    padding-right: 32px;
    background: url(../images/img/common/ico_pdf.svg) no-repeat right
}

.link-pdf:not(:hover) {
    text-decoration: underline
}

.link-pdf02 {
    background: url(../images/img/common/link_type03_arrow.svg), url(../images/img/common/ico_pdf.svg);
    background-size: 7px 12px, 19px 18px;
    background-repeat: no-repeat;
    background-position: left, right;
    font-size: 1.6rem;
    display: inline-block;
    padding-left: 13px;
    padding-right: 30px;
    color: #23366f;
    font-weight: 500
}

.link-xml {
    font-size: 1.6rem;
    font-weight: 700;
    display: inline-block;
    padding-right: 32px;
    background: url(../images/img/common/ico_xml.svg) no-repeat right
}

.inactive {
    color: #8b8e90;
    border-color: #c9cdcf;
    background-color: #c9cdcf
}

.link-list01 {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid #d8e0df
}

.link-list01__item {
    background: #fff;
    border-bottom: 1px solid #d8e0df;
    font-size: 1.4rem
}

.link-list01__item a {
    display: block;
    padding: 24px 49px 24px 20px;
    position: relative
}

.link-list01__item a:after {
    content: "";
    line-height: 1;
    width: 10px;
    height: 19px;
    background: url(../images/img/common/link_list01_arrow.svg) no-repeat center/contain;
    position: absolute;
    top: calc(50% - 10px);
    right: 22px
}

.link-list01__item__hdg {
    font-size: 1.8rem;
    color: #23366f;
    font-weight: 700;
    line-height: 1.4
}

.link-list01__item__hdg:has(+*) {
    margin-bottom: 10px
}

.link-list02 {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto
}

.link-list02__item {
    background: #fff;
    border-bottom: 1px solid #d3e5f4
}

.link-list02__item:nth-of-type(1) {
    border-top: 1px solid #d3e5f4
}

.link-list02__item a {
    display: block;
    padding: 24px 36px 24px 20px;
    position: relative
}

.link-list02__item a:after {
    content: "";
    line-height: 1;
    width: 6px;
    height: 13px;
    background: url(../images/img/common/link_list02_arrow.svg) no-repeat center/contain;
    position: absolute;
    top: calc(50% - 7px);
    right: 20px
}

.list-type01__item {
    font-size: 1.6rem;
    font-weight: 500;
    padding-left: 24px;
    text-indent: -24px;
    line-height: 1.4
}

.list-type01__item:before {
    content: "・";
    margin-right: 7px
}

.list-type01__item:nth-of-type(n+2) {
    margin-top: 9px
}

::placeholder {
    color: #ddd
}

input[type=text],
textarea {
    border: 1px solid #91bfe3;
    border-radius: 5px;
    background: #fff;
    font-weight: 700;
    line-height: 1.4;
    padding: 14px 19px 13px;
    width: 100%
}

input[type=text]:focus,
textarea:focus {
    outline: 1px solid #2167ae;
    border-color: #2167ae
}

input[type=text].size-s,
textarea.size-s {
    max-width: 110px
}

input[type=text].size-140,
textarea.size-140 {
    max-width: 140px
}

input[type=text].is-notEmpty,
textarea.is-notEmpty {
    border-color: #d5d5d5;
    background: #fff
}

input[type=text].is-empty,
textarea.is-empty {
    border-color: #cb4b40;
    background: #ffe3e1
}

input[type=text].is-error,
textarea.is-error {
    border-color: #cb4b40;
    background: #ffe3e1;
    color: #cb4b40
}

input[type=text]:disabled,
textarea:disabled {
    color: #929a9c;
    border-color: #c9d0d2;
    background: #e4e9ec;
    pointer-events: none
}

input[type=text]:disabled::placeholder,
textarea:disabled::placeholder {
    color: #929a9c
}

.changeRegistInfo-nameChange__item:has(input[type=text]:disabled, textarea:disabled) {
    pointer-events: none
}

input[type=text].text-type01,
textarea.text-type01 {
    border-color: #c9d0d2;
    color: #23366f
}

label:has(.calender),
label:has(input[type=date]) {
    position: relative;
    display: block
}

label:has(.calender)::after,
label:has(input[type=date])::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    background: url(../images/img/common/ico_calendar.svg)
}

label:has(.calender) .calender,
label:has(input[type=date]) .calender {
    border-color: #c9d0d2;
    color: #23366f
}

input[type=date] {
    border: 1px solid #c9d0d2;
    border-radius: 5px;
    background: #fff;
    color: #23366f;
    font-weight: 700;
    line-height: 1.4;
    padding: 14px 19px 13px;
    width: 100%
}

input[type=date]::-webkit-calendar-picker-indicator {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0
}

input[type=date]::-webkit-inner-spin-button {
    -webkit-appearance: none
}

input[type=date]::-webkit-clear-button {
    -webkit-appearance: none
}

select {
    border: 1px solid #d5d5d5;
    border-radius: 5px;
    background: #fff;
    font-weight: 700;
    line-height: 1.4;
    padding: 14px 19px 13px;
    width: 100%;
    max-width: 400px
}

select:focus {
    outline: 1px solid #2167ae;
    border-color: #2167ae
}

.credit__expiryWrap select {
    width: auto;
    max-width: 100%
}

.radio-type01 {
    display: inline-block;
    border: 1px solid #b1b1b1;
    border-radius: 10px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 11px 10px 11px 50px;
    position: relative;
    width: calc(50% - 12px);
    max-width: 185px;
    cursor: pointer
}

.radio-type01:before {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border: 1px solid #b1b1b1;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: calc(50% - 11px);
    left: 15px
}

.radio-type01:after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    background: #2167ae;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 6px);
    left: 20px;
    opacity: 0
}

.radio-type01:has(input:checked) {
    color: #2167ae;
    border-color: #2167ae;
    background: #e9f7fc
}

.radio-type01:has(input:checked):before {
    border-color: #2167ae
}

.radio-type01:has(input:checked):after {
    opacity: 1
}

.radio-type01 input {
    display: none
}

.radio-type01Wrap {
    display: flex;
    justify-content: space-between
}

.radio-type01Wrap:not(:has(input[value=事前予約]:checked))+input#date {
    display: none
}

.radio-type02 {
    display: block;
    border: 1px solid #c9d0d2;
    border-radius: 10px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 15px 10px 15px 44px;
    position: relative;
    cursor: pointer
}

.radio-type02.is-inactive {
    pointer-events: none;
    background: #A6ADAF;
    color: #2B2E31;
    border-color: #A6ADAF;
    opacity: .5; 
}

.radio-type02:before {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border: 2px solid #a6adaf;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: calc(50% - 12px);
    left: 10px;
    box-sizing: content-box
}

.radio-type02:after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 6px);
    left: 16px;
    opacity: 0
}

.radio-type02:has(input:checked) {
    border-color: #23366f;
    background: #c7ebf9
}

.radio-type02:has(input:checked):before {
    border-color: #23366f;
    background: #23366f
}

.radio-type02:has(input:checked):after {
    opacity: 1
}

.radio-type02 input {
    display: none
}

.radio-type02__label {
    display: block
}

.reissuedeductcert__etax+.radio-type02__label {
    margin-top: 5px
}

.radio-type03 {
    display: inline-block;
    border: 1px solid #b1b1b1;
    border-radius: 5px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 11px 10px 11px 50px;
    position: relative;
    width: calc(50% - 5px);
    max-width: 200px;
    cursor: pointer
}

.radio-type03:before {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border: 1px solid #b1b1b1;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: calc(50% - 11px);
    left: 15px
}

.radio-type03:after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    background: #2167ae;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 6px);
    left: 20px;
    opacity: 0
}

.radio-type03:has(input:checked) {
    color: #2167ae;
    border-color: #2167ae;
    background: #e9f7fc
}

.radio-type03:has(input:checked):before {
    border-color: #2167ae
}

.radio-type03:has(input:checked):after {
    opacity: 1
}

.radio-type03 input {
    display: none
}

.radio-type03Wrap {
    display: flex;
    gap: 10px
}

.radio-type04 {
    display: block;
    border: 1px solid #c9d0d2;
    border-radius: 5px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 15px 10px 15px 44px;
    position: relative;
    cursor: pointer
}

.radio-type04:before {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border: 2px solid #a6adaf;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: calc(50% - 12px);
    left: 10px
}

.radio-type04:after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 6px);
    left: 16px;
    opacity: 0
}

.radio-type04:has(input:checked) {
    border-color: #23366f;
    background: #c7ebf9
}

.radio-type04:has(input:checked):before {
    border-color: #23366f;
    background: #23366f
}

.radio-type04:has(input:checked):after {
    opacity: 1
}

.radio-type04 input {
    display: none
}

.radio-type04__label {
    display: block
}

.reissuedeductcert__etax+.radio-type04__label {
    margin-top: 5px
}

.radio-type05Wrap {
    display: flex;
    gap: 10px
}

.radio-type05Wrap>div {
    width: 100%
}

.radio-type05 {
    position: relative;
    display: block;
    width: 100%;
    padding: 17px 16px;
    border: 1px solid #c9d0d2;
    border-radius: 4px
}

.radio-type05::before {
    content: "";
    width: 24px;
    aspect-ratio: 1/1;
    border: 2px solid #a6adaf;
    border-radius: 5px;
    background: #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 15px
}

.radio-type05::after {
    content: "";
    width: 10px;
    height: 15px;
    aspect-ratio: 1/1;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: calc(50% - 3px);
    transform: translateY(-50%) rotate(40deg);
    left: 23px;
    opacity: 0
}

.radio-type05:has(input:checked) {
    border-color: #23366f;
    background-color: #c7ebf9
}

.radio-type05:has(input:checked)::before {
    border-color: #23366f;
    background: #23366f
}

.radio-type05:has(input:checked)::after {
    opacity: 1
}

.radio-type05 span {
    margin-left: 36px
}

.radio-type05 input {
    display: none
}

.check-type01 {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 5px 0 5px 45px;
    position: relative;
    cursor: pointer
}

.check-type01:before {
    content: "";
    width: 28px;
    aspect-ratio: 1/1;
    border: 1px solid #a0a0a0;
    border-radius: 3px;
    background: #fff;
    position: absolute;
    top: calc(50% - 15px);
    left: 0
}

.check-type01:after {
    content: "";
    width: 10px;
    height: 15px;
    border-bottom: 3px solid #23366f;
    border-right: 3px solid #23366f;
    transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 12px);
    left: 8px;
    opacity: 0
}

.check-type01:has(input:checked):after {
    opacity: 1
}

.check-type01 input {
    display: none
}

.check-type02 {
    display: block;
    border: 1px solid #c9d0d2;
    border-radius: 4px;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.4;
    padding: 18px 10px 18px 44px;
    position: relative;
    cursor: pointer
}

.check-type02:before {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border: 2px solid #dde4e3;
    border-radius: 6px;
    background: #fff;
    position: absolute;
    top: calc(50% - 12px);
    left: 10px
}

.check-type02:after {
    content: "";
    width: 18px;
    aspect-ratio: 1/1;
    background: url(../images/img/common/ico_check02.svg) no-repeat center;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 9px);
    left: 13px;
    opacity: 0
}

.check-type02:has(input:checked) {
    border-color: #23366f;
    background: #c7ebf9
}

.check-type02:has(input:checked):before {
    border-color: #23366f;
    background: #23366f
}

.check-type02:has(input:checked):after {
    opacity: 1
}

.check-type02 input {
    display: none
}

.check-type02__label {
    display: block
}

.reissuedeductcert__etax+.check-type02__label {
    margin-top: 5px
}

.check-type02Wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px
}

.check-type02Wrap__2column {
    width: calc(50% - 5px)
}

.check-type03 {
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 5px 0 5px 32px;
    position: relative;
    cursor: pointer
}

.check-type03:before {
    content: "";
    width: 22px;
    aspect-ratio: 1/1;
    border: 1px solid #a0a0a0;
    border-radius: 3px;
    background: #fff;
    position: absolute;
    top: calc(50% - 12px);
    left: 0
}

.check-type03:after {
    content: "";
    width: 8px;
    height: 12px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 10px);
    left: 7px;
    opacity: 0
}

.check-type03:has(input:checked)::before {
    background: #23366f
}

.check-type03:has(input:checked):after {
    opacity: 1
}

.check-type03 input {
    display: none
}

.errorMessage {
    color: #cb4b40;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1.4;
    margin-top: 10px
}

label:has(input[type=radio].is-empty) {
    border-color: #cb4b40;
    background: #ffe3e1
}

.label-focus {
    padding: 15px 10px;
    border-radius: 4px;
    border: 1px solid #c9d0d2;
    background: #fff;
    line-height: normal
}

.menu {
    position: relative
}

.menuContent {
    padding: 10px 0;
    display: none;
    position: absolute;
    min-width: 190px;
    z-index: 1;
    right: 30px;
    top: 5px;
    background: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .1019607843);
    border: 1px solid #e7eceb;
    border-radius: 3px
}

.menuContent a {
    color: #000;
    padding: 6px 15px;
    text-decoration: none;
    display: block;
    font-size: 16px
}

.top-urgent {
    background: #ffe3e1;
    text-align: center;
    padding: 12px 0
}

.top-urgent a {
    display: inline-block;
    padding-left: 25px;
    position: relative;
    font-size: 1.4rem;
    font-weight: 500;
    color: #cb4b40
}

.top-urgent a:before {
    content: "";
    width: 23px;
    height: 20px;
    background: url(../images/img/common/ico_urgent.svg) no-repeat center/contain;
    position: absolute;
    top: 0;
    left: 0
}

.top-urgent a:not(:hover) {
    text-decoration: underline
}

.top-hello {
    background-image: linear-gradient(to bottom, transparent 254px, #fff 254px), url(../images/img/top/hello_bg.png);
    background-repeat: no-repeat;
    background-size: auto, cover;
    padding: 25px 0 40px
}

.top-hello__user {
    font-size: 1.8rem;
    font-weight: 500;
    color: #fff;
    text-align: center
}

.top-hello__box {
    text-align: center;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto
}

.top-hello__box__henko {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 11px 0;
    margin: 40px auto 0
}

.top-hello__box__henko__item {
    width: calc(50% - 6px);
    background: #fff;
    box-shadow: 0 2px 10px 0 rgba(58, 88, 105, .35);
    border: 1px solid #dee2e8;
    padding: 20px 15px;
    text-align: center
}

.top-hello__box__henko__item__ttl {
    margin-top: 12px;
    color: #23366f;
    font-weight: 700
}

.btn-type02.is-kyufu {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px
}

.btn-type02.is-kyufu:before {
    content: "";
    width: 18px;
    height: 18px;
    background: url(../images/img/top/ico_kyufu.svg) no-repeat center;
    display: inline-block
}

.top-links {
    padding-bottom: 40px
}

.top-links__caution {
    padding-left: 1em;
    font-size: 1.4rem;
    font-weight: 500;
    margin-top: 20px;
    text-indent: -1em
}

.top-links__caution:before {
    content: "※"
}

.top-news {
    padding-bottom: 50px
}

.content {
    display: none
}

.content.is-display {
    display: block
}

.top-news__tab {
    display: flex
}

.top-news__tab__item {
    width: 50%;
    cursor: pointer;
    color: #a6adaf;
    background: #ebf0f2;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 63px
}

.top-news__tab__item.tab-active {
    background: #fff;
    color: #23366f;
    border-bottom: 1px solid #2167ae
}

.top-news__tab__item.tab-active .top-news__tab__item__unread {
    background: #cb4b40
}

.top-news__tab__item__unread {
    background: #dca6a6;
    color: #fff;
    display: inline-block;
    border-radius: 9999px;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.2;
    padding: 2px 6px
}

.top-news__list__item:nth-of-type(n+2) {
    border-top: 1px solid #d8e0df
}

.top-news__list__item a {
    display: block;
    padding: 15px 42px 15px 20px;
    position: relative
}

.top-news__list__item a:after {
    content: "";
    line-height: 1;
    width: 10px;
    height: 19px;
    background: url(../images/img/common/link_list01_arrow.svg) no-repeat center/contain;
    position: absolute;
    top: calc(50% - 10px);
    right: 22px
}

.top-news__list__item__date {
    font-size: 1.4rem;
    line-height: 1.3;
    color: #868686;
    font-weight: 400
}

.top-news__list__item__hdg {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.4
}

.top-benefit__inner {
    padding: 48px 0 27px;
    background: url(../images/img/top/benefit_bg.jpg) no-repeat center/400px 280px
}

.top-benefit__box {
    max-width: 332px;
    margin: 0 auto;
    background: url(../images/img/top/benefit_box.png) no-repeat center/contain;
    padding: 35px 0 30px;
    text-align: center
}

.top-benefit__hdgSub {
    display: inline-block;
    background: #428351;
    font-size: 1.4rem;
    color: #fff;
    font-weight: 500;
    padding: 1px 20px;
    border-radius: 9999px
}

.top-benefit__hdg {
    color: #428351;
    font-size: 2rem;
    text-align: center;
    margin: 12px 0 17px;
    font-weight: 500
}

.top-benefit__hdg__inner {
    display: inline-block;
    padding: 0 20px;
    background-image: url(../images/img/top/benefit_ttl_left@2x.png), url(../images/img/top/benefit_ttl_right@2x.png);
    background-position: left, right;
    background-repeat: no-repeat;
    background-size: 15px auto
}

.top-benefit__btn {
    border: 1px solid #428351;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    border-radius: 9999px;
    background: #fff;
    color: #428351;
    text-align: center;
    max-width: 218px;
    width: 100%;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 13px 15px
}

.top-benefit__btn:after {
    content: "";
    width: 18px;
    height: 13px;
    background: url(../images/img/top/benefit_btn_ico@2x.png) no-repeat center/contain;
    display: inline-block
}

.top-contract {
    padding: 50px 0 0;
    margin-bottom: 50px
}

.top-contract__box {
    text-align: center;
    background: #eceeef;
    padding: 20px 15px;
    color: #23366f;
    font-weight: 500
}

.top-others {
    background: #dae2f4;
    padding: 40px 0;
    text-align: center
}

.top-others .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 25px
}

.credit__check__item {
    font-weight: 700;
    line-height: 1.4
}

.credit__check__item:nth-of-type(n+2) {
    padding-top: 30px;
    margin-top: 30px;
    border-top: 2px dashed #ddd
}

.credit__contract {
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    border-bottom: 1px solid #e8f2f7;
    background: #fff;
    padding: 30px 15px;
    display: flex;
    flex-wrap: wrap;
    font-weight: 700;
    line-height: 1.4
}

.credit__contract__dt {
    width: 5em
}

.credit__contract__dt:after {
    content: ":"
}

.credit__contract__dt:nth-of-type(n+2) {
    margin-top: 5px
}

.credit__contract__dd {
    width: calc(100% - 5em)
}

.credit__contract__dd:nth-of-type(n+2) {
    margin-top: 5px
}

.credit__possibleCard {
    background: #f4f9fc;
    padding: 15px
}

.credit__expiryWrap {
    display: flex;
    align-items: center;
    gap: 10px
}

.credit__changeFlow {
    max-width: 343px;
    margin-left: auto;
    margin-right: auto
}

.credit__changeFlow__item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    position: relative;
    font-size: 1.4rem;
    line-height: 1.4;
    font-weight: 700;
    padding: 16px 12px
}

.credit__changeFlow__item:nth-of-type(n+2) {
    margin-top: 20px
}

.credit__changeFlow__item:nth-of-type(n+2):before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 9px solid #dde4e3;
    border-bottom: 0;
    position: absolute;
    top: -15px;
    left: calc(50% - 8px)
}

.credit__changeFlow__item.is-complete {
    background: #eceeef;
    color: #a6adaf
}

.credit__changeFlow__item.is-complete .credit__changeFlow__item__ico {
    filter: grayscale(1);
    opacity: .3
}

.credit__changeFlow__item.is-noArrow+.credit__changeFlow__item {
    margin-top: 4px
}

.credit__changeFlow__item.is-noArrow+.credit__changeFlow__item:before {
    display: none
}

.credit__changeFlow__item__ico {
    flex: 0 0 auto
}

.credit__changeFlow__item__eigyo {
    background: #1FB1E6;
    position: absolute;
    right: 25px;
    top: 0;
    z-index: 1;
    height: calc(200% + 22px);
    writing-mode: vertical-rl;
    text-orientation: upright;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    border-radius: 500px;
    padding-right: 1px
}

.login__nameWrap {
    display: flex;
    align-items: center;
    gap: 10px
}

.login__nameWrap input[type=text] {
    max-width: 169px
}

.login__nameWrap span {
    flex: 0 0 auto
}

.login__customerCare {
    background: #dae2f4;
    padding: 40px 15px;
    text-align: center;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.login__customerCare__hdg {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.6rem;
    font-weight: 500;
    color: #23366f
}

.login__customerCare__hdg:before {
    content: "";
    background: url(../images/img/common/ico_tel.svg) no-repeat center;
    width: 24px;
    height: 24px;
    display: inline-block
}

.login__customerCare__tel {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
    font-weight: 500;
    color: #23366f;
    gap: 7px
}

.login__customerCare__tel:before {
    content: "";
    background: url(../images/img/common/ico_free_dial@2x.png) no-repeat center/contain;
    width: 33px;
    height: 19px;
    display: inline-block
}

.login__customerCare__tel:not(:hover) {
    text-decoration: underline;
    text-decoration-thickness: 1px
}

.login__noteEx {
    padding-left: 35px;
    background: url(../images/img/login/ico_info.svg) no-repeat top left;
    min-height: 25px;
    font-weight: 500
}

.login__tel {
    text-align: center
}

.login__tel__limit {
    font-size: 2.2rem;
    color: #cb4b40
}

.login__tel__btn {
    text-align: center;
    display: inline-block;
    border-radius: 9999px;
    background: #2167ae;
    color: #fff;
    max-width: 310px;
    width: 100%;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 11px 15px
}

.login__tel__btn__num {
    display: block;
    font-size: 1.6rem
}

.top-news__tab.is-procedurehistory .top-news__tab__item.tab-active {
    color: #2167ae
}

.procedurehistory__flowWrap {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto
}

.procedurehistory__flow__item {
    display: flex;
    align-items: center;
    gap: 0 30px;
    background: #fff;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    position: relative;
    font-size: 1.6rem;
    line-height: 1.4;
    font-weight: 700;
    padding: 16px 12px
}

.procedurehistory__flow__item:nth-of-type(n+2) {
    margin-top: 20px
}

.procedurehistory__flow__item:nth-of-type(n+2):before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 9px solid #dde4e3;
    border-bottom: 0;
    position: absolute;
    top: -15px;
    left: calc(50% - 8px)
}

.procedurehistory__flow__item:last-of-type {
    justify-content: center
}

.procedurehistory__flow__item:has(.is-complete) {
    background: #eceeef;
    color: #a6adaf
}

.procedurehistory__flow__item__status {
    width: 58px;
    color: #fff;
    background: #929a9c;
    border-radius: 3px;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 500;
    padding: 1px 0 2px
}

.procedurehistory__flow__item__status.is-complete {
    background: #19bab6
}

.procedurehistory__flow__item__status.is-support {
    background: #ffc828
}

.contractdetail__box {
    border-top: 1px solid #d8e0df;
    border-bottom: 1px solid #d8e0df;
    padding: 24px 15px
}

.contractdetail__box+.contractdetail__box {
    border-top: none
}

.contractdetail__box.is-project {
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.contractdetail__box__hdg {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5
}

.contractdetail__box__hdg02 {
    color: #2167ae;
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 1.4;
    margin: 20px 0
}

.contractdetail__dl+.contractdetail__box__hdg02 {
    margin-top: 30px
}

.contractdetail__box__accordionTtl {
    padding-right: 40px;
    position: relative;
    cursor: pointer
}

.contractdetail__box__accordionTtl:before {
    content: "";
    width: 19px;
    height: 10px;
    background: url(../images/img/contractdetail/accordion_arrow.svg) no-repeat center/contain;
    position: absolute;
    top: calc(50% - 5px);
    right: 2px;
    transition: .5s
}

.contractdetail__box__accordionTtl.is-open:before {
    transform: rotate(-180deg)
}

.contractdetail__box__accordionContents {
    display: none;
    padding-top: 20px
}

.contractdetail__link {
    display: flex;
    gap: 2px;
    padding: 30px 0
}

.contractdetail__link__item {
    width: calc((100% - 4px)/ 3);
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700
}

.contractdetail__link__item a {
    display: block;
    background: #d3e5f4;
    color: #2167ae;
    padding: 20px 15px
}

.contractdetail__link__item.is-current a {
    background: #5495cf;
    color: #fff
}

.contractdetail__dl {
    display: flex;
    flex-wrap: wrap;
    font-weight: 400;
    font-size: 1.6rem;
    border: 1px solid #c9d0d2;
    border-bottom: none
}

.contractdetail__dl__dt {
    width: 170px;
    padding: 16px;
    background: #f4f9fc;
    border-bottom: 1px solid #c9d0d2
}

.contractdetail__dl__dd {
    width: calc(100% - 170px);
    padding: 16px;
    border-bottom: 1px solid #c9d0d2
}

.cancel-note__balloon {
    display: inline-block;
    background: #91bfe3;
    text-align: center;
    width: 100%;
    max-width: 340px;
    color: #fff;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1.47;
    padding: 10px 15px;
    border-radius: 9999px;
    position: relative;
    margin-bottom: 20px
}

.cancel-note__balloon:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 11px solid transparent;
    border-left: 11px solid transparent;
    border-top: 23px solid #91bfe3;
    border-bottom: 0;
    position: absolute;
    left: calc(50% - 12px);
    bottom: -11px
}

.cancel__check {
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    border-top: 1px solid #d8e0df
}

.cancel__check__item {
    border-bottom: 1px solid #d8e0df
}

.cancel__check__item label {
    display: block;
    position: relative;
    padding: 24px 15px 24px 65px;
    cursor: pointer
}

.cancel__check__item label:before {
    content: "";
    width: 28px;
    aspect-ratio: 1/1;
    border: 1px solid #2167ae;
    border-radius: 3px;
    background: #fff;
    position: absolute;
    top: calc(50% - 15px);
    left: 15px
}

.cancel__check__item label:after {
    content: "";
    width: 10px;
    height: 15px;
    border-bottom: 3px solid #23366f;
    border-right: 3px solid #23366f;
    transform: rotate(45deg);
    position: absolute;
    top: calc(50% - 12px);
    left: 24px;
    opacity: 0
}

.cancel__check__item label:has(input:checked):after {
    opacity: 1
}

.cancel__check__item label input {
    display: none
}

.cancel__check__item__hdg {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 5px
}

.cancel__target {
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    font-weight: 700;
    border-top: 1px solid #d8e0df
}

.cancel__target__item {
    border-bottom: 1px solid #d8e0df
}

.cancel__target__item__hdg {
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 5px;
    background: #f3f3f3;
    line-height: 1.4
}

.cancel__target__item__hdg__type {
    flex: 0 0 auto
}

.cancel__target__item__contents {
    padding: 30px 15px
}

.cancel__target__item__fee {
    display: flex;
    align-items: center;
    gap: 5px;
    background: #f4f9fc;
    padding: 15px;
    line-height: 1.4
}

.cancel__target__item__fee__ttl {
    flex: 0 0 auto
}

.cancel__flow {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto
}

.cancel__flow__item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    position: relative;
    font-size: 1.6rem;
    line-height: 1.4;
    font-weight: 700;
    padding: 16px 9px 16px 17px
}

.cancel__flow__item:nth-of-type(n+2) {
    margin-top: 20px
}

.cancel__flow__item:nth-of-type(n+2):before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 9px solid #dde4e3;
    border-bottom: 0;
    position: absolute;
    top: -15px;
    left: calc(50% - 8px)
}

.cancel__flow__item:last-of-type {
    justify-content: center
}

.cancel__flow__item.t-left {
    justify-content: flex-start
}

.cancel__flow__item.is-complete {
    background: #eceeef;
    border-color: #eceeef;
    color: #a6adaf
}

.cancel__flow__item.is-complete .cancel__flow__item__ico {
    filter: grayscale(1);
    opacity: .3
}

.cancel__flow__item.is-complete .cancel__flow__item__target {
    background: #929a9c;
    color: #fff
}

.cancel__flow__item.is-noArrow+.cancel__flow__item {
    margin-top: 4px
}

.cancel__flow__item.is-noArrow+.cancel__flow__item:before {
    display: none
}

.cancel__flow__item.is-blue {
    background: #e9f7fc
}

.cancel__flow__item__ico {
    flex: 0 0 auto
}

.cancel__flow__item__target {
    flex: 0 0 122px;
    margin-left: auto;
    text-align: center;
    font-size: 1.4rem;
    background: #2167ae;
    color: #fff;
    border-radius: 3px;
    font-weight: 500;
    padding: 1px 0
}

.cancel__flow__item__target.is-customer {
    background: #dad2bd;
    color: #0d1115
}

.cancel__infoBox {
    background: url(../images/img/cancel/ico_info.svg) no-repeat top 20px left 15px;
    background-color: #ffe3e1;
    padding: 20px 15px 20px 45px
}

.reissuedeductcert__etax {
    font-size: 1.4rem;
    font-weight: 500;
    background: #ffc828;
    display: inline-block;
    line-height: 1.3;
    padding: 4px 9px;
    border-radius: 9000px
}

.reissuedeductcert__paper,
.reissuedeductcert__xml {
    display: none;
    border-top: 1px solid #d8e0df;
    padding: 40px 15px 0;
    width: calc(100% + 30px);
    position: relative;
    left: -15px
}

.reissuedeductcert {
    counter-reset: counter
}

.reissuedeductcert:has(input[value=電子データ（XML）のダウンロード]:checked) .reissuedeductcert__xml {
    display: block
}

.reissuedeductcert:has(input[value=紙での郵送]:checked) .reissuedeductcert__paper {
    display: block
}

.reissuedeductcert__years {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 15px
}

.reissuedeductcert__years__item {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    position: relative
}

.reissuedeductcert__years__item:nth-last-of-type(n+2) {
    padding-right: 15px
}

.reissuedeductcert__years__item:nth-last-of-type(n+2):after {
    content: "";
    width: 1px;
    height: 18px;
    background: #c9d0d2;
    position: absolute;
    right: 0;
    top: calc(50% - 9px)
}

.reissuedeductcert__note {
    position: relative;
    padding-left: 23px;
    font-size: 14px;
    font-weight: 500
}

.reissuedeductcert__note:before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 16px
}

.reissuedeductcert__outHdg {
    padding-top: 75px;
    background: url(../images/img/reissuedeductcert/ico_out.svg) no-repeat top/54px 54px;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.4;
    font-weight: 500
}

.reissuedeductcert__outHdg.is-suspend {
    background: url(../images/img/changeaccount/ico_suspend.svg) no-repeat top/65px 65px
}

.reissuedeductcert__outHdg.is-failed {
    background: url(../images/img/changeaccount/ico_failed.svg) no-repeat top/65px 65px
}

.reissuedeductcert__newName {
    border-top: 2px dashed #c9d0d2;
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    padding: 40px 15px;
    line-height: 1.4
}

.contractdetail__box__accordionReissuedeductcertWrap {
    padding: 24px 15px 20px;
    background: #dad2bd;
    border-radius: 10px
}

.contractdetail__box__accordionReissuedeductcertWrap .contractdetail__box__accordionTtl {
    padding-right: 0
}

.contractdetail__box__accordionReissuedeductcertWrap .contractdetail__box__accordionTtl:before {
    display: none
}

.contractdetail__box__accordionReissuedeductcertBtn {
    cursor: pointer;
    border: 1px solid #2167ae;
    background: #fff;
    border-radius: 900px;
    width: 170px;
    margin: 25px auto 0;
    text-align: center;
    padding: 8px 59px 8px 20px;
    font-size: 1.4rem;
    font-weight: 400;
    color: #2167ae;
    position: relative
}

.contractdetail__box__accordionReissuedeductcertBtn:before {
    content: "詳細を見る"
}

.contractdetail__box__accordionReissuedeductcertBtn.is-open:before {
    content: "詳細を閉じる"
}

.contractdetail__box__accordionReissuedeductcertBtn.is-open:after {
    transform: rotate(-180deg)
}

.contractdetail__box__accordionReissuedeductcertBtn:after {
    content: "";
    width: 19px;
    height: 10px;
    background: url(../images/img/reissuedeductcert/arrow_accordion_reissuedeductcert_btn.svg) no-repeat center/contain;
    position: absolute;
    top: calc(50% - 5px);
    right: 30px;
    transition: .5s
}

.contractdetail__box:has(.contractdetail__box__accordionReissuedeductcertWrap) {
    counter-increment: counter
}

.contractdetail__box:has(.contractdetail__box__accordionReissuedeductcertWrap) .contractdetail__box__hdg {
    padding-left: 30px;
    position: relative
}

.contractdetail__box:has(.contractdetail__box__accordionReissuedeductcertWrap) .contractdetail__box__hdg:before {
    content: counter(counter);
    width: 24px;
    line-height: 24px;
    background: #23366f;
    color: #fff;
    font-weight: 500;
    font-size: 1.4rem;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0
}

.contractdetail__box:has(.contractdetail__box__accordionReissuedeductcertWrap) .contractdetail__box__accordionContents {
    padding: 25px 0 15px
}

.credit__changeFlow__item.is-reissuedeductcert .credit__changeFlow__item__eigyo {
    height: calc(200% + 2px);
    top: 10px
}

.selectpaymentmethod__creditContractWrap {
    padding: 0 0 30px;
    border-bottom: 1px solid #d8e0df
}

.selectpaymentmethod__creditContractWrap .credit__contract {
    border: none;
    width: 100%;
    padding-right: 0;
    padding-left: 0;
    position: static
}

.changeRegistInfo-save {
    padding-top: 75px;
    background: url(../images/img/changeregistinfo/ico_save.svg) no-repeat top/54px 54px;
    text-align: center;
    font-size: 2.8rem;
    line-height: 1.4;
    font-weight: 500
}

.subpage-flow:has(:nth-of-type(4)) {
    max-width: 320px
}

.subpage-flow:has(:nth-of-type(4)) .subpage-flow__item {
    padding: 0;
    width: 20%
}

.subpage-flow:has(:nth-of-type(4)) .subpage-flow__item:nth-of-type(n+2):after {
    width: 30px;
    left: -25px
}

.subpage-flow:has(:nth-of-type(5)) {
    max-width: 355px
}

.subpage-flow:has(:nth-of-type(5)) .subpage-flow__item {
    padding: 0;
    width: 20%
}

.subpage-flow:has(:nth-of-type(5)) .subpage-flow__item:nth-of-type(n+2):after {
    width: 20px;
    left: -12px
}

.changeRegistInfo-procedure {
    display: inline-block;
    background: #1393d1;
    color: #fff;
    padding: 4px 5px;
    font-size: 1.2rem;
    line-height: 1;
    border-radius: 3px;
    margin-bottom: 10px
}

.subPage-dl__dd:has(.changeRegistInfo-procedure) {
    background: #fffde3
}

.changeRegistInfo__identification {
    border: 1px solid #5495cf;
    padding: 40px 15px
}

.credit__changeFlow__item.is-changeRegistInfo .credit__changeFlow__item__eigyo {
    height: calc(200% - 30px);
    top: 10px
}

.changeRegistInfo-nameChange {
    display: flex;
    gap: 20px
}

.changeRegistInfo-nameChange__item {
    width: calc(50% - 10px);
    max-width: 200px;
    display: block
}

.changeRegistInfo-nameChange__item input {
    display: block;
    margin-top: 10px
}

.credit__changeFlow__item.is-reeissuecert .credit__changeFlow__item__eigyo {
    height: calc(200% + 2px);
    top: 10px;
    right: 20px
}

.subpage-flow.is-accruedlist .subpage-flow__item:nth-of-type(2):after {
    left: -25px
}

.accruedlist__radio {
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    border-top: 1px solid #d8e0df
}

.accruedlist__radio__item {
    border-bottom: 1px solid #d8e0df
}

.accruedlist__radio__item label {
    display: block;
    position: relative;
    padding: 24px 15px 24px 65px;
    cursor: pointer
}

.accruedlist__radio__item label:before {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border: 2px solid #a6adaf;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: calc(50% - 12px);
    left: 15px
}

.accruedlist__radio__item label:after {
    content: "";
    width: 12px;
    aspect-ratio: 1/1;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: calc(50% - 6px);
    left: 21px;
    opacity: 0
}

.accruedlist__radio__item label:has(input:checked):before {
    border-color: #23366f;
    background: #23366f
}

.accruedlist__radio__item label:has(input:checked):after {
    opacity: 1
}

.accruedlist__radio__item label input {
    display: none
}

.notification-detail__date {
    font-size: 1.4rem;
    line-height: 1.3;
    color: #7f8788;
    font-weight: 400
}

.notification-detail__hdg {
    font-size: 1.8rem;
    font-weight: 700;
    color: #23366f;
    line-height: 1.44
}

.claimingbenefits__step {
    padding-left: 35px;
    min-height: 25px;
    font-weight: 500
}

.claimingbenefits__step.--01 {
    background: url(../images/img/claimingbenefits/ico_step1.svg) no-repeat top left
}

.claimingbenefits__step.--02 {
    background: url(../images/img/claimingbenefits/ico_step2.svg) no-repeat top left
}

.claimingbenefits__step.--03 {
    background: url(../images/img/claimingbenefits/ico_step3.svg) no-repeat top left
}

.claimingbenefits__step~.flexbox {
    gap: 16px
}

.claimingbenefits__step~.flexbox .box-white {
    width: 100%
}

.claimingbenefits__radio {
    width: calc(100% + 30px);
    position: relative;
    left: -15px;
    border-top: 1px solid #d8e0df
}

.claimingbenefits__radio__item {
    border-bottom: 1px solid #d8e0df
}

.claimingbenefits__radio__item.is-empty {
    border-color: #a6e9ab;
    background: #edfbee
}

.claimingbenefits__radio__item label {
    display: block;
    position: relative;
    padding: 24px 65px 24px 15px;
    cursor: pointer
}

.claimingbenefits__radio__item label::before {
    content: "";
    width: 30px;
    aspect-ratio: 1/1;
    border: 2px solid #a6adaf;
    border-radius: 5px;
    background: #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px
}

.claimingbenefits__radio__item label::after {
    content: "";
    width: 10px;
    height: 15px;
    aspect-ratio: 1/1;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: calc(50% - 3px);
    transform: translateY(-50%) rotate(40deg);
    right: 25px;
    opacity: 0
}

.claimingbenefits__radio__item label:has(input:checked)::before {
    border-color: #23366f;
    background: #23366f
}

.claimingbenefits__radio__item label:has(input:checked)::after {
    opacity: 1
}

.claimingbenefits__radio__item label input {
    display: none
}

#claimingbenefits .subpage-addrZip__modal__box {
    height: 45vh;
    overflow-y: scroll
}

#claimingbenefits .subPage-btnWrap .check-type01::after {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(40deg)
}

#claimingbenefits .subPage-btnWrap .check-type01:has(input:checked)::before {
    border-color: #23366f;
    background: #23366f
}

html:has(body.theme-desktop) {
    font-size: unset
}

body.theme-desktop {
    padding-top: 0
}

.l-main .change-btn__inner.color-red {
    background-color: #f1786d
}

.l-main .m-btn-type2 {
    margin-top: 26px;
    margin-bottom: 40px
}

.l-main .m-btn-type2__inner {
    max-width: 315px;
    font-size: 1.1875rem
}

.relative {
    position: relative
}

.inline {
    display: inline
}

.inline-block {
    display: inline-block
}

.block {
    display: block
}

.none {
    display: none
}

.grid {
    display: grid
}

.grid-3column {
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px
}

.flexbox {
    display: flex;
    gap: 10px;
}
.flexbox label {
    display: flex;
    align-items: center;
    gap: 10px
}
.subPage-dl__dd:last-of-type {
    border: none
}

.flex-row {
    flex-direction: row
}

.flex-row-rev {
    flex-direction: row-reverse
}

.flex-col {
    flex-direction: col
}

.flex-col-rev {
    flex-direction: col-reverse
}

.flex-nowrap {
    flex-wrap: nowrap
}

.flex-wrap {
    flex-wrap: wrap
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse
}

.flex-justify-start {
    justify-content: flex-start
}

.flex-justify-end {
    justify-content: flex-end
}

.flex-justify-center {
    justify-content: center
}

.flex-justify-between {
    justify-content: space-between
}

.flex-justify-around {
    justify-content: space-around
}

.flex-align-start {
    align-items: flex-start
}

.flex-align-end {
    align-items: flex-end
}

.flex-align-center {
    align-items: center
}

.flex-align-baseline {
    align-items: baseline
}

.flex-item {
    flex: 0 1 auto
}

.flex-item0 {
    flex: 0 0 auto
}

.link--under-line {
    text-decoration: underline
}

.link--under-line:hover {
    text-decoration: none
}

.link--under-line-border {
    position: relative;
    top: -2px
}

.link--under-line-border:not(:hover) {
    border-bottom: 1px solid #23366f
}

.link--under-line-border img {
    position: relative;
    top: -2px
}

.link--under-line-border__inner {
    position: relative;
    top: 2px
}

.fv {
    writing-mode: vertical-rl;
    letter-spacing: 3px
}

.fh {
    writing-mode: horizontal-tb
}

.t-center {
    text-align: center
}

.t-left {
    text-align: left
}

.t-right {
    text-align: right
}

.vat {
    vertical-align: top
}

.vam {
    vertical-align: middle
}

.vab {
    vertical-align: bottom
}

.fs-10 {
    font-size: 10px
}

.fs-11 {
    font-size: 11px
}

.fs-12 {
    font-size: 12px
}

.fs-13 {
    font-size: 13px
}

.fs-14 {
    font-size: 14px
}

.fs-15 {
    font-size: 15px
}

.fs-16 {
    font-size: 16px
}

.fs-17 {
    font-size: 17px
}

.fs-18 {
    font-size: 18px
}

.fs-19 {
    font-size: 19px
}

.fs-20 {
    font-size: 20px
}

.fs-21 {
    font-size: 21px
}

.fs-22 {
    font-size: 22px
}

.fs-23 {
    font-size: 23px
}

.fs-24 {
    font-size: 24px
}

.fs-25 {
    font-size: 25px
}

.fs-26 {
    font-size: 26px
}

.fs-27 {
    font-size: 27px
}

.fs-28 {
    font-size: 28px
}

.fs-29 {
    font-size: 29px
}

.fs-30 {
    font-size: 30px
}

.fs-31 {
    font-size: 31px
}

.fs-32 {
    font-size: 32px
}

.fs-33 {
    font-size: 33px
}

.fs-34 {
    font-size: 34px
}

.fs-35 {
    font-size: 35px
}

.fs-36 {
    font-size: 36px
}

.f-bold {
    font-weight: 700
}

.f-normal {
    font-weight: 400
}

.f-regular {
    font-weight: 500
}

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

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

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

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

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

.fc--white {
    color: #fff
}

.fc--black {
    color: #23366f
}

.fc--black2 {
    color: #2b2e31
}

.fc--red {
    color: #cb4b40
}

.fc--blue {
    color: #2167ae
}

.txtdeco-none {
    text-decoration: none
}

.m-0 {
    margin: 0
}

.mb-0 {
    margin-bottom: 0
}

.mb10 {
    margin-bottom: 10px
}

.mt-190 {
    margin-top: 190px
}

.mt-100 {
    margin-top: 100px
}

.mb-100 {
    margin-bottom: 100px
}

.mb150 {
    margin-bottom: 150px
}

.mb300 {
    margin-bottom: 10px
}

.mt-0 {
    margin-top: 0
}

.mt-5 {
    margin-top: 5px
}

.mt-10 {
    margin-top: 10px
}

.mt-15 {
    margin-top: 15px
}

.mt-20 {
    margin-top: 20px
}

.mt-25 {
    margin-top: 25px
}

.mt-30 {
    margin-top: 30px
}

.mt-35 {
    margin-top: 35px
}

.mt-40 {
    margin-top: 40px
}

.mt-45 {
    margin-top: 45px
}

.mt-50 {
    margin-top: 50px
}

.mt-55 {
    margin-top: 55px
}

.mt-60 {
    margin-top: 60px
}

.mt-65 {
    margin-top: 65px
}

.mt-70 {
    margin-top: 70px
}

.mt-75 {
    margin-top: 75px
}

.mt-80 {
    margin-top: 80px
}

.mt-85 {
    margin-top: 85px
}

.mt-90 {
    margin-top: 90px
}

.mt-95 {
    margin-top: 95px
}

.mt-100 {
    margin-top: 100px
}

.mb-0 {
    margin-bottom: 0
}

.mb-5 {
    margin-bottom: 5px
}

.mb-10 {
    margin-bottom: 10px
}

.mb-15 {
    margin-bottom: 15px
}

.mb-20 {
    margin-bottom: 20px
}

.mb-25 {
    margin-bottom: 25px
}

.mb-30 {
    margin-bottom: 30px
}

.mb-35 {
    margin-bottom: 35px
}

.mb-40 {
    margin-bottom: 40px
}

.mb-45 {
    margin-bottom: 45px
}

.mb-50 {
    margin-bottom: 50px
}

.mb-55 {
    margin-bottom: 55px
}

.mb-60 {
    margin-bottom: 60px
}

.mb-65 {
    margin-bottom: 65px
}

.mb-70 {
    margin-bottom: 70px
}

.mb-75 {
    margin-bottom: 75px
}

.mb-80 {
    margin-bottom: 80px
}

.mb-85 {
    margin-bottom: 85px
}

.mb-90 {
    margin-bottom: 90px
}

.mb-95 {
    margin-bottom: 95px
}

.mb-100 {
    margin-bottom: 100px
}

.mr-0 {
    margin-right: 0
}

.mr-5 {
    margin-right: 5px
}

.mr-10 {
    margin-right: 10px
}

.mr-15 {
    margin-right: 15px
}

.mr-20 {
    margin-right: 20px
}

.mr-25 {
    margin-right: 25px
}

.mr-30 {
    margin-right: 30px
}

.mr-35 {
    margin-right: 35px
}

.mr-40 {
    margin-right: 40px
}

.mr-45 {
    margin-right: 45px
}

.mr-50 {
    margin-right: 50px
}

.mr-55 {
    margin-right: 55px
}

.mr-60 {
    margin-right: 60px
}

.mr-65 {
    margin-right: 65px
}

.mr-70 {
    margin-right: 70px
}

.mr-75 {
    margin-right: 75px
}

.mr-80 {
    margin-right: 80px
}

.mr-85 {
    margin-right: 85px
}

.mr-90 {
    margin-right: 90px
}

.mr-95 {
    margin-right: 95px
}

.mr-100 {
    margin-right: 100px
}

.ml-0 {
    margin-left: 0
}

.ml-5 {
    margin-left: 5px
}

.ml-10 {
    margin-left: 10px
}

.ml-15 {
    margin-left: 15px
}

.ml-20 {
    margin-left: 20px
}

.ml-25 {
    margin-left: 25px
}

.ml-30 {
    margin-left: 30px
}

.ml-35 {
    margin-left: 35px
}

.ml-40 {
    margin-left: 40px
}

.ml-45 {
    margin-left: 45px
}

.ml-50 {
    margin-left: 50px
}

.ml-55 {
    margin-left: 55px
}

.ml-60 {
    margin-left: 60px
}

.ml-65 {
    margin-left: 65px
}

.ml-70 {
    margin-left: 70px
}

.ml-75 {
    margin-left: 75px
}

.ml-80 {
    margin-left: 80px
}

.ml-85 {
    margin-left: 85px
}

.ml-90 {
    margin-left: 90px
}

.ml-95 {
    margin-left: 95px
}

.ml-100 {
    margin-left: 100px
}

.p-0 {
    padding: 0
}

.pt-0 {
    padding-top: 0
}

.pt-5 {
    padding-top: 5px
}

.pt-10 {
    padding-top: 10px
}

.pt-15 {
    padding-top: 15px
}

.pt-20 {
    padding-top: 20px
}

.pt-25 {
    padding-top: 25px
}

.pt-30 {
    padding-top: 30px
}

.pt-35 {
    padding-top: 35px
}

.pt-40 {
    padding-top: 40px
}

.pt-45 {
    padding-top: 45px
}

.pt-50 {
    padding-top: 50px
}

.pt-55 {
    padding-top: 55px
}

.pt-60 {
    padding-top: 60px
}

.pt-65 {
    padding-top: 65px
}

.pt-70 {
    padding-top: 70px
}

.pt-75 {
    padding-top: 75px
}

.pt-80 {
    padding-top: 80px
}

.pt-85 {
    padding-top: 85px
}

.pt-90 {
    padding-top: 90px
}

.pt-95 {
    padding-top: 95px
}

.pt-100 {
    padding-top: 100px
}

.pb-0 {
    padding-bottom: 0
}

.pb-5 {
    padding-bottom: 5px
}

.pb-10 {
    padding-bottom: 10px
}

.pb-15 {
    padding-bottom: 15px
}

.pb-20 {
    padding-bottom: 20px
}

.pb-25 {
    padding-bottom: 25px
}

.pb-30 {
    padding-bottom: 30px
}

.pb-35 {
    padding-bottom: 35px
}

.pb-40 {
    padding-bottom: 40px
}

.pb-45 {
    padding-bottom: 45px
}

.pb-50 {
    padding-bottom: 50px
}

.pb-55 {
    padding-bottom: 55px
}

.pb-60 {
    padding-bottom: 60px
}

.pb-65 {
    padding-bottom: 65px
}

.pb-70 {
    padding-bottom: 70px
}

.pb-75 {
    padding-bottom: 75px
}

.pb-80 {
    padding-bottom: 80px
}

.pb-85 {
    padding-bottom: 85px
}

.pb-90 {
    padding-bottom: 90px
}

.pb-95 {
    padding-bottom: 95px
}

.pb-100 {
    padding-bottom: 100px
}

.pr-0 {
    padding-right: 0
}

.pr-5 {
    padding-right: 5px
}

.pr-10 {
    padding-right: 10px
}

.pr-15 {
    padding-right: 15px
}

.pr-20 {
    padding-right: 20px
}

.pr-25 {
    padding-right: 25px
}

.pr-30 {
    padding-right: 30px
}

.pr-35 {
    padding-right: 35px
}

.pr-40 {
    padding-right: 40px
}

.pr-45 {
    padding-right: 45px
}

.pr-50 {
    padding-right: 50px
}

.pr-55 {
    padding-right: 55px
}

.pr-60 {
    padding-right: 60px
}

.pr-65 {
    padding-right: 65px
}

.pr-70 {
    padding-right: 70px
}

.pr-75 {
    padding-right: 75px
}

.pr-80 {
    padding-right: 80px
}

.pr-85 {
    padding-right: 85px
}

.pr-90 {
    padding-right: 90px
}

.pr-95 {
    padding-right: 95px
}

.pr-100 {
    padding-right: 100px
}

.pl-0 {
    padding-left: 0
}

.pl-5 {
    padding-left: 5px
}

.pl-10 {
    padding-left: 10px
}

.pl-15 {
    padding-left: 15px
}

.pl-20 {
    padding-left: 20px
}

.pl-25 {
    padding-left: 25px
}

.pl-30 {
    padding-left: 30px
}

.pl-35 {
    padding-left: 35px
}

.pl-40 {
    padding-left: 40px
}

.pl-45 {
    padding-left: 45px
}

.pl-50 {
    padding-left: 50px
}

.pl-55 {
    padding-left: 55px
}

.pl-60 {
    padding-left: 60px
}

.pl-65 {
    padding-left: 65px
}

.pl-70 {
    padding-left: 70px
}

.pl-75 {
    padding-left: 75px
}

.pl-80 {
    padding-left: 80px
}

.pl-85 {
    padding-left: 85px
}

.pl-90 {
    padding-left: 90px
}

.pl-95 {
    padding-left: 95px
}

.pl-100 {
    padding-left: 100px
}

.fv {
    writing-mode: vertical-rl;
    letter-spacing: 3px
}

.uppercase {
    text-transform: uppercase
}

.letterspace01 {
    letter-spacing: 2px
}

.letterspace02 {
    letter-spacing: 4px
}

.letterspace03 {
    letter-spacing: 1px
}

.lineheight01 {
    line-height: 1.3
}

.subEng {
    text-transform: uppercase;
    font-family: "Lexend Zetta", sans-serif
}

.garamond {
    font-family: "EB Garamond", serif
}

.lexend {
    font-family: "Lexend Zetta", sans-serif
}

.vertical {
    writing-mode: vertical-rl
}

@media screen and (min-width:769px) {
    body {
        padding-top: 105px
    }

    header {
        padding-top: 0
    }

    .header__userName {
        margin-bottom: -26px;
        font-size: 1.8rem;
        top: 15px
    }

    .header__logo img {
        width: 250px
    }

    .header__links__item img {
        width: 40px
    }

    .header__links__item.is-active .header__links__item-ico:before {
        width: 8px;
        top: 7px;
        right: 7px
    }

    .header__links__item-title {
        font-size: 10px
    }

    header.is-login .header__inner {
        min-height: 99px
    }

    .footer__links {
        justify-content: center;
        gap: 10px 30px
    }

    .footer__links__item {
        width: auto
    }

    .top-news__tab__item__unread {
        font-size: 1.2rem;
        padding: 2px 10px 3px
    }

    .top-benefit__inner {
        padding: 48px 0 47px;
        background: url(../images/img/top/benefit_bg_pc.jpg) no-repeat center/800px 300px
    }

    .cancel__flow.pc-left {
        margin-left: 0
    }

    #claimingbenefits .box-white {
        padding: 32px 0
    }

    #wcltop .grid .box-blue {
        padding: 16px 15px 15px 16px
    }

    body.theme-desktop {
        padding-top: 0
    }

    .sp {
        display: none
    }

    .t-center_pc {
        text-align: center
    }

    .t-left_pc {
        text-align: left
    }

    .t-right_pc {
        text-align: right
    }
}

@media screen and (max-width:768px) {
    .header__links {
        padding-bottom: 7px
    }

    .contractdetail__link {
        flex-wrap: wrap
    }

    .credit__changeFlow__item.is-reeissuecert .credit__changeFlow__item__eigyo {
        right: 10px
    }

    .pc {
        display: none
    }

    .t-center_sp {
        text-align: center
    }

    .t-left_sp {
        text-align: left
    }

    .t-right_sp {
        text-align: right
    }
}

@media screen and (max-width:420px) {
    .footer__links__item {
        width: 50%
    }

    .footer__links__item a {
        padding-left: 15px
    }

    select {
        padding: 14px 10px 13px
    }
}

@media screen and (max-width:400px) {
    .hdg-type03 {
        padding: 10px 35px;
        background-position: left 15px top 50%, right 15px top 50%
    }

    .radio-type01 {
        width: calc(50% - 5px);
        padding: 15px 5px 15px 40px;
        font-size: 1.6rem
    }

    .radio-type01:before {
        width: 20px;
        top: calc(50% - 10px);
        left: 10px
    }

    .radio-type01:after {
        width: 12px;
        top: calc(50% - 5px);
        left: 15px
    }

    .radio-type03 {
        padding: 15px 5px 15px 40px;
        font-size: 1.6rem
    }

    .radio-type03:before {
        width: 20px;
        top: calc(50% - 10px);
        left: 10px
    }

    .radio-type03:after {
        width: 12px;
        top: calc(50% - 5px);
        left: 15px
    }

    .top-news__tab.is-procedurehistory .top-news__tab__item {
        font-size: 1.5rem
    }

    .cancel__flow__item {
        gap: 6px;
        font-size: 1.4rem;
        padding: 16px 9px 16px 8px
    }

    .cancel__flow__item__target {
        flex: 0 0 107px;
        font-size: 1.2rem
    }
}
/*
 * .box-save-a
 ** ------------------------------------------------------ */
.box-save-a {
    padding: 22px 32px;
    border: 2px solid #f69c00;
}

.box-save-a > .ttl {
    position: relative;
    padding-left: 27px;
    font-size: 2rem;
    color: #f69c00;
}

.box-save-a > .ttl::before {
    top: 7px;
    left: 0;
    width: 19px;
    height: 19px;
    background-position: -625px -72px;
}

@media only screen and (max-width: 768px) {
    .box-save-a {
        padding: 14px 18px;
    }
    .box-save-a > .ttl {
        font-size: 1.6rem;
    }
    .box-save-a > .ttl::before {
        top: 3px;
    }
}

/*
 * .tbl-b
** ------------------------------------------------------ */
.tbl-b {
    border-left: 1px solid #039;
    border-right: 1px solid #039;
    border-bottom: 1px solid #039;
    width: 100%;
}

.tbl-b th, .tbl-b td {
    padding: 9px 15px;
    font-weight: normal;
    vertical-align: middle;
    text-align: left;
    border-top: 1px solid #039;
}

.tbl-b th {
    width: 160px;
    font-size: 1.4rem;
    color: #fff;
    text-align: center;
    background: #039;
}

.tbl-b td {
    background: #f5f7f7;
}

@media only screen and (max-width: 768px) {
    .tbl-b {
        border-left: 1px solid #039;
    }
    .tbl-b tbody, .tbl-b tr, .tbl-b th, .tbl-b td {
        display: block;
    }
    .tbl-b th {
        width: 100%;
        padding: 4px 15px;
        border-top: 0;
    }
    .tbl-b td {
        padding: 10px 12px;
    }
    .tbl-b th + td {
        border-top: 0;
    }
}

/*
 * .icon-txt-a
** ------------------------------------------------------ */
.icon-txt-a {
    display: inline-block;
    min-width: 72px;
    margin-top: -1px;
    padding: 0 7px;
    font-size: 1.4rem;
    color: #039;
    vertical-align: middle;
    text-align: center;
    line-height: 1.6;
    white-space: nowrap;
    border: 1px solid #039;
    border-radius: 4px;
}

@media only screen and (max-width: 768px) {
    .icon-txt-a {
        min-width: 70px;
        padding: 0 5px;
    }
}

.list-desc-a .icon-txt-a {
    min-width: 100%;
}

@media only screen and (min-width: 769px) {
    .list-desc-a._inline .icon-txt-a {
        margin-top: 2px;
    }
}

.tbl-b .icon-txt-a, .box-product-a .icon-txt-a {
    background: #fff;
}

/*
 * .list-desc-a
** ------------------------------------------------------ */
.list-desc-a {
    display: table;
    width: 100%;
    border-collapse: collapse;
}

.hdg-b-wrap + .list-desc-a, .hdg-c + .list-desc-a {
    margin-top: 15px;
}

@media only screen and (min-width: 769px) {
    .hdg-b-wrap + .list-desc-a, .hdg-c + .list-desc-a {
        margin-top: 30px;
    }
}

.list-desc-a > .item {
    display: table-row;
}

.list-desc-a > .item > * {
    display: table-cell;
}

.list-desc-a > .item:not(:first-child) > * {
    padding-top: 6px;
}

.list-desc-a > .item:not(:last-child) > * {
    padding-bottom: 6px;
}

.list-desc-a > .item > dt {
    padding-right: 8px;
}

.list-desc-a > .item > dd {
    width: 100%;
    color: #333;
    vertical-align: middle;
}

@media only screen and (max-width: 768px) {
    .list-desc-a > .item > dd {
        font-size: 1.4rem;
    }
    .list-desc-a:not(._type-a) > .item:not(:first-child) > * {
        padding-top: 3px;
    }
    .list-desc-a:not(._type-a) > .item:not(:last-child) > * {
        padding-bottom: 3px;
    }
    .list-desc-a._type-a._inline > .item + .item {
        border-top: 1px dashed #039;
    }
}

.list-desc-a._type-a:not(._inline) > .item + .item {
    border-top: 1px dashed #039;
}

@media only screen and (min-width: 769px) {
    .list-desc-a._inline {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: -6px;
        margin-left: -24px;
    }
    .tbl-b .list-desc-a._inline, .box-product-a .list-desc-a._inline, .list-item-a .list-desc-a._inline, .list-item-d .list-desc-a._inline {
        width: calc(100% + 24px);
    }
    .list-desc-a._inline > .item {
        display: flex;
        align-items: flex-start;
        padding-bottom: 6px;
        padding-left: 24px;
    }
    .list-desc-a._inline > .item > * {
        display: flex;
        padding-top: 0;
        padding-bottom: 0;
    }
}

/* ローディングオーバーレイ */
#z-modal-overlay,
.z-modal-overlay {
	background: #fff url("../images/loading.gif") no-repeat center center;
	filter: alpha(opacity=70);
	height: 100%;
	left: 0px;
	opacity: 0.7;
	-moz-opacity: 0.7;
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: 100;
}
