@charset "utf-8";
.cnt_wrap{
-webkit-font-smoothing: antialiased;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 400;
width: 100%;
overflow: hidden;
font-size: 16px;
}
.cnt_wrap *{
box-sizing: border-box;
}
.cnt_wrap img{
display: block;
width: 100%;
height: auto;
}
.en_font{
font-family: 'Ubuntu', sans-serif;
font-weight: 400;
}

.btn_ptn01{
max-width: 480px;
width: 100%;
margin: 0 auto;
}

.btn_ptn01 a{
display: block;
width: 100%;
background: #C91A51;
box-shadow: 0 3px 15px rgba(0,0,0,.23);
color: #fff;
text-align: center;
font-weight: 700;
font-size: 20px;
line-height: 1.3em;
padding: 35px 0;
position: relative;
}

.btn_ptn01 a::after{
content: "";
display: block;
width: 7px;
height: 12px;
background: url(../img/arrow_right.png) no-repeat center center/100% auto;
position: absolute;
top: 50%;
right: 37px;
transform: translateY(-50%);
transition: all .3s;
}

.btn_ptn01 a:hover{
text-decoration: none;
opacity: 0.8;
}

.btn_ptn01 a:hover::after{
right: 32px;
}
.pc{
display: block;
}

.sp{
display: none;
}

/* ----------
minvisual_area
---------- */
.mv{
position: relative;
max-width: 1280px;
width: 100%;
margin: 0 auto 25px;
}

.mv .mainvisual_box{
position: relative;
}

.mv .mainvisual_box .mainvisual_text{
color: #fff;
position: absolute;
top: 45px;
left: 6.88%;
}

.mv .mainvisual_box .tieup_box{
max-width: 257px;
width: 100%;
text-align: center;
background: #C91A51;
font-weight: 500;
font-size: 18px;
line-height: 27px;
padding: 0 0 1px;
margin-bottom: 14px;
}

.mv .mainvisual_box .h1_title{
font-weight: 700;
font-size: 60px;
line-height: 67px;
}

.mv .mainvisual_box .sub_title{
font-weight: 500;
font-size: 26px;
line-height: 38px;
}

.mv .subvisual_box{
display: flex;
align-items: start;
padding: 5px;
}

.mv .subvisual_box li{
max-width: 250px;
width: 100%;
margin: 0 5px 0 0;
}

.mv .subvisual_box li:last-of-type{
margin-right: 0;
}


/* ----------
campaign_head_box
---------- */

.campaign_head_box{
max-width: 960px;
width: 100%;
margin: 0 auto 81px;
border-radius: 6px;
border: 1px solid rgba(230,99,0,.75);
position: relative;
padding: 9px 75px 11px 41px;
display: flex;
align-items: start;
justify-content: space-between;
}

.campaign_head_box .campaign_title{
max-width: 172px;
width: 100%;
position: absolute;
top: -2px;
left: -11px;
transform: rotate(-6deg);
}

.campaign_head_box .cnt_text{
text-align: center;
margin: 13px 0 0;
max-width: 502px;
width: 65.62%;
}

.campaign_head_box .date_text{
font-size: 15px;
line-height: 1;
margin-bottom: 17px;
}

.campaign_head_box .title{
font-size: 19px;
line-height: 21px;
letter-spacing: 0.03em;
margin-bottom: 12px;
}

.campaign_head_box .title .orange_text{
font-weight: 700;
font-size: 21px;
color: #E66300;
}

.campaign_head_box .text01{
max-width: 367px;
width: 100%;
margin: 0 auto;
text-align: center;
font-weight: 500;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 24px;
background: rgba(236,138,64,.2);
}

.campaign_head_box .cnt_img{
max-width: 305px;
width: 36.23%;
display: flex;
align-items: start;
}

.campaign_head_box .cnt_img img{
max-width: 150px;
width: 49.19%;
margin: 0 5px 0 0;
}

.campaign_head_box .cnt_img img:nth-of-type(2){
margin-right: 0;
}

.campaign_head_box .next_btn{
max-width: 90px;
width: 100%;
position: absolute;
top: 50%;
right: -25px;
transform: translateY(-50%);
}

.campaign_head_box .next_btn a{
width: 100%;
border-radius: 50%;
height: 90px;
color: #fff;
background: rgb(242,127,0);
background: linear-gradient(180deg, rgba(242,127,0,1) 0%, rgba(242,127,0,1) 10%, rgba(221,47,109,1) 85%, rgba(220,0,12,1) 100%);
box-shadow: 0 3px 6px rgba(0,0,0,.16);
font-weight: 700;
font-size: 12px;
line-height: 1.5em;
text-align: center;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}

.campaign_head_box .next_btn a::after{
content: "";
display: block;
width: 12px;
height: 7px;
border-top: 7px solid #FDEFE6;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
box-sizing: border-box;
position: absolute;
bottom: 12px;
left: 50%;
transform: translateX(-50%);
}

.campaign_head_box .next_btn a:hover{
text-decoration: none;
background: linear-gradient(0deg, rgba(242,127,0,1) 0%, rgba(242,127,0,1) 10%, rgba(221,47,109,1) 85%, rgba(220,0,12,1) 100%);
}

/* ----------
l_about_area
---------- */

#l_about_area{
background: url(../img/bg01_about.png) no-repeat center bottom/100% auto;
padding: 0 0 70px;
}

#l_about_area .u_center970{
padding: 0 5px;
position: relative;
}

#l_about_area .u_center970::before{
content: "";
display: block;
width: 217px;
height: 210px;
background: url(../img/icon02_about.png) no-repeat center center/100% auto;
position: absolute;
top: 56px;
right: -91px;
}

#l_about_area .title{
font-weight: 700;
font-size: 20px;
line-height: 38px;
letter-spacing: 0.03em;
color: #C91A51;
margin-bottom: 40px;
position: relative;
z-index: 1;
}

#l_about_area .title::after{
content: "";
display: block;
width: 107px;
height: 11px;
background: url(../img/icon01_about.png) no-repeat center center/100% auto;
margin: 17px 0 0;
}

#l_about_area .movie_box{
margin: 0 auto 35px;
position: relative;
z-index: 1;
padding-top: 56.25%;
}

#l_about_area .movie_box iframe{
position: absolute;
top: 0;
right: 0;
width: 100% !important;
height: 100% !important;
box-shadow: 0 10px 15px rgba(0,0,0,.39);
}

#l_about_area p{
max-width: 471px;
width: 100%;
margin: 0 0 0 auto;
font-size: 15px;
letter-spacing: 0.02em;
line-height: 28px;
}

/* ----------
pagenav_area
---------- */

#pagenav_area{
width: 100%;
background: #F4F4F4;
box-shadow: 0 0 10px rgba(0,0,0,.17);
}

#pagenav_area .contents_in{
max-width: 1020px;
width: 100%;
margin: 0 auto;
position: relative;
}

#pagenav_area .nav_in{
max-width: 824px;
width: 80.79%;
padding: 15px 0;
display: flex;
align-items: start;
}

#pagenav_area .nav_in li{
max-width: 206px;
width: 25%;
line-height: 1;
text-align: center;
border-right: 1px solid #E6E6E6;
}

#pagenav_area .nav_in li a{
display: inline-block;
width: 100%;
transition: opacity .3s;
}

#pagenav_area .nav_in li a:hover{
text-decoration: none;
opacity: 0.8;
}

#pagenav_area .nav_in li:last-of-type{
border-right: none;
}

#pagenav_area .nav_in li img{
max-width: 66px;
width: 100%;
margin: 0 auto 13px;
}

#pagenav_area .nav_in li span{
display: block;
color: #C91A51;
}
#pagenav_area .nav_in li .nav_text{
font-weight: 700;
margin-bottom: 6px;
}

#pagenav_area .nav_in li .en_nav_text{
font-size: 13px;
}

#pagenav_area .campagin_nav{
max-width: 145px;
width: 100%;
position: absolute;
top: -19px;
right: 30px;
}

#pagenav_area .campagin_nav a{
display: block;
width: 100%;
height: 145px;
background: #1F1F5F;
border-radius: 50%;
box-shadow: 0 3px 6px rgba(0,0,0,.16);
color: #fff;
text-align: center;
font-weight: 700;
font-size: 18px;
line-height: 31px;
padding: 36px 0 0;
position: relative;
}

#pagenav_area .campagin_nav a::after{
content: "";
display: block;
width: 80px;
height: 8px;
background: url(../img/icon05_nav.png) no-repeat center center/100% auto;
position: absolute;
bottom: 30px;
left: 50%;
transform: translateX(-50%);
}

#pagenav_area .campagin_nav a:hover{
text-decoration: none;
background: #fff;
color: #1F1F5F;
border: 2px solid #1F1F5F;
}

#pagenav_area .campagin_nav a:hover::after{
background-image: url(../img/icon05_nav_on.png);
}


#pagenav_area.sticky{
position: fixed;
top: 0;
left: 0;
z-index: 1;
}

#pagenav_area.sticky .nav_in li a{
padding-top: 4px;
}

#pagenav_area.sticky .nav_in li img{
display: none;
}

#pagenav_area.sticky .nav_in li .nav_text{
font-size: 15px;
}

#pagenav_area.sticky .campagin_nav{
top: -63px;
}

#pagenav_area.sticky .campagin_nav a{
font-size: 14px;
line-height: 24px;
padding-top: 69px;
}

#pagenav_area .campagin_nav a::after{
bottom: 20px;
width: 65px;
height: 6px;
}

/* ----------
cnt_area
---------- */
.cnt_area{
padding: 100px 0 20px;
}

