body {
    background: url(../images/insurance/fv-background.png) no-repeat right top;
    background-size: 100% auto;
}
header {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
}
header h1 {
    display: none;
}

header ul li.top-link {
    display: block;
}
@media print, screen and (max-width: 768px) {
    body {
        background: none;
    }
    header {
        position: relative;
    }
    header h1 {
        display: block;
    }
}

/* ==============================
  FV
============================== */
#fv {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 6.3% 0 12%;
}
#fv .fv-image {
    width: 41%;
    margin-right: 5.07%;
}
#fv .fv-text {
    width: 42.9%;
    padding-top: 6.4%;
}

#fv .fv-text h3 {
    margin: 7.2% auto 0;
    width: 95.8%;
}
@media print, screen and (max-width: 768px) {
    #fv {
        background: none;
        flex-direction: column;
    }
    #fv .fv-image {
        width: 100%;
    }
    #fv .fv-text {
        width: 81.25vw;
        margin: 0 auto;
    }
    #fv .fv-text h1 {
        width: 100%;
    }
    #fv .fv-text h3 {
        width: 60.9vw;
    }
}

/* ==============================
  保険について
============================== */
#about {
    position: relative;
    background: url(../images/insurance/about-background.png) no-repeat;
    background-position: left -3.6% top;
    /* background-size: 69% auto; */
    background-size: 95.4% auto;
    padding: 9.9% 0 0;
}
#about h2 {
    position: absolute;
    top: 4%;
    left: 12.8%;
    width: 3.8%;
}

#about .about-content {
    position: relative;
    width: 69.5%;
    margin-left: 23.8%;
}
@media print, screen and (max-width: 768px) {
    #about {
        background: url(../sp-images/insurance/about-background.png) no-repeat;
        background-position: left -13vw top;
        background-size: 1.06vw auto;
        padding: 0;
    }
    #about h2 {
        top: 13vw;
        left: 11.19vw;
        width: 8.3vw;
    }

    #about .about-content {
        width: 100%;
        margin-left: 0;
    }
}

/* 黄色いアイコン */
#about .about-content .about-icon {
    position: absolute;
    top: -5%;
    right: 4%;
    width: 26.1%;
}
@media print, screen and (max-width: 768px) {
    #about .about-content .about-icon {
        display: none;
    }
}

#about .about-content h3 {
    font-size: min(2.9vw, 3.8rem);
    color: #aa1b48;
    border-bottom: 1px dotted #595757;
    font-family: "Zen Old Mincho", serif;
    font-weight: 600;
    width: 68%;
    padding-bottom: 2%;
    margin-bottom: 3%;
    line-height: 1.5;
}
#about .about-content p {
    font-size: min(2vw, 2.6rem);
    font-weight: 500;
    line-height: 1.5;
}
@media print, screen and (max-width: 768px) {
    #about .about-content h3 {
        font-size: 6.3vw;
        width: 60.1vw;
        margin-left: 29vw;
    }
    #about .about-content p {
        font-size: 4.4vw;
        margin-left: 29vw;
    }
}

/* 資料PDFボタン */
#about .about-content .btn-about {
    width: 50.6%;
    margin:0 0 0 -5%;
}
@media print, screen and (max-width: 768px) {
    #about .about-content .btn-about {
        width: 86.7vw;
        /* margin: 101.3vw auto 0; */
        margin: 0 auto;
        position: absolute;
        bottom: 67.4vw;
        bottom: 119.7vw;
        right: 0;
        left: 0;
        z-index: 10;
    }
}

/* ご注意 */
#about .about-content div.attention {
    position: relative;
    background: #fbf7f0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 91.9%;
    padding: 2.4% 0;
    margin-top: 4%;
    margin-top: 15.9%;
}
#about .about-content div.attention .about-image {
    position: absolute;
    bottom: 100%;
    right: 2%;
    width: 40%;
}
#about .about-content div.attention .about-image img {
    width: 100%;
    margin-right: 0;
}
#about .about-content .attention img {
    width: 7.9%;
    margin-right: 2.5%;
}
#about .about-content .attention-text {
    width: 82%;
}
#about .about-content .attention-text p {
    font-size: min(1.3vw, 1.7rem);
}
#about .about-content .attention-text p.attention {
    font-size: min(1.09vw, 1.4rem);
    display: block;
    padding-left: 1em;
}
#about .about-content .attention-text p.attention::before {
    content: "※";
    display: block;
    float: left;
    margin-left: -1em;
    width: 1em;
    text-align: center;
}

