@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------------------------------
 ***                                                                Container
----------------------------------------------------------------------------*/
body,h1,h2,h3,h4,h5,h6,td,th,div,p,input,textarea,pre,ul,ol,li,address{}

body {}

#wrap {}

img{}

a:hover,
a:link{text-decoration:none;}


#mainContents .sectionInner{
    width: 800px;
    max-width: 95%;
    margin: 0 auto;
    padding: 5em 0;
}

/* tab*/
.tab{
    width: 860px;
    max-width: 95%;
    margin: auto;
}
.tab .tabList{}
.tab .tabList .tabListItem{
    font-size: 1.7rem;
}
.tab .tabList .btnActive{}
.tab .Contents{}

.tab .Contents .tabContents{}

.tab .Contents .tabContents .contentsList{
    gap: 1.5rem;
    justify-content: center;
}

.tab .Contents .tabContents .contentsList.list3x{
    max-width: 70%;
    margin: auto;
}
.tab .Contents .tabContents .contentsList .listItem{
    width: 160px;
    margin: 0;
    padding-bottom: 1rem;
}

.tab .Contents .tabContents .contentsList .listItem:last-child{}

.tab .Contents .tabContentss .contentsList .listItem:hover{}
.tab .Contents .tabContents .contentsList .listItem img{}
.tab .Contents .tabContents .contentsList .listItem p{
    font-size: 1.6rem;
    padding: 0;
}
.tab .Contents .tabContents .contentsList .listItem a{
    font-size: 1.4rem;
}

.tab .Contents .contentsActive{}

/*slider*/
.slickslider .slick-prev{
    /* right: 0; */
    left: 17%;
}

.slickslider .slick-next{right: 17%;}
.slickslider .slick-dots{
    top: 103%;
}
.slickslider .slick-dots li{}
.slickslider .slick-dots li button:before{}
#checkSec .slickslider .slick-dots li button:before{top: 88%;}
.slickslider .slick-track{}
/*----------------------------------------------------------------------------
 ***                                                               パンくず
----------------------------------------------------------------------------*/
.breadSec{
    width: 800px;
    margin: 0 auto;
}
.breadcrumb {
    position: static;
    top: 69px;
    left: 0;
    z-index: 10;
    width: 100%;
    box-sizing: border-box;
    padding: 5px 15px;
    font-size: 12px;
    line-height: 1.5;
    /* background: rgba(255, 255, 255, 0.85); */
    display: flex;
    align-items: baseline;
}

.breadcrumb a {
    color: #333;
    text-decoration: none;
    font-size: 13px;
}

.breadcrumb p {
    color: #333;
    margin-left: 4px;
    font-size: 13px;
}
/*----------------------------------------------------------------------------
 ***                                                               futurefvSec
----------------------------------------------------------------------------*/
#futurefvSec{
    width: 100%;
    /* 1. 高さを画像の元サイズ（380px）で完全に固定する */
    height: 327px;
    max-width: 1920px;
    margin: 0 auto;
    background-image: url('../images/img_feature_fv_back_pc.jpg');
    background-repeat: no-repeat;
    
    /* 2. 中央を基準に背景を配置する */
    background-position: center top; 
    
    /* 3. 画像の比率を完全に維持したまま領域を覆う（絶対に歪まなくなります） */
    background-size: cover; 
    
    /* 4. 余計なパディングは 0 にして高さに影響させない */
    padding: 0;
}
#futurefvSec .sectionInner{padding: 0.5em 0;display: flex;flex-direction: column;    /* 中身を上から下に並べる */justify-content: flex-end;height: 100%;              /* 親要素（380px）と同じ高さをいっぱいまで広げる */box-sizing: border-box;}
#futurefvSec .fv_catch{
}
#futurefvSec .fvCatch{
}
#futurefvSec .titleBox{
}
#futurefvSec .titleBox .year{
}
#futurefvSec .titleBox .fvyear{padding: 4px 0 4px 0;line-height: 1em;font-size: 34px;}
#futurefvSec .titleBox h2{font-size: 50px;line-height: 1.2em;text-shadow: 3px 0 0 #fff, -3px 0 0 #fff, 0 3px 0 #fff, 0 -3px 0 #fff,
        2px 2px 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff;}
#futurefvSec .titleBox h2 .smal{
}
#futurefvSec .titleBox h2 .big{font-size: 69px;text-shadow: 3px 0 0 #fff, -3px 0 0 #fff, 0 3px 0 #fff, 0 -3px 0 #fff,
        2px 2px 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff;}
