html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
input,
select,
textarea {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font-style: normal;
    font-weight: 400;
    vertical-align: bottom;
    background: transparent
}

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

html {
    font-size: 62.5%
}

body {
    font-family: sans-serif;
    line-height: 1
}

ul,
ol {
    list-style: none
}

blockquote,
q {
    quotes: none
}

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

a {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
    background: transparent;
    outline: none
}

img {
    vertical-align: bottom
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none
}

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold
}

del {
    text-decoration: line-through
}

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

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
}

th,
td {
    text-align: left;
    vertical-align: top
}

input,
select,
textarea {
    font-family: inherit
}

input[type="submit"] {
    cursor: pointer
}

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

html {
    overflow: auto
}

body {
    overflow: hidden;
    min-width: 320px;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
    color: #333;
    font-size: 1.4rem;
    line-height: 1.9;
    letter-spacing: .04em
}

@media all and (min-width: 600px) {
    body {
        min-width: 1200px;
        font-size: 1.6rem
    }
}

body.sg {
    height: auto
}

a {
    color: #0062b8;
    text-decoration: underline
}

@media all and (min-width: 600px) {
    a:hover {
        text-decoration: none
    }
}

span {
    font-weight: inherit
}

.u-alpha {
    display: block;
    text-decoration: none
}

@media all and (min-width: 600px) {
    .u-alpha {
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .u-alpha:hover {
        opacity: .7
    }
}

img {
    max-width: 100%;
    height: auto
}

.u-media-query {
    display: none;
    font-family: 'sp'
}

@media all and (min-width: 600px) {
    .u-media-query {
        font-family: 'pc'
    }
}

@media all and (max-width: 599px) {
    .u-view-pc {
        display: none !important
    }
}

@media all and (min-width: 600px) {
    .u-view-sp {
        display: none !important
    }
}

.u-font-roboto {
    font-family: 'Roboto', sans-serif
}

.u-txt-uppercase {
    text-transform: uppercase
}

.u-cf:after {
    content: "";
    display: block;
    clear: both
}

.u-inner {
    box-sizing: border-box
}

@media all and (max-width: 599px) {
    .u-inner {
        padding-left: 20px;
        padding-right: 20px
    }
}

@media all and (min-width: 600px) {
    .u-inner {
        width: 1080px;
        max-width: 100%;
        margin: auto
    }
}

.l-wrapper {
    position: relative
}

.l-footer {
    background: #002960;
    color: #fff;
    text-align: center
}

.l-footer__inner {
    padding-top: 22px;
    padding-bottom: 25px
}

.l-footer__logo {
    padding-top: 16px;
    margin: auto;
    max-width: 290px
}

.l-footer__info {
    margin: 12px 0 24px
}

.l-footer__info-txt {
    line-height: 1.6
}

.l-footer__info-txt+.l-footer__info-txt {
    margin-top: 6px
}

.l-footer__info-txt-small {
    color: rgba(255, 255, 255, 0.8);
    font-size: 1.1rem
}

.l-footer__link {
    font-size: 1.2rem
}

.l-footer__link-in {
    position: relative;
    display: inline-block;
    padding-left: 12px;
    color: #fff
}

.l-footer__link-in:before {
    position: absolute;
    top: 50%;
    left: -2px;
    width: 6px;
    height: 6px;
    margin-top: -4px;
    content: '';
    border-style: solid;
    border-width: 2px 2px 0 0;
    border-color: #fff #fff transparent transparent;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.l-footer__cr {
    margin-top: 15px;
    font-size: 1.4rem
}

.l-footer__cr-txt {
    font-weight: 900
}

@media all and (min-width: 600px) {
    .l-footer {
        position: relative
    }
    .l-footer__inner {
        padding: 31px 0
    }
    .l-footer__info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .l-footer__info-txt {
        padding: 0 16px
    }
    .l-footer__info-txt+.l-footer__info-txt {
        margin-top: 0
    }
    .l-footer__info-txt-small {
        padding-right: 8px;
        font-size: 1.4rem
    }
    .l-footer__link {
        position: absolute;
        right: 50px;
        bottom: 30px;
        font-size: 1.4rem
    }
    .l-footer__cr {
        margin-top: 15px;
        font-size: 1.3rem
    }
}

.l-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 320px;
    z-index: 2000
}

@media all and (min-width: 600px) {
    .l-header {
        width: 100%
    }
}

.l-header .hd-info-logo {
    padding: 13px 0 0 5px
}

.l-header .hd-info-logo__link {
    position: relative;
    display: block;
    padding: 0px 0 0 36px;
    text-decoration: none;
    color: #fff
}

.l-header .hd-info-logo__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 30px
}

.l-header .hd-info-logo__txt {
    display: block;
    font-size: 1rem;
    line-height: 1.3;
    letter-spacing: .04em
}

.l-header .hd-info-logo__name {
    display: block;
    margin-top: 2px;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .04em
}

@media all and (min-width: 375px) {
    .l-header .hd-info-logo {
        padding-left: 20px
    }
    .l-header .hd-info-logo__link {
        padding: 4px 0 0 53px
    }
    .l-header .hd-info-logo__img {
        width: 41px
    }
    .l-header .hd-info-logo__name {
        margin-top: 6px;
        font-size: 1.1rem
    }
}

@media all and (min-width: 600px) {
    .l-header .hd-info-logo {
        padding: 40px 0 0 50px
    }
    .l-header .hd-info-logo__link {
        padding: 6px 0 0 80px
    }
    .l-header .hd-info-logo__img {
        width: 58px
    }
    .l-header .hd-info-logo__txt {
        font-size: 1.3rem
    }
    .l-header .hd-info-logo__name {
        margin-top: 18px;
        font-size: 3rem
    }
}

.l-header .nav-btn {
    position: fixed;
    top: 10px;
    right: 10px;
    width: 46px;
    height: 46px;
    background: #1b1b1b;
    cursor: pointer;
    z-index: 2001
}

.l-header .nav-btn__line {
    position: absolute;
    left: 12px;
    width: 22px;
    height: 2px;
    content: '';
    background: #fff;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.l-header .nav-btn__line:nth-child(1) {
    top: 15px
}

.l-header .nav-btn__line:nth-child(2) {
    top: 22px
}

.l-header .nav-btn__line:nth-child(3) {
    top: 29px
}

.l-header .nav-btn.is-open {
    background: transparent
}