#about .about-content .attention .start-box {
    position: absolute;
    bottom: 110%;
    left: 0;
    width: 63.7%;
}
#about .about-content .attention .start-box img {
    width: 100%;
}
@media print, screen and (max-width: 768px) {
    #about .about-content div.attention {
        flex-direction: column;
        width: 100%;
        padding: 16.6vw 0 6.5vw;
        padding: 6.5vw 0;
        margin-top: 101.3vw;
        margin-top: 174.8vw;
    }
    #about .about-content div.attention .about-image {
        position: absolute;
        /* bottom: calc(100% + 94.7vw); */
        right: 8.4vw;
        width: 70.7vw;
        bottom: 142vw;
    }
    #about .about-content .attention img {
        width: 13.5vw;
        margin: 0 auto;
    }
    #about .about-content .attention-text {
        width: 80.7vw;
        margin: 1.9vw auto;
    }
    #about .about-content .attention-text p {
        font-size: 4vw;
        margin-left: 0;
    }
    #about .about-content .attention-text p.attention {
        font-size: 3.7vw;
    }

    #about .about-content .attention .start-box {
        bottom: 75.7vw;
        left: 0;
        right: 0;
        width: 81.25vw;
        margin: 0 auto;
    }
}

/* 保証されないケース */
#about .not_cases {
    width: 76.1%;
    margin: 2.6% 0 0 auto;
    background-image: linear-gradient(90deg, #f9e2ed, #fef4e3);
    padding: 5.2% 0 5.2% 7%;
    box-sizing: border-box;
}
#about .not_cases .inner {
    width: 70%;
}
#about .not_cases h4,
#about .student_insurance h4 {
    font-size: min(2vw, 2.6rem);
    color: #d9333f;
    font-weight: bold;
}
#about .not_cases p {
    font-size: min(1.4vw, 1.9rem);
    margin: 2% 0 5%;
}

#about .not_cases .not_cases-box-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#about .not_cases .not_cases-box {
    background: #fff;
    border-radius: 12px;
    width: 48.1%;
    padding: 3% 3%;
    box-sizing: border-box;
}
#about .not_cases .not_cases-box:nth-child(n+ 3) {
    margin-top: 3.3%;
}
#about .not_cases .not_cases-box h5 {
    font-size: min(1.9vw, 2.5rem);
    color: #00af84;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 3%;
}
#about .not_cases .not_cases-box p {
    font-size: min(1.3vw, 1.7rem);
}
@media print, screen and (max-width: 768px) {
    #about .not_cases {
        width: 100%;
        margin: 7.8vw auto 0;
        padding: 10.4vw 0;
    }
    #about .not_cases .inner {
        width: 80.7vw;
        margin: 0 auto;
    }
    #about .not_cases h4,
    #about .student_insurance h4 {
        font-size:5.9vw;
    }
    #about .not_cases p {
        font-size: 4.1vw;
        margin: 2vw 0 3.9vw;
    }

    #about .not_cases .not_cases-box-wrapper {
        flex-direction: column;
    }
    #about .not_cases .not_cases-box {
        border-radius: 2.6vw;
        width: 100%;
        padding: 3.6vw 3.6vw 1.6vw;
        box-sizing: border-box;
    }
    #about .not_cases .not_cases-box:nth-child(n+ 2) {
        margin-top: 3.9vw;
    }
    #about .not_cases .not_cases-box h5 {
        font-size: 4.6vw;
        margin-bottom: 0.7vw;
    }
    #about .not_cases .not_cases-box p {
        font-size: 3.9vw;
    }
}

/*学院生専用の学生保険*/
#about .student_insurance {
    width: 86.3%;
    margin: 10% auto 0 0;
    background-image: linear-gradient(90deg, #fef4e3, #f9e2ed);
    padding: 5.2% 0 5.2% 14.4%;
    box-sizing: border-box;
}
#about .student_insurance .btn-student_insurance {
    width: 54.5%;
    margin-left: -5%;
}