#futurefvSec .titleBox .description{
    font-size: 20px;
    line-height: 1.3em;
    text-shadow: 3px 0 0 #fff, -3px 0 0 #fff, 0 3px 0 #fff, 0 -3px 0 #fff,
        2px 2px 0 #fff, -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff;
}
/*----------------------------------------------------------------------------
 ***                                                               checkSec
----------------------------------------------------------------------------*/
.checkSec{}
#checkSec .sectionInner{
    padding: 1em 0em 2.4em 0em;
    width: 800px;
}
.checkSec .slick-dotted.slick-slider{
    margin-bottom: 50px;
}
.checkSec .listBox{}
.checkSec .listBox .listItem{}
.checkSec .listBox .listItem .heading{}
.checkSec .listBox .listItem .txts{}
.checkSec .listBox .listItem .txtl{}
.checkSec .listBox .listItem .bl{}
.checkSec .listBox.gridBox .item01{background: url(../../images/renew_2512/fv_item1_pc.jpg) no-repeat center center / cover;height: 110px;width: 330px;/* width: auto; */}
.checkSec .listBox.gridBox .item02{background: url(../../images/renew_2512/fv_item2_pc.jpg) no-repeat center center / cover;height: 340px;width: 330px;margin-top: -120px;}
.checkSec .listBox.gridBox .item03{background: url(../../images/renew_2512/fv_item4_pc.jpg) no-repeat center center / cover;height: 277px;}
.checkSec .listBox.gridBox .item04{background: url(../../images/renew_2512/fv_item5_pc.jpg) no-repeat center center / cover;height: 170px;margin-top: 50px;}
.checkSec .listBox.gridBox .item05{background: url(../../images/renew_2512/fv_item3_pc.jpg) no-repeat center center / cover;margin-left: -30px;margin-top: 0;height: auto;}
.checkSec .listBox.gridBox .item06{/* background: url(../../images/renew_2512/fv_item6_pc.jpg) no-repeat center center / cover; */margin-left: -30px;height: auto;margin-top: 2px;height: 218px;}
.checkSec .listBox .item05 p{}
.checkSec .slickslider .slide{
    width: 1090px;
    height: 460px;
    max-width: 95%;
    max-height: 460px;
    aspect-ratio: 109 / 46;
*/
    margin: 0 3em;
*/
    margin: 0 3em;
    margin: 0 1.5em;
}
.checkSec .slickslider .slide.gridBox{
    /* width: 1090px; */
    /* height: 460px; */
    max-width: 95%;
    max-height: 460px;
    aspect-ratio: 109 / 46;
}
.checkSec .slickslider .slide.gridBox{
    gap: 10px;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 230px); /* 1マスの高さ */
     /* スライド全体の高さに合わせて調整 */
    grid-template-areas:
        "item1 item5 item3"
        "item2 item6 item4"; /* item3が2マス分連結 */
}
.checkSec .slickslider .slick-next,.checkSec .slickslider .slick-prev{
    top: 105%;
}
#checkSec .slide a{}
#checkSec .slide a picture{
}
#checkSec .slide a picture img{
    width: 170px !important;
    height: auto !important;
    padding: 0em;
    }

#checkSec .slide a .slide_content{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 37px;
    z-index: 2;
    text-align: center;
    }
#checkSec .slide a .slide_content h3{
    text-align: center;
    font-size: 19px;
}
#checkSec .checkSlide .slide_btn {
    display: inline-block;
    margin: 0;
    padding: 5px 12px;
    background: #fff;
    border-radius: 20px;
    color: #2c5c73;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.2;
    white-space: nowrap;
}
/*----------------------------------------------------------------------------
 ***                                                              trendSec
----------------------------------------------------------------------------*/
#trendSec .cardItem .card_btn a{
    font-size: 12px;
    }
/*----------------------------------------------------------------------------
 ***                                                               purposeSec
----------------------------------------------------------------------------*/
#purposeSec .sectionInner{}
#purposeSec .titleBox{}
#purposeSec .titleBox h2{
}
#purposeSec .titleBox .heading{}
#purposeSec .titleBox p{}
#purposeSec .titleBox .description{}
#purposeSec .purposeBox {}
#purposeSec .purposeBox .subBox {
    width: calc(50% - 12px);
}
#purposeSec .purposeBox .dispFlex{}
#purposeSec .purposeBox .subBox .subBox_img {}
#purposeSec .purposeBox .img_pur1 {}
#purposeSec .purposeBox .img_pur2 {}
#purposeSec .purposeBox .img_pur3 {}
#purposeSec .purposeBox .img_pur4 {}
#purposeSec .purposeBox .subBox .subBox_content {}
#purposeSec .purposeBox .subBox h3{}
#purposeSec .purposeBox .subBox .subHeading {
    font-size: 2.2rem;
}
#purposeSec .purposeBox .subBox p{}
#purposeSec .purposeBox .subBox .subDescription {
    font-size: 1.5rem;
    line-height: 1.3em;
}
#purposeSec .purposeBox .subBox .linkGroup {}
#purposeSec .purposeBox .subBox .linkGroup a{}
#purposeSec .purposeBox .subBox .linkGroup .linkBtn {
    padding: 3px 14px 3px 7px;
    font-size: 1.2rem;
}
#purposeSec .purposeBox .subBox .linkGroup .linkBtn::after {}
/*----------------------------------------------------------------------------
 ***                                                               PopularSec
----------------------------------------------------------------------------*/