#pagenav_area.sticky + .cnt_area{
margin-top: 144px;
}

.cnt_area .h2_g{
text-align: center;
margin-bottom: 50px;
}

.cnt_area .h2_g img{
max-width: 66px;
width: 100%;
margin: 0 auto 13px;
}

.cnt_area .h2_g h2{
font-weight: 700;
font-size: 20px;
line-height: 1;
color: #454347;
margin-bottom: 7px;
}

.cnt_area .h2_g .h2_en{
font-size: 15px;
line-height: 17px;
}

.sec{
padding: 90px 0 0;
}

.cnt_area .h2_g + .sec{
padding-top: 0;
}

.sec .title_g{
max-width: 1280px;
width: 100%;
margin: 0 auto 30px;
position: relative;
}


.sec .title_g .h3_g{
position:absolute;
top: 0;
width: 100%;
height: 100%;
}

.sec .title_g .h3_g h3{
position: relative;
}

.sec .title_g .h3_g h3::before {
content: "";
display: block;
padding-top: 31.25%;
}

.sec.sec08 .title_g .h3_g h3::before {
padding-top: 60.39%;
}

.sec .title_g .title_box{
position: absolute;
top: 37px;
left: 135px;
left: 10.55%;
color: #fff;
padding: 2px 0 7px 25px;
}

.sec .title_g .title_box::after{
content: "";
display: block;
width: 10px;
height: 98px;
background: url(../img/h2_icon01.png) no-repeat center center;
background-size: 100% auto;
position: absolute;
top: 0;
left: 0;
}

.sec .title_g .title_right_box{
top: auto;
left: auto;
bottom: 37px;
right: 10.55%;
padding-left: 0;
padding-right: 25px;
text-align: right;
}

.sec .title_g .title_right_box::after{
left: auto;
right: 0;
}

.sec .title_g .en_font{
font-weight: 700;
font-size: 40px;
line-height: 45px;
margin-bottom: 11px;
}

.sec .title_g .h3_jp{
font-weight: 500;
font-size: 22px;
line-height: 33px;
}

.sec .title_g .place_box{
box-shadow: 0 2px 6px rgba(0,0,0,.2);
display: inline-block;
position: absolute;
top: 40px;
right: 40px;
}

.sec .title_g .place_box a{
display: inline-block;
padding: 0 8px 5px;
background: #1F1F5F;
}

.sec .title_g .place_box a::before{
content: "";
display: inline-block;
width: 11px;
height: 16px;
background: url(../img/access_icon01.png) no-repeat center center/100% auto;
vertical-align: bottom;
margin: 0 6px 4px 0;
}

.sec .title_g .place_box span{
font-size: 16px;
font-weight: 500;
line-height: 24px;
color: #fff;
display: inline-block;
}

.sec .title_g .place_box a:hover{
background: #fff;
}

.sec .title_g .place_box a:hover::before{
background-image: url(../img/access_icon01_on.png);
}

.sec .title_g .place_box a:hover span{
color: #1F1F5F;
}

.sec .u_center970{
padding: 0 5px;
}

.sec .first_text{
font-size: 15px;
letter-spacing: 0.02em;
line-height: 26px;
color: #454347;
margin: 0 auto 41px;
}

.sec .voice_g{
display: flex;
justify-content: center;
margin: -5px auto 35px;
}

.sec .voice_g .cnt_box{
max-width: 465px;
width: 100%;
border-radius: 10px;
background: #F4F4F4;
padding: 17px 20px 20px 17px;
display: flex;
align-items: start;
justify-content: space-between;
}

.sec .voice_g .cnt_box:nth-of-type(2n){
margin-left: 30px;
}

.sec .voice_g .cnt_img{
max-width: 61px;
width: 100%;
font-size: 0;
margin: 0 12px 0 0;
}

.sec .voice_g .cnt_img a{
display: inline-block;
width: 100%;
border-radius: 50%;
border: 3px solid #fff;
}

.sec .voice_g .cnt_img a:hover{
opacity: 0.8;
}

.sec .voice_g .cnt_text{
max-width: 355px;
width: 100%;
}

.sec .voice_g .cnt_text p{
font-size: 14px;
letter-spacing: 0.02em;
line-height: 24px;
color: #454347;
margin-bottom: 14px;
}

.sec .voice_g .cnt_text .name_text{
font-size: 12px;
letter-spacing: 0.02em;
line-height: 1;
color: #7B7B7B;
}

.sec .btn_ptn01 + .btn_ptn01{
margin-top: 30px;
}

.sec02 .title_g .title_box{
top: auto;
bottom: 40px;
}

.sec03 .btn_ptn01{
max-width: 500px;
}

.sec04 .btn_ptn01{
max-width: 510px;
}

.sec04 .btn_ptn01 a{
padding: 22px 0;
}

