/*
Theme Name: 名古屋中央クリニック
Description: 名古屋中央クリニック様LPテーマ
Author:yashibous
Author URI: https://yashibous.com
*/

@charset "utf-8";
/* 共通 */

body {
    /* 基本の文字色 */
    color: #222;
    font-family: 'Noto Sans JP', sans-serif;
    margin: 0;
}

/* フォントパターンごとのスタイル */
.font_notoserif {
    font-family: 'Noto Serif JP', serif;
    font-style: normal;
}

.font_Regular {
    font-weight: 400;
}

.font_Medium {
    font-weight: 500;
}

.font_Bold {
    font-weight: 700;
}

.font_Black {
    font-weight: 900;
}

.font_col_blue {
    color: #12258c;
}

.font_col_red {
    color: #c00;
}

/* タグ共通のスタイル */
h2 {
    font-size: 46px;
    text-align: center;
    vertical-align: middle;
    height: auto;
    color: #fff;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
    text-shadow: 2px 3px 3px #222;
    margin-block-start: 0;
    margin-block-end: 0;
}

h3 {
    font-size: 42px;
    text-align: center;
    margin-top: 60px;
    margin-bottom: 28px;
}

p {
    line-height: 2;
    display: block;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

img {
    width: 100%;
    vertical-align: bottom;
}

/* 共通クラスのスタイル */
.box_shadow {
    box-shadow: 4px 4px 6px #2228;
}

.box_yellow {
    background-color: #FFF5B7;
}

.box_blue {
    background-color: #12258c;
}

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

.flex_rev {
    flex-direction: row-reverse;
}

.flex_col {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.txt_centered {
    text-align: center;
}

.hide {
    display: none;
}

.text_underline {
    text-decoration: underline 1px;
}

.double_line {
    display: inline-block;
    position: relative;
    padding: 18px;
    border: solid 1px #222;
    font-size: 0.8em;
}

.double_line::before {
    content: "";
    position: absolute;
    top: 10px;
    bottom: -14px;
    right: -14px;
    left: 10px;
    border: solid 1px #222;
    z-index: -1;
}

.marker_yellow {
    background: linear-gradient(transparent 40%, #fff100 40%);
}

.k-text:hover{opacity: 0.5;}

.pc {
    display: block;
}

.sp {
    display: none;
}

@media screen and (max-width:1100px) {
    h2 {
        font-size: 32px;
    }

    h3 {
        font-size: 24px;
        margin-top: 5.4545vw;
        margin-bottom: 2.545vw;
    }
}

@media screen and (max-width:750px) {
    h2 {
        font-size: 5vw;
        line-height: 1.25;
    }

    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    .double_line {
        padding: 18px;
        font-size: 0.8em;
    }

    .double_line::before {
        top: 5px;
        bottom: -7px;
        right: -7px;
        left: 5px;
    }
}

/* 案件個別のスタイル */
.fv_inner.pc {
    display: block;
    max-width: 1600px;
}

.fv_inner.sp {
    display: none;
}

@media screen and (max-width:750px) {
    .fv_inner.pc {
        display: none;
    }

    .fv_inner.sp {
        display: block;
        width: 100%;
    }

}

.sec_title {
    background-color: #12258c;
}

.sec_inner {
    max-width: 1100px;
    text-align: center;
    margin: 0 auto;
}

.grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 126px;
    margin-top: 126px;
}

.grid_item_img {
    width: 297px;
    margin: 38px auto;
}

.grid_item_text {
    font-size: 26px;
    text-align: left;
}

.banner {
    margin: 80px 0;
}

.img_2col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin: 2rem 0;
}

.img_full {
    width: 100%;
    margin: 2rem 0;
}

.text_left {
    text-align: left;
}

.l_text_img {
    display: grid;
    grid-template-columns: 2fr 1fr;
}

.l_text {
    text-align: left;
    margin-right: 100px;
    line-height: 2;
}

@media screen and (max-width:1100px) {
    .sec_inner {
        max-width: 100%;
        margin-left: 3vw;
        margin-right: 3vw;
    }

    .grid {
        gap: 8vw;
        margin-top: 6vw;
    }

    .grid_item_img {
        width: 27vw;
        margin: 3.454vw auto;
    }

    .grid_item_text {
        font-size: 2.363vw;
    }

    .banner {
        margin: 7.272vw 0;
    }

    .img_2col {
        margin: 2rem 0;
    }

    .img_full {
        width: 100%;
        margin: 2rem 0;
    }

    .l_text {
        margin-right: 9.090vw;
        line-height: 2;
    }
}

@media screen and (max-width:750px) {
    .sec_inner {
        max-width: 100%;
        margin-left: 3vw;
        margin-right: 3vw;
    }

    .grid {
        grid-template-columns: 1fr;
        /* gap: 8vw; */
        margin-top: 6vw;
    }

    .grid_item_img {
        width: 50vw;
        margin: 3.454vw auto;
    }

    .grid_item_text {
        font-size: 4vw;
        margin-left: 10vw;
        margin-right: 10vw;
        text-align: center;
    }

    .banner {
        margin: 7.272vw 0;
    }

    .img_2col {
        grid-template-columns: 1fr;
        margin: 2rem 0;
    }

    .img_full {
        width: 100%;
        margin: 2rem 0;
    }

    .l_text_img {
        grid-template-columns: 1fr;
    }

    .l_text {
        margin-right: 9.090vw;
        line-height: 2;
    }
}

/* sec01 */
.sec01 {
    background-color: #f4f0e9;
}

.sec01 .sec_inner {
    padding-bottom: 10px;
}

.sec01 .bothsideline {
    position: relative;
}

.sec01 .bothsideline::before {
    content: "";
    width: 4px;
    height: 80px;
    background-color: #12258c;
    transform: rotate(-30deg);
    position: absolute;
    top: 25px;
    left: 8%;
}

.sec01 .bothsideline::after {
    content: "";
    width: 4px;
    height: 80px;
    background-color: #12258c;
    transform: rotate(30deg);
    position: absolute;
    top: 25px;
    right: 8%;
}

.sec01 .pr_text {
    font-size: 36px;
    margin: 1em 0;
    letter-spacing: -0.05em;
    text-align: center;
}

.sec01 .pr_text span.em {
    font-size: 1.5em;
}

.sec01 h3 {
    font-size: 38px;
}

.sec01 h3 span.em {
    font-size: 1.2em;
    color: #ff0000;
}

@media screen and (max-width:1100px) {
    .sec01 .sec_inner {
        padding-bottom: 10px;

    }

    .sec01 .bothsideline::before {
        width: 4px;
        height: 7.2727vw;
        top: 25px;
        left: 6%;
    }

    .sec01 .bothsideline::after {
        width: 4px;
        height: 7.2727vw;
        top: 25px;
        right: 6%;
    }

    .sec01 .pr_text {
        font-size: 3.27vw;
        margin: 1em 0;
        letter-spacing: -0.05em;
    }

    .sec01 h3 {
        font-size: 3vw;
    }

    .sec01 h3.marker_yellow {
        background: none;
        text-decoration: #fff100 underline solid 15px;
        text-underline-offset: -15px;
    }
}

@media screen and (max-width:750px) {
    .sec01 .sec_inner {
        padding-bottom: 10px;

    }

    .sec01 .bothsideline::before {
        width: 4px;
        height: 12vw;
        top: 10px;
        left: 9%;
    }

    .sec01 .bothsideline::after {
        width: 4px;
        height: 12vw;
        top: 10px;
        right: 9%;
    }

    .sec01 .pr_text {
        font-size: 4.5vw;
        margin: 1em 0;
        letter-spacing: -0.05em;
        line-height: 1.25;
    }

    .sec01 h3 {
        font-size: 4.5vw;
        line-height: 1.5;
    }
}

/* sec02 */
.sec02 p.pr_text {
    font-size: 36px;
    letter-spacing: -2px;
    text-align: left;
    line-height: 1.75;
    margin-top: 40px;
    margin-bottom: 40px;
}

.sec02 .normal_text {
    font-size: 24px;
    text-align: left;
    letter-spacing: -0.05em;
    line-height: 2;
}

.sec02 .img_center {
    width: 788px;
    margin-left: auto;
    margin-right: auto;
}

.sec02 .sec_inner h3 {
    border-bottom: #ae7401 2px solid;
    padding-bottom: 10px;
}

.sec02 .font_em {
    font-size: 50px;
}

@media screen and (max-width:1100px) {
    .sec02 p.pr_text {
        font-size: 3.272vw;
        letter-spacing: -2px;
        line-height: 1.75;
        margin-top: 3.636vw;
        margin-bottom: 3.636vw;
    }

    .sec02 .normal_text {
        width: 100%;
        font-size: 2.181vw;
        letter-spacing: -0.05em;
        line-height: 2;
    }

    .sec02 .img_center {
        width: 80vw;
    }

    .sec02 .font_em {
        font-size: 4.545vw;
    }
    .sec02 .sec_inner h3 {
        font-size: 5vw;
    }
}

@media screen and (max-width:750px) {
    .sec02 p.pr_text {
        font-size: 5vw;
        letter-spacing: -2px;
        line-height: 1.75;
        margin-top: 5vw;
        margin-bottom: 5vw;
    }

    .sec02 .normal_text {
        font-size: 4vw;
        letter-spacing: -0.05em;
        line-height: 2;
    }

    .sec02 .img_center {
        width: 80vw;
    }

    .sec02 .font_em {
        font-size: 4.545vw;
    }
    .sec02 .sec_inner h3 {
        font-size: 4.25vw;
    }
}

/* sec03 */
.sec03 .part1.bg {
    background-image: url(./images/03_00.png);
    background-repeat: no-repeat;
    background-position: bottom right;
    padding-top: 80px;
    padding-bottom: 200px;
}

.sec03 .part1 {
    font-size: 34px;
}

.sec03 .part1 .text_block {
    margin-bottom: 60px;
}

.sec03 .part1 .text-b {
    color: #ae7401;
}

.sec03 .part2 {
    padding-top: 80px;
    font-size: 36px;
}

.sec03 .part2 .text_line {
    display: block;

    padding-bottom: 20px;
    margin-bottom: 60px;
    text-decoration: underline dotted 1px;
    text-underline-offset: 20px;
    line-height: 2.5;
}

.sec03 .part2 .text_em {
    font-size: 1.25em;
}

.sec03 .part2 .movie_part {
    width: 540px;
    height: 960px;
    background-color: #777;
    margin: 120px auto;
}
.sec03 .part2 .movie_part video {
    width: 100%;
    height: 100%;
}

@media screen and (max-width:1100px) {
    .sec03 .part1.bg {
        padding-top: 7.272vw;
        padding-bottom: 18.181vw;
    }

    .sec03 .part1 {
        font-size: 2.8vw;
    }

    .sec03 .part1 .text_block {
        margin-bottom: 5.454vw;
    }

    .sec03 .part2 {
        padding-top: 7.272vw;
        font-size: 3vw;
    }

    .sec03 .part2 .text_line {
        padding-bottom: 1.818vw;
        margin-bottom: 5.454vw;
    }

    .sec03 .part2 .movie_part {
        /* width: 100%;
        height: 87.272vw; */
        margin-top: 10.9vw;
        margin-bottom: 10.9vw;
    }
}

@media screen and (max-width:750px) {
    .sec03 .part1.bg {
        background-size: 80vw 65vw;
        padding-top: 7.272vw;
        padding-bottom: 18.181vw;
    }

    .sec03 .part1 {
        font-size: 5vw;
    }

    .sec03 .part1 .text_block {
        margin-bottom: 5.454vw;
    }

    .sec03 .part2 {
        padding-top: 7.272vw;
        font-size: 4vw;
    }

    .sec03 .part2 .text_line {
        padding-bottom: 1.818vw;
        margin-bottom: 5.454vw;
    }

    .sec03 .part2 .movie_part {
        width: 49vw;
        height: 87.272vw;
        margin-top: 6vw;
        margin-bottom: 6vw;
    }

    .sec03 .part2 .text_line {
        text-underline-offset: 5px;
    }
}

/* sec04 */
.sec04 .sec_inner {
    max-width: 1000px;
}

.sec04 .part1.bg {
    padding-top: 80px;
}

.sec04 .part1.bg,
.sec04 .part3.bg {
    background-color: #f2f3f8;
}

.sec04 .img_center {
    width: 590px;
    margin: 10px auto 10px;
}

.sec04 .text_block .text_line {
    font-size: 85px;
}

.sec04 .example_block {
    display: flex;
    align-items: center;
    position: relative;
    padding-top: 130px;
    padding-bottom: 110px;
}

.sec04 .example_block::after {
    content: " ";
    position: absolute;
    width: 171px;
    height: 207px;
    top: 280px;
    left: 430px;
    z-index: 10;
}

.sec04 .part1 .example_block::after {
    background-image: url(./images/04_02.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

.sec04 .part2 .example_block::after,
.sec04 .part4 .example_block::after {
    background-image: url(./images/04_05.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

.sec04 .part3 .example_block::after {
    background-image: url(./images/04_09.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

.sec04 .example_block::before {
    content: " ";
    position: absolute;
    width: 154px;
    height: 154px;
    top: 60px;
    left: -50px;
    z-index: 10;
}

.sec04 .part1 .example_block::before,
.sec04 .part2 .example_block::before {
    background-image: url(./images/04_01.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

.sec04 .part3 .example_block::before,
.sec04 .part4 .example_block::before {
    background-image: url(./images/04_08.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

.sec04 .example_after {
    margin-left: 60px;
}

@media screen and (max-width:1100px) {
    .sec04 .sec_inner {
        max-width: 91vw;
        margin-left: 6vw;
        margin-right: 3vw;
    }

    .sec04 .part1.bg {
        padding-top: 7.272vw;
    }

    .sec04 .img_center {
        width: 53.63vw;
        margin: 10px auto 10px;
    }

    .sec04 .text_block .text_line {
        font-size: 7.727vw;
    }

    .sec04 .example_block {
        padding-top: 11.81vw;
        padding-bottom: 10vw;
    }

    .sec04 .example_block::after {
        width: 15.54vw;
        height: 18.818vw;
        top: 25.45vw;
        left: 36vw;
    }

    .sec04 .example_block::before {
        width: 14vw;
        height: 14vw;
        top: 5.4545vw;
        left: -3vw;
    }

    .sec04 .example_after {
        margin-left: 5.454vw;
    }
}

@media screen and (max-width:750px) {
    .sec04 .sec_inner {
        max-width: 90.9vw;

    }

    .sec04 .part1.bg {
        padding-top: 7.272vw;
    }

    .sec04 .img_center {
        width: 70vw;
        margin: 10px auto 10px;
    }

    .sec04 .text_block .text_line {
        font-size: 7.727vw;
    }

    .sec04 .example_block {
        padding-top: 11.81vw;
        padding-bottom: 10vw;
    }

    .sec04 .example_block::after {
        width: 15.54vw;
        height: 18.818vw;
        top: 25.45vw;
        left: 39.09vw;
    }

    .sec04 .example_block::before {
        width: 14vw;
        height: 14vw;
        top: 5.4545vw;
        left: -3vw;
    }

    .sec04 .example_after {
        margin-left: 5.454vw;
    }
}

/* sec05 */
.sec05 .text_part {
    padding-top: 80px;
    font-size: 38px;
    line-height: 2;
}

.sec05 .text_part .text_line {
    padding-bottom: 20px;
    margin-bottom: 50px;
    text-decoration: underline dotted 1px;
    text-underline-offset: 20px;
    line-height: 2.5;
}

.sec05 .text_block {
    font-size: 38px;
    line-height: 2;
}

.sec05 .text_em {
    font-size: 36px;
    margin-bottom: 1em;
    color: #ff0000;
}

.sec05 .text_em span {
    font-size: 1.25em;
}

.sec05 .text_inBox {
    color: #fff;
    font-size: 26px;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}

.sec05 .center_part {
    padding: 40px;
    margin-bottom: 80px;
}

.sec05 .table_part {
    margin-bottom: 80px;
}

.sec05 .table_part .text_block {
    margin-bottom: 30px;
}

.sec05 .sub_text_part {
    font-size: 16px;
    text-align: left;
    margin-top: 1em;
    margin-bottom: 1em;
}

.sec05 .text_part {
    margin-bottom: 80px;
}

@media screen and (max-width:1100px) {
    .sec05 .text_part {
        padding-top: 7.272vw;
        font-size: 3.454vw;
    }

    .sec05 .text_part .text_line {
        padding-bottom: 1.818vw;
        margin-bottom: 4.545vw;
    }

    .sec05 .text_block {
        font-size: 3.454vw;
    }

    .sec05 .text_em {
        font-size: 3vw;
    }

    .sec05 .text_inBox {
        font-size: 2.363vw;
    }

    .sec05 .center_part {
        padding: 3.636vw;
        margin-bottom: 7.272vw;
    }

    .sec05 .table_part {
        margin-bottom: 7.272vw;
    }

    .sec05 .table_part .text_block {
        margin-bottom: 2.727vw;
    }

    .sec05 .sub_text_part {
        font-size: 1.454vw;
    }

    .sec05 .text_part {
        margin-bottom: 7.272vw;
    }
}

@media screen and (max-width:750px) {
    .sec05 .text_part {
        padding-top: 7.272vw;
        font-size: 4vw;
    }

    .sec05 .text_part .text_line {
        padding-bottom: 1.818vw;
        margin-bottom: 4.545vw;
        text-underline-offset: 5px;
    }

    .sec05 .text_block {
        font-size: 4vw;
    }

    .sec05 .text_em {
        font-size: 3vw;
    }

    .sec05 .text_inBox {
        font-size: 4vw;
    }

    .sec05 .center_part {
        padding: 3.636vw;
        margin-bottom: 7.272vw;
    }

    .sec05 .table_part {
        margin-bottom: 7.272vw;
    }

    .sec05 .table_part .text_block {
        margin-bottom: 2.727vw;
    }

    .sec05 .sub_text_part {
        font-size: 1.454vw;
    }

    .sec05 .text_part {
        margin-bottom: 7.272vw;
    }
}

/* sec06 */
.sec06 .block {
    display: flex;
    flex-direction: row-reverse;
    position: relative;
    z-index: 10;
}

.sec06 .sec_inner {
    padding-bottom: 80px;
}

.sec06 .blocktitle {
    display: block;
    margin-top: 20px;
    margin-bottom: 20px;
}

.sec06 .blocktitle_text {
    font-size: 36px;
    margin-top: 8px;
    margin-bottom: 8px;
}

.sec06 .blocktitle_icon {
    width: 80px;
    margin: auto;
}

.sec06 .blocktext {
    width: 600px;
    font-size: 24px;
    padding-top: 60px;
    padding-right: 60px;
    line-height: 2;
}

.sec06 .textpart {
    padding: 60px 0 60px 60px;
    text-align: left;
    position: inherit;
    z-index: inherit;
}

.sec06 .imgpart {
    padding-top: 150px;
    padding-bottom: 150px;
    position: inherit;
    z-index: inherit;
}

.sec06 .blocktext {}

.sec06 .background {
    background-color: #f2f3f8;
    position: absolute;
    top: 270px;
    bottom: 0;
    width: 852px;
    height: 340px;
    z-index: 0;
}

.sec06 .sec_inner .block:nth-child(2n) {
    flex-direction: row;
}

.sec06 .sec_inner .block:nth-child(2n) .textpart {
    padding: 60px 60px 60px 0;
}

.sec06 .sec_inner .block:nth-child(2n) .blocktext {
    padding-top: 80px;
    padding-right: 0;
    padding-left: 60px;
}

@media screen and (max-width:1100px) {

    .sec06 .blocktitle {
        margin-top: 1.818vw;
        margin-bottom: 1.818vw;
    }

    .sec06 .blocktitle_text {
        font-size: 2.8vw;
        margin-top: 8px;
        margin-bottom: 8px;
    }

    .sec06 .blocktitle_icon {
        width: 7.272vw;
    }

    .sec06 .blocktext {
        width: 40vw;
        font-size: 2.181vw;
        padding-top: 7.272vw;
        padding-right: 5.454vw;
    }

    .sec06 .textpart {
        padding: 7.272vw 0 7.272vw 7.272vw;
    }

    .sec06 .imgpart {
        padding-top: 16.36vw;
        padding-bottom: 16.36vw;
    }

    .sec06 .background {
        top: 24.545vw;
        bottom: 0;
        width: 77.454vw;
        height: 30.9vw;
    }

    .sec06 .sec_inner .block:nth-child(2n) .textpart {
        padding: 7.272vw 7.272vw 7.272vw 0;
    }

    .sec06 .sec_inner .block:nth-child(2n) .blocktext {
        padding-top: 7.272vw;
        padding-right: 0;
        padding-left: 5.454vw;
    }

}

@media screen and (max-width:750px) {
    .sec06 .block {
        flex-direction: column;
    }
    .sec06 .sec_inner {
        padding-bottom: 5vw;
    }
    
    .sec06 .blocktitle {
        margin-top: 1.818vw;
        margin-bottom: 1.818vw;
    }

    .sec06 .blocktitle_text {
        font-size: 5vw;
        margin-top: 8px;
        margin-bottom: 8px;
    }

    .sec06 .blocktitle_icon {
        width: 14vw;
    }

    .sec06 .blocktext {
        width: 100%;
        max-width: 84vw;
        font-size: 4vw;
        padding-top: 7.272vw;
        padding-right: 5vw;
        padding-left: 5vw;
        padding-bottom: 7.272vw;
        background-color: #f2f3f8;
        margin: 0;
    }

    .sec06 .textpart {
        padding: 7.272vw 0 7.272vw 0;
    }

    .sec06 .imgpart {
        padding-top: 0vw;
        padding-bottom: 8vw;
    }

    .sec06 .background {
        display: none;
        top: 35vw;
        bottom: 0;
        width: 100%;
        height: 40vw;
    }

    .sec06 .sec_inner .block:nth-child(2n) .textpart {
        padding: 7.272vw 0 7.272vw 0;
    }

    .sec06 .sec_inner .block:nth-child(2n) .blocktext {
        padding-top: 7.272vw;
        padding-right: 5.454vw;
        padding-left: 5.454vw;
        padding-bottom: 7.272vw;
    }

    .sec06 .sec_inner .block:nth-child(2n) {
        flex-direction: column;
    }
}

/* sec07 */
.sec07 .bg {
    background-color: #d2d5e6;
}

.sec07 .sec_content {
    padding-top: 40px;
    padding-bottom: 80px;
}

.sec07 .block {
    border: #a3a9cd 1px solid;
    background-color: #fff;
    border-radius: 10px;
    margin-top: 40px;
    padding: 60px;
    display: flex;
}

.sec07 .textpart {
    padding-left: 30px;
}

.sec07 .textpart p {
    text-align: left;
    font-size: 20px;
    line-height: 2;
}

.sec07 .imgpart {
    display: flex;
    flex-direction: column;
}

.sec07 .imgtext {
    width: 300px;
    background-color: #ae7401;
    color: #fff;
    font-size: 24px;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    margin-top: 10px;
}

@media screen and (max-width:1100px) {
    .sec07 .sec_content {
        padding-top: 10.9vw;
        padding-bottom: 10.9vw;
    }

    .sec07 .block {
        margin-top: 3.636vw;
        padding: 5.454vw;
    }

    .sec07 .textpart {
        padding-left: 2.727vw;
    }

    .sec07 .textpart p {
        font-size: 16px;
    }

    .sec07 .imgtext {
        width: 300px;
        font-size: 24px;
    }
}

@media screen and (max-width:750px) {
    .sec07 .sec_content {
        padding-top: 8vw;
        padding-bottom: 8vw;
    }

    .sec07 .block {
        margin-top: 3.636vw;
        padding: 5.454vw;
        flex-direction: column;
    }

    .sec07 .textpart {
        padding-left: 0;
    }

    .sec07 .textpart p {
        font-size: 4vw;
    }

    .sec07 .imgpart {
        flex-direction: column-reverse;
    }

    .sec07 .imgtext {
        width: 100%;
        font-size: 5vw;
        margin-bottom: 10px;
    }
}

/* sec08 */
.sec08 .sec_inner {
    padding-top: 80px;
}

.sec08 .block {
    padding-top: 80px;
    padding-bottom: 60px;
    border-bottom: #222 1px dotted;
}

.sec08 .question {
    padding-left: 140px;
    position: relative;
}

.sec08 .question h3 {
    text-align: left;
    font-size: 34px;
    margin: 0;
}

.sec08 .question::before {
    content: "Q";
    font-size: 40px;
    vertical-align: middle;
    background-color: #12258c;
    border-radius: 50%;
    width: 86px;
    height: 86px;
    padding-top: 16px;
    color: #fff;
    position: absolute;
    top: -20px;
    left: 0;
}

.sec08 .question.line2::before {
    top: -5px;
    left: 0;
}

.sec08 .answer {
    text-align: left;
    line-height: 2;
    font-size: 24px;
    margin-top: 64px;
}

@media screen and (max-width:1100px) {
    .sec08 .sec_inner {
        padding-top: 7.272vw;
    }

    .sec08 .block {
        padding-top: 7.272vw;
        padding-bottom: 5.454vw;
    }

    .sec08 .question {
        padding-left: 12.727vw;
    }

    .sec08 .question h3 {
        font-size: 3.09vw;
    }

    .sec08 .question::before {
        font-size: 3.636vw;
        width: 7.818vw;
        height: 7.818vw;
        padding-top: 1.454vw;
        top: -1.818vw;
        left: 0;
    }

    .sec08 .question.line2::before {
        top: -0.454vw;
        left: 0;
    }

    .sec08 .answer {
        font-size: 2vw;
        margin-top: 5.818vw;
    }
}

@media screen and (max-width:750px) {
    .sec08 .sec_inner {
        padding-top: 7.272vw;
    }

    .sec08 .block {
        padding-top: 7.272vw;
        padding-bottom: 5.454vw;
    }

    .sec08 .question {
        padding-left: 12.727vw;
    }

    .sec08 .question h3 {
        font-size: 5vw;
    }

    .sec08 .question::before {
        font-size: 3.636vw;
        width: 7.818vw;
        height: 7.818vw;
        padding-top: 1.454vw;
        top: -1vw;
        left: 0;
    }

    .sec08 .question.line2::before {
        top: -0.454vw;
        left: 0;
    }

    .sec08 .answer {
        font-size: 4vw;
        margin-top: 5.818vw;
    }
}

/* sec09 */
.sec09 .sec_inner {
    padding-top: 80px;
}

.sec09 .block_title {
    width: 100%;
    text-align: left;
    border-bottom: #12258c 1px solid;
    padding-bottom: 30px;
}

.sec09 .intro_main {
    display: flex;
}

.sec09 .intro_main_img {
    width: 350px;
}

.sec09 .intro_img_text_top {
    font-size: 25px;
    border-bottom: #12258c 1px solid;
    padding-top: 10px;
    padding-bottom: 10px;
}

.sec09 .intro_img_text_bottom {
    display: flex;
    justify-content: center;
    align-items: center;
}

.sec09 .text_incho {
    font-size: 25px;
    margin: auto 10px;
}

.sec09 .text_name {
    font-size: 30px;
    margin: auto 10px;
}

.sec09 .intro_main_text {
    text-align: left;
    margin-left: 30px;
    font-size: 25px;
}

.sec09 .intro_main_topic {
    margin-bottom: 40px;
}

.sec09 .intro_topic_title {
    color: #ae7401;
    width: 100%;
    border-bottom: #ae7401 1px solid;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.sec09 .block2 {
    margin-top: 80px;
    margin-bottom: 80px;
}

.sec09 .topimg {
    width: 792px;
    margin: 10px auto;
}

.sec09 .intro_block .text_a {
    font-size: 64px;
    line-height: 1.5;
}

.sec09 .intro_block .text_b {
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 28px;
}

.sec09 .secondimg {
    width: 800px;
    margin: 60px auto 40px;
}

.sec09 .intro_block .text_c {
    font-size: 24px;
}

.sec09 .access_block .text_a {
    text-align: left;
    color: #ae7401;
    font-size: 50px;
}

.sec09 .access_block .text_a span {
    font-size: 1.25em;
}

.sec09 .access_block .text_b {
    text-align: left;
    font-size: 30px;
}

.sec09 .access_block .text_c {
    text-align: left;
    font-size: 30px;
}

.sec09 .access_block .text_d {
    text-align: left;
    font-size: 30px;
    padding-left: 110px;
    position: relative;
    margin-top: 40px;
    margin-bottom: 40px;
}

.sec09 .access_block .text_d span {
    font-size: 0.75em;
}

.sec09 .access_block .text_d::before {
    content: "";
    background-image: url(./images/09_03.png);
    background-size: 100%;
    width: 87px;
    height: 56px;
    position: absolute;
    top: 0;
    left: 0;
}

.sec09 .access_block .text_e {
    font-size: 32px;
    height: 106px;
    margin-top: 60px;
    margin-bottom: 60px;
}

.sec09 .bothsideline {
    position: relative;
}

.sec09 .bothsideline::before {
    content: "";
    width: 4px;
    height: 80px;
    background-color: #12258c;
    transform: rotate(-30deg);
    position: absolute;
    top: -0;
    left: 18%;
}

.sec09 .bothsideline::after {
    content: "";
    width: 4px;
    height: 80px;
    background-color: #12258c;
    transform: rotate(30deg);
    position: absolute;
    top: 0;
    right: 19%;
}

.sec09 .map_bg {
    background-image: url(./images/09_05.png);
    background-repeat: no-repeat;
    background-size: 100%;
    width: 100%;
    min-height: 443px;
}

.sec09 .map_icon {
    width: 42px;
    height: 60px;
    margin: auto;
    padding-top: 160px;
}

@media screen and (max-width:1100px) {
    .sec09 .sec_inner {
        padding-top: 7.272vw;
    }

    .sec09 .block_title {
        width: 100%;
        padding-bottom: 2.727vw;
    }

    .sec09 .intro_main_img {
        width: 31.818vw;
    }

    .sec09 .intro_img_text_top {
        font-size: 2.272vw;
        padding-top: 0.909vw;
        padding-bottom: 0.909vw;
    }

    .sec09 .text_incho {
        font-size: 2.272vw;
        margin: auto 0.909vw;
    }

    .sec09 .text_name {
        font-size: 2.727vw;
        margin: auto 0.909vw;
    }

    .sec09 .intro_main_text {
        margin-left: 2.727vw;
        font-size: 2.272vw;
    }

    .sec09 .intro_main_topic {
        margin-bottom: 3.636vw;
    }

    .sec09 .intro_topic_title {
        width: 100%;
        padding-bottom: 1.363vw;
        margin-bottom: 1.363vw;
    }

    .sec09 .block2 {
        margin-top: 7.272vw;
        margin-bottom: 7.272vw;
    }

    .sec09 .topimg {
        width: 72vw;
        margin: 0.909vw auto;
    }

    .sec09 .intro_block .text_a {
        font-size: 5.818vw;
    }

    .sec09 .intro_block .text_b {
        margin-top: 3.636vw;
        margin-bottom: 3.636vw;
        font-size: 2.545vw;
    }

    .sec09 .secondimg {
        width: 72.72vw;
        margin: 5.454vw auto 3.636vw;
    }

    .sec09 .intro_block .text_c {
        font-size: 2.181vw;
    }

    .sec09 .access_block .text_a {
        font-size: 4.545vw;
    }

    .sec09 .access_block .text_a span {
        font-size: 1.25em;
    }

    .sec09 .access_block .text_b {
        font-size: 2.727vw;
    }

    .sec09 .access_block .text_c {
        font-size: 2.727vw;
    }

    .sec09 .access_block .text_d {
        font-size: 2.727vw;
        padding-left: 10.909vw;
        margin-top: 3.636vw;
        margin-bottom: 3.636vw;
    }

    .sec09 .access_block .text_d span {
        font-size: 0.75em;
    }

    .sec09 .access_block .text_d::before {
        width: 7.909vw;
        height: 5.09vw;
        top: 0;
        left: 0;
    }

    .sec09 .access_block .text_e {
        font-size: 2.909vw;
        height: 9.636vw;
        margin-top: 5.454vw;
        margin-bottom: 5.454vw;
    }

    .sec09 .bothsideline::before {
        width: 4px;
        height: 7.272vw;
        top: -0;
        left: 16%;
    }

    .sec09 .bothsideline::after {
        width: 4px;
        height: 7.272vw;
        top: 0;
        right: 17%;
    }

    .sec09 .map_bg {
        min-height: 40.272vw;
    }

    .sec09 .map_icon {
        width: 3.818vw;
        height: 5.454vw;
        margin: auto;
        padding-top: 15.454vw;
    }
}

@media screen and (max-width:750px) {
    .sec09 .intro_main {
        flex-direction: column;
    }

    .sec09 .intro_main_img {
        width: 50vw;
        margin: 0 auto;
    }

    .sec09 .intro_img_text_top {
        font-size: 4vw;
        padding-top: 0.909vw;
        padding-bottom: 0.909vw;
    }

    .sec09 .intro_img_text_bottom {
        padding-top: 0.909vw;
        padding-bottom: 0.909vw;
    }

    .sec09 .text_incho {
        font-size: 4vw;
        margin: auto 0.909vw;
    }

    .sec09 .text_name {
        font-size: 4vw;
        margin: auto 0.909vw;
    }

    .sec09 .intro_main_text {
        margin-top: 4vw;
        margin-left: 2.727vw;
        font-size: 4vw;
    }

    .sec09 .intro_main_topic {
        margin-bottom: 3.636vw;
    }

    .sec09 .intro_topic_title {
        width: 100%;
        padding-bottom: 1.363vw;
        margin-bottom: 1.363vw;
    }

    .sec09 .block2 {
        margin-top: 7.272vw;
        margin-bottom: 7.272vw;
    }

    .sec09 .topimg {
        width: 72vw;
        margin: 0.909vw auto;
    }

    .sec09 .intro_block .text_a {
        font-size: 5.818vw;
    }

    .sec09 .intro_block .text_b {
        margin-top: 3.636vw;
        margin-bottom: 3.636vw;
        font-size: 4vw;
    }

    .sec09 .intro_block .text_c {
        font-size: 3vw;
    }

    .sec09 .access_block .text_a {
        font-size: 5vw;
    }

    .sec09 .access_block .text_a span {
        font-size: 1.25em;
    }

    .sec09 .access_block .text_b {
        font-size: 4vw;
    }

    .sec09 .access_block .text_c {
        font-size: 4vw;
    }

    .sec09 .access_block .text_d {
        font-size: 4vw;
        padding-left: 10.909vw;
        margin-top: 3.636vw;
        margin-bottom: 3.636vw;
    }

    .sec09 .access_block .text_d span {
        font-size: 0.75em;
    }

    .sec09 .access_block .text_d::before {
        width: 7.909vw;
        height: 5.09vw;
        top: 0;
        left: 0;
    }

    .sec09 .access_block .text_e {
        font-size: 4vw;
        height: 9.636vw;
        margin-top: 5.454vw;
        margin-bottom: 5.454vw;
    }

    .sec09 .bothsideline::before {
        width: 3px;
        height: 10vw;
        top: -0;
        left: 3%;
    }

    .sec09 .bothsideline::after {
        width: 3px;
        height: 10vw;
        top: 0;
        right: 4%;
    }

    .sec09 .map_bg {
        min-height: 40.272vw;
    }

    .sec09 .map_icon {
        width: 3.818vw;
        height: 5.454vw;
        margin: auto;
        padding-top: 15.454vw;
    }
}

/* sec10 */
.sec10 .main_img {
    margin: 80px auto 200px;
    position: relative
}

.sec10 .main_img::after {
    position: absolute;
    content: "";
    background-image: url(./images/10_00.png);
    background-size: 100%;
    width: 391px;
    height: 250px;
    right: -50px;
    bottom: -125px;
}

@media screen and (max-width:1100px) {
    .sec10 .main_img {
        margin: 7.272vw auto 10vw;
    }

    .sec10 .main_img::after {
        width: 35.54vw;
        height: 22.72vw;
        right: -4.545vw;
        bottom: -11.363vw;
    }
}

@media screen and (max-width:750px) {
    .sec10 .sec_inner {
        margin-left: 0;
        margin-right: 0;
    }

    .sec10 .main_img::after {
        display: none;
    }
}

/* sec11 */
.sec11 .sec_inner {
    padding-top: 20px;
}

.sec11 .block {
    font-size: 25px;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-top: 50px;
    border: #12258c 1px solid;
    border-radius: 10px;
    line-height: 1.5;
}

.sec11 .imgblock {
    margin-top: 50px;
    margin-bottom: 30px;
}

.sec11 .movieblock {
    width: 1100px;
    height: 601px;
    margin-top: 60px;
    margin-bottom: 60px;
    background-color: #777;
}
.sec11 .movieblock iframe {
    width: 100%;
    height: 100%;
}

@media screen and (max-width:1100px) {
    .sec11 .sec_inner {
        padding-top: 1.818vw;
    }

    .sec11 .block {
        font-size: 2.272vw;
        padding-top: 10px;
        padding-bottom: 10px;
        margin-top: 4.545vw;
    }

    .sec11 .imgblock {
        margin-top: 4.545vw;
        margin-bottom: 2.727vw;
    }

    .sec11 .movieblock {
        width: 100%;
        height: 54.636vw;
        margin-top: 5.454vw;
        margin-bottom: 5.454vw;
    }
}

@media screen and (max-width:750px) {
    .sec11 .sec_inner {
        padding-top: 1.818vw;
    }

    .sec11 .block {
        font-size: 3.5vw;
        padding-top: 10px;
        padding-bottom: 10px;
        margin-top: 4.545vw;
    }

    .sec11 .imgblock {
        margin-top: 4.545vw;
        margin-bottom: 2.727vw;
    }

    .sec11 .movieblock {
        width: 100%;
        height: 54.636vw;
        margin-top: 5.454vw;
        margin-bottom: 5.454vw;
    }
}

/* footer */
.footer {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 60px;
}

@media screen and (max-width:750px) {
    .footer {
        font-size: 12px;
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

.mailform .sec_inner {
    text-align: left;
    max-width: 700px;
}

.mailform table {
    background: #CCC;
    margin-bottom: 35px;
    margin-top: 10px;
    width: 100%;
    font-size: 13px;
    line-height: 150%;
    margin-left: auto;
    margin-right: auto;
}

.mailform th,
.mailform td {
    padding: 15px;
}

.mailform th {
    background: #F5FAF3;
    width: 180px;
    text-align: left;
}

.mailform td {
    background: #FFF;
}

.mailform .txt_al_c {
    text-align: center;
}

input[type="submit"] {
  -webkit-appearance: none; /* 1 */
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  border-width: 0;
  border-style: none;
  cursor: pointer;
}

.mw_wp_form_input .form_submit {
    background-image: url(./images/form_confirm.png);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 280px;
    height: 70px;
}
.mw_wp_form_confirm .form_submit {
    background-image: url(./images/form_submit.png);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 200px;
    height: 70px;
}
.mw_wp_form_confirm .form_back {
    background-image: url(./images/form_back.png);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 230px;
    height: 70px;
    margin-left: 40px;
}
.mw_wp_form_complete h3 {
    font-size: 36px;
    margin-top: 140px;
    margin-bottom: 260px;
}
.mw_wp_form_complete p {
    font-size: 28px;
    line-height: 2.25;
    letter-spacing: 0.1em;
}

@media screen and (max-width: 1100px) {
    .mailform .sec_inner {
        margin: 0 auto;
    }
}
@media screen and (max-width: 750px) {
    .mailform th,
    .mailform td {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    .mailform input[type="text"] {
        width: 100%;
        padding: 6px;
        font-size: 1.4rem;
        box-sizing: border-box;
    }

    .mailform input[type="text"].age {
        width: 16%;
    }

    .mailform input[type="text"].day {
        width: 16%;
    }

    .mailform textarea {
        width: 100%;
        padding: 6px;
        font-size: 1.4rem;
        box-sizing: border-box;
    }
    /* .mw_wp_form_input .form_submit {
        width: 28vw;
        height: 7vw;
    }
    .mw_wp_form_confirm .form_submit {
        width: 20vw;
        height: 7vw;
    } */
    .mw_wp_form_confirm .form_back {
        width: 200px;
        margin-top: 20px;
        margin-left: 0px;
    }
    .mw_wp_form_complete h3 {
        font-size: 22px;
        margin-top: 70px;
        margin-bottom: 70px;
    }
    .mw_wp_form_complete p {
        font-size: 16px;
        line-height: 2;
        margin-left: 30px;
        margin-right: 30px;
    }
}