@charset "UTF-8";
/* CSS Document - campaign  */

/* Common Color */
:root {
--bg-orange:#fef6e7;
--bg-blue:#ebf3f7;
--bg-navy:#ebedf7;
--bg-pink:#fff0f5;
--bg-green:#edf7f2;
--bg-gray:#ededed;

--bg-dark-orange:#a66a21;
--bg-dark-blue:#266280;
--bg-dark-navy:#405080;
--bg-dark-pink:#991f47;
--bg-dark-green:#14663e;
--bg-dark-gray:#4d4d4d;
}



/* Theme Color */
/* default（Light Mode） */
body {
--theme-color: #348CB0;
--theme-color50: #99c5d7;
--sub-color:#f0a30f;
--sub-color50:#fad387;
--font-color:#1A1A1A;
--font-color50:#8C8C8C;
--font-sub-color:#FFF;
--border-color:#E5E5E5;
--bg-color:#FFF;
--bg-light-color:#F6F6F6;
--bg-dark-color:#164573;
}


/* Dark Mode */
body.body_dark {
--bg-color:#222;
--font-color:#FFF;
--theme-color: #e53978;
--theme-color50: #f29cbc;
--sub-color:#5cb8e6;
--sub-color50:#addbf2;
--font-color50:#999;
--border-color:#444;
--bg-light-color:#333;
--bg-dark-color:#111;
}


/* Greeting Mode */
body.body_greeting {
--bg-color:#961b08;
--font-color:#FFF;
--theme-color: #bfa126;
--theme-color50: #dfd092;
--sub-color:#004832;
--sub-color50:#80a398;
--font-color50:#e6d38a;
--border-color:#bfa126;
--bg-light-color:#dfd092;
--bg-dark-color:#731000;
}







/* COLOR */
body {
background-color: var(--bg-color);
color: var(--font-color);
}
body .header,
body .footer,
body .header a,
body .footer a {
color: #1a1a1a!important;
}



/* RAYOUT */
.cont_campaign .wrapper {
padding: 0 10px;
}
.cont_campaign .col1,
.cont_campaign .col2,
.cont_campaign .col3 {
padding: min(2vw,30px);
box-sizing: border-box;
width: 100%;
}
.cont_campaign img {
display: block;
width: 100%;
}
.cont_campaign img.round {
border-radius: 10px;
}
.cont_campaign img.border {
border: 8px solid var(--theme-color50);
}
.cont_campaign img.border.sub {
border-color: var(--sub-color50);
}
.cont_campaign .media-cont_inner {
display: flex;
flex-wrap: wrap;
margin: 0!important;
}
.cont_campaign .media-cont_inner > figure,
.cont_campaign .media-cont_inner > div {
padding: min(2vw,30px);
box-sizing: border-box;
width: 100%;
}
.cont_campaign .media-cont_inner > figure {
padding-bottom: 0;
}




@media only screen and (min-width: 768px) {
.cont_campaign .wrapper {
padding: 0;
}
.cont_campaign .col2 {
width: 50%;
}
.cont_campaign .col3 {
width: 33.33333%;
}
.cont_campaign img.round {
border-radius: 20px;
}
.cont_campaign img.border {
border-width: 10px;
}
.cont_campaign .media-cont_inner > figure,
.cont_campaign .media-cont_inner > div {
width: 50%;
margin-top: 0;
}
.cont_campaign .media-cont_inner > figure {
padding-bottom: min(2vw,30px);
}
.cont_campaign .col1.media-cont_inner + .col1.media-cont_inner {
padding-top: 0;
}
.cont_campaign .col1.media-cont_inner:nth-of-type(even) {
flex-direction: row-reverse;
}

}/* min-width: 768px */





/* HEAD */
.cont_campaign h1.page_head {
padding: min(1vw,10px) min(2vw,30px);
box-sizing: border-box;
width: 100%;
text-align: left;
font-size: min(4vw,var(--18px));
font-weight: 700;
line-height: 1.6;
background: var(--palegray);
}
.cont_campaign h2 {font-size: min(5.5vw,30px);}
.cont_campaign h3 {font-size: min(4.5vw,24px);}
.cont_campaign h4 {font-size: min(4vw,22px);}
.cont_campaign h5 {font-size: min(3.6vw,18px);}
.cont_campaign h6 {font-size: min(3.2vw,16px);}