.sec05 .btn_ptn01{
max-width: 520px;
}

.sec05 .btn_ptn01 a{
text-align: left;
padding-left: 28px;
}

.sec06 .btn_ptn01{
max-width: 520px;
}

.sec06 .btn_ptn01 a{
text-align: left;
padding-left: 29px;
}

.sec08 .title_g .title_box{
top: auto;
bottom: 37px;
}

.sec09 .btn_ptn01 a{
text-align: left;
padding-left: 63px;
}

.sec10 .title_g .title_box{
top: auto;
bottom: 37px;
}

.sec11 .btn_ptn01 a{
text-align: left;
padding-left: 65px;
}

.sec12 .btn_ptn01 a{
text-align: left;
padding-left: 51px;
}

.sec13 .title_g .title_box{
top: auto;
bottom: 37px;
}

.sec14 .title_g .title_box{
top: auto;
bottom: 37px;
}

.sec14 .btn_ptn01{
max-width: 540px;
}

.sec14 .btn01 a{
text-align: left;
padding-left: 35px;
}

.sec14 .btn02 a{
text-align: left;
padding-left: 76px;
}

/* ----------
campaign_box
---------- */

#campaign_box{
width: 960px;
margin: 140px auto 112px;
border-radius: 6px;
border: 1px solid #E66300;
position: relative;
padding: 54px 40px 40px;
}

#campaign_box .campaign_title{
max-width: 332px;
width: 100%;
transform: rotate(-6deg);
position: absolute;
top: 8px;
left: -10px;
}

#campaign_box .cnt_box{
display: flex;
align-items: flex-end;
justify-content: space-between;
}

#campaign_box .cnt_box .cnt_img{
max-width: 240px;
width: 27.34%;
background: rgba(190,190,190,.2);
border-radius: 6px;
padding: 20px 20px 4px;
}

#campaign_box .cnt_box .cnt_img .img{
position: relative;
margin: 0 auto 13px;
}

#campaign_box .cnt_box .cnt_img .img .number_people{
width: 55px;
height: 55px;
border-radius: 50%;
background: #fff;
box-shadow: 0 0 4px rgba(0,0,0,.1);
text-align: center;
color: #E66300;
font-size: 12px;
letter-spacing: 0.03em;
padding: 17px 0 0;
position: absolute;
bottom: -6px;
left: -11px;
}

#campaign_box .cnt_box .cnt_img .img .number_people .number_text{
font-weight: 700;
font-size: 18px;
line-height: 1;
display: inline-block;
vertical-align: bottom;
margin: 0 0 2px;
}

#campaign_box .cnt_box .cnt_img .img02 .number_people{
padding-top: 10px;
}

#campaign_box .cnt_box .cnt_img .img02 .number_people .number_text{
display: block;
width: 100%;
margin: 0;
}

#campaign_box .cnt_box .cnt_img .img_text{
font-weight: 500;
font-size: 15px;
letter-spacing: 0.03em;
line-height: 24px;
text-align: center;
margin: 0 0 16px;
}

#campaign_box .cnt_box .cnt_text{
max-width: 593px;
width: 67.54%;
}

#campaign_box .cnt_box .h3_title{
font-size: 20px;
line-height: 22px;
letter-spacing: 0.03em;
color: #454347;
margin-bottom: 18px;
}

#campaign_box .cnt_box .h3_title .orange_text{
font-weight: 700;
font-size: 22px;
color: #E66300;
}

#campaign_box .cnt_box .text01{
max-width: 367px;
width: 100%;
margin-bottom: 15px;
font-weight: 500;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 24px;
background: rgba(236,138,64,.2);
position: relative;
}

#campaign_box .cnt_box .date_text{
margin-bottom: 24px;
font-weight: 500;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 24px;
}

#campaign_box .cnt_box p{
max-width: 593px;
width: 100%;
font-size: 15px;
letter-spacing: 0.03em;
line-height: 26px;
color: #454347;
margin-bottom: 28px;
}

#campaign_box .cnt_box p::before{
content: "";
display: block;
max-width: 588px;
width: 100%;
height: 10px;
background: url(../img/icon01_campaign.png) no-repeat left center/100% auto;
margin-bottom: 19px;
}

#campaign_box .cnt_box .text02{
font-weight: 500;
letter-spacing: 0.03em;
line-height: 36px;
padding: 0 0 0 57px;
background: url(../img/icon02_campaign.png) no-repeat left top/39px auto;
margin-bottom: 23px;
}

#campaign_box .cnt_box .text02 .big_text{
font-weight: 700;
font-size: 18px;
display: inline-block;
vertical-align: bottom;
}

#campaign_box .cnt_box .text02 .orange_text{
font-weight: 700;
color: #E66300;
}

#campaign_box .cnt_box .text02 strong{
font-weight: 700;
font-size: 22px;
}

#campaign_box .cnt_box .btn_ptn01{
margin: 0;
}