#about .student_insurance .detail-box p {
    font-size: min(1.5vw, 2rem);
    display: block;
    padding-left: 1.2em;
    line-height: 1.5;
}
#about .student_insurance .detail-box p + p {
    margin-top: 0.3em;
}
#about .student_insurance .detail-box p::before {
    content: "◆";
    display: block;
    float: left;
    margin-left: -1.2em;
    width: 1em;
    text-align: center;
}
#about .student_insurance .detail-box p span.attention {
    display: block;
    padding-left: 1.2em;
    font-size: min(1.4vw, 1.8rem);
}
#about .student_insurance .detail-box p span.attention::before {
    content: "※";
    display: block;
    float: left;
    margin-left: -1.2em;
    width: 1em;
    text-align: center;
}
@media print, screen and (max-width: 768px) {
    #about .student_insurance {
        width: 100%;
        margin: 12.5vw 0 0;
        padding: 9.1vw 0;
    }
    #about .student_insurance .inner {
        /* width: 80.7vw; */
        width: 84.7vw;
        margin: 0 auto;
    }
    #about .student_insurance .btn-student_insurance {
        width: 86.7vw;
        margin: 4.5vw 0 3.9vw;
    }

    #about .student_insurance h4 {
        padding-left: 9.1vw;
    }
    #about .student_insurance .detail-box p {
        font-size: 4.1vw;
        padding-left: 8.5vw;
    }
    #about .student_insurance .detail-box p + p {
        margin-top: 2.4vw;
    }
    #about .student_insurance .detail-box p span.attention {
        font-size: 3.6vw;
        /* letter-spacing: -0.1em; */
    }

    #about .student_insurance .detail-box p span.sp {
        display: inline-block;
    }
}

/* ==============================
    動画でチェック
============================== */
#movie_check {
    background-image: url(../images/insurance/movie-background.png);
    background-size: 100% auto;
    background-position: center top;
    background-repeat: no-repeat;
    text-align: center;
    margin: 5.7% 0 0;
}

#movie_check .btn-movie {
    width: 45%;
    margin: 0 auto;
}
#movie_check p {
    font-size: min(1.9vw, 2.5rem);
    font-weight: bold;
}
#movie_check h6 {
    font-size: min(2.5vw, 3.2rem);
    font-weight: bold;
}
#movie_check .tel {
    width: 39.8%;
    margin: 1% auto;
}
#movie_check .tel + p {
    font-size: min(1.7vw, 2.3rem);
}
@media print, screen and (max-width: 768px) {
    #movie_check {
        background-image: url(../sp-images/insurance/movie-background.png);
        background-size: 113vw auto;
        background-position: center top 6.5vw;
        background-repeat: no-repeat;
        text-align: center;
        margin: 10.6vw 0 0;
    }

    #movie_check .btn-movie {
        width: 86.7vw;
        margin: 0 auto 5.2vw;
    }
    #movie_check p {
        font-size:3.9vw;
    }
    #movie_check h6 {
        font-size: 5.2vw;
    }
    #movie_check .tel {
        width: 73vw;
        margin: 1.3vw auto;
    }
    #movie_check .tel + p {
        font-size: 3.5vw;
    }
}

/* ==============================
    ネットで入れる手軽な保険！
============================== */
#net_insurance {
    background-image: url(../images/insurance/net-background.png);
    background-size: 109.4% auto;
    background-position: left top -5%;
    background-repeat: no-repeat;
    padding: 9.3% 0 14.2%;
}
#net_insurance .inner {
    width: 78.1%;
    max-width: 1000px;
    margin: 0 auto;
}
#net_insurance h6 {
    font-size: min(2.1vw, 2.8rem);
    color: #aa1b48;
}
#net_insurance h3 {
    font-size: min(3.4vw, 4.4rem);
    color: #231815;
    margin: 2% 0 1%;
}
#net_insurance p {
    font-size: min(1.6vw, 2.1rem);
    margin-bottom: 2%;
}
@media print, screen and (max-width: 768px) {
    #net_insurance {
        background-image: url(../sp-images/insurance/net-background.png);
        background-size: 100% auto;
        background-position: left top -5%;
        background-repeat: no-repeat;
        padding: 32.5vw 0 14.2%;
    }
    #net_insurance .inner {
        width: 86.7vw;
    }
    #net_insurance h6 {
        font-size: 5.3vw;
    }
    #net_insurance h3 {
        font-size: 6.5vw;
        margin: 9vw 0 2vw;
        text-align: center;
    }
    #net_insurance p {
        font-size: 4.2vw;
        margin-bottom: 2%;
    }
}