.cont_campaign h2,.cont_campaign h3,.cont_campaign h4,.cont_campaign h5,.cont_campaign h6 {
line-height: 1.6;
}
.cont_campaign h2.col1,.cont_campaign h3.col1,.cont_campaign h4.col1 {
padding-bottom: 0;
}

/* SPACE */
.cont_campaign h2 + p,.cont_campaign h2 + div, .cont_campaign h2 + a,
.cont_campaign h3 + p,.cont_campaign h3 + div, .cont_campaign h3 + a,
.cont_campaign h4 + p,.cont_campaign h4 + div, .cont_campaign h4 + a,
.cont_campaign h5 + p,.cont_campaign h5 + div, .cont_campaign h5 + a,
.cont_campaign h6 + p,.cont_campaign h6 + div, .cont_campaign h6 + a {
margin-top: min(2vw,15px);
}
.cont_campaign h3 + figure,.cont_campaign h3 + img,
.cont_campaign h4 + figure,.cont_campaign h4 + img,
.cont_campaign h5 + figure,.cont_campaign h5 + img,
.cont_campaign h6 + figure,.cont_campaign h6 + img {margin-top: min(3vw,20px);}

.cont_campaign p + p,
.cont_campaign p + div,
.cont_campaign p + a {
margin-top: min(2vw,10px);
}
.cont_campaign p + img,
.cont_campaign p + figure {
margin-top: min(3vw,20px);
}
.cont_campaign img + p,
.cont_campaign img + img,
.cont_campaign img + figure,
.cont_campaign img + div,
.cont_campaign img + a {
margin-top: min(3vw,20px);
}
.cont_campaign figure + p,
.cont_campaign figure + img,
.cont_campaign figure + figure,
.cont_campaign figure + div,
.cont_campaign figure + a {
margin-top: min(3vw,20px);
}
.cont_campaign div + p,
.cont_campaign div + img,
.cont_campaign div + figure,
.cont_campaign div + div,
.cont_campaign div + a {
margin-top: min(3vw,20px);
}
.cont_campaign a + p,
.cont_campaign a + img,
.cont_campaign a + figure,
.cont_campaign a + div,
.cont_campaign a + a {
margin-top: min(3vw,20px);
}




/* FONT */
.cont_campaign .normal {font-weight: 400!important;}
.cont_campaign .medium {font-weight: 500!important;}
.cont_campaign .bold {font-weight: 700!important;}

/* FONT COLOR */
.cont_campaign .red {color:var(--red);}
.cont_campaign .blue {color:var(--blue);}
.cont_campaign .orange {color:var(--orange);}
.cont_campaign .black {color: var(--font-color);}


/* FONT SIZE */
.cont_campaign .small{ font-size: 90%;}
.cont_campaign .smaller {font-size: 80%;}
.cont_campaign .big {font-size: 110%;}
.cont_campaign .bigger {font-size: 120%;}


/* LINK */
.cont_campaign a {
display: inline-block;
color: var(--theme-color);
text-decoration: underline;
}
.cont_campaign a.btn {
display: inline-block;
margin: min(3vw,20px) 0;
padding: 1rem 3rem;
box-sizing: border-box;
border-radius:30px;
color: #FFF;
text-decoration: none!important;
background: var(--theme-color);
letter-spacing: 0.2em;
text-align: center;
line-height: 1.5;
cursor: pointer;
}


/* SLIDER */
.cont_campaign .list_tour-card a,
.cont_campaign .list_tour-card a + a {
margin-top: 0;
color: var(--font-color);
text-decoration: none;
}
.cont_campaign .list_tour-card figure + p {
margin-top: 0;
}





/* ====================== 
追加オプション 2025.12
======================  */