#campaign_box .cnt_box .btn_ptn01 a{
font-size: 18px;
padding: 23px 0 24px;
}

/* ----------
facebook_box
---------- */

#facebook_box{
padding: 0 0 147px;
text-align: center;
}

#facebook_box img{
display: inline-block;
vertical-align: middle;
width: 40px;
margin: 0 20px 0 0;
}

#facebook_box a{
display: inline-block;
vertical-align: middle;
text-decoration: underline;
color: #454347;
font-weight: 500;
font-size: 17px;
line-height: 25px;
letter-spacing: 0.03em;
}


@media only screen and (max-width:1080px){

/* ----------
minvisual_area
---------- */

.mv .mainvisual_box .tieup_box{
font-size: 17px;
line-height: 26px;
display: inline-block;
padding: 0 2px 1px;
max-width: none;
width: auto;
margin-bottom: 4px;
}

.mv .mainvisual_box .h1_title{
font-size: 43px;
line-height: 50px;
}

.mv .mainvisual_box .sub_title{
font-size: 19px;
line-height: 31px;
}

/* ----------
campaign_head_box
---------- */
.campaign_head_box {
width: 94%;
}


}


@media only screen and (max-width:970px){

/* ----------
minvisual_area
---------- */

/* ----------
campaign_head_box
---------- */
.campaign_head_box{
width: calc(100% - 30px - 30px);
align-items: center;
}
.campaign_head_box .title .orange_text{
display: block;
line-height: 31px;
}

/* ----------
l_about_area
---------- */

#l_about_area .u_center970{
width: calc(100% - 30px - 30px);
}

#l_about_area .u_center970::before{
right: -50px;
}

/* ----------
pagenav_area
---------- */

#pagenav_area .contents_in{
max-width: 769px;
margin: 0 auto;
}

#pagenav_area .campagin_nav{
max-width: 125px;
right: 10px;
top: -10px;
}

#pagenav_area .campagin_nav a{
height: 125px;
font-size: 15px;
line-height: 26px;
padding: 31px 0 0;
}

#pagenav_area .campagin_nav a::after{
bottom: 25px;
}

#pagenav_area .nav_in{
padding: 11px 0;
}

#pagenav_area .nav_in li img{
max-width: 56px;
}

#pagenav_area.sticky .campagin_nav{
top: -53px;
}

#pagenav_area.sticky .campagin_nav a{
font-size: 13px;
line-height: 18px;
padding-top: 59px;
}

#pagenav_area .campagin_nav a::after{
width: 55px;
bottom: 18px;
}

/* ----------
cnt_area
---------- */

#pagenav_area.sticky + .cnt_area{
margin-top: 126px;
}

.sec .u_center970{
width: calc(100% - 30px - 30px);
}

/* ----------
campaign_box
---------- */
#campaign_box{
width: calc(100% - 30px - 30px);
padding-top: 64px;
}

#campaign_box .campaign_title{
width: 36.75%;
}

#campaign_box .cnt_box .text02{
background-position: left center;
line-height: 26px;
}

#campaign_box .cnt_box .text02 .big_text{
display: block;
}




}

@media only screen and (max-width:768px){
.pc{
display: none;
}

.sp{
display: block;
}

.btn_ptn01 a{
font-size: 16px;
padding: 25px 0 26px;
}

.btn_ptn01 a::after{
right: 17px;
}



/* ----------
minvisual_area
---------- */
.mv .mainvisual_box img{
height: 300px;
object-fit: cover;
object-position: 56% 50%;
}

.mv .mainvisual_box .mainvisual_text{
top:5px;
left: 20px;
}

.mv .mainvisual_box .tieup_box{
font-size: 14px;
line-height: 23px;
display: inline-block;
padding: 0 2px 1px;
max-width: none;
width: auto;
margin-bottom: 4px;
}

.mv .mainvisual_box .h1_title{
font-size: 40px;
line-height: 47px;
}

.mv .mainvisual_box .sub_title{
font-size: 16px;
line-height: 28px;
}

.mv .subvisual_box{
flex-wrap: wrap;
justify-content: center;
padding-right: 0;
}

.mv .subvisual_box li{
max-width: none;
width: calc(50%);
margin: 0 5px 5px 0;
}



/* ----------
campaign_head_box
---------- */

.campaign_head_box{
padding: 29px 20px 21px;
display: block;
margin: 0 auto 25px
}

.campaign_head_box .cnt_text{
width: 100%;
margin: 0 auto;
}

.campaign_head_box .title{
font-size: 17px;
line-height: 19px;
}

.campaign_head_box .title .orange_text{
font-size: 19px;
line-height: 29px;
}

.campaign_head_box .text01{
max-width: 318px;
font-size: 14px;
line-height: 22px;
}

.campaign_head_box .cnt_img{
width: 60%;
margin: 20px auto 0
}
	
.campaign_head_box .cnt_img img {
margin: 0;
}

.campaign_head_box .next_btn {
top: 77%;
right: 10%;
}


/* ----------
l_about_area
---------- */

#l_about_area .u_center970{
padding: 0;
}