#PopularSec{}
#PopularSec .sectionInner{
}
#PopularSec .titleBox{}
#PopularSec .titleBox h2{}
#PopularSec .titleBox .heading{}
#PopularSec .titleBox p{}
#PopularSec .titleBox .description{}
#PopularSec .popularTableBox{}
#PopularSec .tableContainer{/* overflow: visible; */}

#PopularSec .tableContainer table{}
#PopularSec .tableContainer .comparisonTable{
    margin-left: 0em;
}
#PopularSec table thead{}
#PopularSec table thead tr{}
#PopularSec table thead th{}
#PopularSec table thead .col-country{}
#PopularSec table thead .col-recommend{}
#PopularSec table thead .col-price{}
#PopularSec table thead .col-cost{}
#PopularSec table thead .col-features{}
#PopularSec table thead th span{}
#PopularSec table thead th .{}
#PopularSec table tbody{}
#PopularSec table tbody tr{}
#PopularSec table tbody tr:last-child{}
#PopularSec table tbody td{
    padding: 8px 10px;
}
#PopularSec table tbody .td-country{}
#PopularSec table tbody .countryWrap{
}
#PopularSec table tbody .countryWrap img{}
#PopularSec table tbody .countryWrap .flagImg{
}
#PopularSec table tbody .countryWrap span{}
#PopularSec table tbody .countryWrap .countryName{
    font-size: 1.4rem;
}
#PopularSec table tbody .cou-recommend{
    text-align: center;
}
#PopularSec table tbody .cou-recommend span{}
#PopularSec table tbody .cou-recommend .stars{font-size: 15px;text-align: center;}
#PopularSec table tbody .cou-price{
}
#PopularSec table tbody .cou-price strong{
}
#P#PopularSec table tbody .cou-cost{
}

#PopularSec table tbody .cou-cost strong{
}
#PopularSec table tbody .cou-cost{
}
#PopularSec table tbody .cou-features{
}
#PopularSec .popularTableBox > ul{}
#PopularSec .popularTableBox .tableNotes{
    margin-top: 0em;
}
#PopularSec .popularTableBox .tableNotes li{
    font-size: 13px;
}
/*----------------------------------------------------------------------------
 ***                                                               abroadSec
----------------------------------------------------------------------------*/
#abroadSec .sectionInner{
    padding: 7em 0 0em 0;
}
#abroadSec .abr-titleBox{}
#abroadSec .abr-titleBox h2{}
#abroadSec .abr-titleBox h2 span{}
.Slash h2::before,.Slash h2::after{}
.Slash h2::before{}
.Slash h2::after{}

#abroadSec .abr-titleBox p{}
#abroadSec .titleBox .heading{}
#abroadSec .titleBox h2 span{}
#abroadSec .titleBox p{}
#abroadSec .titleBox .description{ }

#abroadSec .abroadBox{}
#abroadSec .abroadBox .dispFlex{}
#abroadSec .abroadBox .countryCard{
    width: calc(25% - 8px);
}
#abroadSec .countryCard .cardHeader{}
#abroadSec .countryCard .ab-backimg1{}
#abroadSec .countryCard .ab-backimg2{}
#abroadSec .countryCard .ab-backimg3{}
#abroadSec .countryCard .ab-backimg4}

#abroadSec .countryCard .countryInfo{}
#abroadSec .countryCard .countryInfo .dispFlex{}
#abroadSec .countryCard .countryInfo img{}

#abroadSec .countryCard .countryInfo span{}
#abroadSec .countryCard .countryInfo .cou-name{}
#abroadSec .countryCard .cardBody{}

#abroadSec .countryCard .cardBody h3{}
#abroadSec .countryCard .cardBody .cardHeading{ 
}
#abroadSec .countryCard .cardBody ul{
    margin-bottom: 0.5em;
}
#abroadSec .countryCard .cardBody .checkList{}
#abroadSec .countryCard .cardBody li{}
#abroadSec .countryCard .cardBody li::before{ }


#abroadSec .countryCard .cardBody a{}
#abroadSec .countryCard .cardBody .detailBtn{}

#abroadSec .countryCard .cardBody .detailBtn::after{
}

/*----------------------------------------------------------------------------
 ***                                                               inquirySec
----------------------------------------------------------------------------*/