/* background */
.bg_light {background-color: var(--bg-light-color);}
.bg_dark {
background-color: var(--bg-dark-color);
color: var(--font-sub-color);
}
.bg_orange {background-color: var(--bg-orange);}
.bg_blue {background-color: var(--bg-blue);}
.bg_navy {background-color: var(--bg-navy);}
.bg_pink {background-color: var(--bg-pink);}
.bg_green {background-color: var(--bg-green);}
.bg_gray {background-color: var(--bg-gray);}

.body_dark .bg_orange {background-color: var(--bg-dark-orange);}
.body_dark .bg_blue {background-color: var(--bg-dark-blue);}
.body_dark .bg_navy {background-color: var(--bg-dark-navy);}
.body_dark .bg_pink {background-color: var(--bg-dark-pink);}
.body_dark .bg_green {background-color: var(--bg-dark-green);}
.body_dark .bg_gray {background-color: var(--bg-dark-gray);}

.body_greeting .bg_orange {background-color: var(--bg-dark-orange);}
.body_greeting .bg_blue {background-color: var(--bg-dark-blue);}
.body_greeting .bg_navy {background-color: var(--bg-dark-navy);}
.body_greeting .bg_pink {background-color: var(--bg-dark-pink);}
.body_greeting .bg_green {background-color: var(--bg-dark-green);}
.body_greeting .bg_gray {background-color: var(--bg-dark-gray);}

.bg_stripe {
background-image: url(../images/campaign/bg_stripe_w.svg);
background-size: 71px;
}
.body_dark .bg_stripe,
.body_greeting .bg_stripe {
background-image: url(../images/campaign/bg_stripe.svg);
}


@media only screen and (min-width: 768px) {
.bg_stripe {
background-size: 142px;
}
}




/* parts */
.cont_campaign .btn_round {
padding: 1.5rem min(12vw,60px);
border: none;
background-color: var(--theme-color);
font-size: min(4vw,16px);
color: #FFF;
text-decoration: none;
}

.cont_campaign .section_title {
text-align: center;
font-weight: 700;
font-size: min(5.5vw,30px);
}
.cont_campaign .section_title > em {
display: block;
margin-top: .5rem;
text-align: center;
font-family: var(--font-family-en);
font-size: 60%;
font-weight: 500;
}






/* FIRST VIEW */
.campaign_fv {
position: relative;
}
.campaign_fv li > img {
display: block;
object-fit: cover;
width: 100%;
height: 480px;
transform: scale(1);
transition: transform 10s ease;
}
.campaign_fv li.slick-current > img {
transform: scale(1.1);
}
.campaign_fv .slick-vertical .slick-slide {
border: none;
}
.campaign_fv .badge-circle {
position: absolute;
top: 0;
right: min(5vw,30px);
z-index: 60;
width: min(35vw,200px);
height: min(35vw,200px);
border-radius: 50%;
background: var(--theme-color);
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: #FFF;
font-size: min(3.5vw,16px);
font-weight: 600;
line-height: 1.4;
}

.campaign_fv .badge-circle a {
color:#FFF;
}

.campaign_fv .badge-circle strong {
display: block;
text-align: center;
font-size: 200%;
font-family: var(--font-family-en);
font-weight: 700;
}
.campaign_fv .wrapper {
position: absolute;
bottom: min(6vw,60px);
left:50%;
translate: -50% 0;
padding-bottom: min(1vw,30px);
}
.campaign_fv h1.title {
margin-bottom: min(2vw,20px);
font-size: min(10vw,40px);
font-weight: 700;
color: #FFF;
font-family: var(--font-family-en);
line-height: 1.4;
}
.campaign_fv h1.title.big {
font-size: min(12vw,60px);
}
.campaign_fv h1.title.small {
font-size: min(8vw,32px);
}
.campaign_fv p.lead {
margin-bottom: min(6vw,40px);
font-size: min(5vw,20px);
font-weight: 700;
color: #FFF;
}
.campaign_fv p.lead.big {
font-size: min(6vw,24px);
}
.campaign_fv p.lead.small {
font-size: min(4vw,18px);
}
.campaign_fv .campaign_fv_overlay {
position: absolute;
top:0;
left:0;
display: block;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.3);
}