#l_about_area .u_center970::before{
width: 177px;
height: 170px;
}

#l_about_area .title{
font-size: 15px;
line-height: 33px;
margin-bottom: 30px;
}

#l_about_area .title::after{
margin-top: 12px;
}

#l_about_area p{
margin: 0 auto;
font-size: 14px;
line-height: 26px;
}

/* ----------
pagenav_area
---------- */

#pagenav_area .nav_in{
width: 100%;
align-items: stretch;
}

#pagenav_area .nav_in li img{
max-width: 46px;
margin-bottom: 6px;
}

#pagenav_area .nav_in li .nav_text{
font-size: 14px;
line-height: 18px;
margin-bottom: 4px;
}

#pagenav_area .nav_in li .en_nav_text{
font-size: 11px;
}

#pagenav_area.sticky .nav_in li .nav_text{
font-size: 14px;
}

#pagenav_area .campagin_nav{
display: none;
position: fixed;
top: auto;
bottom: 20px;
max-width: 100px;
z-index: 1;
}

#pagenav_area.sticky .campagin_nav{
display: block;
top: auto;
bottom: 20px;
}

#pagenav_area .campagin_nav a{
font-size: 12px;
line-height: 16px;
height: 100px;
padding-top: 32px;
}

#pagenav_area.sticky .campagin_nav a{
font-size: 12px;
line-height: 16px;
padding-top: 32px;
}

#pagenav_area .campagin_nav a::after{
bottom: 20px;
}


#pagenav_area .campagin_nav a:hover{
text-decoration: none;
background: #1F1F5F;
color: #fff;
border: none;
}

#pagenav_area .campagin_nav a:hover::after{
background-image: url(../img/icon05_nav.png);
}

/* ----------
cnt_area
---------- */

.cnt_area{
padding: 80px 0 20px;
}

#pagenav_area.sticky + .cnt_area{
margin-top: 107px;
}

.sec{
padding-top: 70px;
}


.sec .title_g{
margin-bottom: 15px;
}


.sec .title_g .h3_g h3::before {
padding-top: 250px;
}

.sec.sec08 .title_g .h3_g h3::before {
padding-top: 400px;
}

.sec .title_g .title_box{
padding: 0 0 0 25px;
top: 17px;
left: 20px;
}

.sec .title_g .title_box::after{
height: 72px;
background-position: center top;
}

.sec .title_g .title_right_box{
top: auto;
left: auto;
bottom: 17px;
right: 20px;
padding-left: 0;
padding-right: 25px;
}

.sec .title_g img{
height: 250px;
object-fit: cover;
}

.sec .title_g .en_font{
font-size: 30px;
line-height: 35px;
margin-bottom: 3px;
}

.sec .title_g .h3_jp{
font-size: 15px;
line-height: 28px;
}

.sec .title_g .place_box{
top: 20px;
right: 20px;
line-height: 1;
}

.sec .title_g .place_box a{
padding: 1px 4px 5px;
line-height: 1;
}

.sec .title_g .place_box a::before{
width: 8px;
height: 14px;
margin: 0 4px 0 0;
}

.sec .title_g .place_box span{
font-size: 12px;
line-height: 16px;
}

.sec .u_center970{
padding: 0;
}

.sec .first_text{
font-size: 13px;
line-height: 24px;
margin-bottom: 20px;
}

.sec .voice_g{
display: block;
}

.sec .voice_g .cnt_box{
margin: 0 auto 10px;
padding: 14px 10px;
}

.sec .voice_g .cnt_box:nth-of-type(2n){
margin: 0 auto;
}

.sec .voice_g .cnt_text p{
font-size: 12px;
line-height: 22px;
margin-bottom: 8px;
}

.sec .voice_g .cnt_text .name_text{
font-size: 10px;
}


.sec02 .title_g .title_box{
top: auto;
bottom: 17px;
}

.sec04 .btn_ptn01 a {
padding: 16px 0;
}

.sec05 .title_g .title_box{
top: auto;
bottom: 17px;
}

.sec05 .btn_ptn01 a{
padding: 16px 0;
text-align: center;
}

.sec06 .btn_ptn01 a{
padding-left: 0;
text-align: center;
}

.sec08 .title_g img{
height: 400px;
}

.sec08 .title_g .title_box{
top: auto;
bottom: 17px;
}

.sec09 .btn_ptn01 a{
padding: 25px 0 26px;
text-align: center;
}

.sec10 .title_g .title_box{
top: auto;
bottom: 17px;
}

.sec11 .btn_ptn01 a {
text-align: center;
padding: 25px 0 26px;
}