.l-header .nav-btn.is-open .nav-btn__line:nth-child(1) {
    top: 22px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.l-header .nav-btn.is-open .nav-btn__line:nth-child(2) {
    opacity: 0
}

.l-header .nav-btn.is-open .nav-btn__line:nth-child(3) {
    top: 22px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media all and (min-width: 600px) {
    .l-header .nav-btn {
        top: 40px;
        right: 40px;
        width: 80px;
        height: 80px
    }
    .l-header .nav-btn__line {
        left: 22px;
        width: 36px;
        height: 3px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .l-header .nav-btn__line:nth-child(1) {
        top: 27px
    }
    .l-header .nav-btn__line:nth-child(2) {
        top: 38px
    }
    .l-header .nav-btn__line:nth-child(3) {
        top: 49px
    }
    .l-header .nav-btn.is-open .nav-btn__line:nth-child(1) {
        top: 38px;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
    .l-header .nav-btn.is-open .nav-btn__line:nth-child(3) {
        top: 38px;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }
}

.l-nav {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    min-width: 320px;
    padding: 50px 30px;
    background: rgba(27, 27, 27, 0.9);
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    overflow: auto;
    -webkit-transform: translateX(120%);
    -ms-transform: translateX(120%);
    transform: translateX(120%)
}

.l-nav::-webkit-scrollbar {
    display: none
}

.l-nav.is-open {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.l-nav .nav-list {
    font-size: 1.3rem
}

.l-nav .nav-list__item {
    border-bottom: 1px solid #3d4546
}

.l-nav .nav-list__link {
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 12px 0 13px;
    position: relative
}

.l-nav .nav-list__link:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 12px;
    width: 6px;
    height: 6px;
    margin-top: -8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg)
}

.l-nav .nav-list-btn {
    margin-top: 25px
}

.l-nav .nav-list-btn__item+.nav-list-btn__item {
    margin-top: 10px
}

.l-nav .nav-list-btn__link {
    display: block;
    border-radius: 100px;
    box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.5)
}

.l-nav .l-nav-x {
    margin-top: 26px;
}

@media all and (min-width: 600px) {
    .l-nav {
        width: 530px;
        padding: 140px 70px
    }
    .l-nav .nav-list {
        margin-bottom: 18px
    }
    .l-nav .nav-list__link {
        font-size: 1.6rem;
        padding: 19px 10px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .l-nav .nav-list__link:after {
        right: 15px;
        width: 8px;
        height: 8px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .l-nav .nav-list__link:hover {
        color: #357a9c
    }
    .l-nav .nav-list__link:hover:after {
        border-color: #357a9c
    }
    .l-nav .nav-list-btn {
        margin-top: 37px
    }
    .l-nav .nav-list-btn__link {
        position: relative
    }
    .l-nav .nav-list-btn__link:after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        content: "";
        background: no-repeat center/contain;
        opacity: 0;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .l-nav .nav-list-btn__link.is-btn01:after {
        background-image: url("../img/btn_header01_pc_o.png")
    }
    .l-nav .nav-list-btn__link.is-btn02:after {
        background-image: url("../img/btn_header02_pc_o.png")
    }
    .l-nav .nav-list-btn__link:hover:after {
        opacity: 1
    }
    .l-nav .l-nav-x {
        position: absolute;
        bottom: 40px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        margin: auto;
    }
}

.nav-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000
}

.l-main-img {
    position: relative;
    background: url("../img/bg_mv01_sp.png") no-repeat center/cover;
    color: #fff
}

.l-main-img:before {
    display: block;
    width: 100%;
    padding-top: 121%;
    content: ""
}

.l-main-img__copy {
    position: absolute;
    top: 13%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 94.307%
}

.l-main-img__copy img {
    width: 100%
}

.l-main-img__research {
    position: absolute;
    top: 61%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 54.135%
}

.l-main-img__research img {
    width: 100%
}

@media all and (min-width: 600px) {
    .l-main-img {
        background-image: url("../img/bg_mv01_pc.png")
    }
    .l-main-img:before {
        padding-top: 60%
    }
    .l-main-img__copy {
        top: 8%;
        left: 55%;
        width: 75%
    }
    .l-main-img__research {
        top: 56.5%;
        width: 35.471%;
        margin-left: 15.4%
    }
}

.l-main-img-video {
    position: absolute;
    bottom: 16%;
    left: 7%
}

.l-main-img-video__inner {
    position: relative
}

.l-main-img-video__inner:before {
    content: "";
    display: block;
    width: 100%;
    padding: 30px
}

.l-main-img-video__inner iframe,
.l-main-img-video__inner video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.l-main-img-video__content {
    position: absolute;
    bottom: 17%;
    left: 9%;
    width: 125px;
    height: 70px
}

.l-main-img-video__txt {
    position: absolute;
    bottom: -36%;
    left: -27px;
    padding: 5px;
    font-size: 1rem;
    font-weight: 800;
    color: #fff;
    text-align: center;
    width: 170px;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    line-height: 1.4;
    background-color: #002960
}

.l-main-img-video__txt-head {
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7)
}

.l-main-img-video-video iframe {
    width: 100%
}

@media all and (min-width: 600px) {
    .l-main-img-video {
        top: 74%;
        right: 10%;
        left: auto
    }
    .l-main-img-video__content {
        left: auto;
        right: 7%;
        bottom: 25%;
        width: clamp(280px, 22vw, 364px);
        height: 206px
    }
    .l-main-img-video__name {
        position: absolute;
        top: -250px;
        right: 4%;
        padding: 0 15px;
        width: 175px;
        margin-bottom: 50px;
        font-size: 2.6rem;
        font-weight: 800;
        background-color: #002960
    }
    .l-main-img-video__name-role {
        font-weight: 500
    }
    .l-main-img-video__txt {
        padding: 0 5px 10px 5px;
        left: auto;
        bottom: -57px;
        right: -46px;
        width: clamp(300px, 28vw, 450px);
        font-size: 2.6rem;
        line-height: 1.5;
        z-index: 3
    }
    .l-main-img-video__txt-head {
        font-size: 1.6rem
    }
}

@media screen and (min-width: 601px) and (max-width: 1299px) {
    .l-main-img-video {
        top: 76.5%;
        right: 9%
    }
    .l-main-img-video__name {
        font-size: 2rem
    }
    .l-main-img-video__txt {
        bottom: -36px;
        right: -40px;
        font-size: 2rem
    }
}

@media screen and (min-width: 1300px) and (max-width: 1499px) {
    .l-main-img-video {
        top: 76.5%;
        right: 9%
    }
    .l-main-img-video__name {
        font-size: 2.3rem
    }
    .l-main-img-video__txt {
        font-size: 2.3rem
    }
}

.c-bg-gray {
    background: #e8eef1
}

.c-bg-ckeck {
    background: url("../img/bg_check01.png") repeat center/63px
}

.c-x-btn01 {
    margin: auto;
}

.c-x-btn01 img {
    width: 20px;
    display: block;
    margin: 0 auto;
}

.c-color-blue-shade {
    color: #357a9c
}

.c-color-blue-deep {
    color: #0062b8
}

.c-color-red {
    color: #ff3000
}

.c-color-gray-bg {
    color: #e8eef1
}

.c-cv01 {
    background: url("../img/bg_cv01_sp.png") no-repeat center/cover;
    color: #fff
}

.c-cv01__inner {
    position: relative;
    padding-top: 40px;
    padding-bottom: 46px
}

.c-cv01__inner:before {
    position: absolute;
    top: 59%;
    right: -10px;
    left: -10px;
    z-index: 1;
    -webkit-transform: rotate(-7deg);
    -ms-transform: rotate(-7deg);
    transform: rotate(-7deg);
    display: block;
    height: 110px;
    content: "";
    background-image: -webkit-gradient(linear, left top, right top, from(#0054a5), to(#0061b7));
    background-image: linear-gradient(90deg, #0054a5 0%, #0061b7 100%)
}

.c-cv01__head {
    position: relative;
    z-index: 2;
    width: 246px
}

.c-cv01__img01,
.c-cv01__img02,
.c-cv01__img03 {
    position: absolute;
    top: -33px;
    right: 10px;
    width: 172px
}

.c-cv01__img02,
.c-cv01__img03 {
    display: none
}

.c-cv01__img03 {
    top: -30px;
    width: 174px
}

.c-cv01__txt {
    position: relative;
    z-index: 2;
    margin-top: 12px;
    font-size: 1.5rem;
    line-height: 1.3
}

.c-cv01__small {
    position: relative;
    z-index: 2;
    margin-top: 5px;
    font-size: 1.3rem
}

.c-cv01__list-btn {
    position: relative;
    z-index: 3;
    margin-top: 15px;
    padding: 0 15px
}

.c-cv01__list-btn-item+.c-cv01__list-btn-item {
    margin-top: 10px
}

.c-cv01__list-btn-item-link {
    display: block;
    border-radius: 100px;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.5)
}

@media all and (min-width: 600px) {
    .c-cv01 {
        background: no-repeat center/cover;
        background-image: -webkit-gradient(linear, left top, right top, from(#004693), to(#0062b8));
        background-image: linear-gradient(90deg, #004693 0%, #0062b8 100%)
    }
    .c-cv01__inner {
        padding-top: 60px;
        padding-bottom: 57px
    }
    .c-cv01__inner:before {
        display: none
    }
    .c-cv01__bg {
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        opacity: 0.6
    }
    .c-cv01__bg svg {
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100%
    }
    .c-cv01__head {
        width: 493px
    }
    .c-cv01__img01,
    .c-cv01__img02,
    .c-cv01__img03 {
        top: auto;
        bottom: 0;
        right: -57px;
        width: 331px
    }
    .c-cv01__img03 {
        right: -66px
    }
    .c-cv01__txt {
        margin-top: 18px;
        font-size: 1.6rem;
        line-height: 1.9
    }
    .c-cv01__small {
        margin-top: 5px;
        font-size: 1.6rem
    }
    .c-cv01__list-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        margin: 0 0 0 -5px;
        padding: 0
    }
    .c-cv01__list-btn-item+.c-cv01__list-btn-item {
        margin-top: 18px
    }
    .c-cv01__list-btn-item-link {
        position: relative;
        box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.5)
    }
    .c-cv01__list-btn-item-link:after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        content: "";
        background: no-repeat center/contain;
        opacity: 0;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .c-cv01__list-btn-item-link.is-btn01:after {
        background-image: url("../img/btn_cv01-btn01_pc_o.png")
    }
    .c-cv01__list-btn-item-link.is-btn02:after {
        background-image: url("../img/btn_cv01-btn02_pc_o.png")
    }
    .c-cv01__list-btn-item-link:hover:after {
        opacity: 1
    }
}

.c-cv01-wrap.has-img02 .c-cv01__img01 {
    display: none
}

.c-cv01-wrap.has-img02 .c-cv01__img02 {
    display: block
}

.c-cv01-wrap.has-img02 .c-cv01__img03 {
    display: none
}

.c-cv01-wrap.has-img03 .c-cv01__img01 {
    display: none
}

.c-cv01-wrap.has-img03 .c-cv01__img02 {
    display: none
}

.c-cv01-wrap.has-img03 .c-cv01__img03 {
    display: block
}

.c-cv-box__btn {
    position: relative;
    z-index: 1;
    margin-bottom: 20px
}

.c-cv-box-id {
    background-color: #d5f0cd;
    padding: 10px;
    margin-bottom: 20px
}

.c-cv-box-id__in {
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 2px
}

.c-cv-box-id__txt {
    font-size: 1.3rem;
    font-weight: bold;
    color: #00b900;
    padding-left: 5px
}

.c-cv-box-id__search {
    width: 45px;
    background-color: #333;
    color: #fff;
    font-size: 1.0rem;
    text-align: center;
    padding-top: 2px
}

.c-cv-box__txt {
    font-size: 1.2rem;
    line-height: 1.5
}

@media all and (min-width: 600px) {
    .c-cv-box-area {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 25px
    }
    .c-cv-box__btn {
        width: 450px;
        margin-bottom: 0
    }
    .c-cv-box-id {
        width: 340px;
        padding: 23px 30px;
        margin-bottom: 0;
        margin-left: 60px;
        box-sizing: border-box
    }
    .c-cv-box-id__in {
        background-color: #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 3px
    }
    .c-cv-box-id__txt {
        font-size: 1.5rem;
        padding-left: 15px
    }
    .c-cv-box__txt {
        font-size: 1.5rem
    }
    .c-cv-box-id__search {
        width: 66px;
        font-size: 1.3rem
    }
    .c-cv-box__qr {
        position: absolute;
        right: 0;
        right: 0;
        max-width: 110px;
    }
}

.c-form01 {
    background: #e8eef1
}

.c-form01__content {
    padding: 5px 20px;
    background: #fff
}

.c-form01__label {
    box-sizing: border-box;
    position: absolute;
    top: 15px;
    right: 0;
    padding: 0 7px 1px;
    border-style: solid;
    border-width: 1px;
    border-color: #979b9d;
    border-radius: 5px;
    color: #979b9d;
    font-size: 1rem;
    font-weight: normal
}

.c-form01__label.is-required {
    line-height: 1.5;
    border-color: #ff3000;
    background: #ff3000;
    color: #fff
}

.c-form01__zip {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.c-form01__zip-prefix {
    margin-right: 5px
}

.c-form01__input {
    display: block;
    width: 180px
}

.c-form01__address {
    margin-top: 10px
}

.c-form01__attention {
    line-height: 1.5;
    margin-top: 5px;
    font-size: 1.1rem
}

.c-form01__area-btn {
    margin-top: 30px
}

.c-form01__area-btn button {
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    border: 0
}

.c-form01__area-btn a {
    text-decoration: none
}

.c-form01__btn {
    display: block;
    overflow: hidden;
    width: 300px;
    height: 60px;
    margin: 0 auto;
    border-radius: 100px;
    background: center/contain no-repeat url("../img/btn_confirm01-sp_n.png");
    color: transparent;
    outline: none
}

.c-form01__btn.is-adjust {
    width: 225px;
    background-image: url("../img/btn_adjust01-sp_n.png")
}

.c-form01__btn.is-submit {
    margin-top: 15px;
    background-image: url("../img/btn_submit01-sp_n.png")
}

.c-form01 th {
    position: relative;
    padding: 10px 0 8px;
    border-top: 1px solid #cad4d4;
    font-size: 1.5rem;
    font-weight: bold
}

.c-form01 td {
    padding-bottom: 15px
}

.c-form01 tr:first-of-type th {
    border-top: 0
}

.c-form01 input,
.c-form01 textarea,
.c-form01 select {
    box-sizing: border-box;
    display: block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    height: 38px;
    padding: 0 6px;
    border: 1px solid #cad4d4;
    background: #e8eef1;
    border-radius: 0;
    font-size: 1.6rem
}

.c-form01 input::-webkit-input-placeholder,
.c-form01 textarea::-webkit-input-placeholder,
.c-form01 select::-webkit-input-placeholder {
    color: #b1b5b7
}

.c-form01 input:-ms-input-placeholder,
.c-form01 textarea:-ms-input-placeholder,
.c-form01 select:-ms-input-placeholder {
    color: #b1b5b7
}

.c-form01 input::placeholder,
.c-form01 textarea::placeholder,
.c-form01 select::placeholder {
    color: #b1b5b7
}

.c-form01 input:focus,
.c-form01 textarea:focus,
.c-form01 select:focus {
    border: 2px solid #333;
    background: #fff
}

.c-form01 input:not(:placeholder-shown),
.c-form01 textarea:not(:placeholder-shown),
.c-form01 select:not(:placeholder-shown) {
    border: 2px solid #333;
    background: #fff
}

.c-form01 select {
    width: 190px;
    padding: 0 10px;
    background: center/cover no-repeat url("../img/bg_select-sp.png");
    font-size: 1.3rem
}

.c-form01 textarea {
    height: 190px;
    padding: 6px;
    resize: vertical
}

@media all and (max-width: 599px) {
    .c-form01 table,
    .c-form01 thead,
    .c-form01 tr,
    .c-form01 th,
    .c-form01 td {
        display: block
    }
}

@media all and (max-width: 340px) {
    .c-form01__btn {
        max-width: 100%
    }
}

@media all and (min-width: 600px) {
    .c-form01__content {
        padding: 35px 70px
    }
    .c-form01__label {
        top: 27px;
        padding: 0 12px 1px;
        font-size: 1.2rem
    }
    .c-form01__attention {
        font-size: 1.3rem
    }
    .c-form01__area-btn {
        margin-top: 40px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
    .c-form01__btn {
        position: relative;
        width: 440px;
        height: 92px;
        margin: 0;
        background-image: url("../img/btn_confirm01-pc_n.png")
    }
    .c-form01__btn:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 440px;
        height: 92px;
        background: center/contain no-repeat url("../img/btn_confirm01-pc_o.png");
        content: "";
        opacity: 0;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .c-form01__btn:hover {
        cursor: pointer
    }
    .c-form01__btn:hover:after {
        opacity: 1
    }
    .c-form01__btn.is-adjust {
        width: 300px;
        background-image: url("../img/btn_adjust01-pc_n.png")
    }
    .c-form01__btn.is-adjust:after {
        background: none
    }
    .c-form01__btn.is-submit {
        margin: 0 0 0 50px;
        background-image: url("../img/btn_submit01-pc_n.png")
    }
    .c-form01__btn.is-submit:after {
        background-image: url("../img/btn_submit01-pc_o.png")
    }
    .c-form01 tr:first-of-type td {
        border-top: 0
    }
    .c-form01 tr:nth-of-type(-n+4) input {
        width: 335px
    }
    .c-form01 th {
        box-sizing: border-box;
        width: 270px;
        padding: 23px 0;
        font-size: 1.8rem
    }
    .c-form01 td {
        padding: 15px 0 15px 40px;
        border-top: 1px solid #cad4d4;
        vertical-align: middle
    }
    .c-form01 input,
    .c-form01 select {
        height: 50px;
        padding: 0 18px
    }
    .c-form01 textarea {
        height: 175px;
        padding: 10px
    }
    .c-form01 select {
        width: 220px;
        background-image: url("../img/bg_select-pc.png");
        font-size: 1.6rem
    }
    .c-form01 select::-ms-expand {
        display: none
    }
    .c-x-btn01 {
        margin: auto;
    }
    .c-x-btn01 img {
        width: 30px;
    }
}

.c-form01 .checkWrap {
    display: block
}

.c-form01 label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.c-form01 label+label {
    margin-top: 15px
}

.c-form01 label input[type="checkbox"] {
    display: none;
    margin-right: 8px;
    width: 25px;
    height: 25px
}

.c-form01 label span {
    position: relative;
    padding-left: 30px
}

.c-form01 label span:before,
.c-form01 label span:after {
    position: absolute;
    display: block;
    content: ""
}

.c-form01 label span:before {
    box-sizing: border-box;
    top: 2px;
    left: 0;
    width: 24px;
    height: 24px;
    border: 1px solid #cad4d4;
    background: #e8eef1
}

.c-form01 label span:after {
    top: 8px;
    left: 7px;
    width: 8px;
    height: 5px;
    border-style: solid;
    border-width: 0 0 3px 3px;
    border-color: #0062b8;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0
}

.c-form01 label input[type="checkbox"]:checked+span:before {
    border: 2px solid #333;
    background: #fff
}

.c-form01 label input[type="checkbox"]:checked+span:after {
    opacity: 1
}

@media all and (max-width: 599px) {
    .c-form01 .checkWrap+.checkWrap {
        margin-top: 10px
    }
}

@media all and (min-width: 600px) {
    .c-form01__checkbox {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        vertical-align: middle;
        margin: 0 -50px -20px 0
    }
    .c-form01 label {
        margin: 0 50px 20px 0
    }
    .c-form01 label+label {
        margin-top: 0
    }
    .c-form01 label span:before {
        top: 5px;
        width: 22px;
        height: 22px
    }
    .c-form01 label span:after {
        top: 10px;
        left: 6px
    }
}

.c-head01 {
    margin-bottom: 32px;
    text-align: center
}

.c-head01__tit {
    margin-bottom: 8px;
    font-size: 2.5rem;
    font-weight: 900;
    line-height: 1.3;
    letter-spacing: .04em
}

.c-head01__en {
    font-size: 1rem;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .04em
}

@media all and (min-width: 600px) {
    .c-head01 {
        margin-bottom: 66px
    }
    .c-head01__tit {
        margin-bottom: 13px;
        font-size: 6rem
    }
    .c-head01__en {
        font-size: 2rem
    }
}

@media all and (min-width: 600px) {
    .js-anime-elem[data-anime="fadein"] {
        opacity: 0;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px);
        -webkit-transition: all .6s ease;
        transition: all .6s ease
    }
    .js-anime-elem[data-anime="fadein"].is-animated {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@media all and (min-width: 600px) {
    .js-fadein-copy {
        opacity: 0;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .js-fadein-copy.is-animated {
        opacity: 1
    }
}

.js-switch-tab {
    cursor: pointer
}

.js-switch-content {
    display: none
}

.js-switch-content.is-active {
    display: block
}

.js-toggle-trigger {
    cursor: pointer
}

.js-toggle-content {
    display: none
}

.home-intro {
    position: relative
}

.home-intro__en {
    position: absolute;
    left: -14px;
    top: 28px;
    z-index: 2;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    font-size: 10rem;
    line-height: 1;
    font-weight: 900;
    opacity: .05
}

@media all and (min-width: 600px) {
    .home-intro__en {
        left: -55px;
        top: 18px;
        font-size: 25rem
    }
}

.home-intro-sec01 {
    position: relative;
    z-index: 2;
    color: #fff;
    margin-top: -52px
}

.home-intro-sec01__inner {
    position: relative;
    z-index: 2;
    padding-top: 68px;
    padding-bottom: 62px
}

.home-intro-sec01__bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.home-intro-sec01__bg svg {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%
}

.home-intro-sec01__img {
    position: absolute;
    top: -30px;
    right: -10px;
    width: 168px
}

.home-intro-sec01__head {
    position: relative;
    z-index: 1;
    line-height: 1.4;
    font-size: 2.5rem;
    font-weight: 900;
    letter-spacing: .04em
}

.home-intro-sec01__head-txt {
    display: inline-block;
    margin: 0 6px 0 0;
    padding: 0 7px;
    background: #fff;
    color: #0062b8
}

.home-intro-sec01__head-small {
    position: relative;
    top: -2px;
    font-size: 2rem
}

.home-intro-sec01__head-large {
    font-size: 3rem
}

.home-intro-sec01__txt01 {
    box-sizing: border-box;
    position: relative;
    width: 240px;
    margin-top: 13px;
    padding: 12px 10px 12px 45px;
    background: #002960;
    line-height: 1.3
}

.home-intro-sec01__txt01:before {
    position: absolute;
    top: 50%;
    left: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    width: 25px;
    height: 18px;
    background: url("../img/txt_q01_sp.png") no-repeat center/contain;
    content: ""
}

.home-intro-sec01__txt01:after {
    position: absolute;
    right: -96px;
    bottom: 0;
    display: block;
    content: "";
    border-style: solid;
    border-width: 50px 79px;
    border-color: transparent transparent #002960 #002960
}

.home-intro-sec01__txt01-in {
    position: relative;
    z-index: 1;
    display: block;
    margin-right: -96px
}

.home-intro-sec01__txt02 {
    position: relative;
    margin: 15px -10px 0 0;
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 900;
    letter-spacing: .04em
}

.home-intro-sec01__txt02-ico {
    position: absolute;
    top: -31px;
    left: -20px;
    width: 41px
}

.home-intro-sec01__txt02-large {
    font-size: 3rem;
    line-height: 1.13;
    letter-spacing: .04em;
    background: url("../img/ico_wave01.png") repeat-x bottom center/9px
}

@media all and (max-width: 340px) {
    .home-intro-sec01__img {
        right: -34px
    }
}

@media all and (min-width: 600px) {
    .home-intro-sec01 {
        margin-top: -230px
    }
    .home-intro-sec01__inner {
        padding-top: 171px;
        padding-bottom: 215px
    }
    .home-intro-sec01__img {
        top: 102px;
        right: auto;
        left: 50%;
        width: 592px;
        margin-left: -52px
    }
    .home-intro-sec01__head {
        font-size: 5.4rem
    }
    .home-intro-sec01__head-txt {
        position: relative;
        top: -4px;
        margin: 0 6px 0 0;
        padding: 6px 18px 10px;
        line-height: 1
    }
    .home-intro-sec01__head-small {
        font-size: 6rem
    }
    .home-intro-sec01__head-large {
        font-size: 7rem
    }
    .home-intro-sec01__txt01 {
        width: 680px;
        margin-top: 24px;
        padding: 14px 10px 14px 58px;
        font-size: 2.2rem;
        letter-spacing: .04em
    }
    .home-intro-sec01__txt01:before {
        left: 18px;
        width: 30px;
        height: 22px;
        background-image: url("../img/txt_q01_pc.png")
    }
    .home-intro-sec01__txt01:after {
        right: -140px;
        border-width: 45px 70px
    }
    .home-intro-sec01__txt02 {
        margin: 16px 0 0 -4px;
        font-size: 5rem;
        line-height: 1.8
    }
    .home-intro-sec01__txt02-ico {
        top: -4px;
        left: -104px;
        width: 96px
    }
    .home-intro-sec01__txt02-large {
        position: relative;
        top: -14px;
        font-size: 7rem;
        background-size: 18px
    }
}

.home-intro-sec02 {
    position: relative;
    margin-top: -52px;
    color: #fff;
    background: url("../img/bg_intro02_sp.png") no-repeat top center/cover
}

.home-intro-sec02:before,
.home-intro-sec02:after {
    position: absolute;
    left: -10px;
    right: -10px;
    display: block;
    content: "";
    border-bottom: 4px solid #fff
}

.home-intro-sec02:before {
    top: 20px;
    -webkit-transform: rotate(-7deg);
    -ms-transform: rotate(-7deg);
    transform: rotate(-7deg)
}

.home-intro-sec02:after {
    bottom: -36px;
    border-bottom-width: 60px;
    -webkit-transform: rotate(7deg);
    -ms-transform: rotate(7deg);
    transform: rotate(7deg)
}

.home-intro-sec02__inner {
    position: relative;
    z-index: 1;
    padding-top: 80px;
    padding-bottom: 13px
}

.home-intro-sec02__bg-txt {
    position: absolute;
    top: 40px;
    left: 50%;
    width: 177px
}

.home-intro-sec02__head {
    position: relative;
    z-index: 1;
    line-height: 1.4;
    font-size: 2rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-align: center
}

.home-intro-sec02__head-txt {
    display: block;
    margin: 4px 0 0 0;
    font-size: 2.5rem;
    line-height: 1.8
}

.home-intro-sec02__head-txt-large {
    position: relative;
    line-height: 1.3;
    font-size: 3rem
}

.home-intro-sec02__head-txt-large:after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 2px;
    display: block;
    border-bottom: 3px solid;
    content: ""
}

.home-intro-sec02__img {
    padding: 0 14px
}

.home-intro-sec02__next {
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 1;
    width: 121px;
    margin-bottom: -30px;
    margin-left: -60px
}

@media all and (min-width: 600px) {
    .home-intro-sec02 {
        margin-top: -240px;
        background-image: url("../img/bg_intro02_pc.png")
    }
    .home-intro-sec02:before,
    .home-intro-sec02:after {
        margin-right: -20px;
        margin-left: -20px;
        border-bottom-width: 10px
    }
    .home-intro-sec02:before {
        top: 20px
    }
    .home-intro-sec02:after {
        bottom: -130px;
        border-bottom-width: 250px
    }
    .home-intro-sec02__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-top: 234px;
        padding-bottom: 198px
    }
    .home-intro-sec02__bg-txt {
        top: 152px;
        left: 50%;
        width: 600px;
        margin: 0 0 0 227px
    }
    .home-intro-sec02__head {
        box-sizing: border-box;
        width: calc(100% - 432+20px);
        margin-right: -20px;
        padding-left: 68px;
        line-height: 1.4;
        font-size: 4.4rem;
        text-align: left
    }
    .home-intro-sec02__head-txt {
        margin: 2px 0 0 0;
        font-size: 6rem;
        line-height: 1.5
    }
    .home-intro-sec02__head-txt-large {
        font-size: 7rem
    }
    .home-intro-sec02__head-txt-large:after {
        bottom: 6px;
        border-bottom-width: 6px
    }
    .home-intro-sec02__img {
        box-sizing: border-box;
        position: relative;
        left: 14px;
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
        width: 432px;
        padding: 0
    }
    .home-intro-sec02__next {
        width: 190px;
        margin-bottom: 20px;
        margin-left: -95px
    }
}

.home-consultant {
    position: relative;
    z-index: 1;
    padding-top: 26px;
    background: url("../img/bg_consultant01_sp.png") no-repeat 40% 15px/97% auto
}

.home-consultant__inner {
    padding-top: 32px;
    padding-bottom: 60px
}

.home-consultant__head {
    position: relative;
    margin-bottom: 22px;
    font-size: 2.5rem;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .04em;
    text-align: center
}

.home-consultant__head:before {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: block;
    width: 375px;
    height: 135px;
    content: "";
    background: url("../img/bg_consultant_head01_sp.png") no-repeat center/contain
}

.home-consultant__head-in {
    position: relative;
    z-index: 1
}

.home-consultant__head-txt {
    display: block;
    padding-bottom: 10px;
    background: url("../img/ico_consultant01_sp.png") no-repeat bottom center/257px
}

.home-consultant__txt {
    position: relative
}

.home-consultant__txt-ico {
    position: absolute;
    top: -20px;
    right: 16px;
    width: 32.54%
}

@media all and (min-width: 600px) {
    .home-consultant {
        padding-top: 0;
        background: url("../img/bg_consultant01_pc.png") no-repeat 51% 12%/1404px auto
    }
    .home-consultant__inner {
        padding-top: 46px;
        padding-bottom: 120px
    }
    .home-consultant__head {
        margin-bottom: 24px;
        font-size: 7rem
    }
    .home-consultant__head:before {
        width: 990px;
        height: 335px;
        margin: -6px 0 0 1px;
        background-image: url("../img/bg_consultant_head01_pc.png")
    }
    .home-consultant__head-txt {
        padding-bottom: 12px;
        background-image: url("../img/ico_consultant01_pc.png");
        background-size: 728px
    }
    .home-consultant__txt {
        padding-left: 40px
    }
    .home-consultant__txt-ico {
        top: -132px;
        right: 0;
        width: 178px
    }
}

.home-reason {
    background: #e8eef1
}

.home-reason-sec01 {
    position: relative;
    z-index: 2
}

.home-reason-sec01__inner {
    padding-top: 46px
}

.home-reason-sec01__and {
    margin-top: 35px;
    background: #fff;
    padding: 25px 25px 30px
}

.home-reason-sec01__and-head {
    text-align: center;
    font-size: 2rem;
    line-height: 1.3;
    font-weight: 900
}

.home-reason-sec01__and-head .is-red {
    color: #ff4200
}

.home-reason-sec01__and-head .is-large {
    font-size: 2.5rem
}

.home-reason-sec01__and-img {
    width: 268px;
    margin: 20px auto 0
}

.home-reason-sec01__and-box {
    position: relative;
    margin-top: -35px;
    padding: 15px 30px;
    background: #e8eef1
}

.home-reason-sec01__and-box-txt {
    position: relative;
    padding-left: 53px;
    font-size: 1.6rem;
    font-weight: 900;
    line-height: 1.3
}

.home-reason-sec01__and-box-txt strong {
    color: #004a98;
    font-weight: 900
}

.home-reason-sec01__and-box-txt:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 46px;
    height: 41px;
    background: url(../img/ico_arw01.png) no-repeat center/contain
}

@media all and (min-width: 600px) {
    .home-reason-sec01__inner {
        padding-top: 110px
    }
    .home-reason-sec01__and {
        margin-top: 30px;
        padding: 45px 130px 60px
    }
    .home-reason-sec01__and-head {
        font-size: 3rem
    }
    .home-reason-sec01__and-head .is-large {
        font-size: 4rem
    }
    .home-reason-sec01__and-img {
        width: 820px;
        margin: 40px auto 0
    }
    .home-reason-sec01__and-box {
        margin-top: -68px;
        padding: 30px 130px
    }
    .home-reason-sec01__and-box-txt {
        padding-left: 70px;
        font-size: 2.2rem
    }
    .home-reason-sec01__and-box-txt:before {
        width: 55px;
        height: 49px
    }
}

.home-reason-sec02 {
    position: relative;
    margin-top: -130px;
    background: url("../img/bg_reason01-sp.png") no-repeat top center/cover
}

.home-reason-sec02__inner {
    padding-top: 154px
}

.home-reason-sec02__head {
    margin-bottom: 12px;
    font-size: 2.5rem;
    line-height: 1.3;
    font-weight: 900;
    text-align: center;
    color: #fff;
    letter-spacing: .04em
}

.home-reason-sec02__img {
    width: 191px;
    margin: -22px auto 0
}

.home-reason-sec02__next {
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 2;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 120px;
    margin-top: 12px
}

@media all and (min-width: 600px) {
    .home-reason-sec02 {
        margin-top: -260px;
        background-image: url("../img/bg_reason01-pc.png")
    }
    .home-reason-sec02__inner {
        position: relative;
        padding-top: 354px;
        padding-bottom: 100px
    }
    .home-reason-sec02__head {
        position: relative;
        z-index: 1;
        margin-bottom: 14px;
        font-size: 4rem;
        text-align: left
    }
    .home-reason-sec02__txt {
        padding-left: 50px
    }
    .home-reason-sec02__img {
        position: absolute;
        right: 20px;
        bottom: 0;
        width: 382px;
        margin: 0 0 -6px
    }
    .home-reason-sec02__next {
        width: 152px;
        margin: -24px 0 0 -75px
    }
}

.home-reason-sec03 {
    background: #fff url("../img/bg_reason02-sp.png") no-repeat top center/100% auto
}

.home-reason-sec03__inner {
    padding-top: 58px;
}

.home-reason-sec03__head {
    margin-bottom: 13px;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.3;
    text-align: center;
    letter-spacing: .04em
}

.home-reason-sec03__head-small {
    font-size: 1.4rem;
    letter-spacing: .04em
}

.home-reason-sec03__head-large {
    display: inline-block;
    margin: 5px 0;
    border-bottom: 2px solid;
    font-size: 2.3rem;
    letter-spacing: .04em
}

.home-reason-sec03__img {
    width: 100%;
    max-width: 298px;
    margin: auto
}

.is-more-small {
    font-size: 14px;
}

@media all and (max-width: 340px) {
    .home-reason-sec03__head {
        font-size: 1.8rem
    }
    .home-reason-sec03__head-large {
        font-size: 2.1rem
    }
}

@media all and (min-width: 600px) {
    .home-reason-sec03 {
        position: relative;
        height: 600px;
        background-image: url("../img/bg_reason02-pc.png")
    }
    .home-reason-sec03__inner {
        position: absolute;
        top: 41%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 100%
    }
    .home-reason-sec03__head {
        width: calc(50% + 100px);
        margin: 0 -16px 0 0;
        padding-bottom: 0;
        font-size: 4rem;
        text-align: left
    }
    .home-reason-sec03__head-small {
        font-size: 3rem
    }
    .is-more-small {
        font-size: 2rem;
    }
    .home-reason-sec03__head-large {
        margin: 5px 0;
        border-bottom: 2px solid;
        font-size: 5rem
    }
    .home-reason-sec03__img {
        position: relative;
        top: -5px;
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
        width: calc(50% - 100px);
        max-width: calc(50% - 100px);
        margin-left: -71px
    }
    .home-reason-sec03__img img {
        max-width: calc(100% + 50px)
    }
}

.home-exam {
    position: relative
}

.home-exam__en {
    position: absolute;
    left: -14px;
    top: 240px;
    z-index: 2;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;
    font-size: 10rem;
    line-height: 1;
    font-weight: 900;
    opacity: .5
}

.home-exam__bg {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 230px
}

.home-exam__bg svg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@media all and (min-width: 600px) {
    .home-exam__en {
        left: -55px;
        top: 18px;
        font-size: 25rem
    }
    .home-exam__bg {
        height: 305px
    }
}

.home-exam-sec01 {
    position: relative;
    z-index: 2
}

.home-exam-sec01__inner {
    padding-top: 54px
}

@media all and (min-width: 600px) {
    .home-exam-sec01__inner {
        padding-top: 110px
    }
}

.home-exam-sec01-point {
    position: relative;
    margin: 0 -10px;
    padding: 20px 20px 70px;
    border: 5px solid #0062b8
}

.home-exam-sec01-point__list-item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.home-exam-sec01-point__list-item+.home-exam-sec01-point__list-item {
    margin-top: 10px
}

.home-exam-sec01-point__list-item-ico {
    width: 75px;
    margin-right: 10px
}

.home-exam-sec01-point__list-item-num {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    line-height: 1;
    font-weight: 900;
    font-size: 6rem;
    letter-spacing: 0
}

.home-exam-sec01-point__list-item-txt {
    position: relative;
    z-index: 1;
    width: calc(100% - 75px - 10px);
    font-size: 1.6rem;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .04em
}

.home-exam-sec01-point__head {
    position: absolute;
    bottom: -16px;
    left: 50%;
    width: 85%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    max-width: 290px;
    padding-bottom: 10px;
    text-align: center;
    font-size: 1.5rem
}

.home-exam-sec01-point__head:before,
.home-exam-sec01-point__head:after {
    position: absolute;
    bottom: 0;
    display: block;
    width: 45px;
    height: 70px;
    content: "";
    background: url("../img/img_exam-ribon01-sp.png") no-repeat center/contain
}

.home-exam-sec01-point__head:before {
    left: -20px
}

.home-exam-sec01-point__head:after {
    right: -20px;
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg)
}

.home-exam-sec01-point__head-txt {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    padding: 12px 0 13px;
    font-weight: 900;
    line-height: 1.3;
    background: #0062b8;
    color: #fff;
    letter-spacing: .04em
}

.home-exam-sec01-point__head-txt-large {
    font-size: 2rem;
    letter-spacing: .04em
}

.home-exam-sec01-point__appeal-point {
    margin-top: 61px
}

.home-exam-sec01-point__appeal-point-txt {
    position: relative;
    padding: 20px 23px;
    font-size: 2.5rem;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .04em
}

.home-exam-sec01-point__appeal-point-txt:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 58px;
    height: 58px;
    content: "";
    border-style: solid;
    border-width: 3px 0 0 3px
}

.home-exam-sec01-point__appeal-point-txt:after {
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 58px;
    height: 58px;
    content: "";
    border-style: solid;
    border-width: 0 3px 3px 0
}

.home-exam-sec01-point__appeal-point-txt-large {
    font-weight: 900;
    font-size: 3.5rem;
    letter-spacing: .04em;
    border-bottom: 3px solid
}

.home-exam-sec01-point__appeal-point-txt-large-wrap {
    display: inline-block;
    margin-bottom: 8px
}

.home-exam-sec01-point__appeal-point-img {
    overflow: hidden;
    width: 176px;
    height: 145px;
    margin: -15px 0 0 auto
}

@media all and (max-width: 340px) {
    .home-exam-sec01-point__head {
        font-size: 1.3rem
    }
    .home-exam-sec01-point__head-txt-large {
        font-size: 1.8rem
    }
    .home-exam-sec01-point__appeal-point-txt {
        font-size: 2rem
    }
    .home-exam-sec01-point__appeal-point-txt-large {
        font-size: 3rem
    }
}

@media all and (min-width: 600px) {
    .home-exam-sec01-point {
        margin: 128px 0 0;
        padding: 0 0 92px;
        border-width: 10px
    }
    .home-exam-sec01-point__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        position: relative;
        top: -70px;
        margin-bottom: -70px
    }
    .home-exam-sec01-point__list-item {
        display: block;
        width: 350px;
        text-align: center
    }
    .home-exam-sec01-point__list-item+.home-exam-sec01-point__list-item {
        margin-top: 0
    }
    .home-exam-sec01-point__list-item+.home-exam-sec01-point__list-item:nth-child(n+4) {
        margin-top: 10px
    }
    .home-exam-sec01-point__list-item-ico {
        width: 170px;
        margin: auto
    }
    .home-exam-sec01-point__list-item-num {
        top: auto;
        bottom: -21px;
        right: 54px;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
        font-size: 11rem
    }
    .home-exam-sec01-point__list-item-txt {
        box-sizing: border-box;
        width: 100%;
        margin-top: 10px;
        font-size: 2.2rem
    }
    .home-exam-sec01-point__head {
        bottom: -51px;
        width: 880px;
        max-width: 100%;
        margin-left: -440px;
        padding-bottom: 13px;
        font-size: 2.6rem
    }
    .home-exam-sec01-point__head:before,
    .home-exam-sec01-point__head:after {
        width: 90px;
        background-image: url("../img/img_exam-ribon01-pc.png")
    }
    .home-exam-sec01-point__head:before {
        left: -40px
    }
    .home-exam-sec01-point__head:after {
        right: -40px
    }
    .home-exam-sec01-point__head-txt {
        padding: 17px 0 18px
    }
    .home-exam-sec01-point__head-txt-large {
        font-size: 3.6rem;
        line-height: 1
    }
    .home-exam-sec01-point__appeal-point {
        position: relative;
        margin-top: 140px
    }
    .home-exam-sec01-point__appeal-point-txt {
        box-sizing: border-box;
        width: 762px;
        padding: 31px 20px 44px 50px;
        font-size: 6rem
    }
    .home-exam-sec01-point__appeal-point-txt:before {
        width: 105px;
        height: 105px;
        border-width: 6px 0 0 6px
    }
    .home-exam-sec01-point__appeal-point-txt:after {
        width: 105px;
        height: 105px;
        border-width: 0 6px 6px 0
    }
    .home-exam-sec01-point__appeal-point-txt-large {
        font-size: 8rem;
        border-bottom-width: 6px
    }
    .home-exam-sec01-point__appeal-point-txt-large-wrap {
        margin-bottom: -6px
    }
    .home-exam-sec01-point__appeal-point-txt-space {
        display: block;
        margin-bottom: -62px
    }
    .home-exam-sec01-point__appeal-point-img {
        position: absolute;
        top: -36px;
        right: 50px;
        width: 352px;
        height: auto
    }
}

.home-exam-sec02 {
    position: relative;
    z-index: 3
}

.home-exam-sec02__head01 {
    box-sizing: border-box;
    position: relative;
    top: -10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 336px;
    margin-bottom: -10px;
    padding: 23px 20px 5px;
    background: #002960;
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .04em
}

.home-exam-sec02__head01-large {
    display: inline-block;
    margin-top: 4px;
    font-size: 2rem
}

.home-exam-sec02__head01:before {
    position: absolute;
    top: 0;
    right: -10px;
    display: block;
    content: "";
    border-style: solid;
    border-width: 5px;
    border-color: transparent transparent #0062b8 #0062b8
}

.home-exam-sec02__head01:after {
    position: absolute;
    top: 100%;
    left: 0;
    display: block;
    content: "";
    border-style: solid;
    border-width: 33px 168px 0;
    border-color: #002960 transparent transparent
}

.home-exam-sec02__inner {
    padding-top: 54px;
    padding-bottom: 60px
}

.home-exam-sec02__head02 {
    text-align: center
}

.home-exam-sec02__head02-tit {
    font-size: 2rem;
    line-height: 1.8;
    font-weight: 900;
    letter-spacing: .04em
}

.home-exam-sec02__head02-tit-large {
    display: inline-block;
    border-bottom: 3px solid;
    font-size: 3rem;
    line-height: 1.2;
    letter-spacing: .04em
}

.home-exam-sec02__head02-txt {
    margin-top: -12px;
    padding: 0 40px 0 18px
}

.home-exam-sec02__content {
    padding: 22px 25px 25px;
    background: #fff
}

.home-exam-sec02__content-wrap {
    margin-top: 30px
}

.home-exam-sec02__content-list01 {
    font-size: 1.5rem;
    line-height: 1.3
}

.home-exam-sec02__content-list01-item {
    position: relative;
    padding-left: 25px;
    font-weight: 900
}

.home-exam-sec02__content-list01-item+.home-exam-sec02__content-list01-item {
    margin-top: 5px
}

.home-exam-sec02__content-list01-item:before {
    position: absolute;
    top: -1px;
    left: 0;
    display: block;
    content: "";
    width: 19px;
    height: 19px;
    background: url("../img/ico_check01.png") no-repeat center/contain
}

.home-exam-sec02__content-copy {
    margin: 15px 0 5px;
    padding: 1px 10px;
    background: #0062b8;
    text-align: center;
    font-weight: 900;
    font-size: 1.5rem;
    letter-spacing: .04em;
    color: #fff
}

.home-exam-sec02__content-list02 {
    font-size: 1.7rem;
    line-height: 1.3
}

.home-exam-sec02__content-list02-item {
    position: relative;
    padding: 11px 10px 11px 33px
}

.home-exam-sec02__content-list02-item+.home-exam-sec02__content-list02-item {
    border-top: 1px solid #cad4d4
}

.home-exam-sec02__content-list02-item-num {
    position: absolute;
    top: 10px;
    left: 0;
    font-weight: 900;
    font-size: 2rem
}

.home-exam-sec02__content-list02-item-txt {
    letter-spacing: .04em;
    font-weight: 900
}

.home-exam-sec02__txt {
    margin-top: 32px;
    padding: 0 0 0 25px
}

.home-exam-sec02__img {
    position: relative;
    margin-top: 20px;
    padding: 0 20px 30px
}

.home-exam-sec02__img:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 110px;
    bottom: 0;
    background: url(../img/img_exam03-01_sp.png) no-repeat center top/cover
}

.home-exam-sec02__img-item-thumb-link {
    position: relative
}

.home-exam-sec02__img-item-thumb-link:before,
.home-exam-sec02__img-item-thumb-link:after {
    position: absolute;
    content: ""
}

.home-exam-sec02__img-item-thumb-link:before {
    right: 0;
    bottom: 0;
    width: 30px;
    height: 30px;
    background: #0062b8
}

.home-exam-sec02__img-item-thumb-link:after {
    right: 5px;
    bottom: 6px;
    width: 18px;
    height: 18px;
    background: url(../img/ico_glass01.png) no-repeat center/cover;
    z-index: 1
}

.home-exam-sec02__img-item-modal {
    position: relative
}

.home-exam-sec02__img-item-modal-close {
    border: 0;
    outline: 0;
    cursor: pointer;
    position: absolute;
    top: -30px;
    right: 0;
    width: 30px;
    height: 30px;
    background: #0062b8
}

.home-exam-sec02__img-item-modal-close:before,
.home-exam-sec02__img-item-modal-close:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    background: #fff
}

.home-exam-sec02__img-item-modal-close:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg)
}

