@charset "Shift-JIS";
html{font-size: 16px;}
p,ul,li{margin: 0;}
a{color: var(--txt-color);}
a:hover{
    color: var(--main-color);
}
.pass-link a:hover,.pass-link a:link{
    text-decoration: none;
}
:root{
    --main-color:#ba1532;
    --base-color:#f2f2f2;
    --base-color2:#FFF9E2;
    --txt-color:#333;
    --bdr-color:#ccc;
    --hilight-color:#FEE740;

    --fs-base:1rem;
    --fs-lv5:1.125rem;
    --fs-lv4:1.25rem;
    --fs-lv3:1.5rem;
    --fs-lv2:1.751rem;
    --fs-lv1:2.25rem;

    --space-01:60px;
    --space-02:40px;
    --space-03:28px;
    --space-04:20px;
    --space-05:16px;
    --space-06:12px;
    --space-07:8px;
    --space-08:4px;

    --letter-spacing-01:.04em;
    --letter-spacing-02:.08em;
}
.ul{background:linear-gradient(transparent 50%, var(--hilight-color) 0%);}
.u-annotation{font-size: 14px;}
.pass-gry{
    background: var(--base-color);
    padding: var(--space-04);}
.font-roboto{font-family: "Roboto";}
.u-arrow--next:after {
    font-family: "FontAwesome";
    content: "\f105";
    font-weight: bold;
    font-size: 1em;
    color: var(--main-color);
    padding-left: var(--space-07);
}
.u-color--main{color: var(--main-color);}
/*  */
.pass{
    margin-top: var(--space-03);
    margin-bottom: var(--space-02);
}
.pass__container{
    padding-left: var(--space-04);
    padding-right: var(--space-04);
}

.pass-fv__link{
    background: var(--base-color);
    padding: var(--space-07);
    display: flex;
    align-items: center;
    gap: var(--space-07);
}

.pass-fv__img {
    width: 80px;
    background: #fff;
    }

.pass-fv__wrapper {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: var(--space-05);
    align-items: stretch;
}
.pass-fv__txt{
    margin-top: var(--space-03);
    display: flex;
    flex-direction: column;
    gap: var(--space-07);
    text-align: center;
}
/* heading */
.pass__heading{
    font-weight: bold;
    margin: 0;
    line-height: 1.2;
}
.pass__heading.pass__heading--lv1{
    font-size: var(--fs-lv1);
    font-weight: lighter;
    border-left: 2px solid var(--main-color);
    padding: 0.5rem 0 0.5rem;
    padding-left: var(--space-05);
    line-height: 1.2;
}
.pass__heading-sub{
    font-size: var(--fs-base);
    display: block;
}
.pass__heading.pass__heading--lv2 {
    font-size: var(--fs-lv3);
    margin-bottom:var(--space-04);
}
.pass__heading.pass__heading--lv3 {
    font-size: var(--fs-lv4);
    margin-bottom:var(--space-04);
}
.pass__heading.pass__heading--lv4 {
    font-size: var(--fs-lv5);
    line-height: 1.4;
}
/* heading */

/*  */
.pass-nav {
    padding: var(--space-04) var(--space-06) var(--space-04) 0;
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--space-04);
    row-gap: var(--space-07);
    border-bottom: 1px solid var(--bdr-color);
}

.pass-nav__link{
    display: flex;
    align-items: start;
    font-size: var(--fs-base);
    font-size: 14px;
}
.pass-nav__link:before{
    font-family: "FontAwesome";
    content: "\f078";
    font-weight: bold;
    color: var(--main-color);
    padding-right: var(--space-07);
}
/*  */
.pass-sec{
    padding-top: var(--space-01);
}
.pass-sec.pass-sec--fv {
    padding: 0;
}
/*  */
.pass-sec__sub{
    margin-top: var(--space-01);
}
.pass-box__group {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 28px 20px;
}
.pass-box {
    border: 1px solid var(--bdr-color);
    display: flex;
    flex-direction: column;
    gap: var(--space-05);
    align-items: center;
    border-radius: 10px;
    padding: var(--space-05);
}

.pass__txt {
    text-align: left;
}

/*  */
.pass-sec--setting{
    background: var(--base-color2);
    margin-top: var(--space-02);
    padding-top: var(--space-02);
    padding-bottom: var(--space-02);
}
.pass-emp{
    border: 1px solid var(--main-color);
    padding: var(--space-04);
    background: #fff;
}
.pass-emp__list{
    display: flex;
    flex-direction: column;
    gap: var(--space-06);
}
.pass-setting__img.pass-sec__img {
    grid-template-columns: auto;
}
.pass-setting__img{
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto 20px auto;
    align-items: center;
    justify-content: center;
    grid-gap: var(--space-06);
}
.pass-setting__img img{
    justify-self: center;
}
.pass-setting__img--tri{
    transform: rotate(90deg);
    height: 20px;
}
.pass-setting__img--sec{
    max-width: 41%;
}
.pass-sec__inner{
    display: grid;
    gap: var(--space-03);
}
/*  */
.pass-faq__group {
    display: grid;
    gap: var(--space-03);
}

.pass-faq__group {
    display: grid;
    gap: var(--space-03);
}

