@charset "utf-8";

/*---------FV---------------------*/

.coverSliderBox .carousel-item:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    margin: auto;
    background: rgb(41,39,37);
    background: radial-gradient(circle, rgba(41,39,37,0.2049194677871149) 0%, rgba(41,39,37,0.4009978991596639) 100%);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
}

.topCoverFvBox {
    position: absolute;
    z-index: 8;
    left: 0;
    right: 0;
    top: auto;
    padding: 0 15px;
}

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

.topBgWrMain01 {
    position: relative;
    background: rgb(255, 255, 255);
    background: linear-gradient(180deg, #BFBEBD, #EDEBEB 100%);
    overflow: hidden;
}

.topWr04 {
    overflow: hidden;
}

.topWr05 {
    overflow: hidden;
}

.topWr06 {
    overflow: hidden;
}

.topTitleBr01>br {
    display: none;
}

.topWr03 {
    z-index: 1;
}

.topCoverTit {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.245em;
    text-align: center;
}

.topContactImgBox:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 50%;
    background: rgb(244,243,238);
    background: linear-gradient(180deg, rgba(244,243,238,0) 0%, rgba(244,243,238,1) 100%);
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.topGalleryVoiceRightBox {
    display: block;
}

.topGalleryVoiceTextBox {
    font-size: 16px;
}

/* .topWr03:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 105%;
    background: #999593;
    background: linear-gradient(180deg, rgb(153 149 147 / 0%) 0%, #999593 100%);
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: -1;
} */

.comBtn01.topPickupBtn {
    max-width: 300px;
    margin: 60px auto 0;
}

.topPickupTitBox {
    margin: 30px 0 0;
}

.topPickupTit {
    font-size: 45px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topPickupSubTit {
    letter-spacing: 0.15em;
    font-weight: 500;
    font-size: 25px;
}

.topCoverMoneyCheckIcon {
    max-width: 25.73px;
    width: 100%;
    margin-right: 9px;
}

.topCoverMoneyCheckSet {
    display: inline-flex;
    align-items: center;
    background: #fff;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1em;
    padding: 10px 12px;
    color: #4B4948;
}

.topCoverMoneyBox02 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 5px;
}

.topCoverMoneyBox01 {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.topCoverMoneyTit01 {
    font-size: 70px;
    font-weight: bold;
    line-height: 1em;
    letter-spacing: 0.1em;
}

.topCoverMoneySet01 {
    max-width: 50.68px;
    width: 100%;
    text-align: center;
    margin-left: -0.8rem;
    margin-right: 0.6em;
}

.topCoverMoneyTit02 {
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.6em;
}

.topCoverMoneyDeco01 {
    margin-bottom: -0.6em;
}

.topCoverMoneyTit03 {
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.4em;
}

.topCoverMoneySet02 {
    display: flex;
    align-items: flex-end;
}

.topCoverMoneyTit04 {
    font-size: 16px;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.2em;
    padding-bottom: 0.3em;
    margin-left: 0.2em;
}

.topPickupText01 {
    line-height: 1.75em;
    letter-spacing: 0.15em;
    font-weight: 500;
    font-size: 25px;
}

.topStoryText01 {
    font-size: 16px;
}

.topNewConceptTit01 {
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topNewConceptTit02 {
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topNewConceptTit03 {
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topWorriesTit02 {
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.6em;
    font-size: 35px;
}

.topWorriesTit01 {
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topWorriesTit03 {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topMethodText01 {
    font-size: 16px;
}

.topStoryTextLightHight03 br {
    display: none;
}

.topMethodTextBr01 br {
    display: none;
}

.topLinkBgImgMask {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    margin: auto;
}

.topLinkBgImgMask>img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.topLinkBgImgMask:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    background: rgb(41 39 37 / 70%);
    z-index: 1;
    transition: all .7s;
}

.topLinkBox01 {
    overflow: hidden;
}

.comBtn01.topLinkBtn01 {
    border-color: #fff;
    color: #fff;
}

.comBtn01.topLinkBtn01:after {
    filter: brightness(0) invert(1);
}

.comBtn01.topLinkBtn01:hover {
    background-color: #ffffff00;
}

.topLinkBox01:hover .topLinkBgImgMask>img {
    transform: scale(1.05);
    transition: all .7s;
}

.topLinkBox01 .topLinkBgImgMask>img {
    transition: all .7s;
}

.topLinkBox01:hover .topLinkBgImgMask:before {
    background: rgb(93 79 54 / 20%);
    transition: all .7s;
}

.topLinkTxtBox .text01 {
    font-size: 16px;
}

.topContTextListBox.text01 {
    font-size: 16px;
}

.topMeritFlexBox01 {
    width: 100%;
    position: relative;
    display: block;
    align-items: flex-start;
    flex-direction: row;
}

.topMeritFlexTextBox01 {
    background: #F5F2F1;
    padding: 30px 25px 60px 15px;
    position: relative;
    display: block;
    width: 90%;
}

.topMeritFlexImgBox01 {
    width: 50%;
    margin: -30px 0 0 auto;
    position: relative;
    z-index: 2;
}

.topMeritNumber {
    font-size: 80px;
    color: #4B4948;
    letter-spacing: 0.05em;
    line-height: 1.2em;
    position: absolute;
    z-index: 3;
    top: -35px;
    right: -25px;
}

.topMeritCate {
    background-color: #292725;
    color: #fff;
    display: inline-block;
    padding: 5px 15px 5px 10px;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.06em;
    line-height: 1.44em;
    margin-bottom: 10px;
}

.topMeritTit01 {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.55em;
}

.topMeritText01 {
    font-size: 15px;
    line-height: 2em;
    letter-spacing: 0.1em;
    font-weight: 500;
}

.topMeritFlexWr .topMeritFlexBox01:first-child {
    margin-top: 0;
}

.topMeritFlexWr .topMeritFlexBox01 {
    margin-top: 40px;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) {
    flex-direction: row-reverse;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexTextBox01 {
    padding: 30px 15px 60px 25px;
    margin-left: auto;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexImgBox01 {
    margin: -30px 0 0 0;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexTextBox01 .topMeritNumber {
    right: auto;
    left: -25px;
}

.topMeritTitMain {
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.4em;
    margin-bottom: 10px;
}

.topMeritTitSet01 {
    position: relative;
}

.topMeritTitJa {
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.6em;
    font-size: 35px;
    position: relative;
    z-index: 1;
}

.topMeritTitJa>strong {
    font-size: 90px;
    font-weight: bold;
}

.topMeritTitEn {
    font-size: 70px;
    letter-spacing: 0.1em;
    line-height: 0.8em;
    position: absolute;
    top: 0;
    left: 90px;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:375px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.topCoverTit {
    font-size: 20px;
}
    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 375px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:414px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.topCoverTit {
    font-size: 25px;
}  



/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:544px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


.topCoverTit {
    font-size: 30px;
}
  
.topTitleBr01>br {
    display: block;
}

.topCoverMoneyTit01 {
    font-size: 100px;
}

.topCoverMoneyTit03 {
    font-size: 60px;
}

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

.topCoverMoneyTit02 {
    font-size: 35px;
}

.topCoverMoneyDeco01 {
    margin-bottom: -0.9em;
}

.topMeritCate {
    font-size: 20px;
}

.topMeritTit01 {
    font-size: 25px;
}

.topMeritText01 {
    font-size: 18px;
}

.topMeritTitMain {
    font-size: 30px;
}

.topMeritTitJa {
    font-size: 50px;
}

.topMeritTitJa>strong {
    font-size: 130px;
}

.topMeritTitEn {
    font-size: 100px;
    left: 130px;
}
  
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 544px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:768px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


.topCoverTit {
    font-size: 45px;
}

.topCoverFvBox {
    top: 18%;
}

.topCoverMoneyTit01 {
    font-size: 150px;
}

.topCoverMoneyTit03 {
    font-size: 80px;
}

.topCoverMoneyTit04 {
    font-size: 20px;
    padding-bottom: 1.2em;
}

.topCoverMoneyTit02 {
    font-size: 45px;
}

.topCoverMoneyDeco01 {
    margin-bottom: -1em;
}

.topCoverMoneySet01 {
    max-width: 80.68px;
    margin-left: -1.2rem;
    margin-right: 0.4em;
}

.topCoverMoneyCheckIcon {
    max-width: 35.73px;
}

.topCoverMoneyCheckSet {
    font-size: 35px;
    padding: 10px 12px;
}

.topMeritCate {
    padding: 5px 15px 5px 10px;
    font-size: 20px;
}

.topMeritTit01 {
    font-size: 25px;
}

.topMeritText01 {
    font-size: 17px;
}

.topMeritFlexImgBox01 {
    width: 45%;
    margin: 90px 0 0 -5%;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexImgBox01 {
    margin: 90px -5% 0 0;
}

.topMeritNumber {
    font-size: 90px;
    top: -45px;
    right: -25px;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexTextBox01 .topMeritNumber {
    right: auto;
    left: -25px;
}

.topMeritFlexBox01 {
    display: flex;
}

.topMeritFlexTextBox01 {
    padding: 5% 10% 5% 5%;
    width: 60%;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexTextBox01 {
    padding: 5% 5% 5% 10%;
    margin-left: auto;
}

.topMeritFlexImgBox01 {
    width: 45%;
    margin: 140px 0 0 -5%;
}

.topMeritFlexWr .topMeritFlexBox01 {
    margin-top: 80px;
}

.topPickupText01 {
    font-size: 30px;
}

.topPickupSubTit {
    font-size: 30px;
}

.topPickupTit {
    font-size: 55px;
}

.topNewConceptTit01 {
    font-size: 35px;
}

.topNewConceptTit02 {
    font-size: 50px;
}

.topNewConceptTit03 {
    font-size: 35px;
}

.topWorriesTit02 {
    font-size: 50px;
}

.topWorriesTit01 {
    font-size: 35px;
}

.topWorriesTit03 {
    font-size: 25px;
}
  
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:992px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
  


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 992px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1024px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.topCoverTit {
    font-size: 58px;
}

.topCoverMoneyCheckIcon {
    max-width: 52.73px;
}

.topCoverMoneyCheckSet {
    font-size: 60px;
    padding: 10px 12px;
}

.topCoverMoneyTit01 {
    font-size: 200px;
    line-height: 1.1em;
}

.topCoverMoneySet01 {
    max-width: 105.68px;
    margin-left: -1rem;
    margin-right: 1em;
}

.topCoverMoneyTit02 {
    font-size: 75px;
}

.topCoverMoneyDeco01 {
    margin-bottom: -1.4em;
}

.topCoverMoneyTit03 {
    font-size: 115px;
}

.topCoverMoneyTit04 {
    font-size: 35px;
    padding-bottom: 0.9em;
    margin-left: 0.2em;
}

.topCoverMoneySet01 {
    max-width: 105.68px;
    margin-left: -1rem;
    margin-right: 1em;
}

.topMeritCate {
    font-size: 25px;
}

.topMeritTit01 {
    font-size: 35px;
}

.topMeritText01 {
    font-size: 20px;
}

.topMeritFlexImgBox01 {
    margin: 140px 0 0 -5%;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexImgBox01 {
    margin: 140px -5% 0 0;
}

.topMeritNumber {
    font-size: 120px;
    top: -45px;
    right: -33px;
}

.topMeritFlexWr .topMeritFlexBox01:nth-child(even) .topMeritFlexTextBox01 .topMeritNumber {
    right: auto;
    left: -33px;
}
    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1024px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1200px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    
.topStoryText01 {
    font-size: 18px;
}

.topMethodText01 {
    font-size: 18px;
}

.topGalleryVoiceTextBox {
    font-size: 18px;
}

.topCoverTit {
    font-size: 70px;
}
  
.topContTextListBox.text01 {
    font-size: 18px;
}
    
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1400px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    
  
.topStoryTextLightHight03 br {
    display: block;
}

.topMethodTextBr01 br {
    display: block;
}

.topGalleryVoiceTextBox {
    font-size: 20px;
}

.topLinkTxtBox .text01 {
    font-size: 18px;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1600px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    
.topStoryText01 {
    font-size: 20px;
}

.topMethodText01 {
    font-size: 20px;
}

.topCoverTit {
    font-size: 80px;
}

.topLinkTxtBox .text01 {
    font-size: 20px;
}
  
 .topContTextListBox.text01 {
    font-size: 20px;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1600px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */