* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    list-style: none;
}

img {
    width: 100%;
}

a {
    transition: 0.3s;
    cursor: pointer;
    color: #A7A5A5;
}

a:hover {
    transition: 0.3s;
    opacity: 0.7;
}

.wrapper {
    overflow: hidden;
    max-width: 700px;
    margin: 0 auto;
}

.fv {
    position: relative;
}

.fv-top-cv {
    position: absolute;
    top: 0;
    right: 0;
    width: 40%;
}

.fv-top-cv-image {
    width: 70%;
}

.cv {
    background: url("../images/bg-CV.png") no-repeat;
    background-size: cover;
    margin-top: -4px;
    padding: 20px 0;
}

.cv__desc {
    color: #1A858E;
    font-size: clamp(16px, 5vw, 35px)
}

.cv .cv-button {
    width: 90%;
    margin: 0 auto;
    display: block;
}

.cv .cv-heading {
    color: #1A858E;
    font-size: clamp(16px, 6vw, 32px);
}

.sec02 {
    position: relative;
}

.sec03 {
    position: relative;
}

.sec04 {
    margin-bottom: 20px;
}

.sec04-1 {
    margin-bottom: 35px;
}

.sec04-small-txt {
    display: block;
    text-align: left;
    margin-top: -3%;

}

.sec05 {
    background: url("../images/sec05-bg.png") no-repeat;
    background-size: cover;
    margin-top: -58%;
    padding-top: 65%;
    padding-bottom: 25%;
}

.sec05 iframe {
    margin-bottom: 5%;
}

.sec05-image {
    margin-bottom: 30px;
}

.sec05 .cv-button {
    margin-bottom: 4%;
    width: 90%;
}

.sec05 .sec05__address {
    color: #fff;
}

.sec05 .cv-heading {
    color: #fff;
    font-size: clamp(16px, 6vw, 32px);
}

/* .sec06 .sec06-image {
    margin-top: -21%;
    margin-bottom: 30px;
} */

.sec06 {
    margin-bottom: 30%;
    color: #333333;
}

.sec06 .sec06__title {
    font-family: 'GFS Didot', serif;
    font-size: clamp(40px, 15vw, 90px);
    display: block;
    margin: 0 auto;
    margin-bottom: 10%;
    padding-left: 5%;
    text-align: left;
    line-height: 1;
}

.sec06 .sec06__mainTitle {
    margin-top: -20%;
}

.sec06 .sec06__subTitle {
    display: flex;
    align-items: center;
    padding: 0;
}

.sec06 .sec06__title-small {
    font-family: 'GFS Didot', serif;
    font-size: clamp(20px, 6vw, 40px);
    margin-left: 15px;
}

.sec06 .sec06__text {
    font-size: clamp(16px, 5vw, 25px);
    line-height: 2;
    text-align: left;
    padding: 0 6%;
}

.sec06 .sec06__item {
    margin-bottom: 5%;
}

.sec07 {
    background: url("../images/sec07-bg.png") no-repeat;
    background-size: cover;
    /* padding-bottom: 8%; */
}

.sec07 .sec07-image {
    margin-top: -10%;
}

.sec07 .section-cv.bottom {
    margin-top: 3%;
    margin-bottom: 5%;
}

.sec09 .sec09-image {
    margin-bottom: 30px;
}

.sec10 {
    margin-bottom: 5%;
}

.sec10 .sec10__image {
    margin-bottom: 3%;
}

.sec10 .sec10__text {
    font-size: clamp(12px, 4vw, 16px);
    width: 80%;
    margin: 0 auto;
}

.section-cv {
    position: relative;
}

.sec-cv-frame {
    width: 95%;
    display: block;
}

.section-cv.last {
    margin-top: 40px;
    margin-bottom: 40px;
}

.section-cv.last .cv-button {
    width: 73%;
    top: 75%;
    left: 15%;
}

.section-cv.bottom {
    margin-top: -2%;
    padding-top: 5%;
    padding-bottom: 12%;
    background: rgb(135, 216, 224);
    background: linear-gradient(180deg, rgba(135, 216, 224, 1) 0%, rgba(196, 231, 235, 1) 79%, rgba(221, 241, 243, 1) 100%, rgba(235, 247, 248, 1) 100%, rgba(255, 255, 255, 1) 100%);
}

.sec07_cv-area.section-cv .cv-button {
    position: absolute;
    display: block;
    width: 77%;
    top: 67%;
    left: 11%;
}

.section-cv .cv-button {
    position: absolute;
    display: block;
    width: 77%;
    top: 73%;
    left: 11%;
}

.faq {
    margin-top: 40px;
}

.faq_head {
    line-height: 1.3;
    font-size: 23px;
    margin-bottom: 30px;
}

.faq .faq_title {
    font-family: 'GFS Didot', serif;
    font-size: 55px;
}

.ac {
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
    text-align: left;
    padding: 0 20px;
}

.ac-parent {
    /* height: 50px;
    line-height: 50px;
    background-color: #fff;
    border-bottom: 1px solid #000;
    cursor: pointer;
    transition: .3s; */
}

.ac-child {
    padding: 2em 1em;
    background-color: #fff;
    font-size: 16px;
}

.ac-parent {
    position: relative;
    /* height: 50px; */
    /* line-height: 50px; */
    background-color: #fff;
    border-bottom: 1px solid #000;
    cursor: pointer;
    transition: .3s;
    padding: 1em 2.5em 1em 1em;
    text-indent: -1.3em;
    font-size: 18px;
}

.ac-parent:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    /*横線*/
    width: 24px;
    height: 2px;
    background: #000;
}

.ac-parent:after {
    content: "";
    position: absolute;
    top: 50%;
    /* 8px+12px-1px(幅2pxの半分) */
    right: 19px;
    transform: translateY(-50%);
    transition: all .3s;
    /*縦線*/
    width: 2px;
    height: 24px;
    background: #000;
}

/* 縦線（after）だけ縦回転させる */
.ac-parent.open:after {
    top: 25%;
    transform: rotate(90deg);
    opacity: 0;
}

.footer {
    background-color: #EDEDED;
    color: #A7A5A5;
    font-size: 18px;
    padding: 40px;
}

.footer a:visited {
    color: #A7A5A5;
}

.footer-list {
    display: flex;
    justify-content: center;
    padding: 20px 0;
}

.footer-item {
    padding: 0 20px;
}

.light-blue {
    color: #33BAC6;
}

.font-didot {
    font-family: 'GFS Didot', serif;
}

.color-white {
    color: #fff;
}