.inquirySec{}
.inquirySec .sectionInner{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0rem 3rem;
    margin: 1.5rem auto;
    padding: 3em 0;
}
.inquirySec .btnBox{
    text-align: center;
    margin: 0;
    font-size: 2.6rem;
}
.inquirySec .counseling{}
.inquirySec .counseling .text{}
.inquirySec .counseling .btn{
    /* padding: 0.5rem 3rem; */
}
.inquirySec .line{}
.inquirySec .line .text{}
.inquirySec .line .btn{}
.inquirySec .text{
    font-size: 70%;
}
.inquirySec .text::after,.inquirySec .text::before{}
.inquirySec .counseling .text::before,
.inquirySec .counseling .text::after{}
.inquirySec .line .text::before,
.inquirySec .line .text::after{}
.inquirySec .text::before{}
.inquirySec .text::after{}

.inquirySec .btn{
    /* margin: 1rem 3rem; */
    width: auto;
    /* font-size: 100%; */
    min-width: 360px;
}
.inquirySec .btn a{
    padding: 1rem 15px;
}
.inquirySec .btn::before,.inquirySec .btn::after{
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.inquirySec .btn::before{}
.inquirySec .btn::after{}

/*----------------------------------------------------------------------------
 ***                                                                  canSec
----------------------------------------------------------------------------*/
#canSec .sectionInner{
    padding: 7em 0 0em 0;
}
#canSec .can-titleBox{}
#canSec .can-titleBox h2{}
#canSec .can-titleBox .heading{}
#canSec .can-titleBox h2 span{}
#canSec .can-titleBox p{}
#canSec .can-titleBox .description{}
#canSec .canBox{
    flex-wrap: nowrap;
}
#canSec .canBox .dispFlex{}
#canSec .canBox .can-content{
    width: 24%;
}
#canSec .canBox .can-content .can-ttl{
}
#canSec .canBox .can-content h3{}
#canSec .canBox .can-content .heading{
    margin-top: 0.7rem;
    font-size: 24px;
}
#canSec .canBox .can-content .order02{
}
#canSec .canBox .can-content p{}
#canSec .canBox .can-content .ttlicon{
}
#canSec .canBox .can-content .order01{
    padding: 0;
}
#canSec .canBox .can-content .description{font-size: 1.4rem;}
#canSec .canBox .can-content .order03{}
#canSec .canBox .can-content p img{}
#canSec .canBox .can-content p .{}
/*----------------------------------------------------------------------------
 ***                                                                FindSec
----------------------------------------------------------------------------*/
#FindSec{
}
#FindSec .sectionInner{
    padding: 6em 0 5em 0;
}
#FindSec .titleBox{
    align-items: baseline;
}
#FindSec .titleBox h2{
}
#FindSec .titleBox .heading{
   /* border-bottom: none; */
   /* border-top: none; */
   align-items: normal;
   /* text-align: start; */
   font-size: 30px;
   width: 80%;
   /* display: inline-block; */
}

#FindSec .titleBox h2::before{
}

#FindSec .titleBox p{}
#FindSec .titleBox .description{
}

#FindSec .sectionInner > p{}
#FindSec .sectionInner .ShareBtn{}
#FindSec .sectionInner p a{}
#FindSec .sectionInner p .slide_link{}
/*----------------------------------------------------------------------------
 ***                                                                  formSec
----------------------------------------------------------------------------*/
::placeholder{ color:#999; font-size:87.5%; font-weight:normal;}
#formSec{}
#formSec h4{max-width: none;margin:1em auto;background-color:#3D4393;color:#fff;font-size: 18px;font-weight:normal;padding: 0.5em;line-height:1em;}
#formSec h4 .textNotes{ display:inline-block; margin:0 1em; font-size:75%;}

#formSec .inputList{ max-width:900px; width:100%; margin:1em auto;}

#formSec .inputList li span{display:inline-block;max-width: 150px;width:100%;position:relative;margin:0.5em 1em 0.5em 0;color:#000;font-size: 16px;}
#formSec .inputList li .addInput, #formSec .inputList li .checkBoxInput, #formSec .inputList li textarea {
    max-width: 530px;
    width: 100%;
}
#formSec .inputList li span.requiredItem:after {
}
#formSec .inputList > li > input, #formSec .inputList > li > select {
    max-width: 290px;
    width: 100%;
    font-size: 14px;
}

#formSec .checkBoxInput li label{
    font-size: 14px;
}
#formComment{
    text-align: center;
}
#formSec .submitBox{}
#formSec .submitBox input{
    text-align: center;
    font-size: 20px;
    font-weight: 500;
}
#formSec .agreeLabel{
    display: flex;
    justify-content: center;
}

#thanksSec h2 {
    font-size: 40px;
    margin: 1em 0em 0.5em 0em;
    color: #E63582;
}