.home-exam-sec02__img-item-modal-close:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg)
}

.home-exam-sec02__img-item:nth-child(n+2) {
    margin-top: 15px
}

.home-exam-sec02__sheet {
    margin-top: 10px
}

.home-exam-sec02__sheet-head-wrap {
    text-align: center
}

.home-exam-sec02__sheet-head {
    position: relative;
    display: inline-block;
    padding: 7px 20px;
    background: #0062b8;
    color: #fff;
    font-size: 1.7rem;
    font-weight: 700
}

.home-exam-sec02__sheet-head:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -8px;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 8px;
    border-color: #0062b8 transparent transparent transparent
}

.home-exam-sec02__difference {
    margin-top: 35px
}

.home-exam-sec02__difference-head {
    margin-bottom: 30px;
    text-align: center;
    font-size: 2.5rem;
    font-weight: 900;
    line-height: 1.3
}

.home-exam-sec02__difference-head strong {
    font-weight: inherit
}

@media all and (max-width: 340px) {
    .home-exam-sec02__content-copy {
        font-size: 1.4rem
    }
}

@media all and (min-width: 600px) {
    .home-exam-sec02 {
        margin-top: 150px
    }
    .home-exam-sec02__head01 {
        top: -30px;
        width: 800px;
        height: 76px;
        margin: 0 0 -30px -400px;
        padding: 30px 20px 0;
        font-size: 2rem
    }
    .home-exam-sec02__head01-large {
        position: relative;
        z-index: 1;
        display: block;
        margin-top: 10px;
        font-size: 3rem
    }
    .home-exam-sec02__head01:before {
        right: -30px;
        border-width: 15px
    }
    .home-exam-sec02__head01:after {
        border-width: 80px 400px 0
    }
    .home-exam-sec02__inner {
        padding-top: 103px;
        padding-bottom: 120px
    }
    .home-exam-sec02__head02 {
        padding-left: 20px;
        text-align: center
    }
    .home-exam-sec02__head02-tit {
        font-size: 5rem;
        line-height: 1.5
    }
    .home-exam-sec02__head02-tit-large {
        border-bottom-width: 6px;
        font-size: 6rem;
        line-height: 1.2
    }
    .home-exam-sec02__head02-txt {
        position: relative;
        left: -10px;
        margin-top: -16px;
        padding: 0 60px 0 0
    }
    .home-exam-sec02__content {
        box-sizing: border-box;
        width: calc(50% + 50px);
        padding: 94px 0 0;
        background: transparent
    }
    .home-exam-sec02__content-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 26px
    }
    .home-exam-sec02__content-area-txt {
        box-sizing: border-box;
        padding: 50px 50px 42px;
        background: #fff
    }
    .home-exam-sec02__content-list01 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        font-size: 1.8rem
    }
    .home-exam-sec02__content-list01-item {
        padding-left: 34px
    }
    .home-exam-sec02__content-list01-item+.home-exam-sec02__content-list01-item {
        margin: 0 0 0 11px
    }
    .home-exam-sec02__content-list01-item:before {
        top: -2px;
        width: 28px;
        height: 28px
    }
    .home-exam-sec02__content-copy {
        margin: 21px 0 15px;
        padding: 4px 10px 3px;
        font-size: 1.8rem
    }
    .home-exam-sec02__content-list02 {
        font-size: 2.2rem
    }
    .home-exam-sec02__content-list02-item {
        padding: 17px 0 21px 48px
    }
    .home-exam-sec02__content-list02-item-num {
        top: 12px;
        font-size: 2.6rem
    }
    .home-exam-sec02__txt {
        box-sizing: border-box;
        width: calc(50% - 50px);
        margin-top: 32px;
        padding: 0 27px 0 28px
    }
    .home-exam-sec02__img {
        width: auto;
        margin: 50px 0 0;
        padding: 0 0 50px
    }
    .home-exam-sec02__img:before {
        left: -80px;
        right: -80px;
        top: auto;
        bottom: 0;
        height: 265px;
        background: url(../img/img_exam03-01_pc.png) no-repeat center top/cover
    }
    .home-exam-sec02__img-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -7px
    }
    .home-exam-sec02__img-item {
        width: calc(20% - 14px);
        margin: 0 7px
    }
    .home-exam-sec02__img-item:nth-child(n+2) {
        margin-top: 0
    }
    .home-exam-sec02__sheet {
        margin-top: 0
    }
    .home-exam-sec02__sheet-head {
        padding: 10px 25px;
        font-size: 2.2rem
    }
    .home-exam-sec02__sheet-head:before {
        bottom: -12px;
        border-width: 12px 12px 0 12px
    }
    .home-exam-sec02__difference {
        margin-top: 75px
    }
    .home-exam-sec02__difference-head {
        margin-bottom: 45px;
        font-size: 4rem
    }
}

