.first_text-box a:hover{
    opacity:0.7;
}
.bold{
    font-weight:bold;
}

#firstview {
    /*     overflow-x:hidden; */
}

.first-box {
    display: flex;
    position: relative;
}

.Ccup-image {
    position: absolute;
    bottom: 0%;
    right: -1rem;
    height: calc(100% + 7rem);
}

.Ccup-image img {
    width: auto;
    height: 100%;
}

.first-image {
    max-width: 80%;
    width: 100%;
    margin: 0 auto;
}

.site-title {
    position: absolute;
    top: 10rem;
    right: 0;
    z-index: 10;
    font-size: 4.6rem;
    background-color: #404040;
    padding: 2rem 2rem;
}

.first_text-box {
    padding: 0 3rem;
    padding-top: 7rem;
    font-size: 1.2rem;
    line-height: 1.8;
}
.first_text-box .bold{
    font-size:1.5rem;
}

.ib-1920 {
    padding-top: calc((100% / 1920) * 1280);
    width: 100%;
}

@media (max-width: 1920px) {
    .ib-1920 {
        padding-top:calc((100% / 1920) * 1280);
    }

    .first-text {
        width: 100%;
        max-width: 31.25rem;
    }
}

@media (max-width: 1500px) {
    .site-title {
        top:5rem;
    }

    .first_text-box {
        /* padding-top: 5rem; */
    }
}
@media (max-width: 1300px) {
    .site-title {
        top:3rem;
    }

    .first_text-box {
        /* padding-top: 13rem; */
    }
}
@media (max-width: 1199px) {
    .site-title {
        top:3rem;
        font-size: 3rem;
        padding: 1.5rem 2rem;
    }

    .first_text-box {
        padding-top: 2rem;
    }
}

@media (max-width: 990px) {
    .first-image {
        /* max-width: calc(100% - 16rem); */
    }

    .first-text {
        max-width: 25rem;
    }

    .first_text-box {
        font-size: 1.1rem;
        line-height: 2;
        padding: 0 2rem;
        padding-top: 2rem;
    }
}
@media (max-width: 940px) {
    .first-image {
        /* max-width: calc(100% - 11rem); */
    }

    .first-text {
        max-width: 25rem;
    }

    .first_text-box {
        font-size: 1rem;
        /*         line-height: 2; */
        padding: 0px 1rem;
        padding-top: 1.5rem;
    }
}
@media (max-width: 940px) {
    .first_text-box {
        line-height: 1.5;
    }
}
@media (max-width: 830px) {
    .site-title {
        top:1rem;
    }

    .first_text-box {
        /* padding-top: 8rem; */
    }
}
@media (max-width: 768px) {
    .Ccup-image {
        top: calc((100vw / 1920) * 1280);
        height: auto;
        bottom: auto;
        right: auto;
        width: 100%;
    }

    .Ccup-image img {
        height: auto;
        width: 50%;
    }

    .site-title {
        right: 0;
        left: 0;
        margin: auto;
        width: 90%;
        text-align: center;
    }

    .first-box {
        display: block;
    }

    .first-image {
        max-width: 100%;
    }

    .first-text {
        max-width: 100%;
    }

    .first_text-box {
        text-align: center;
        font-size: 1.35rem;
        line-height: 2;
        padding: 3rem 1rem;
    }
}

@media (max-width: 480px) {
    .site-title {
        font-size:1.8rem;
        padding: 1.5rem 1rem;
    }
}

/*---------------------------------------*/
/*-------------firstSwiper-------------*/
.firstSwiper .sw_pagination {
    position: absolute;
    bottom: 0.5rem;
    z-index: 10;
    text-align: center;
}

.firstSwiper .swiper-pagination-bullet {
    background-color: #fff;
    /*     opacity:0.5; */
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 0.5rem;
}

.swiper-pagination-bullet {
    width: 0.75rem;
    height: 0.75rem;
    opacity: 1;
}

.firstSwiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
    background-color: #ff8900;
}

.firstSwiper .sw_btn_next, .firstSwiper .sw_btn_prev {
    position: absolute;
    bottom: 0.25rem;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 10;
    cursor: pointer;
}

.firstSwiper .sw_btn_prev {
    transform: translate(-7rem);
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1rem 2rem 1rem 0;
    border-color: transparent #ff8900 transparent transparent;
}

.firstSwiper .sw_btn_next {
    transform: translate(7rem);
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1rem 0 1rem 2rem;
    border-color: transparent transparent transparent #ff8900;
}