@media only screen and (min-width: 768px) {
.campaign_fv .badge-circle {
top: min(5vw,30px);
right: min(5vw,30px);
}
.campaign_fv h1.title {
font-size: min(7vw,90px);
}
.campaign_fv h1.title.big {
font-size: min(9vw,110px);
}
.campaign_fv h1.title.small {
font-size: min(5vw,70px);
}
.campaign_fv p.lead {
font-size: min(2vw,22px);
}
.campaign_fv p.lead.big {
font-size: min(3vw,26px);
}
.campaign_fv p.lead.small {
font-size: min(1.5vw,18px);
} 
.campaign_fv .wrapper {
padding-right: 200px;
}
.campaign_fv li > img {
height: min(70vw,700px);
}
}/* min-width: 768px */










/* CONT VIEW */
.campaign_cv {
position: relative;
}
.campaign_cv li > img {
display: block;
object-fit: cover;
width: 100%;
height: 300px;
}
.campaign_cv .slick-vertical .slick-slide {
border: none;
}

.campaign_cv .wrapper {
position: absolute;
top:50%;
left:50%;
translate: -50% -50%;
padding-bottom: min(1vw,30px);
}
.campaign_cv h1.title {
margin-bottom: min(2vw,20px);
font-size: min(6vw,28px);
font-weight: 700;
color: #FFF;
font-family: var(--font-family-en);
line-height: 1.4;
}
.campaign_cv h1.title.big {
font-size: min(8vw,32px);
}
.campaign_cv h1.title.small {
font-size: min(4vw,22px);
}
.campaign_cv p.lead {
margin-bottom: min(6vw,40px);
font-size: min(4vw,18px);
font-weight: 700;
color: #FFF;
}
.campaign_cv p.lead.big {
font-size: min(5vw,22px);
}
.campaign_cv p.lead.small {
font-size: min(3vw,16px);
}
.campaign_cv .campaign_cv_overlay {
position: absolute;
top:0;
left:0;
display: block;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.3);
}




@media only screen and (min-width: 768px) {
.campaign_cv h1.title {
font-size: min(5vw,60px);
}
.campaign_cv h1.title.big {
font-size: min(7vw,80px);
}
.campaign_cv h1.title.small {
font-size: min(3vw,40px);
}
.campaign_cv p.lead {
font-size: min(2vw,22px);
}
.campaign_cv p.lead.big {
font-size: min(3vw,26px);
}
.campaign_cv p.lead.small {
font-size: min(1.5vw,18px);
} 

.campaign_cv li > img {
height: min(50vw,500px);
}
}/* min-width: 768px */



/* Campaign News */
.campaign_news {
border-bottom: 1px solid  var(--border-color);
}
.campaign_news li {
display: flex;
flex-wrap: wrap;
padding: min(1.4vw,12px) 0;
width: 100%;
border-top: 1px solid  var(--border-color);
font-weight: 500;
}
.campaign_news li > span.date,
.campaign_news li > a,
.campaign_news li > p {
display: block;
text-decoration: none;
color: var(--font-color);
width: 100%;
}
.campaign_news li span.date {
font-family: var(--font-family-en);
color: var(--font-color50);
font-weight: 700;
font-size: 86%;
}


@media only screen and (min-width: 768px) {
.campaign_news li > span.date {
width: min(15%,110px);
}
.campaign_news li > a,
.campaign_news li > p {
width: 85%;
} 
}/* min-width: 768px */


@media only screen and (min-width: 1025px) {
.campaign_news li > a,
.campaign_news li > p {
width: calc(100% - 110px);
} 

}/* min-width: 1025px */