.home-kyodai {
    background: url("../img/bg_kyodai-sp.png") no-repeat center/cover
}

.home-kyodai__inner {
    padding-top: 50px;
    padding-bottom: 50px
}

.home-kyodai__area-txt {
    padding: 34px 15px;
    border: 4px solid;
    color: #fff
}

.home-kyodai__head {
    position: relative;
    text-align: center;
    display: inline-block;
    margin-bottom: 20px;
    line-height: 1.5;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    font-weight: 900;
    font-size: 2rem
}

.home-kyodai__head-large {
    font-size: 2.5rem;
    border-bottom: 3px solid
}

.home-kyodai__head-ico {
    position: absolute;
    top: -25px;
    left: -10px;
    content: '';
    display: block;
    width: 48px;
    height: 38px
}

.home-kyodai__txt {
    font-size: 1.5rem
}

@media all and (min-width: 600px) {
    .home-kyodai {
        background: url("../img/bg_kyodai-pc.png") no-repeat center/cover
    }
    .home-kyodai__inner {
        padding-top: 100px;
        padding-bottom: 100px
    }
    .home-kyodai__area-txt {
        padding: 60px 20px;
        border-width: 10px
    }
    .home-kyodai__head {
        margin-bottom: 42px;
        font-size: 4.4rem;
        line-height: 1.3;
        letter-spacing: .05em
    }
    .home-kyodai__head-large {
        font-size: 7rem;
        border-width: 5px
    }
    .home-kyodai__head-large-in {
        font-size: 6rem
    }
    .home-kyodai__head-ico {
        top: -45px;
        left: -80px;
        width: 96px;
        height: 76px
    }
    .home-kyodai__txt {
        text-align: center;
        font-size: 1.8rem
    }
}