/* 保険会社リンク */
#net_insurance .net_insurance-box-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#net_insurance .net_insurance-box-wrapper .net_insurance-box {
    width: 47.4%;
    background: #feebbe;
    border: 2px solid #FFF;
    box-sizing: border-box;
    padding: 2% 3.2%;
}


#net_insurance .net_insurance-box-wrapper .net_insurance-box a {
    text-decoration: none;
    color: #000;
}
#net_insurance .net_insurance-box-wrapper .net_insurance-box a:hover {
    opacity: 0.6;
}
#net_insurance .net_insurance-box-wrapper .net_insurance-box a:hover img {
    opacity: 1;
}

#net_insurance .net_insurance-box-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 0.5em;
    border-bottom: 2px solid #d19395;
}
#net_insurance .net_insurance-box-header h4 {
    color: #aa1b48;
    font-size: min(2.5vw, 3.2rem);
    font-weight: bold;
}
#net_insurance .net_insurance-box-header img {
    width: 30.8%;
}

#net_insurance .net_insurance-box-text {
    overflow: hidden;/*float解除*/
}
#net_insurance .net_insurance-box-text h6 {
    color: #000;
    font-size: min(1.9vw, 2.5rem);
    padding-bottom: 0.3em;
    margin-top: 0.5em;
    border-bottom: 2px dotted #595757;
}
#net_insurance .net_insurance-box-text p {
    margin-top: 2%;
    font-size: min(1.7vw, 2.3rem);
    line-height: 1.3;
}
#net_insurance .net_insurance-box-text .space {
    float: right;/*画像の位置を右下にしたい場合はright*/
    height: 3.1em;/*画像上の余白の高さ*/
}
#net_insurance .net_insurance-box-text .img {
    float: right;/*画像の位置を右下にしたい場合はright*/
    clear: both;/*.spaceのfloat解除*/
    margin: 0;/*画像の周りの余白*/
    width: 36.9%;
    background: #feebbe;
    padding: 0.5em 0.2em;
}


#net_insurance .net-insurance-box-02 .img {
    width: 47.3%;
}
#net_insurance .net-insurance-box-02 + h3 {
    margin: 5.5% auto 2%;
}
#net_insurance .net-insurance-box-03 {
    margin: 0 auto;
}
#net_insurance .net-insurance-box-03 .img {
    width: 42.2%;
    padding: 0;
}

#net_insurance .net-insurance-box-02 + p.attention {
    width: 47.4%;
    margin: 0 0 0 auto;
    font-size: min(1.5vw, 2rem);
}

@media print, screen and (max-width: 768px) {
    #net_insurance .net_insurance-box-wrapper {
        flex-direction: column;
    }
    #net_insurance .net_insurance-box-wrapper .net_insurance-box {
        width: 100%;
        padding: 3.1vw;
    }
    #net_insurance .net_insurance-box-wrapper .net_insurance-box + .net_insurance-box {
        margin-top: 3.6vw;
    }

    #net_insurance .net_insurance-box-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-bottom: 0.5em;
        border-bottom: 2px solid #d19395;
    }
    #net_insurance .net_insurance-box-header h4 {
        font-size: 5.2vw;
        padding-left: 1vw;
        line-height: 1.2;
    }
    #net_insurance .net_insurance-box-header img {
        width: 24.4vw;
    }

    #net_insurance .net_insurance-box-text h6 {
        font-size: 4vw;
        padding-bottom: 1.9vw;
        margin-top: 2.6vw;
        padding-left: 1vw;
    }
    #net_insurance .net_insurance-box-text p {
        margin-top: 2vw;
        font-size: 3.7vw;
        padding-left: 1vw;
    }
    #net_insurance .net_insurance-box-text .space {
        height: 8.2vw;/*画像上の余白の高さ*/
    }
    #net_insurance .net_insurance-box-text .img {
        width: 30.2vw;
        padding: 0.5em;
    }


    #net_insurance .net-insurance-box-02 .img {
        width: 35vw;
    }
    #net_insurance .net-insurance-box-02 + h3 {
        margin: 9.1vw auto 2.6vw;
        text-align: center;
    }
    #net_insurance .net-insurance-box-03 .img {
        width: 35vw;
        padding: 0;
    }
}