.sec12 .btn_ptn01 a{
text-align: center;
padding: 25px 0 26px;
}

.sec14 .btn01 a {
text-align: center;
padding: 25px 0 26px;
}

.sec14 .btn02 a {
text-align: center;
padding: 25px 0 26px;
}

.sec13 .title_g .title_box{
top: auto;
bottom: 17px;
}

.sec14 .title_g .title_box{
top: auto;
bottom: 17px;
}


/* ----------
campaign_box
---------- */

#campaign_box{
padding: 64px 20px 20px;
margin: 80px auto 62px;
}

#campaign_box .campaign_title{
width: 50%;
top: -10px;
}

#campaign_box .cnt_box{
display: block;
}

#campaign_box .cnt_box .cnt_text{
width: 100%;
max-width: none;
margin-bottom: 30px;
}

#campaign_box .cnt_box .h3_title{
font-size: 16px;
line-height: 22px;
}

#campaign_box .cnt_box .h3_title .orange_text{
font-size: 18px;
}

#campaign_box .cnt_box .text02{
padding: 0 0 0 50px;
font-size: 14px;
}

#campaign_box .cnt_box .text02 .big_text{
font-size: 16px;
}

#campaign_box .cnt_box .text02 strong{
font-size: 20px;
}

#campaign_box .cnt_box .cnt_img{
width: 100%;
margin: 0 auto 20px;
}

#campaign_box .cnt_box .btn_ptn01 {
margin: 0 auto;
}


/* ----------
facebook_box
---------- */
#facebook_box{
width: calc(100% - 30px - 30px);
padding-bottom: 80px;
}

#facebook_box img{
margin-right: 14px;
}

#facebook_box a{
text-align: left;
font-size: 15px;
line-height: 23px;
width: calc(100% - 40px - 20px);
}



}

@media only screen and (max-width:480px){



.btn_ptn01 a{
font-size: 14px;
padding: 22px 0 23px;
}

.btn_ptn01 a::after{
right: 10px;
}



/* ----------
minvisual_area
---------- */


.mv .mainvisual_box img{
height: 215px;
}
.mv .mainvisual_box .tieup_box{
font-size: 12px;
line-height: 19px;
}

.mv .mainvisual_box .h1_title{
font-size: 26px;
line-height: 33px;
}

.mv .mainvisual_box .sub_title{
font-size: 14px;
line-height: 24px;
}



/* ----------
campaign_head_box
---------- */

.campaign_head_box{
padding: 39px 15px 25px;
display: block;
}

.campaign_head_box .date_text {
margin-bottom: 10px;
}
.campaign_head_box .title {
margin-bottom: 7px;
}

.campaign_head_box .text01{
max-width: none;
font-size: 12px;
letter-spacing: -0.02em;
}

.campaign_head_box .next_btn {
top: auto;
bottom: 3.5%;
right: 23%;
transform: translate(50%,0);
}

.campaign_head_box .cnt_img {
margin: 20px auto 0 0;
}


/* ----------
l_about_area
---------- */


#l_about_area .u_center970::before{
width: 127px;
height: 130px;
top: 66px;
}

/* ----------
pagenav_area
---------- */

#pagenav_area .nav_in{
flex-wrap: wrap;
padding: 0;
}

#pagenav_area .nav_in li{
width: 50%;
border-right: none;
position: relative;
}

#pagenav_area .nav_in li a{
padding: 11px 0;
}

#pagenav_area .nav_in li::before,#pagenav_area .nav_in li::after{
content: "";
display: block;
background: #E6E6E6;
position: absolute;
}

#pagenav_area .nav_in li::before{
width: 1px;
height: 80%;
top: 50%;
left: 0;
transform: translateY(-50%);
}

#pagenav_area .nav_in li::after{
width: 80%;
height: 1px;
bottom: 0;
left: 50%;
transform: translateX(-50%);
}

#pagenav_area .nav_in li:nth-of-type(odd)::before,#pagenav_area .nav_in li:nth-of-type(3)::after,#pagenav_area .nav_in li:nth-of-type(4)::after{
content: none;
}

#pagenav_area .nav_in li img{
max-width: 36px;
}

#pagenav_area .nav_in li .nav_text{
font-size: 13px;
line-height: 18px;
}

#pagenav_area.sticky .nav_in li{
padding: 0;
}

#pagenav_area.sticky .nav_in li .nav_text{
font-size: 13px;
}

/*ナビ固定*/
#pagenav_area.sticky .nav_in {
flex-wrap: nowrap;
}
	
#pagenav_area.sticky .nav_in li .en_nav_text{
display: none;
}

#pagenav_area.sticky .nav_in li a{
display: flex;
height: 100%;
padding: 6px 7px;
align-items: center;
justify-content: center;
}

#pagenav_area.sticky .nav_in li::after {
display: none;
}

#pagenav_area.sticky .nav_in li::before {
content: "";
}