.home-voice__inner {
    padding-top: 50px;
    padding-bottom: 30px
}

.home-voice__head {
    margin-bottom: 24px;
    text-align: center;
    line-height: 1.5;
    font-size: 1.6rem;
    font-weight: 900
}

.home-voice__head-in {
    position: relative;
    padding: 0 26px;
    display: inline-block
}

.home-voice__head-in:before,
.home-voice__head-in:after {
    position: absolute;
    bottom: 0;
    content: '';
    display: block;
    width: 38px;
    height: 47px;
    background: url("../img/img_voice-line01.png") no-repeat center/contain
}

.home-voice__head-in:before {
    left: -10px
}

.home-voice__head-in:after {
    right: -10px;
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1)
}

.home-voice__slider-item {
    padding: 25px 20px;
    margin: 0 8px
}

.home-voice__slider-item-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 12px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1.5
}

.home-voice__slider-item-head-ico {
    width: 50px
}

.home-voice__slider-item-head-content {
    width: calc(100% - 50px);
    box-sizing: border-box;
    padding-left: 10px
}

.home-voice__slider-item-head-copy {
    font-size: 1.9rem;
    font-weight: 900
}

.home-voice__slider-item-head-name {
    font-size: 1.2rem
}

.home-voice__slider-item-img {
    margin-top: 10px
}