.pass-faq__list {
    border: 1px solid var(--bdr-color);
    border-radius: 6px;
}
.pass-faq__item.pass-faq__item--q {
    background: var(--base-color);
    padding: var(--space-07) var(--space-06);
    font-weight: bold;
    border-radius: 6px 6px 0 0;
    display: flex;
    gap: var(--space-07);
    /* line-height: 2; */
    line-height: 1.8;
}
.pass-faq__item.pass-faq__item--a {
    padding: var(--space-07) var(--space-06);
    display: flex;
    gap: var(--space-07);
    line-height: 1.8;
}
.pass-faq__item:before {
    font-family: "Roboto";
    height: 1.75rem;
    width: 1.75rem;
    border: 1px solid var(--main-color);
    font-weight: 700;
    border-radius: 50%;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    justify-content: center;
    line-height: 1;
}
.pass-faq__item.pass-faq__item--a:before {
    background: var(--main-color);
    content: "A";
    color: #fff;
}
.pass-faq__item.pass-faq__item--q:before {
    background: #fff;
    content: "Q";
    color: var(--main-color);
}
/*  */
.pass-contact{
    margin-top: var(--space-02);
    padding: var(--space-04);
    background: var(--base-color);
}
.pass-contact .pass__heading{
    margin-bottom: var(--space-05);
}
.pass-contact__list{
    gap: var(--space-07);
    margin-top: 20px;
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: 1fr 1fr;
}
.pass-contact__item {
    background: #fff;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
    justify-content: center;
    gap: var(--space-07);
    flex: 1;
    border: 1px solid var(--base-color);
    transition: .3s;
    position: relative;
    border-radius: 6px;
}
.pass-contact__item:hover {
    border: 1px solid var(--main-color);
}
.pass-contact__item:before {
    font-family: "FontAwesome";
    font-size: var(--fs-lv2);
    color: #ba1532;
    content: "\f095";
    font-weight: bold;
    line-height: 1;
}
.pass-contact__item.pass-contact__item--form:before{
    content:"\f0e0";
    font-size: var(--fs-lv3);
}
.pass-contact__link{
    font-weight: bold;
    font-size: var(--fs-lv5);
}
.pass-contact__item--tel .pass-contact__link{
    font-size: var(--fs-lv4);
}
.pass-contact__link:after {
    content: "";
    inset: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
}
.pass-contact__item--tel .pass-contact__link:before {
    content: "";
    background: url(../img/dial_logo.svg) no-repeat center center;
    background-size: contain;
    background-repeat: no-repeat;
    padding-right: 1.5em;
}
.pass-contact__item.pass-contact__item--tel,
.pass-contact__item--tel .pass-contact__link{
    pointer-events: auto;
}
@media (min-width: 480px) {
    .pass-setting__img.pass-sec__img {
    grid-template-columns: 1fr 16px 1fr;
}

.pass-setting__img{
    grid-template-columns: 642fr 16px 265fr;
    grid-template-rows: auto;
    grid-gap: var(--space-05);
    align-items: stretch;
}
.pass-setting__img--tri{
    transform: rotate(0deg);
    height: auto;
}
.pass-setting__img img{
    justify-self: stretch;
    max-width: 100%;
}
.pass-nav__link{
    font-size: var(--fs-base);
}
.pass-sec--setting{
    margin-top: var(--space-01);
    padding-top: var(--space-01);
    padding-bottom: var(--space-01);
}
}
@media (min-width: 768px) {
    .pass-nav {
    padding: var(--space-03) var(--space-06) var(--space-04) 0;
}
    .pass-fv__txt{
    margin-top: var(--space-02);
}
    /* heading */
.pass__heading.pass__heading--lv1{
    font-size: var(--fs-lv1);
    padding-left: var(--space-04);
}
.pass__heading-sub{
    font-size: var(--fs-lv5);
    display: block;
}
.pass__heading.pass__heading--lv2 {
    font-size: var(--fs-lv2);
    margin-bottom:var(--space-03);
}
.pass__heading.pass__heading--lv3 {
    font-size: var(--fs-lv3);
    margin-bottom:var(--space-03);
}
.pass__heading.pass__heading--lv4 {
    font-size: var(--fs-lv4);
}
.pass__heading.pass__heading--lv5 {
    font-size: var(--fs-lv5);
}
.pass-faq__item .pass__heading.pass__heading--lv5 {
    line-height: 1.8;
}
/* heading */
    .pass__container{
    padding-left: var(--space-02);
    padding-right: var(--space-02);
}
    .pass-fv__wrapper {
    flex-direction: row;
    align-items: center;
    gap: var(--space-04);
}
.pass-box__group {
    grid-template-columns: 1fr 1fr 1fr;
}
.pass-contact__item--tel .pass-contact__link{
    pointer-events: none;
}
.pass-contact__item--tel.pass-contact__item:hover {
    border: 1px solid var(--base-color);
}
.pass-contact__list{
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
}
}

@media (min-width: 980px) {
    .pass-faq__item.pass-faq__item--q {
    padding: var(--space-07) var(--space-04);
}
.pass-faq__item.pass-faq__item--a {
    padding: var(--space-07) var(--space-04);
}
.pass-setting__img{
    grid-template-columns: 720fr 24px 288fr;
    grid-gap: var(--space-03);
}
}

@media (min-width: 1400px) {
}