/*------------------------------------------------------------------------------
flexible
------------------------------------------------------------------------------*/
.pageimg{
    background: url(../../img/flexible/pageimg_bg.webp) no-repeat center;
    background-size: cover;
    position: relative;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .pageimg{
        background: url(../../img/flexible/pageimg_bg_sp.webp) no-repeat center;
        background-size: cover;
    }
}

iframe{
    width: 100%;
    height: 72.5rem;
}

@media screen and (max-width: 768px) {
    iframe{
        height: 18.9rem;
    }
}

.link_list{
    margin-bottom: 4rem!important;
}

.p-line__title{
    font-size: 3.2rem!important;
    padding-left: 2.6rem!important;
}

@media screen and (max-width: 768px) {
    .p-line__title{
        font-size: 1.6rem!important;
        padding-left: 1.8rem!important;
    }
}

.p-line__title::before{
    width: 0.8rem!important;
    height: 4.6rem!important;
}

@media screen and (max-width: 768px) {
    .p-line__title::before{
        width: 0.4rem!important;
        height: 2.3rem!important;
    }
    
}

p.last_text{
    font-size: 8rem;
    font-weight: 600;
    margin-bottom: 2.4rem;
}

@media screen and (max-width: 768px) {
    p.last_text{
        font-size: 2.1rem;
    }
}

/*------------------------------------------------------------------------------
section01
------------------------------------------------------------------------------*/
.p-flexible__section01 p.section__text{
    margin-bottom: 4rem;
}


@media screen and (max-width: 768px) {
    .p-flexible__section01 p.section__text{
        margin-bottom: 2.4rem;
    }
}

.p-flexible__section01 ul.image_list{
    margin-bottom: 8rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section01 ul.image_list{
       gap: 1.2rem;
       margin-bottom: 4.8rem;
    }
}

.p-flexible__section01 ul.border__list{
    gap: 4rem;
    margin-bottom: 4rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section01 ul.border__list{
        margin-bottom: 4.8rem;
        gap: 1.2rem;
    }
}

.p-flexible__section01 .-flex{
    display: flex;
    gap: 3.8rem;
    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .p-flexible__section01 .-flex{
        flex-direction: column;
        gap: 2.4rem;
    }
}

.p-flexible__section01 .left_contents{
    width: 62rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section01 .left_contents{
        width: 100%;
    }
    .p-flexible__section01 .left_contents p.section__text{
        margin-bottom: 0;
    }
}


.p-flexible__section01 .left_contents table{
    margin: 1rem 0;
}

.p-flexible__section01 .left_contents table th{
    padding: 0 3rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section01 .left_contents table th{
        padding: 0 1.8rem;
    }
}

.p-flexible__section01 .left_contents table td{
    padding: 1rem 3.2rem;
    text-align: left;
}

.p-flexible__section01 .left_contents  p.section__text{
    font-size: 1.6rem;
}

.p-flexible__section01 .right_contents table td{
    padding: 1.2rem 2.4rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section01 table th{
        width: 13.6rem;
    }

    .p-flexible__section01 .right_contents table td{
        padding: 1.2rem 0.6rem;
    }
}


/*------------------------------------------------------------------------------
section02
------------------------------------------------------------------------------*/
ul.option_list{
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 4rem;
}

.youtube{
    margin-top: 8rem;
}

@media screen and (max-width: 768px) {
    ul.option_list{
        margin-bottom: 3.2rem;
    }

    .youtube{
        margin-top: 3.2rem;
    }
}

ul.option_list li{
    width: calc((100% - 5rem) / 3);
    flex: auto!important;
    max-width: 41rem;
}

ul.option_list li .image_list__item img{
	width: 41rem;
    height: 23rem;
    object-fit: cover;
}

@media screen and (max-width: 768px) {
	ul.option_list li .image_list__item img{
		width: 100%;
	}
	ul.option_list li{
        width: 100%;
        max-width: 100%;
    }
}