.home-voice__slider-item-parents {
    margin-top: 10px
}

.home-voice__slider-item-parents-head {
    margin-bottom: 10px;
    font-size: 1.6rem;
    font-weight: 900
}

.home-voice__slider .slick-prev,
.home-voice__slider .slick-next {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    overflow: hidden;
    text-indent: 200%;
    white-space: nowrap;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 40px;
    height: 40px;
    background-color: #fff;
    background: #333;
    z-index: 1
}

.home-voice__slider .slick-prev:before,
.home-voice__slider .slick-next:before {
    position: absolute;
    top: 50%;
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff
}

.home-voice__slider .slick-prev {
    left: 10px
}

.home-voice__slider .slick-prev:before {
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(-135deg);
    -ms-transform: translateY(-50%) translateX(-50%) rotate(-135deg);
    transform: translateY(-50%) translateX(-50%) rotate(-135deg);
    left: 50%
}

.home-voice__slider .slick-next {
    right: 10px
}

.home-voice__slider .slick-next:before {
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) translateX(-50%) rotate(45deg);
    transform: translateY(-50%) translateX(-50%) rotate(45deg);
    right: calc(50% - 5px)
}

@media all and (max-width: 340px) {
    .home-voice__head {
        font-size: 1.4rem
    }
    .home-voice__head-in {
        padding: 0 16px
    }
    .home-voice__head-in:before {
        left: -14px
    }
    .home-voice__head-in:after {
        right: -14px
    }
}

@media all and (min-width: 600px) {
    .home-voice__inner {
        padding-top: 108px;
        padding-bottom: 50px
    }
    .home-voice__head {
        margin-bottom: 50px;
        font-size: 4rem;
        line-height: 1.4
    }
    .home-voice__head-in {
        padding: 0 100px
    }
    .home-voice__head-in:before,
    .home-voice__head-in:after {
        width: 76px;
        height: 94px
    }
    .home-voice__head-in:before {
        left: 0
    }
    .home-voice__head-in:after {
        right: 0
    }
    .home-voice__slider-item {
        padding: 30px 40px;
        width: 520px;
        box-sizing: border-box;
        margin: 0 10px
    }
    .home-voice__slider-item-head {
        padding-bottom: 6px;
        margin-bottom: 18px
    }
    .home-voice__slider-item-head-ico {
        width: 80px
    }
    .home-voice__slider-item-head-content {
        width: calc(100% - 80px)
    }
    .home-voice__slider-item-head-copy {
        font-size: 2.8rem
    }
    .home-voice__slider-item-head-name {
        font-size: 1.4rem
    }
    .home-voice__slider-item-img {
        margin-top: 15px
    }
    .home-voice__slider-item-parents {
        margin-top: 25px
    }
    .home-voice__slider-item-parents-head {
        font-size: 1.8rem
    }
    .home-voice .slick-prev,
    .home-voice .slick-next {
        width: 58px;
        height: 58px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .home-voice .slick-prev:before,
    .home-voice .slick-next:before {
        width: 8px;
        height: 8px
    }
    .home-voice .slick-prev:hover,
    .home-voice .slick-next:hover {
        opacity: .9
    }
    .home-voice .slick-prev {
        left: 40px
    }
    .home-voice .slick-next {
        right: 40px
    }
    .home-voice .slick-next:before {
        right: calc(50% - 8px)
    }
}

.home-column__inner {
    padding-top: 30px;
    padding-bottom: 30px
}

.home-column__content {
    position: relative;
    padding: 30px 25px;
    border: 4px solid #0062b8
}

.home-column__content-img {
    margin-top: 20px
}

.home-column__content-img-name {
    font-weight: 900;
    font-size: 1.3rem;
    line-height: 1.5
}

.home-column__content-img-name-large {
    display: block;
    font-size: 1.8rem;
    font-weight: 900
}

.home-column__content-img-link {
    margin-top: 8px;
    line-height: 1.5;
    font-size: 1.2rem
}

.home-column__content-img-link-txt {
    position: relative;
    padding-left: 14px;
    display: inline-block
}

.home-column__content-img-link-txt:before {
    position: absolute;
    top: 6px;
    left: 0;
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid;
    border-right: 2px solid;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.home-column__en {
    position: absolute;
    top: -15px;
    left: -4px;
    display: inline-block;
    padding: 0 16px;
    background-color: #002960;
    font-weight: bold;
    color: #fff
}

.home-column__head {
    position: relative;
    margin-bottom: 16px;
    padding-bottom: 10px;
    font-size: 2.3rem;
    line-height: 1.5;
    font-weight: 900
}

.home-column__head:before {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background-color: #0062b8
}

.home-column__head-txt-in {
    font-weight: 900
}

@media all and (max-width: 599px) {
    .home-column__content-img {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    .home-column__content-img-pic {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: calc(50% - 33px)
    }
    .home-column__content-img-area-txt {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        padding-right: 10px
    }
}

@media all and (min-width: 600px) {
    .home-column__inner {
        padding-top: 54px;
        padding-bottom: 60px
    }
    .home-column__content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 50px 35px 68px 60px;
        border-width: 10px
    }
    .home-column__content-area-txt {
        width: calc(50% + 250px);
        padding: 10px 30px 0 0;
        box-sizing: border-box
    }
    .home-column__content-img {
        width: calc(50% - 250px);
        margin-top: 0
    }
    .home-column__content-img-pic {
        width: 180px;
        margin: 0 auto
    }
    .home-column__content-img-area-txt {
        margin-top: 14px;
        text-align: center
    }
    .home-column__content-img-name {
        font-size: 1.6rem
    }
    .home-column__content-img-name-large {
        font-size: 2.4rem
    }
    .home-column__content-img-link {
        margin-top: 18px;
        font-size: 1.3rem
    }
    .home-column__content-img-link-txt {
        padding-left: 12px
    }
    .home-column__content-img-link-txt:before {
        top: 7px
    }
    .home-column__en {
        top: -20px;
        left: -10px;
        padding: 1px 21px;
        font-size: 1.8rem
    }
    .home-column__head {
        margin-bottom: 22px;
        padding-bottom: 15px;
        font-size: 3.6rem
    }
    .home-column__head:before {
        width: 50px
    }
}

.home-column-media {
    margin-top: 50px
}

.home-column-media__head {
    margin-bottom: 20px;
    text-align: center;
    line-height: 1.5;
    font-size: 1.6rem;
    font-weight: 900
}

.home-column-media__head-in {
    position: relative;
    padding: 0 26px;
    display: inline-block
}

.home-column-media__head-in:before,
.home-column-media__head-in:after {
    position: absolute;
    bottom: 0;
    content: '';
    display: block;
    width: 38px;
    height: 47px;
    background: url("../img/img_voice-line01.png") no-repeat center/contain
}

.home-column-media__head-in:before {
    left: -10px
}

.home-column-media__head-in:after {
    right: -10px;
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1)
}

@media all and (max-width: 340px) {
    .home-column-media__head {
        font-size: 1.4rem
    }
    .home-column-media__head-in {
        padding: 0 16px
    }
    .home-column-media__head-in:before {
        left: -14px
    }
    .home-column-media__head-in:after {
        right: -14px
    }
}

@media all and (min-width: 600px) {
    .home-column-media {
        margin-top: 100px
    }
    .home-column-media__head {
        margin-bottom: 40px;
        font-size: 4rem;
        line-height: 1.4
    }
    .home-column-media__head-in {
        padding: 0 100px
    }
    .home-column-media__head-in:before,
    .home-column-media__head-in:after {
        width: 76px;
        height: 94px
    }
    .home-column-media__head-in:before {
        left: 0
    }
    .home-column-media__head-in:after {
        right: 0
    }
    .home-column-media__img {
        width: 100%;
        max-width: 1200px;
        margin: 0 auto
    }
}

.home-message {
    margin-top: 30px;
    background: #0062b8
}

.home-message__inner {
    padding: 0 0 40px
}

.home-message__img {
    position: relative;
    z-index: 1
}

.home-message__area-txt {
    position: relative;
    padding: 34px 20px 0;
    color: #fff
}

.home-message__en {
    position: absolute;
    top: -4px;
    right: 0;
    width: 216px
}

.home-message__head {
    position: relative;
    z-index: 1;
    margin-bottom: 16px;
    padding-left: 30px;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .04em
}

.home-message__head:before {
    position: absolute;
    top: 18px;
    left: 0;
    display: block;
    width: 20px;
    border-bottom: 3px solid;
    content: ""
}

.home-message__content {
    position: relative;
    z-index: 1;
    padding: 30px 29px 33px;
    background: #fff;
    color: #333
}

.home-message__name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.3rem
}

.home-message__name-dt {
    margin-right: 10px;
    font-weight: 700
}

.home-message__name-dd {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1
}

.home-message__list {
    margin-top: 10px;
    font-size: 1.2rem;
    line-height: 1.67
}

.home-message__list-item {
    position: relative;
    padding-left: 10px
}

.home-message__list-item:before {
    position: absolute;
    top: 8px;
    left: 0;
    display: block;
    width: 5px;
    border-bottom: 5px solid;
    content: ""
}

.home-message__txt {
    margin-top: 8px
}

@media all and (min-width: 600px) {
    .home-message {
        margin-top: 60px
    }
    .home-message__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 0
    }
    .home-message__img {
        box-sizing: border-box;
        width: calc(50% - 40px)
    }
    .home-message__img img {
        width: calc(50vw - 40px);
        max-width: none;
        min-width: 920px;
        float: left
    }
    .home-message__img:after {
        display: block;
        clear: both;
        content: ""
    }
    .home-message__area-txt {
        box-sizing: border-box;
        position: relative;
        z-index: 2;
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
        margin-bottom: -80px;
        width: calc(50% + 40px);
        padding: 85px 0 0
    }
    .home-message__en {
        top: 18px;
        right: auto;
        left: -134px;
        width: 527px
    }
    .home-message__head {
        margin-bottom: 6px;
        padding-left: 30px;
        font-size: 3rem
    }
    .home-message__head:before {
        top: 26px;
        border-bottom-width: 5px
    }
    .home-message__content {
        width: calc(100% + 10px);
        padding: 56px 70px 54px;
        box-shadow: 0px 14px 34px 0px rgba(0, 0, 0, 0.1)
    }
    .home-message__name {
        font-size: 1.6rem
    }
    .home-message__name-dt {
        margin-right: 16px
    }
    .home-message__name-dd {
        font-size: 2.6rem
    }
    .home-message__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 21px -32px 0 0;
        font-size: 1.4rem;
        line-height: 1.79
    }
    .home-message__list-item {
        box-sizing: border-box;
        width: 50%;
        padding-left: 14px
    }
    .home-message__list-item:before {
        top: 9px;
        width: 6px;
        border-bottom-width: 6px
    }
    .home-message__txt {
        margin-top: 26px
    }
}