/* .firstSwiper .sw_btn_next:before,
.firstSwiper .sw_btn_prev:before{
    content:"";
    position:absolute;
    bottom:0;
    display:block;
} */
/*---------------------------------------*/
/*-------------firstSwiper-------------*/
#report {
    background-color: #404040;
}
#report a{
    transition:opacity 0.2s ease;
}
#report a:hover{
    opacity:0.8;
}

#report .sec-inner {
    position: relative;
}

.thanks-image {
    position: absolute;
    right: -1rem;
    bottom: 0;
    height: 88%;
}

.thanks-image > img {
    width: auto;
    height: 100%;
}

.report-box {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.5rem;
}

.report-box > .flex-item {
    /* width: 60%; */
    padding: 0 0.5rem;
}

.report-box > .report-image {
    width: 40%;
}

.report-box > .report-text {
    width: 60%;
    font-size: 1.1rem;
}

.report-row .bold{
    margin-bottom: 0.2rem;
    display:block;
}
.report-box > .report-text .note{
    letter-spacing: -0.6px;
}
.report-box > .report-text .note ul{
    padding-left:2.3rem;
}
.report-box > .report-text .note li:first-letter{
    margin-left:-2.4rem;
}

.report-text > .report-row + .report-row {
    margin-top: 1.2rem;
}

.report-title {
    position: relative;
    padding-left: 2rem;
}

.report-title:before {
    content: "";
    position: absolute;
    top: 0.5rem;
    left: -0.75rem;
    display: block;
    height: 13rem;
    width: 1.5rem;
    background-color: #ff8900;
}

.report-title .title {
    font-size: 1.9rem;
    font-weight: 100;
    line-height: 1;
}

.report-title .date {
    font-size: 1rem;
    margin-top: 0.5rem;
}

/* .ib-report {
    margin-top: 1rem;
    padding-top: calc((100% / 390) * 440);
    width: 100%;
} */

.report-image{
    position: relative;
    z-index: 10;
    margin-top: 0.3rem;
}
@media (max-width: 768px) {
    .thanks-image {
        width: 75%;
        height: auto;
        top: 0;
        right: auto;
        bottom: auto;
    }

    .thanks-image > img {
        height: auto;
        width: 100%;
    }

    .report-box {
        padding: 0 1rem;
    }

    .report-box > .flex-item {
        width: calc((100% / 1) * 1 - 0.01px);
    }

    .report-box > .report-text {
        margin-top: 2rem;
        font-size: 1.2rem;
    }
}

@media (max-width: 768px) {
    .report-box > .report-text {
        font-size: 1.1rem;
    }
}

.gaiyou{
    font-size: 0.8rem;
    line-height: 1.5;
}
.gaiyou strong{
    font-size:0.9rem;
}
.gaiyou h3{
    font-size: 1.1rem;
    font-weight: bold;
}

@media (max-width: 768px) {
    .gaiyou{
        font-size: 1.075rem;
    }
    .gaiyou h3{
        font-size: 1.5rem;
    }
}
#feature {
    background-color: #ff8900;
    color: #fff;
}

.feature_image-row {
    text-align: center;
}

.feature-image {
    max-width: 35rem;
}

.feature-title {
    font-size: 2rem;
    font-weight:bold;
    text-align: center;
    color: #fff;
    margin-top: -1.5rem;
}

.feature-box {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}

.feature-box > .flex-item {
    width: calc((100% / 3) * 1 - 0.01px);
    padding: 0 1rem;
}

.feature_item-title {
    background-color: #333333;
    margin: 0 -0.5rem;
    padding: 0.5rem 0.5rem 1rem 0.5rem;
    text-align: center;
}

.feature_item-text {
    color: #000;
    margin-top: 1rem;
    line-height: 1.3
}

.featureSwiper {
    margin-top: -0.5rem;
}

.ib-feature {
    padding-top: calc((100% / 1200) * 800);
    width: 100%;
}

@media (max-width: 768px) {
    .feature_image-row {
        text-align:left;
        max-width: 75%;
        margin-left: -1rem;
    }
}

@media (max-width: 480px) {
    .feature-box > .flex-item {
        width:calc((100% / 1) * 1 - 0.01px);
    }

    .feature-box > .flex-item + .flex-item {
        margin-top: 2rem;
    }
}

/*---------------------------------------*/
/*-------------featureSwiper-------------*/
.featureSwiper .sw_btn_next, .featureSwiper .sw_btn_prev {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 10;
    width: 4rem;
    height: 4rem;
    cursor: pointer;
}

.featureSwiper .sw_btn_prev {
    left: 0;
}