.p-flexible__section02 ul.image_list li p{
    font-size: 2rem;
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .p-flexible__section02 ul.image_list li p{
        font-size: 1.6rem;
    }
}
.p-flexible__section02 ul.image_list li p.sub_text{
    font-size: 1.6rem;
    font-weight: 400;
    margin-top: 0.8rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section02 ul.image_list li p.sub_text{
        font-size: 1.4rem;
        margin-top: 0.6rem;
    }
}


/*------------------------------------------------------------------------------
section03
------------------------------------------------------------------------------*/
.p-flexible__section03 ul.image_list{
    flex-wrap: wrap;
    gap: 4rem 4.7rem;
}

.p-flexible__section03 ul.image_list li{
    width: calc((100% - 4.8rem) / 2);
    flex: auto!important;
    max-width: 62rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section03 ul.image_list{
        gap: 2.4rem;
    }

    .p-flexible__section03 ul.image_list li{
        width: 100%;
    }
}

/*------------------------------------------------------------------------------
section04
------------------------------------------------------------------------------*/
.p-flexible__section04 ul.border__list{
    margin: 4rem 0;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 ul.border__list{
        margin: 2.4rem 0;
    }
}

.p-flexible__section04 .image{
    margin-bottom: 4rem;
}

.p-flexible__section04 .image img{
    border: 1px solid #ccc;
    height: 56.3rem;
    object-fit: cover;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 .image{
        margin-bottom: 2.4rem;
    }

    .p-flexible__section04 .image img{
        height: auto;
    }
}

.p-flexible__section04 .-flex{
    display: flex;
    gap: 2.8rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 .-flex{
       flex-direction: column;
       gap: 2.4rem;
    }
}

.p-flexible__section04 .-flex .left_contents{
    width: 82rem;
    height: 14.8rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 .-flex .left_contents{
        width: 100%;
        height: auto;
    }
}

.p-flexible__section04 .-flex .right_contents p.-bold{
    font-weight: bold;
    font-size: 2rem;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 .-flex .right_contents p.-bold{
        font-size: 1.6rem;
    }
}

.p-flexible__section04 .-flex .left_contents .spec-table th{
    width: 31rem!important;
    height: 14.8rem!important;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 .-flex .left_contents .spec-table th{
        width: 12.6rem!important;
        height: auto!important;
        padding: 0 1.4rem;
        font-size: 1.2rem;
    }
}

.p-flexible__section04 .-flex .left_contents .spec-table td{
    padding: 1.2rem 2.4rem;
    height: auto!important;
}

@media screen and (max-width: 768px) {
    .p-flexible__section04 .-flex .left_contents .spec-table td{
        padding: 1.2rem;
        font-size: 1.2rem;
        text-align: left;
    }
}

.lang-en .spec-table th{
	width: 20rem;
}

@media screen and (max-width: 768px) {
	.lang-en .spec-table th{
	width: 13.6rem;
}
}

/*------------------------------------------------------------------------------
section06
------------------------------------------------------------------------------*/
.p-diecut__section06 ul.image_list.-last{
    margin-top: 6.4rem;
}

@media screen and (max-width: 768px) {
    .p-diecut__section06 ul.image_list.-last{
        margin-top: 2.4rem;
    }

    .p-diecut__section06  ul.image_list.-last{
        gap: 2.4rem;
    }
}


.p-diecut__section06 .cercle_title{
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
    .p-diecut__section06 .cercle_title{
        font-size: 1rem;
        width: 6.5rem;
        height: 6.5rem;
        line-height: 6.5rem;
    }
}

.p-diecut__section06 .cercle_title.-br_margin{
    line-height: 2.4rem;
    padding: 3.1rem 0;
}

@media screen and (max-width: 768px) {
    .p-diecut__section06 .cercle_title.-br_margin{
        line-height: 1.2rem;
        padding: 2.1rem 0;
    }
}

.p-diecut__section06 .cercle_list li:nth-child(3) .cercle_title{
    padding: 2rem 0;
}

@media screen and (max-width: 768px) {
    .p-diecut__section06 .cercle_list li:nth-child(3) .cercle_title{
        padding: 1.6rem 0;
    }
}


.cf7-checkbox-item{
    width: calc((100% - 4.8rem) / 3);
}

@media screen and (max-width: 768px) {
    .cf7-checkbox-item{
        width: 100%;
    }
}