/*ENDビ固定*/

/* ----------
cnt_area
---------- */

#pagenav_area.sticky + .cnt_area{
margin-top: 194px;
}

.cnt_area .h2_g{
margin-bottom: 30px;
}

.cnt_area .h2_g img{
max-width: 56px;
}

.cnt_area .h2_g h2{
font-size: 18px;
}

.sec .title_g .title_box{
padding-left: 15px;
left: 10px;
}

.sec .title_g .title_right_box{
padding-right: 15px;
padding-left: 0;
right: 10px;
bottom: 12px;
}

.sec .title_g img{
height: 160px;
object-position: 4% 102%;
}

.sec .title_g .h3_g h3::before {
padding-top: 160px;
}

.sec.sec08 .title_g .h3_g h3::before {
padding-top: 300px;
}

.sec .title_g .title_box::after{
width: 7px;
height: 50px;
}

.sec .title_g .en_font{
font-size: 24px;
line-height: 26px;
}

.sec .title_g .h3_jp{
font-size: 12px;
line-height: 17px;
}

.sec .title_g .place_box a {
padding: 0 4px 3px;
}

.sec .title_g .place_box{
top: 10px;
right: 10px;
}



.sec04 .btn_ptn01 a{
padding:14px 27px 13px 10px;
}

.sec05 .btn_ptn01 a{
padding: 14px 27px 13px 10px;
}

.sec06 .btn_ptn01 a{
font-size: 13px;
padding: 23px 14px 24px;
}

.sec08 .title_g img{
height: 300px;
}

.sec09 .btn_ptn01 a{
padding: 22px 0 23px;
}

.sec11 .btn_ptn01 a {
padding: 22px 0 23px;
}

.sec12 .btn_ptn01 a {
padding: 22px 0 23px;
}

.sec14 .btn01 a{
font-size: 12px;
padding: 24px 0;
}

.sec14 .btn02 a{
padding: 22px 0 23px;
}





/* ----------
campaign_box
---------- */

#campaign_box{
padding-top: 56px;
}

#campaign_box .campaign_title{
max-width: 250px;
width: 100%;
}

#campaign_box .cnt_box .h3_title{
margin-bottom: 8px;
}

#campaign_box .cnt_box .h3_title .orange_text{
display: block;
}

#campaign_box .cnt_box .text01{
font-size: 12px;
line-height: 20px;
margin-bottom: 14px;
}

#campaign_box .cnt_box p::before{
margin-bottom: 10px;
}

#campaign_box .cnt_box p{
font-size: 13px;
line-height: 24px;
margin-bottom: 18px;
}

#campaign_box .cnt_box .text02 .orange_text{
display: block;
}

#campaign_box .cnt_box .btn_ptn01 a{
font-size: 16px;
padding: 18px 0 19px;
}

/* ----------
facebook_box
---------- */

}

@media only screen and (max-width:360px){
/* ----------
minvisual_area
---------- */

/* ----------
campaign_head_box
---------- */
.campaign_head_box {
width: calc(100% - 15px - 15px);
padding: 39px 10px 25px;
}


.campaign_head_box .date_text{
font-size: 13px;
margin-bottom: 10px;
}

.campaign_head_box .title{
font-size: 15px;
}

.campaign_head_box .title .orange_text{
font-size: 16px;
}


/* ----------
l_about_area
---------- */

#l_about_area .u_center970{
width: calc(100% - 15px - 15px);
}

#l_about_area .title{
font-size: 14px;
line-height: 30px;
}



/* ----------
pagenav_area
---------- */

#pagenav_area.sticky .nav_in li .nav_text {
font-size: 11px;
}


/* ----------
cnt_area
---------- */

.sec .u_center970{
width: calc(100% - 15px - 15px);
}

.sec .title_g .title_box::after{
height: 42px;
}

.sec .title_g .en_font{
font-size: 20px;
line-height: 22px;
}

.sec .title_g .h3_jp{
font-size: 11px;
line-height: 16px;
}

.sec .btn_ptn01 + .btn_ptn01{
margin-top: 20px;
}


.btn_ptn01 a{
font-size: 12px;
}

.sec04 .btn_ptn01 a{
text-align: center;
padding: 15px 27px 15px 10px;
}

.sec05 .btn_ptn01 a{
text-align: center;
padding: 15px 27px 15px 10px;
}


.sec06 .btn_ptn01 a{
font-size: 12px;
padding: 22px 14px 23px;
text-align: center;
}


.sec14 .btn01 a{
font-size: 11px;
padding: 23px 0 23px;
}




/* ----------
campaign_box
---------- */

#campaign_box{
width: calc(100% - 15px - 15px);
padding-left: 10px;
padding-right: 10px;
}


/* ----------
facebook_box
---------- */
#facebook_box{
width: calc(100% - 15px - 15px);
}

}