.home-line {
    position: relative;
    overflow: hidden;
    background: #0061b6
}

.home-line__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: translateY(-208px);
    -ms-transform: translateY(-208px);
    transform: translateY(-208px);
    opacity: 0.6
}

.home-line__bg svg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.home-line__inner {
    position: relative;
    z-index: 1;
    padding-top: 40px;
    padding-bottom: 40px
}

.home-line__content {
    position: relative;
    padding: 32px 15px 34px;
    background: #fff
}

.home-line__content:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    border-style: solid;
    border-width: 73px 128px;
    border-color: #f0f0f0 transparent transparent #f0f0f0
}

.home-line__content-ico {
    position: absolute;
    top: -20px;
    right: 15px;
    width: 60px
}

.home-line__content-head {
    position: relative;
    z-index: 1;
    margin-bottom: 22px;
    text-align: center;
    font-weight: 700;
    line-height: 1.5;
    font-size: 1.8rem;
    letter-spacing: .06em
}

@media all and (min-width: 600px) {
    .home-line {
        margin-top: 200px
    }
    .home-line__bg {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
    .home-line__inner {
        padding-top: 80px;
        padding-bottom: 80px
    }
    .home-line__content {
        padding: 34px 60px 33px
    }
    .home-line__content:before {
        border-width: 47px 385px
    }
    .home-line__content-ico {
        top: -25px;
        right: -20px;
        width: 92px
    }
    .home-line__content-head {
        margin-bottom: 28px;
        font-size: 2.4rem
    }
}

.home-line-step {
    position: relative
}

.home-line-step__bg {
    position: absolute;
    top: 160px;
    right: 0;
    left: 0;
    bottom: 0;
    display: block;
    content: "";
    background: #fff
}

.home-line-step__bg svg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.home-line-step__inner {
    position: relative;
    z-index: 1;
    padding-top: 40px;
    padding-bottom: 56px
}

.home-line-step__list-item {
    position: relative;
    background: #f4f4f4
}

.home-line-step__list-item:after {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: block;
    height: 16px;
    content: "";
    background: #fff
}

.home-line-step__list-item+.home-line-step__list-item {
    position: relative;
    margin-top: 35px
}

.home-line-step__list-item+.home-line-step__list-item:before {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 2;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: -40px;
    width: 54px;
    height: 33px;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: no-repeat center/contain;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22111px%22%20height%3D%2266px%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22PSgrad_0%22%20x1%3D%220%25%22%20x2%3D%2270.711%25%22%20y1%3D%2270.711%25%22%20y2%3D%220%25%22%3E%20%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22rgb(255%2C48%2C0)%22%20%2F%3E%20%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22rgb(255%2C90%2C0)%22%20%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23PSgrad_0)%22%20d%3D%22M110.336%2C36.584%20L55.281%2C65.280%20L0.226%2C36.584%20L22.687%2C36.584%20L22.687%2C0.718%20L87.875%2C0.718%20L87.875%2C36.584%20L110.336%2C36.584%20Z%22%2F%3E%3C%2Fsvg%3E");
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.home-line-step__list-item+.home-line-step__list-item:after {
    background: #dae2e6
}

.home-line-step__list-item-head {
    position: relative;
    z-index: 1;
    margin: 0 26px;
    padding: 10px 0 11px;
    font-size: 2rem;
    line-height: 1.2;
    background: #002960;
    text-align: center;
    font-weight: 900;
    color: #fff;
    letter-spacing: .04em
}

.home-line-step__list-item-content-btn {
    padding: 32px 14px 28px
}

.home-line-step__list-item-content-img {
    margin-top: -30px
}

.home-line-step__list-item-content-txt {
    padding: 18px 10px 24px;
    font-size: 1.8rem;
    line-height: 1.8;
    background: #fff;
    text-align: center;
    font-weight: 700
}

@media all and (max-width: 340px) {
    .home-line-step__list-item-content-txt {
        font-size: 1.6rem
    }
}

@media all and (min-width: 600px) {
    .home-line-step__bg {
        top: 156px;
        right: auto;
        left: 50%;
        bottom: 143px;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 1240px
    }
    .home-line-step__inner {
        padding-top: 80px;
        padding-bottom: 177px
    }
    .home-line-step__list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -15px
    }
    .home-line-step__list-item {
        width: calc(33.333% - 30px);
        margin: 0 15px
    }
    .home-line-step__list-item:after {
        height: 20px
    }
    .home-line-step__list-item+.home-line-step__list-item {
        margin-top: 0
    }
    .home-line-step__list-item+.home-line-step__list-item:before {
        top: 100%;
        left: 27px;
        -webkit-transform: translateX(-100%) rotate(-90deg);
        -ms-transform: translateX(-100%) rotate(-90deg);
        transform: translateX(-100%) rotate(-90deg);
        width: 76px;
        height: 45px;
        margin-top: -169px
    }
    .home-line-step__list-item+.home-line-step__list-item:after {
        background: #fff
    }
    .home-line-step__list-item-head {
        margin: 0 27px;
        padding: 11px 0;
        font-size: 2.4rem
    }
    .home-line-step__list-item-content-btn {
        box-sizing: border-box;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: 340px;
        margin-top: -30px;
        padding: 0 20px
    }
    .home-line-step__list-item-content-img {
        height: 340px;
        margin-top: -30px
    }
    .home-line-step__list-item-content-txt {
        box-sizing: border-box;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 27px 10px 36px;
        font-size: 1.6rem
    }
}

.home-form__inner {
    padding-top: 60px;
    padding-bottom: 60px
}

.home-form__head {
    text-align: center
}

.home-form__head-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.home-form__head-list-item {
    line-height: 1.7;
    padding: 0 22px;
    background: #0062b8;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold
}

.home-form__head-list-item:first-of-type {
    margin-right: 5px
}

.home-form__head-txt {
    line-height: 1.3;
    margin-bottom: 25px;
    color: #0062b8;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: .04em
}

.home-form__privacy {
    margin-top: 25px
}

.home-form__privacy-head {
    margin-bottom: 5px;
    font-size: 1.5rem;
    font-weight: bold
}

.home-form__privacy-content {
    box-sizing: border-box;
    height: 150px;
    padding: 20px;
    background: #fff;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.home-form__privacy-content::-webkit-scrollbar {
    display: none
}

.home-form__privacy-content-head {
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid;
    font-weight: bold
}

.home-form__privacy-content-head:nth-of-type(n+2) {
    margin-top: 25px
}

.home-form__privacy-txt {
    margin-top: 10px
}

.home-form__privacy-agreement {
    margin-top: 22px;
    font-weight: bold
}

.home-form__privacy-agreement label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.home-form__privacy-agreement span:before {
    background: #fff !important
}

.home-form__privacy-error {
    margin-top: 10px;
    color: #ff3000
}

@media all and (min-width: 600px) {
    .home-form__inner {
        padding: 180px 75px 120px
    }
    .home-form__head-list-item {
        line-height: 1.7;
        padding: 0 50px;
        font-size: 3rem
    }
    .home-form__head-txt {
        margin-bottom: 50px;
        font-size: 6rem
    }
    .home-form__privacy {
        margin-top: 40px
    }
    .home-form__privacy-head {
        margin-bottom: 10px;
        font-size: 2rem
    }
    .home-form__privacy-content {
        padding: 50px;
        height: 300px
    }
    .home-form__privacy-content-head {
        padding-bottom: 10px
    }
    .home-form__privacy-content-head:nth-of-type(n+2) {
        margin-top: 35px
    }
    .home-form__privacy-content-table {
        margin-top: 20px
    }
    .home-form__privacy-content-table th,
    .home-form__privacy-content-table td {
        padding: 20px;
        font-size: 1.6rem;
        vertical-align: middle
    }
    .home-form__privacy-txt {
        margin-top: 10px
    }
    .home-form__privacy-agreement {
        margin-top: 28px
    }
    .home-form__privacy-agreement label {
        margin: 0
    }
    .home-form__privacy-error {
        margin-top: 20px;
        text-align: center
    }
}

.home-lecturer {
    margin-top: 3px;
    position: relative;
    z-index: 1
}

.home-lecturer__inner {
    padding-top: 36px;
    padding-bottom: 52px
}

.home-lecturer__bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 153px;
    width: 100%;
    z-index: -1
}

.home-lecturer__bg svg {
    width: 100%;
    height: 100%
}

.home-lecturer__head {
    font-size: 2rem;
    line-height: 1.8;
    font-weight: 900;
    letter-spacing: .04em;
    margin-bottom: 24px;
    text-align: center
}

.home-lecturer__head-em {
    display: inline-block;
    border-bottom: 3px solid
}

@media all and (min-width: 600px) {
    .home-lecturer {
        margin-top: 6px
    }
    .home-lecturer__inner {
        padding-top: 80px;
        padding-bottom: 80px
    }
    .home-lecturer__bg {
        height: 416px
    }
    .home-lecturer__head {
        font-size: 4.6rem;
        line-height: 1.5;
        margin-bottom: 50px
    }
    .home-lecturer__head-em {
        border-bottom-width: 5px
    }
}

.home-lecturer-list {
    margin-bottom: -20px
}

.home-lecturer-list__item {
    margin-bottom: 20px
}

.home-lecturer-list__link {
    color: #333;
    display: block;
    text-decoration: none
}

.home-lecturer-list__in {
    display: block;
    text-decoration: none
}

.home-lecturer-list__img {
    overflow: hidden;
    position: relative
}

.home-lecturer-list__name {
    background: #0062b8;
    box-sizing: border-box;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    margin: -15px 0 6px;
    padding: 8px 10px;
    position: relative;
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 210px;
    z-index: 1
}