/* CARD LINK BUTTON */
.cont_campaign a.btn_card {
display: flex;
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
text-decoration: none;
color: var(--font-color);
background-color: #FFF;
}
.cont_campaign .btn_card > figure {
width: 40%;
}
.cont_campaign .btn_card > figure > img {
object-fit: cover;
width: 100%;
height: 100%;
}
.cont_campaign .btn_card > dl {
width: 60%;
padding: min(2vw,15px) min(3vw,20px);
box-sizing: border-box;
line-height: 1.5;
}
.cont_campaign .btn_card dt {
margin-bottom: min(1vw,8px);
font-size: min(4vw,20px);
font-weight: 700;
line-height: 1.4;
}
.cont_campaign .btn_card dd p {
width: 100%;
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
.cont_campaign .btn_card .btn {
display: inline-block;
margin-top: 1rem;
padding: min(1vw,5px) 3rem;
box-sizing: border-box;
border-radius:30px;
font-size: min(3vw,15px);
color: var(--theme-color);
text-decoration: none!important;
border: 1px solid var(--theme-color);
text-align: center;
line-height: 1.2;
cursor: pointer;
}
.cont_campaign .card_round .btn_card,
.cont_campaign .card_round.btn_card {
border-radius: 10px;
}
.cont_campaign .card_round .btn_card figure img,
.cont_campaign .cadr_round.btn_card figure img {
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}




@media only screen and (min-width: 768px) {
.cont_campaign a.btn_card {
flex-wrap: wrap;
}
.cont_campaign .btn_card > figure,
.cont_campaign .btn_card > dl {
width: 100%;
}
.cont_campaign .btn_card > figure > img {
height:215px;
}

.cont_campaign .card_round .btn_card,
.cont_campaign .card_round.btn_card {
border-radius: 20px;
}
.cont_campaign .card_round .btn_card figure img,
.cont_campaign .card_round.btn_card figure img {
border-top-left-radius: 20px;
border-bottom-left-radius: 0;
border-top-right-radius: 20px;
}
.cont_campaign .btn_card dd p {
min-height: 50px;
}



}/* min-width: 768px */





/* カルーセル　スライダー */
.carousel-slide.slick-slider .slick-arrow {
top:50%;
translate: 0 -50%;
width: min(10vw,46px);
height: min(10vw,46px);
transform: none;
}
.carousel-slide.slick-slider .slick-prev {
left:-10px;
border: none;
background: url(../images/common/btn_slide-prev.svg) no-repeat center center;
background-size: cover;
filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .4));
}
.carousel-slide.slick-slider .slick-next {
right:-10px;
border: none;
background: url(../images/common/btn_slide-next.svg) no-repeat center center;
background-size: cover;
filter: drop-shadow(-2px 2px 5px rgba(0, 0, 0, .4));
}
.carousel-slide li {
padding: 0 min(2vw,20px);
}
.carousel-slide li img {
object-fit: cover;
width: 100%;
height: 250px;
}
.carousel-slide li dl {
margin-top: min(1.5vw,15px);
}
.carousel-slide li dt {
font-size: min(3.6vw,18px);
font-weight: 600;
}
.carousel-slide li dd {
font-size: var(--15px);
}


@media only screen and (min-width: 768px) {
.carousel-slide li img {
height: min(40vw,500px);
}

}/* min-width: 768px */







/* Themaごとの指定 */

/* Dark */
.body_dark .cont_campaign a.btn_card {
background: var(--bg-light-color);
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
}
.body_dark .cont_campaign .btn_card .btn {
color: var(--sub-color);
border-color: var(--sub-color);
}





/* Greeting */
body.body_greeting .campaign_fv .badge-circle {
background: var(--bg-color);
}
body.body_greeting .cont_campaign img.border {
border-color: var(--theme-color);
}
body.body_greeting .cont_campaign img.border.sub {
border-color: var(--sub-color);
}

.body_greeting .cont_campaign a.btn_card {
background: var(--theme-color50);
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
color: #1a1a1a;
}

.body_greeting .cont_campaign .btn_card .btn {
background-color: var(--bg-dark-color);
color: #FFF;
border: none;
}
 .body_greeting .bg_light {
background-color: var(--sub-color);
}

@media only screen and (min-width: 768px) {

}