.featureSwiper .sw_btn_next {
    right: 0;
}

.featureSwiper .sw_btn_prev:before {
    left: 25%;
    border-left: 2px solid transparent;
    border-bottom: 2px solid transparent;
    transform: rotate(45deg);
}

.featureSwiper .sw_btn_next:before {
    right: 25%;
    border-right: 2px solid transparent;
    border-bottom: 2px solid transparent;
    transform: rotate(-45deg);
}

.featureSwiper .sw_btn_next:before, .featureSwiper .sw_btn_prev:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    margin: auto;
    width: 50%;
    height: 50%;
    border-color: #fff
}

/*-------------featureSwiper-------------*/
/*---------------------------------------*/
#concept {
    background-color: #404040;
}

.concept_image-row {
    text-align: center;
}

.concept-image {
    max-width: 35rem;
}

.concept-text {
    font-size: 1.7rem;
    text-align: center;
    margin-top: -1rem;
    font-family: serif;
    line-height: 2;
}

@media (max-width: 768px) {
    .concept_image-row {
        text-align:left;
        margin-left: -1rem;
        max-width: 75%;
    }
}

@media (max-width: 480px) {
    .concept-text {
        font-size:1.2rem;
    }
}

#gallery > .sec-inner {
    position: relative;
    /* height: 660px; */
}

@media (max-width: 1920px) {
    #gallery > .sec-inner {
        /* padding-top:
        calc((100% / 1920) * 660); */
        /* height: 0; */
    }
}

.back_swiper-row {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.gallerySwiper {
    width: 100%;
    height: 100%;
}

.gallery-image {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    z-index: 100;
}

.gallery-image img {
    width: auto;
    height: 100%;
}

.back_image {
    background-size: cover;
    background-position: center;
    height: 100%;
    width: 100%;
}

.gallery-row {
    position: relative;
    z-index: 100;
    /* left: 0; */
    /* top: 0; */
    /* z-index: 10; */
    /* height: 100%; */
    /* width: 100%; */
    background-color: rgba(0,0,0,0.5);
    padding: 5rem 2rem;
}

.gallery-btn {
    display: flex;
    /* align-items: center; */
    justify-content: center;
    /* height: 100%; */
}
.gallery-btn + .gallery-btn{
    margin-top:5rem;
}

.gallery-btn > a {
    background-color: #ff8900;
    padding: 3rem 4rem;
    text-align: center;
    box-shadow: 8px 8px #fff;
    transition: 0.3s ;
}

.gallery-btn > a:hover{
    color:#ff8900;
    background-color: #fff;
    box-shadow:none;
    transition: 0.3s ;
}

.gallery-btn > a > span {
    display: block;
    font-size: 1.3rem;
    line-height: 1.5;
}

.gallery-btn > a > span:nth-child(1) {
    font-size: 1.6rem;
}

.gallery-btn > a > span:nth-child(2) {
    font-size: 3rem;
}

.gallery-btn > a > span:nth-child(3) {
    font-size: 1.2rem;
}

@media (max-width:768px){
    .gallery-image {
        position: absolute;
        right: -1rem;
        bottom: 0;
        height: 88%;
        max-width: 35rem;
        pointer-events: none;
    }
    
    .gallery-image > img {
        width: 100%;
        height: auto;
    }
}
@media (max-width: 768px) {
    #gallery > .sec-inner {
        /* padding-top:
        calc((100% / 1920) * 660); */
        /* height: 34rem; */
    }
}
@media (max-width: 480px) {
    .gallery-btn > a {
        padding:1.5rem 2rem;
        box-shadow: 5px 5px #fff;
    }

    .gallery-btn > a > span:nth-child(1) {
        font-size: 1.3rem;
    }

    .gallery-btn > a > span:nth-child(2) {
        font-size: 2rem;
    }

    .gallery-btn > a > span:nth-child(3) {
        font-size: 1rem;
    }
    #gallery > .sec-inner {
/*         padding-top:calc((100% / 1920) * 660); */
/*         height:20rem; */
    }
    .gallery-image{
        max-width: 75%;
    }
}






.entry{
    display:flex;
    align-items:center;
}
.border-line {
    margin:0 0.3rem;
    display:inline-block;
    border-bottom: 2px dotted #fff;
}

.bline1{
    width:3.3rem;
}
.bline2{
    width:1.3rem;
}
.bline3{
    width:3rem;
}
@media (max-width:768px){
    .bline1{
        width:3.5rem;
    }
    .bline2{
        width:1.3rem;
    }
    .bline3{
        width:3.2rem;
    }
}