.home-lecturer-list__name:before {
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    background: -webkit-gradient(linear, left top, right top, from(#1f90ef), to(#36cfd9));
    background: linear-gradient(90deg, #1f90ef 0%, #36cfd9 100%);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: -1
}

@media all and (min-width: 600px) {
    .home-lecturer-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 0 -10px -54px
    }
    .home-lecturer-list__item {
        margin: 0 10px 54px;
        width: calc(33.33% - 20px)
    }
    .home-lecturer-list__link:hover .home-lecturer-list__img:before {
        opacity: 1
    }
    .home-lecturer-list__link:hover .home-lecturer-list__img img {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1)
    }
    .home-lecturer-list__link:hover .home-lecturer-list__name:before {
        opacity: 0
    }
    .home-lecturer-list__img {
        box-shadow: 8px 8px 20px -4px rgba(51, 51, 51, 0.1)
    }
    .home-lecturer-list__img:before {
        -webkit-transition: all .3s ease;
        transition: all .3s ease;
        background: rgba(255, 255, 255, 0.3);
        content: "";
        opacity: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1
    }
    .home-lecturer-list__img img {
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .home-lecturer-list__name {
        font-size: 2.2rem;
        margin: -32px 0 12px;
        padding: 10px 14px;
        min-width: 250px
    }
}

.home-lecturer-modal {
    background: none;
    padding: 70px 0 30px;
    position: relative;
    width: calc(100% - 20px);
    max-width: 670px
}

.home-lecturer-modal__close {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: absolute;
    top: 30px;
    left: auto;
    right: 0;
    width: 40px;
    height: 40px;
    background: #0062b8;
    border: 0
}

.home-lecturer-modal__close:before,
.home-lecturer-modal__close:after {
    position: absolute;
    top: 18px;
    left: 10px;
    width: 20px;
    height: 3px;
    background: #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ""
}

.home-lecturer-modal__close:after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.home-lecturer-modal__in {
    background: #fff
}

.home-lecturer-modal__area-txt {
    box-sizing: border-box;
    padding: 14px 14px 22px;
    text-align: left
}

.home-lecturer-modal__position {
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 4px
}

.home-lecturer-modal__name {
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 4px
}

.home-lecturer-modal__name-en {
    padding-left: 7px;
    font-size: 1.3rem;
    vertical-align: middle
}

.home-lecturer-modal__profile+.home-lecturer-modal__txt {
    border-top: 1px solid #cad4d4;
    margin-top: 8px;
    padding-top: 8px
}

@media all and (min-width: 600px) {
    .home-lecturer-modal {
        padding: 60px 0 80px;
        width: 1120px;
        max-width: 1120px
    }
    .home-lecturer-modal__close {
        top: 0;
        width: 60px;
        height: 60px
    }
    .home-lecturer-modal__close:before,
    .home-lecturer-modal__close:after {
        top: 28px;
        left: 14px;
        width: 32px;
        height: 4px
    }
    .home-lecturer-modal__close:after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
    .home-lecturer-modal__in {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 0 65px 30px 50px
    }
    .home-lecturer-modal__area-img {
        box-shadow: 8px 8px 20px -4px rgba(51, 51, 51, 0.1);
        -webkit-transform: translateY(-50px);
        -ms-transform: translateY(-50px);
        transform: translateY(-50px);
        width: 360px
    }
    .home-lecturer-modal__area-txt {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        padding: 62px 0 0 65px;
        text-align: left
    }
    .home-lecturer-modal__position {
        font-size: 1.6rem;
        margin-bottom: 4px
    }
    .home-lecturer-modal__name {
        font-size: 3.2rem;
        margin-bottom: 4px
    }
    .home-lecturer-modal__name-en {
        padding-left: 14px
    }
    .home-lecturer-modal__profile+.home-lecturer-modal__txt {
        margin-top: 13px;
        padding-top: 24px
    }
}

.acd-label4 {
    display: block;
    margin-bottom: 0px;
    padding: 20px;
    position: relative;
    width: 98%;
    margin-right: 0;
    border-top: 1px solid gray;
    font-weight: bold;
    text-align: left;
    line-height: 35px
}

.acd-label4:after {
    box-sizing: border-box;
    content: '\f067';
    display: block;
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    top: 0px;
    font-weight: 900;
    margin-top: 10px
}

.acd-content4 {
    background-color: white;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    -webkit-transition: .5s;
    transition: .5s;
    visibility: hidden;
    width: 100%
}

.acd-check4:checked+.acd-label4:after {
    content: '\f068'
}

.acd-check4:checked+.acd-label4+.acd-content4 {
    height: 60px;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    width: 100%
}

.fix_container {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto
}

.gray {
    background-color: #F7F7F7;
    padding: 100px 0
}

@media all and (min-width: 600px) {
    .gray {
        padding: 100px 0 250px
    }
}

.fix_ans {
    text-align: left;
    width: 100%;
    padding-left: 10px
}

.qb {
    background-color: #64C7EB;
    padding: 4px 9px;
    font-size: 20px;
    border-radius: 50%;
    color: white;
    font-weight: bold;
    line-height: 25px
}

.qb2 {
    background-color: #2F71B8;
    line-height: 25px;
    padding: 4px 10px;
    font-size: 20px;
    border-radius: 50%;
    margin-left: 10px;
    color: white;
    font-weight: bold
}

.flex_qa {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.fix_qa_stitle {
    font-size: 30px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 10px;
    position: relative;
    padding-left: 30px
}

.fix_qa_stitle:before {
    position: absolute;
    top: calc(55% - 4px);
    width: 20px;
    height: 6px;
    content: '';
    border-top: solid 5px #2F71B8;
    margin-right: 10px
}

.fix_qa_stitle:before {
    left: 0
}

.fix_qa_stitle:before {
    right: 0
}

.fix_qa_title {
    font-size: 60px;
    font-weight: bold;
    color: #2F71B8;
    margin-bottom: 50px;
    text-align: center
}

@-webkit-keyframes fuwafuwa {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
    50% {
        -webkit-transform: translateY(15px);
        transform: translateY(15px)
    }
    100% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
}

@keyframes fuwafuwa {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
    50% {
        -webkit-transform: translateY(15px);
        transform: translateY(15px)
    }
    100% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
}

@media all and (max-width: 480px) {
    .sp2 {
        display: block
    }
    .fix_container {
        width: 95%
    }
    .fix_qa_title {
        font-size: 30px;
        margin-bottom: 50px
    }
    .fix_qa_stitle {
        font-size: 20px
    }
    .gray {
        padding: 50px 0
    }
    .acd-label {
        width: 90%;
        line-height: 25px
    }
    .acd-label2 {
        width: 90%;
        line-height: 25px
    }
    .acd-label3 {
        width: 90%;
        line-height: 25px
    }
    .acd-label4 {
        width: 90%;
        line-height: 25px
    }
    .acd-check:checked+.acd-label+.acd-content {
        height: 160px;
        width: 95%
    }
    .acd-check2:checked+.acd-label2+.acd-content2 {
        height: 80px;
        width: 95%
    }
    .acd-check3:checked+.acd-label3+.acd-content3 {
        height: 120px;
        width: 95%
    }
    .acd-check4:checked+.acd-label4+.acd-content4 {
        height: 140px;
        width: 95%
    }
    .fix_ans {
        padding-right: 20px
    }
    .fix_p {
        padding-bottom: 100px
    }
    .space {
        height: 50px
    }
    .l-footer {
        background: #002960;
        color: #fff;
        text-align: center;
        padding-bottom: 70px
    }
    .m_top {
        margin-top: 40px
    }
    .fix_btn {
        width: 100%
    }
}

@media all and (max-width: 320px) {
    .acd-check:checked+.acd-label+.acd-content {
        height: 180px
    }
    .acd-check2:checked+.acd-label2+.acd-content2 {
        height: 100px;
        width: 95%
    }
    .acd-check3:checked+.acd-label3+.acd-content3 {
        height: 130px;
        width: 95%
    }
    .acd-check4:checked+.acd-label4+.acd-content4 {
        height: 160px;
        width: 95%
    }
}

#footer_fix_btn {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 10;
    text-align: center;
    padding-bottom: 5px;
}

.sp2 {
    display: none;
}

.acd-check {
    display: none;
}

.acd-check2 {
    display: none;
}

.acd-check3 {
    display: none;
}

.acd-check4 {
    display: none;
}

#acd-check1 {
    display: none;
}

#acd-check2 {
    display: none;
}

#acd-check3 {
    display: none;
}

#acd-check4 {
    display: none;
}

.acd-label {
    display: block;
    margin-bottom: 0px;
    padding: 20px;
    position: relative;
    width: 98%;
    margin-right: 0;
    border-top: 1px solid gray;
    font-weight: bold;
    text-align: left;
    line-height: 35px;
}

.acd-label:after {
    box-sizing: border-box;
    content: '\f067';
    display: block;
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    top: 0px;
    font-weight: bold;
    margin-top: 10px;
}

.acd-content {
    background-color: white;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    width: 100%;
}

.acd-check:checked+.acd-label:after {
    content: '\f068';
}

.acd-check:checked+.acd-label+.acd-content {
    min-height: 60px;
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    width: 100%;
}

.acd-label2 {
    display: block;
    margin-bottom: 0px;
    padding: 20px;
    position: relative;
    width: 98%;
    margin-right: 0;
    border-top: 1px solid gray;
    font-weight: bold;
    text-align: left;
    line-height: 35px;
}

.acd-label2:after {
    box-sizing: border-box;
    content: '\f067';
    display: block;
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    top: 0px;
    font-weight: bold;
    margin-top: 10px;
}

.acd-content2 {
    background-color: white;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    width: 100%;
}

.acd-check2:checked+.acd-label2:after {
    content: '\f068';
}

.acd-check2:checked+.acd-label2+.acd-content2 {
    min-height: 60px;
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    width: 100%;
}

.acd-label3 {
    display: block;
    margin-bottom: 0px;
    padding: 20px;
    position: relative;
    width: 98%;
    margin-right: 0;
    border-top: 1px solid gray;
    font-weight: bold;
    text-align: left;
    line-height: 35px;
}

.acd-label3:after {
    box-sizing: border-box;
    content: '\f067';
    display: block;
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    top: 0px;
    font-weight: bold;
    margin-top: 10px;
}

.acd-content3 {
    background-color: white;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    width: 100%;
}

.acd-check3:checked+.acd-label3:after {
    content: '\f068';
}

.acd-check3:checked+.acd-label3+.acd-content3 {
    min-height: 60px;
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    width: 100%;
}

.acd-label4 {
    display: block;
    margin-bottom: 0px;
    padding: 20px;
    position: relative;
    width: 98%;
    margin-right: 0;
    border-top: 1px solid gray;
    font-weight: bold;
    text-align: left;
    line-height: 35px;
}

.acd-label4:after {
    box-sizing: border-box;
    content: '\f067';
    display: block;
    height: 52px;
    padding: 10px 20px;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    right: 0;
    top: 0px;
    font-weight: bold;
    margin-top: 10px;
}

.acd-content4 {
    background-color: white;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
    width: 100%;
}

.acd-check4:checked+.acd-label4:after {
    content: '\f068';
}

.acd-check4:checked+.acd-label4+.acd-content4 {
    min-height: 60px;
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    width: 100%;
}

.fix_container {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

.gray {
    background-color: #F7F7F7;
    padding: 100px 0;
}

.fix_ans {
    text-align: left;
    width: 100%;
    padding-left: 10px;
}

.qb {
    background-color: #64C7EB;
    padding: 4px 9px;
    font-size: 20px;
    border-radius: 50%;
    color: white;
    font-weight: bold;
    line-height: 25px;
}

.qb2 {
    background-color: #2F71B8;
    line-height: 25px;
    padding: 4px 10px;
    font-size: 20px;
    border-radius: 50%;
    margin-left: 10px;
    color: white;
    font-weight: bold;
}

.flex_qa {
    display: flex;
    align-items: flex-start;
}

.fix_qa_stitle {
    font-size: 30px;
    text-align: left;
    font-weight: bold;
    margin-bottom: 10px;
    position: relative;
    padding-left: 30px;
}

.fix_qa_stitle:before {
    position: absolute;
    top: calc(55% - 4px);
    width: 20px;
    height: 6px;
    content: '';
    border-top: solid 5px #2F71B8;
    margin-right: 10px;
}

.fix_qa_stitle:before {
    left: 0;
}

.fix_qa_stitle:before {
    right: 0;
}

.fix_qa_title {
    font-size: 60px;
    font-weight: bold;
    color: #2F71B8;
    margin-bottom: 50px;
}

.bar_gray {
    width: 102%;
    background-color: gray;
    height: 1px;
}

.m_top {
    margin-top: 80px;
}

.bold {
    font-weight: bold;
}

.space {
    height: 100px;
}

@media all and (max-width: 480px) {
    .sp2 {
        display: block;
    }
    .fix_container {
        width: 95%;
    }
    .fix_qa_title {
        font-size: 30px;
        margin-bottom: 50px;
    }
    .fix_qa_stitle {
        font-size: 20px;
    }
    .gray {
        padding: 50px 0;
    }
    .acd-label {
        width: 90%;
        line-height: 25px;
    }
    .acd-label2 {
        width: 90%;
        line-height: 25px;
    }
    .acd-label3 {
        width: 90%;
        line-height: 25px;
    }
    .acd-label4 {
        width: 90%;
        line-height: 25px;
    }
    .acd-check:checked+.acd-label+.acd-content {

        width: 95%;
    }
    .acd-check2:checked+.acd-label2+.acd-content2 {

        width: 95%;
    }
    .acd-check3:checked+.acd-label3+.acd-content3 {

        width: 95%;
    }
    .acd-check4:checked+.acd-label4+.acd-content4 {

        width: 95%;
    }
    .fix_ans {
        padding-right: 20px;
    }
    .fix_p {
        padding-bottom: 100px;
    }
    .space {
        height: 50px;
    }
    .m_top {
        margin-top: 40px;
    }
}

@media all and (max-width: 320px) {
    .acd-check:checked+.acd-label+.acd-content {
        height: 180px;
    }
    .acd-check2:checked+.acd-label2+.acd-content2 {
        height: 100px;
        width: 95%;
    }
    .acd-check3:checked+.acd-label3+.acd-content3 {
        height: 130px;
        width: 95%;
    }
    .acd-check4:checked+.acd-label4+.acd-content4 {
        height: 160px;
        width: 95%;
    }
}