/* 保険会社 PDFリンク */
#net_insurance .btns {
    margin-top: 3%;
}
#net_insurance .btns ul {
    display: flex;
    justify-content: center;
    align-items: center;
}
#net_insurance .btns ul li.net-link01 {
    width: 38.5%;
    margin-right: -2.5%;
}
#net_insurance .btns ul li.net-link02 {
    width: 48.5%;
    margin-left: -2.5%;
}
@media print, screen and (max-width: 768px) {
    #net_insurance .btns {
        margin-top: 9.1vw;
    }
    #net_insurance .btns ul {
        flex-direction: column;
    }
    #net_insurance .btns ul li.net-link01,
    #net_insurance .btns ul li.net-link02 {
        width: 86.7vw;
        margin: 0 auto;
    }
}

/* ==============================
    取扱保険会社
============================== */
#insurance-list {
    width: 78.1%;
    max-width: 1000px;
    margin: 0 auto;
    padding-bottom: 12%;
}

#insurance-list .list {
    display: flex;
    align-items: center;
    border-bottom: 2px dotted #595757;
    padding-bottom: 1.5%;
}
#insurance-list .list h3 {
    color: #FFF;
    background: #aa1b48;
    font-size: min(1.7vw, 2.2rem);
    width: 18.1%;
    text-align: center;
    padding: 1% 0 1.5%;
    margin-right: 2%;
}
#insurance-list .list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 78%;
}
#insurance-list .list ul li {
    width: 50%;
    color: #aa1b48;
    font-size: min(1.7vw, 2.2rem);
    font-weight: bold;
}

#insurance-list p {
    font-size: min(1.8vw, 2.4rem);
    font-weight: bold;
    text-align: center;
    line-height: 1.5;
    margin-top: 0.8em;
    color: #3e3a39;
}
#insurance-list .tel {
    width: 30.2%;
    margin: 2% auto 5%;
}
#insurance-list .tel p {
    font-size: min(1.1vw, 1.5rem);
    font-weight: normal;
    margin-top: 2%;
}

#insurance-list .insurance-box-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    width: 75.4%;
    margin: 0 auto;
}
#insurance-list .insurance-box-wrapper .insurance-box {
    width: 45%;
}
#insurance-list .insurance-box-wrapper .insurance-box:first-of-type {
    border-left: 9px solid #aa1b48;
    padding-left: 2.5%;
}

#insurance-list .insurance-box-wrapper p {
    margin: 2% auto 0;
    color: #aa1b48;
    border: 1px solid #aa1b48;
    font-size: min(1.3vw, 1.7rem);
    padding: 0.1em 0.5em;
}

#insurance-list .btn-inquiry {
    width: 60.7%;
    margin: 6% auto 0;
}
@media print, screen and (max-width: 768px) {
    #insurance-list {
        width: 81.25vw;
        padding-bottom: 22.1vw;
    }

    #insurance-list .list {
        flex-direction: column;
        padding-bottom: 0;
    }
    #insurance-list .list h3 {
        font-size: 5.4vw;
        width: 45.3vw;
        padding: 3.9vw 0;
        margin-right: 0;
        margin-bottom: 6.5vw;
    }
    #insurance-list .list ul {
        flex-direction: column;
        width: 100%;
    }
    #insurance-list .list ul li {
        width: 100%;
        font-size: 5.07vw;
        margin-bottom: 5.2vw;
    }

    #insurance-list p {
        font-size:4.2vw;
        margin-top: 5.2vw;
        line-height: 1.5;
    }
    #insurance-list .tel {
        width: 100%;
        margin: 3.9dvw auto 9.6vw;
        text-align: center;
    }
    #insurance-list .tel img {
        width:60.9vw;
    }
    #insurance-list .tel p {
        font-size: 3.5vw;
        font-weight: normal;
        margin-top: 2.6vw;
    }

    #insurance-list .insurance-box-wrapper {
        flex-direction: column;
        width: 73.5vw;
        margin: 0 auto;
    }
    #insurance-list .insurance-box-wrapper .insurance-box {
        width: 100%;
    }
    #insurance-list .insurance-box-wrapper .insurance-box:first-of-type {
        border-left: none;
        padding-left: 0;
        margin-bottom: 3.5vw;
    }

    #insurance-list .insurance-box-wrapper p {
        margin: 4.4vw auto 0;
        font-size: 3.7vw;
        padding: 0.1em 0.5em;
    }

    #insurance-list .btn-inquiry {
        width: 86.7vw;
        margin: 7.8vw auto 0;
    }

}

footer .insurance-text {
    display: block;
}
