@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond&family=Noto+Sans+JP:wght@400;500;600;700;900&family=Noto+Serif+JP:wght@500&display=swap');
.mincho {font-family: 'Noto Serif JP', serif;}
.gothic {font-family: 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, Meiryo, "メイリオ", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;}
@font-face {
  font-family: 'DINNextLTPro-Medium'; /* 任意のフォント名 */
  src: url('fonts/your-font-file.woff2') format('woff2'), /* ファイルパスと形式 */
       url('fonts/your-font-file.woff') format('woff'); /* 複数の形式を指定可能 */
  font-weight: normal; /* フォントの太さ */
  font-style: normal;  /* フォントスタイル */
}
.bgWH {background-color: #FFF;}
.bgBL {background-color: #0D58A5;}

.bgWH {background-color: #FFF;}
.bgBR {background-color: #ffba0b;}
.bgRD {background-color: #C92E27;}
.bgGRY {background-color: #EEEEEE;}
.bgNV {background-color: #004865;}
.bgLBL {background-color: #CCDAE0;}
.txtWH {color: #FFF;}
.txtBR {color: #D88D00;}
.txtNV {color: #004865;}
.txtRD {color: #C92E27;}

.txtWH {color: #FFF;}

.container {width: calc(100% - 40px); max-width: 1240px; padding-left: 20px; padding-right: 20px;}
.mlr,.container,.containers,.w1720 {margin-left: auto; margin-right: auto;}
.mlr5 {margin-left: 5px; margin-right: 5px;}
.mlr20,.col1,.col2,.col3,.col4,.col5,.col6,.box3,.w46,.w54 {margin-left: 20px; margin-right: 20px;}
.col1 {width: calc(16.6666% - 40px);}
.col2,.box3 {width: calc(33.3333% - 40px);}
.col3 {width: calc(50% - 40px);}
.col4 {width: calc(66.6666% - 40px);}
.col5 {width: calc(83.3333% - 40px);}
.col6 {width: calc(100% - 40px);}
.box4 {width: calc(25% - 30px); margin-left: 15px; margin-right: 15px;}
.btn240 {max-width: 240px; width: 100%;}
.w50 {width: 50%;}
.w46 {width: calc(46% - 50px);}
.w54 {width: calc(54% - 50px);}
.marCent{ margin: 0 auto;}
.svg{ width:max-content}
@media screen and (max-width: 896px) {
  .containers {width: calc(100% - 30px);}
  .container { padding-left: 0; padding-right: 0;}
  .mlr20,.col1,.col2,.col3,.col4,.col5,.col6,.box3,.w46,.w54 {margin-left: 15px; margin-right: 15px;}
  .mlr5 {margin-left: 0; margin-right: 0;}
  .col1 {width: calc(16.6666% - 30px);}
  .col2,.box3 {width: calc(33.3333% - 30px);}
  .col3 {width: calc(50% - 30px);}
  .col4 {width: calc(66.6666% - 30px);}
  .col5 {width: calc(83.3333% - 30px);}
  .col6 {width: calc(100% - 30px);}
  .w46 {width: calc(46% - 30px);}
  .w54 {width: calc(54% - 30px);}
}
@media screen and (max-width: 568px) {
  .container { width: calc(100% - 20px); }
  .col1 {width: calc(33.3333% - 30px);}
  .col2,.col3,.col4,.col5,.col6,.box3,.w46,.w54 {width: calc(100% - 30px);}
  .box4 {width: calc(50% - 7.5px); margin-left: 0; margin-right: 0;}
}
@media screen and (min-width: 797px) {
  .pcImg{ display:block;}
  .spImg{ display:none!important;}
}
@media screen and (max-width: 796px) {
  .pcImg{ display:none!important;}
  .spImg{ display:block;}
}
/*-------------------------------------------------------------------
  共通
------------------------------------------------------------------- */
.bgGr{ background: url(../img/cmn/bg.jpg) repeat; background-size: 100%; }
/* .bgGr{ background: url(../img/cmn/bg.jpg) repeat; background-size: contain; } */
.btn img{ transition: all  0.3s ease-out; max-width:630px;width: 100%;}
.btn img:hover{ transform: scale(1.08);}
/*-------------------------------------------------------------------
 モーダル
------------------------------------------------------------------- */
.modal{  display: none; height: 100vh; position: fixed; top: 0; right: 0; bottom: 0; left: 0; width: 100%; z-index: 9999; }
.modal__bg{  background: url(../img/cmn/bg.jpg) repeat-x;background-size: cover; height: 100vh; position: absolute; width: 100%;}
.modal__content{  background: #fff;  padding: 60px 50px; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: 60px auto auto auto; width: calc(100% - 40px); max-width: 1200px;overflow-y: auto;height:calc(100vh - 170px); overscroll-behavior-y: contain;  overflow-y: auto; }
.modal__content::-webkit-scrollbar { width: 0px;}
.prize_item .modal .prize_header{ border: solid #1fb3d8 4px;  padding: 20px 0;}
.prize_item .modal .modal__content .prize_header::before{     content: ""; display: block; position: absolute; left: 0;  bottom: 0; border-style: solid; border-color: transparent transparent transparent #8fd9eb; border-width: 60px 0px 0px 60px;}
.prize_item .modal .modal__content .prize_header::after{ background: none; border-radius: 0;content: ""; display: block; position: absolute; right: 0; top: 0; border-style: solid;  border-color: transparent #8fd9eb transparent transparent; border-width: 0px 60px 60px 0px;}
.project_prize .modal__content .prize_icon { top: -35px; left: -10px;}
.a_prize .modal_header_img{ max-width:max-content; position: relative; z-index: 10;}
.project_prize .modal__content .prize_contents { padding: 0 50px; }
.modal__content .modal_subheader_img img{max-width:max-content;}
.modal__content .modal_subheader_img,.modal__content .modal_subheader_txt{ margin-bottom:15px;}
.project_prize .modal__content .prize_contents p:last-of-type{ margin-bottom: 30px; }
li.prize_list_item { border: #1fb3d8 solid 4px; border-top: none;}
li.prize_list_item:not(:last-of-type) { margin-bottom: 30px;}
li.prize_list_item:last-of-type { margin-bottom: 60px;}
.prize_contents .stay_area .stay_header{ background: #e9f7fb; padding: 10px 0; border-top: solid 2px #1fb3d8; border-bottom: solid 2px #1fb3d8; margin-bottom: 30px;}
.prize_contents .stay_area .stay_header img{ max-width: max-content;}
.stay_area .stay_list li{ font-size: 21px;}
.stay_area .stay_list li::before{ content:"●"; color:#1fb3d8; margin-right: 5px; }
.stay_area .stay_list li span{ padding-left: 3em; text-indent: -1em; }
.close-btn{ position: absolute; bottom: 20px; right: 0; left: 0; margin: auto; }
.close-btn img{ width:58px;}
@media screen and (max-width: 980px) {
  .project_prize .modal__content .prize_contents { padding: 0;}
}
@media screen and (max-width: 896px) {
  .modal__content { padding: 30px 20px; margin: 15px auto auto auto; height: calc(100vh - 100px); }
  .close-btn img { width: 35px;}
}
/*-------------------------------------------------------------------
概要
------------------------------------------------------------------- */
header{ margin-bottom: -11px;}
#campaign01 .thousand__img img{ max-width:1090px; }
#campaign01 .dblBord img{ max-width:1200px; margin: 0 auto 40px auto; }
.project_header { padding-bottom: 40px;}
.project_header .txt34{ font-size:34px; line-height: 1.2;}
.project_header .txt44{ font-size:44px; color:#fff33f; padding-bottom: 10px;}
.project_header .txt400{ letter-spacing: 0.04em;line-height: 1.0; margin: 0 0 30px 0;}
.project_header .project_subtxt{ margin: 0 0 40px 0; }
.project_header .project_period{  font-size:27px;padding: 10px 5px; max-width:1000px;color:#004865; margin: 0 auto 40px auto; }
.prize_item::before{ content: ""; display: block; position: absolute; left: 0; bottom: 0;  border-style: solid; border-color: transparent transparent transparent #8fd9eb; border-width: 100px 0px 0px 100px; }
.prize_item::after{ content: ""; display: block; position: absolute; right: 0; top: 0; border-style: solid; border-color: transparent #8fd9eb transparent transparent; border-width: 0px 100px 100px 0px;}
.prize_item .prize_inner{ padding: 25px 50px 0 50px;/* z-index: 2;*/}
.prize_item .prize_header{ padding-bottom: 20px;     margin-bottom: 30px;    z-index: 2; }
.prize_item .prize_header::after{ content: ""; display: block; background: #1fb3d8; width: 100%; height: 3px; border-radius: 300px;  position: absolute; bottom: 0; }
.project_prize .prize_icon{ max-width:138px;position: absolute; top: -40px; left: -50px; }
.project_prize .prize_txtImg{ width: calc(100% - 98px); margin: 0 0 0 auto; gap: 15px;}
.project_prize:not(:last-of-type){ margin-bottom: 60px; }
.prize_txtImg .prize_Ltxt img{ max-width: max-content;}
.prize_txtImg .prize_Rtxt img{ max-width: 296px;}
.receipt_3000 img{ max-width:max-content; margin-bottom: 30px;}
.prize_contents .a_prize_item.flex { width: calc(50% - 15px);}
.prize_contents .flex.parentFlex {  gap: 30px; padding-bottom: 15px;}
.project_prize.a_prize .prize_contents .spbr{ max-width:267px; margin: 0 auto 15px;}
/* b_prize */
.b_prize .prize_item::before { border-color: transparent transparent transparent #f9dc80;}
.b_prize .prize_item::after{ border-color: transparent #f9dc80 transparent transparent;}
.b_prize .prize_Centtxt{ margin: 0 auto 0 0;}
.b_prize .prize_Centtxt img{ max-width: 115px; width: 115px; display: block; position: absolute; top: 0; bottom: 0; margin: auto; z-index: 2;}
/* .b_prize .prize_Rtxt{     margin: 0 0 0 auto;} */
.b_prize .prize_Rtxt img{ max-width: 178px;}
.b_prize .prize_item .prize_header::after { background: #f3b900;}
.b_prize .prize_contents .spbr{ max-width:max-content; margin: 0 auto 15px;}
.receipt_1000 img { max-width: max-content; margin-bottom: 25px;}
.receipt_1000 .gift_paco { max-width: max-content; margin-bottom: 15px;}
.prize_contents .cataloggift { max-width: max-content; margin: 0 auto 15px;}
.prize_contents .txtRight{ margin-bottom: 15px; }
.selecttxt{ margin-bottom: 20px !important;  }
.b_prize .b_prize_area{ gap: 25px; padding-bottom: 15px; }
.b_prize .b_prize_area .b_prize_item{ width: calc(25% - 25px);max-width:265px;}
.b_prize .modal__content .prize_header img:not(.prize_icon){max-width:max-content;}
.b_prize .prize_item .modal .prize_header { border: solid #f3b900 4px; }
.b_prize .prize_item .modal .modal__content .prize_header::before {  border-color: transparent transparent transparent #f9dc80;}
.b_prize .prize_item .modal .modal__content .prize_header::after {  border-color: transparent #f9dc80 transparent transparent;}
.b_prize .prize_item .modal .modal__content .modal_subheader_img {   margin: 0 auto 30px;}
.b_prize .prize_item .modal .modal__content .modal_subheader_img img{  max-width: 240px;}
.b_prize .prize_item .modal .modal__content p.modal_subheader_txt{ margin-bottom: 10px;}
.b_prize .prize_item .modal .modal__content p.modal_subheader_txt img{  max-width: max-content; }
.b_prize .modal__content .modal_subheader_txt{ margin-bottom: 30px;}
.b_prize .modal__content .b_prize_item .bgYE{ padding:10px 0 ; margin-bottom: 10px;}
.b_prize .modal__content .b_prize_item .bgYE img{ max-width: max-content;}
.b_prize .modal__content .b_prize_item h5{ margin-bottom: 10px;}
.b_prize .modal__content .b_prize_item p{ line-height: 1.4;}
.b_prize .modal__content .b_prize_item { width:calc(25% - 15px);}
.b_prize .modal__content .b_prize_area { padding-bottom: 0; gap: 15px;}
.b_prize .modal__content .b_prize_area .b_prize_item {  max-width: 229px;}
/* c_prize */
.c_prize .prize_item::after { border-color: transparent #dae7a1 transparent transparent;}
.c_prize .prize_item::before { border-color: transparent transparent transparent #dae7a1;}
.c_prize .prize_Centtxt{ margin: 0 auto 0 0; }
.c_prize .prize_Centtxt img{ max-width: 115px; width: 115px; display: block; position: absolute; top: 0; bottom: 0; margin: auto; z-index: 2; }
.c_prize .prize_txtImg .prize_Rtxt img { max-width: 189px;}
.c_prize .prize_item .prize_header::after { background: #a3c213;}
.c_prize .prize_contents .spbr { max-width: max-content; margin: 0 auto 15px;}
/* .c_prize .prize_contents p:nth-of-type(2) { margin-bottom: 20px;} */
.c_prize .modal .prize_contents p:nth-of-type(2) { margin-bottom: 0px;}
.bubble{ padding: 5px 0; letter-spacing: 0.5em;     margin-bottom: 20px; font-weight: 500;}
.bubble::after{ content:""; width: 0; height: 0; border-style: solid; border-color: #a3c213 transparent transparent transparent; border-width: 8px 8px 0px 8px; position: absolute; bottom: -8px; right: 0; left: 0; margin: auto;}
.c_prize .c_prize_area { gap: 25px; padding-bottom: 15px;}
.c_prize .c_prize_area .c_prize_item { width: calc(25% - 25px);max-width: 254px; }
#campaign01 .project_prize .btn img{  padding-bottom: 40px; }
.project_prize.c_prize .entrybtn img.marCent { padding-top: 40px;}
/* .c_prize .prize_item,#campaign01 .project_prize .btn img{  margin-bottom: 40px; } */
.c_prize .prize_item .modal .prize_header { border: solid #a3c213 4px;}
.c_prize .prize_item .modal .modal__content .prize_header::after { border-color: transparent #d1e189 transparent transparent;}
.c_prize .prize_item .modal .modal__content .prize_header::before {  border-color: transparent transparent transparent #d1e189;}
.c_prize .modal__content .prize_header img:not(.prize_icon) { max-width: max-content; position: relative; z-index: 2;}
.c_prize .modal__content .c_prize_area .c_prize_item { max-width: 229px;}
.c_prize .modal__content .c_prize_area .c_prize_item .bgGRE{ margin-bottom: 10px;}
.c_prize .modal__content .c_prize_area .c_prize_item p { line-height: 1.4;}
.c_prize .prize_item .modal .modal__content p.modal_subheader_txt img {
  max-width: max-content;}
.c_prize .modal__content .modal_subheader_img img {   max-width: 240px;}
.c_prize .modal__content p.modal_subheader_txt { margin-bottom: 10px;}
#modal03 .modal__content h4.modal_subheader_txt {margin-bottom:20px;}
/* .c_prize .c_prize_area .c_prize_item { width: calc(25% - 30px); max-width: 254px;} */
@media screen and (max-width: 1280px) {
  .project_prize.b_prize .prize_header .prize_Rtxt,.project_prize.c_prize .prize_header .prize_Rtxt{ display: block; width: 100%; text-align: left;}
}
@media screen and (max-width: 1200px) {
  #modal03 .modal__content { padding: 30px 20px; }
  .c_prize .modal .c_prize_area {
    gap: 15px;}
  .c_prize .modal .c_prize_area .c_prize_item {
    width: calc(33% - 15px); max-width: unset;}
}
@media screen and (min-width: 1081px) {
  .gift_paco,.fightnoto{ display:none;}
}
@media screen and (max-width: 1080px) {
  .gift_paco,.fightnoto{ display: block; max-width: 404px; width: 32%; margin: 0 auto 20px;  display: block; max-width: 404px;   width: 32%; margin: 0 auto 20px;}
    .project_prize.b_prize .prize_header .prize_Centtxt, .project_prize.c_prize .prize_header .prize_Centtxt {
      display: none; }
}
@media screen and (max-width: 980px) {
  .project_header .project_period { font-size: 22px; }
  .project_prize .modal__content .prize_icon { max-width: 100px;}
}
@media screen and (max-width: 896px) {
  .prize_item .prize_header { padding-bottom: 10px; }
  .prize_item .modal .prize_header { padding: 15px 0;}
  /* .project_prize .prize_icon {width: 100px; position: absolute;top: -20px;   left: -30px;} */
  .project_prize .prize_contents .spbr {display:none;}
  .prize_contents .a_prize_item.flex { width: 100%;}
  .prize_contents .flex{-webkit-box-orient: horizontal; 	-webkit-box-direction: normal;	-ms-flex-direction: row;	flex-direction: row;}
  span.prize_Ltxt.pcbr{ display: block;}
  .project_prize .prize_btn img{ max-width:100%;}
  .b_prize .b_prize_area { gap: 10px;}
  .b_prize .b_prize_area .b_prize_item { width: calc(50% - 5px); max-width: 100%;}
  .b_prize .modal__content .b_prize_area .b_prize_item {
  width: calc(50% - 15px); max-width: unset;}
  /* .b_prize .prize_contents p:nth-of-type(2) { margin-bottom: 10px !important;} */
  .c_prize .c_prize_area { gap: 10px;}
  .c_prize .c_prize_area .c_prize_item { width: calc(50% - 5px); max-width: 100%;}
  .c_prize .modal__content .c_prize_area{ gap: 10px; }
  .c_prize .modal__content .c_prize_area .c_prize_item {
    max-width: unset; width: calc(50% - 5px);}
  .modal__content .modal_subheader_txt { font-size: 20px;  }

}
@media screen and (min-width: 787px) {
  /* .gift_paco,.fightnoto{ display: none;} */
}
@media screen and (max-width: 786px) {
  #campaign01 .thousand__img img { padding-top: 15px;}
  .project_prize .prize_icon { max-width: 100px; top: -30px; left: -30px;}
  .b_prize .prize_Centtxt,.c_prize .prize_Centtxt{ display: none;}
  .project_prize.b_prize .prize_header .prize_Rtxt, .project_prize.c_prize .prize_header .prize_Rtxt { text-align: right;}
  .prize_item .prize_inner { padding: 10px 20px 30px 20px; }
  span.prize_Ltxt.pcbr{ display: none;}
  .prize_txtImg .prize_Rtxt { margin: 0 0 0 auto;}
  .prize_contents .flex.parentFlex { gap: 15px; }
  .project_prize .prize_contents .spbr {display:block;  padding: 0 30px;}
  .project_prize.a_prize .prize_contents .spbr { max-width: 330px; }
  .stay_area .stay_list li span { padding-left:0; text-indent: -1em;}
  .stay_area .stay_list li { font-size: 21px; padding-left: 1em; text-indent: -1em; }
  #campaign01 .project_prize .btn img { padding-bottom: 0;}
  #campaign01 .project_prize.c_prize .entrybtn img.marCent { padding-top: 20px; padding-bottom: 20px;}
  .join-modal .modal__content+.js-modal-close.close-btn {display: block; position: sticky; bottom: env(safe-area-inset-bottom, 0px); margin: 16px auto 0; z-index: 1;}
  .join-modal .modal__content {padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)); overflow: auto; -webkit-overflow-scrolling: touch;}
  
}

@media screen and (min-width: 587px) {
  .modal_spbr,.spImg.img_586{ display:none;}
  .pcImg.img_586{ display:block;}
}
@media screen and (max-width: 586px) {
  /* Base */
  .spImg.img_586{display:block;}
  #campaign01 .dblBord img{margin:0 0 20px 0;}
  .project_wrap{padding:0 10px;}
  
  /* Project Header */
  .project_header{padding-bottom:30px;}
  .project_header .txt44{padding-bottom:5px;font-size:34px;line-height:1.2;}
  .project_header .txt400{margin:0 0 20px 0;font-size:14px;}
  .project_header .txt34{font-size:18px;margin-bottom:5px;}
  .project_header .project_subtxt{margin:0 0 20px 0;font-size:15px;}
  .project_header .project_period{font-size:16px;width:calc(100% - 20px);margin:0 auto 20px auto;}
  .project_header .project_period .spflex{display:flex;justify-content:center;display:-webkit-box;display:-webkit-flex;align-items:center;-webkit-box-align:center;-ms-flex-align:center;}
  .project_header .project_period .spflex .spflex_L{width:40%;}
  .project_header .project_period .spflex .spflex_R{width:60%;text-align:left;}
  
  /* Project Prize (general) */
  .project_prize{width:100%;margin:0 auto;}
  /* .project_prize{width:calc(100% - 20px);margin:0 auto;} */
  .project_prize:not(:last-of-type){margin-bottom:30px;}
  .project_prize .modal__content .prize_icon{top:-25px;left:-20px;}
  .project_prize .modal__content .prize_contents p{font-size:12px;}
  .project_prize .modal__content .prize_contents p:last-of-type{margin-bottom:15px;}
  .project_prize #modal03 .modal__content .prize_contents p:last-of-type{margin-bottom:15px;}
  #campaign01 .project_prize .entrybtn img{padding-bottom:0;}
  
  /* Prize Item & Common UI */
  .prize_item::after{border-width:0 70px 70px 0;}
  .prize_item::before{border-width:70px 0 0 70px;}
  .prize_item .prize_header{margin-bottom:15px;}
  .prize_item .modal .modal__content .prize_header::before{border-width:30px 0 0 30px;}
  .prize_item .modal .modal__content .prize_header::after{border-width:0 30px 30px 0;}
  .prize_item .modal__content .prize_header{margin-bottom:30px;}
  .gift_paco,.fightnoto{margin:0 auto 15px;}
  .receipt_3000 img,.receipt_1000 img{max-width:max-content;margin-bottom:15px;}
  .prize_contents .cataloggift{margin:0 auto 10px;}
  .selecttxt{margin-bottom:15px!important;}
  .entrybtn img{padding:20px 0;}
  li.prize_list_item:not(:last-of-type){margin-bottom:25px;}
  li.prize_list_item:last-of-type{margin-bottom:30px;}
  .modal_spbr{display:block;}
  .modal__content .modal_subheader_txt{font-size:14px;}
  
  /* b_prize / c_prize specifics */
  .b_prize .prize_txtImg .prize_Rtxt img,.c_prize .prize_txtImg .prize_Rtxt img{height:51px;width:auto;max-width:unset;}
  /* .prize_txtImg .prize_Rtxt img{max-width:135px!important;} */
  .b_prize .prize_Rtxt img{max-width:131px;}
  .c_prize .prize_item,#campaign01 .project_prize .entrybtn img{margin-bottom:0;}
  .c_prize .bubble{margin-bottom:15px;}
  .c_prize .bubble::after{bottom:-6px;}
  .b_prize .prize_item .modal .modal__content .modal_subheader_img{margin:0 auto 20px;}
  .b_prize .prize_item .modal .modal__content .modal_subheader_img img{max-width:165px;}
  .c_prize .modal__content .modal_subheader_img img{max-width:165px;}
  .b_prize .modal__content .b_prize_area{gap:10px;}
  .b_prize .modal__content .b_prize_area .b_prize_item{width:calc(50% - 5px);}
  
  /* Stay area */
  .prize_contents .stay_area .stay_header{margin-bottom:20px;}
  .stay_area .stay_list li{font-size:19px;}
  .stay_area .stay_list li .txt14.txtRED{font-size:12px;}
  .project_prize.c_prize .prize_contents .spbr{padding:0;}

}
@media screen and (max-width: 430px) {
  .project_header .project_period .spflex .spflex_L{ width: 30%;}
  .project_header .project_period .spflex .spflex_R{ width: 70%;}
}
@media screen and (max-width:380px) {
  .project_header .project_period .spflex .spflex_L{ width: 30%;}
  .project_header .project_period .spflex .spflex_R{ width: 70%;}
}
@media screen and (max-width:360px) {
  .project_header .txt44 { font-size: 26px;}
  .project_header .project_period .spflex{ -webkit-box-orient: vertical;	-webkit-box-direction: normal; 	-ms-flex-direction: column;	flex-direction: column; }
  .project_header .project_period .spflex .spflex_R { width: 100%; text-align: center; margin: 0 auto;}
}
@media screen and (max-width: 320px) {
  .project_header .project_period { font-size: 14px;}
  }

/*-------------------------------------------------------------------
参加チェーン
------------------------------------------------------------------- */
.section-header-img{ max-width: max-content; margin-bottom:30px;}
.join-section-content { margin: 60px 0;}
.join-section-content > h2{font-size: 32px; margin-bottom: 40px;}
.join-section-content .bubble{  padding: 10px 0; letter-spacing: unset; margin-bottom: 0;}
.join-section-content .bubble::after {border-color: #004865 transparent transparent transparent;}
.join-list-wrap {border-radius: 0 0 10px 10px ;}
.join-list-area.flex.jcSb { gap: 50px;padding: 50px 0; max-width: 1000px; margin: 0 auto;}
.join-list-area .join-list-item { max-width: 125px; width: calc(100% / 6 - 42px);}
.join-modal .modal__bg { background: #80A4B2; }
.join-modal .modal__content {padding:60px 100px 40px 100px; }
.join-modal .modal__content::-webkit-scrollbar {
  width: 0px;}
.join-modal .join_header{ margin-bottom: 50px;}
.join-modal .join_header .flex{ margin-bottom: 60px;}
.join-modal .join_header_L { width: auto;}
.join-modal .join_header_L img{ width: max-content;}
/* .join-modal .join_header_L { width: 125px;} */
.join-modal .join_header_R {  width: auto;}
/* .join-modal .join_header_R {  width: calc(100% - 125px); padding-left: 50px;} */
.join-modal .join_header_R h2{ font-size: 25px;     font-weight: 700;}
.join-modal .join_attention_list li:first-child{ font-size: 24px; color:#004865; text-align: center; font-weight: 700; width: fit-content; padding: 10px 30px; border: 3px solid #004865; border-radius: 6px; margin-bottom: 15px; margin-right: auto; margin-left: auto;}
.join-modal .join_attention_list li:not(:first-child){ font-size: 18px; font-weight: 400;}
.join-modal .join_attention_list li:not(:first-child)::before{  content:"●"; color:#004865; margin-right: 5px;}
.join-modal .join_attention_text {font-size: 16px; padding-top: 15px;}
.join-modal .join_main { text-align: center;}
.join-modal .join_main h3{ font-size: 22px; background-color:#004865; padding:10px 0; margin-bottom: 30px; border-radius: 8px; position: relative;}
/* .join-modal .join_main h3::before{} */
.join-modal .join_marker_area{ gap:0 50px; margin-bottom: 50px;}
.join-modal .join_marker_item{ width: calc(50% - 25px); padding:15px 0; border-top: solid 2px #004865;}
.join-modal .join_marker_item:nth-last-child(1),.join-modal .join_marker_item:nth-last-child(2) {  border-bottom: solid 2px #004865;}
.join-modal .join_marker_item .join_marker_logo{ max-width:90px;}
.join-modal .join_marker_item span.inlb{ padding-left: 20px;font-size: 22px; font-weight: 500;}
.join-modal .join_marker_item h4{ margin-bottom: 10px;}
.join-modal .join_marker_item .marker_subTxt{ font-size: 14px; padding-top: 5px; font-weight: 300;}
.join-modal .join_product_area_L { width: calc(100% - 50px);}
.join-modal .join_product_area_R { width: 50px; }
.join-modal .other_mark{ width: 32px; height: 32px; border-radius: 30px; text-align: center; line-height: 32px; vertical-align: middle;background: #004865; color: white; font-size: 18px; font-weight: 500;     margin: 0 0 0 auto;}
.join-modal .modal__content{border-radius: 20px;}
.join-modal .modal__content a.js-modal-close { position: fixed; top: 80px; right: 40px; left: auto;}
.join-modal .modal__content+.js-modal-close.close-btn{ right: 0;  left: 0; margin: auto; text-align: center; }
@media screen and (max-width: 1120px) {
  .join-list-area.flex.flex.jcSb { padding: 30px 30px 0 30px; gap: 30px;}
  .join-list-area .join-list-item { max-width: 100%; width: calc(100% / 5 - 24px);}
}
@media screen and (max-width: 986px) {
  .join-modal .modal__content { padding: 50px 20px 30px 20px;}
  .join-list-area .join-list-item { width: calc(100% / 4 - 22.5px);}
}
@media screen and (max-width: 896px) {
  .join-section-content { margin: 40px 0;}
  /* .section-header-img { max-width: 206px;} */
  .join-section-content > h2{font-size: 30px; margin-bottom: 40px;}

  .join-section-content .bubble { font-size: 17px; }
  .join-modal .join_marker_area { gap: 0 30px; }
  .join-modal .join_marker_item { width: calc(50% - 15px); }
  .join-modal .join_marker_item .join_marker_logo{width: calc(33.3333% - 10px);}
  .join-modal .modal__content a.js-modal-close {top: 30px; right: 30px;}

}
@media screen and (max-width: 786px) {
  .join-list-area .join-list-item { width: calc(100% / 3 - 20px);}
  .join-modal .join_header { margin-bottom: 40px;}
  .join-modal .join_header .flex {gap: 5px 0; margin-bottom: 60px;-webkit-box-orient: vertical;	-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column; margin-bottom: 25px; width: 100%; align-items: center;}
  .join-modal .join_header_L { width: 100%;   text-align: center; }
  .join-modal .join_header_L img{ width: max-content; }
  .join-modal .join_header_R { padding-left: 0; text-align: center; width: 100%;}
  .join-modal .join_header_R h2{ font-size: 20px;}
  .join-modal .join_header_R .sub_header{font-size: 10px;}
  .join-modal .join_header_T {display: flex; justify-content: center; width: 100%;}
  .join-modal .join_header_T .join_logo{aspect-ratio: 4.6/3; object-fit: contain; width: 80%;}
  .join-modal .join_header_B h2{font-size: 16px; text-align: center;}

  .join-modal .join_attention_list li:first-child {font-size: 14px; padding: 5px 5px; border: 2px solid #004865; width: 100%;}
  .join-modal .join_attention_list li:not(:first-child) {font-size: 12px; line-height: 18px;}
  .join-modal .join_main h3 { padding: 5px 0 6px;  margin-bottom: 15px; font-size: 16px;}
  .join-modal .join_marker_area { -webkit-box-orient: vertical;	-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column; margin-bottom: 40px;}
  .join-modal .join_marker_item { width: 100%; }
  .join-modal .join_marker_item:nth-last-child(2){border-bottom: none;}
  .join-modal .join_marker_item h4{height: 60px;}
  .join-modal .join_marker_item h4 .join_marker_logo{max-height: 60px; object-fit: contain;}
  .join-modal .join_marker_item span.inlb { font-size: 15px; font-weight: 400;}
}
@media screen and (max-width: 680px) {
 .join-modal .modal__content { margin: 20px auto auto auto; height: calc(100vh - 90px); padding: 50px 20px 20px 20px;}
  .join-modal .modal__content+.js-modal-close.close-btn{ bottom: 10px;}
  .join-modal .close-btn img { width: 35px;}
  .join-modal .join_product_area_L { width: calc(100% - 30px);}
  .join-modal .join_product_area_R { width: 30px;}
  .join-modal .other_mark { width: 22px; height: 22px; line-height: 22px; font-size: 13px; font-weight: 400;}
  .join-modal .join_marker_item .marker_subTxt {   font-size: 10px;}
  .join-modal .join_marker_item .marker_subTxt.--small {font-size: 0.35rem;}
}
@media screen and (max-width: 586px) {
  .join-modal .join_header{margin-bottom: 40px;}
  .join-section-content { margin: 40px auto 40px; width: calc(100% - 20px);} 
  .join-modal .join_attention_list li:first-child {font-size: 14px; margin-bottom: 10px; padding: 5px 5px; border: 2px solid #004865; border-radius: 3px; width: 100%;}
  .join-modal .join_attention_list li:not(:first-child) { font-size: 12px; padding-left: calc(1em + 5px); text-indent: calc(-1em - 5px);}
  .join-modal .join_attention_text {font-size: 10px; padding-top: 5px;}

  .join-modal .join_marker_area { margin-bottom: 30px;}  
  .join-modal .join_marker_item { padding: 0 0 20px;}
}
@media screen and (max-width: 420px) {
  .join-modal .join_main h3{ font-size: 16px; }
}

/*-------------------------------------------------------------------
対象メーカー
------------------------------------------------------------------- */
.marker-section-content { padding: 60px 0;}
.marker-section-content>h2{font-size: 32px;}
.marker-section-content>.txt12{font-size: 22px;}
.marker-list-area.flex.jcSb { gap: 50px; padding: 50px 0; max-width: 1000px;  margin: 0 auto;}
.marker-list-area .marker-list-item { max-width: 125px; width: calc(100% / 6 - 42px); display: flex; align-items: center;}
.join_marker_item.bordBottom { border-bottom: solid 2px #004865;}
@media screen and (max-width: 1120px) {
  .marker-list-area.flex.jcSb { padding: 30px; gap: 30px;}
  .marker-list-area .marker-list-item { max-width: 100%; width: calc(100% / 5 - 24px);}
}
@media screen and (max-width: 986px) {
  .marker-list-area.flex.jcSb { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start;}
  .marker-list-area .marker-list-item { width: calc(100% / 4 - 22.5px);}

}
@media screen and (max-width: 896px) {
  .marker-section-content { padding: 40px 0;}
  .marker-section-content>h2{font-size: 30px; line-height: 1.2;}
}
@media screen and (max-width: 786px) {
  .marker-list-area .marker-list-item { width: calc(100% / 3 - 20px); display: flex; align-items: center;}
  .join_marker_item.bordBottom { border-bottom:none;}
  .marker-section-content>.txt10{font-size: 10px;}
  .marker-section-content>.txt12{font-size: 12px;}
}
@media screen and (max-width: 568px) {
  .marker-section-content { margin: 0 auto; width: calc(100% - 20px);}
  .section-header-img { max-width: 206px;}
  .marker-section-content .section-header-img { max-width: 214px;}
  .method-section-content .section-header-img { max-width: 159px;}
  .rule-section-content .section-header-img { max-width: 293px;}
}

/*-------------------------------------------------------------------
参加方法
------------------------------------------------------------------- */
.method-section{ background: #CCDAE0; }
.method-section-content h2{font-size: 30px; font-weight: 700;}
.method-section-content { padding: 60px 0 40px 0; text-align: center;}
.method-section-content .section-header-img { margin-bottom: 50px;}
.method-list-area.flex.jcSb { gap: 30px;  max-width: 1100px;  margin: 0 auto 30px auto;}
.method-list-item { width: calc(100% / 3 - 30px); padding: 60px 30px 30px 30px;text-align: center;border-radius: 10px;}
.method-list-item .txt25{ color:#004865;font-size:25px; margin-bottom: 30px;}
.method-list-area .number{ width:60px;position: absolute; top: -20px; right: 0; left: 0; margin: auto;}
.method-list-area .method-icon{ max-width:max-content; max-height: 100px; object-fit: contain;}
.method-list-area p{ color: #3e3a39; }
.method-list-area span.bordB { border-bottom: solid 1px #3e3a39;}
.method-list-item .txt700 { color: #004865; font-size: 25px;}
.form-complete{ width: 0; height: 0; border-style: solid; border-color: #80A4B2 transparent transparent transparent; border-width: 12px 15px 0px 15px; margin: 10px auto;}
.annotationtxt{ margin-bottom:30px;}
@media screen and (max-width: 896px) {
  .method-section-content { padding: 40px 20px;}
  .method-section-content .section-header-img { max-width: max-content; margin-bottom: 60px;  }
  .method-list-area.flex.jcSb { gap: 40px; margin: 0 auto 20px auto;}
  .method-list-item { width: calc(50% - 20px); padding: 40px 30px; }
  .method-list-area .number { width: 50px; top: -25px;}
  .annotationtxt { margin-bottom: 10px;}
}
@media screen and (max-width: 680px) {
  .method-section-content { padding: 40px 10px;}
  /* .method-section-content { padding: 40px 30px;} */
  .method-list-area.flex.jcSb { gap: 40px; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; padding: 10px;}
  .method-list-item { width: 100%;}
  .method-list-area .method-icon { margin-bottom: 20px !important; }
  .method-list-item .txt25 { margin-bottom: 20px;}
  .form-complete { margin: 10px auto;}
}
@media screen and (max-width: 568px) {
  .method-section-content .section-header-img { max-width: 159px;}
}
@media screen and (max-width: 480px) {
  .method-list-item:nth-of-type(1) .method-icon{ max-width:126px; }
  .method-list-item:nth-of-type(2) .method-icon,.method-list-item:nth-of-type(3) .method-icon{ max-width:55px; }
}
@media screen and (max-width: 360px) {
  .method-section-content { padding: 40px 10px;}
  .method-list-item { padding: 40px 10px;}

}

/*-------------------------------------------------------------------
応募要項／応募規約
------------------------------------------------------------------- */
.rule-section-content { padding: 60px 0;}
.rule-section-content h2{font-size: 30px; font-weight: 700;}

.rule-section-content .rule-list-area {  width: 100%;  height: 300px;border: solid 2px #004865; overflow-y: scroll; overflow-x: hidden; background-color: white; /*resize: both;*/ position: relative; }
/* .rule-section-content .rule-list-area::before {position: absolute; content: ""; background-color: #004865; width: 20px; height: 100%; right: 0; top: 0;} */
.rule-section-content .rule-list-area .rule-list-inner { width: 100%; padding: 30px; margin: 0 auto; overflow-wrap: anywhere;}
.rule-list-header{color: #004865;margin-bottom: 5px; }
.rule-list-area{}
.rule-list-item { margin-bottom: 30px;}
/* スクロールバー */
.rule-section-content .rule-list-area::after { content:""; display:block; position: absolute; width: 0; height: 0; border-style: solid; border-right: 5px solid transparent; border-left: 5px solid transparent; border-top: 8.8px solid #555555; border-bottom: 0; top:0; right:-10px; z-index:9999;}

.rule-section-content .rule-list-area::-webkit-scrollbar { width: 10px; height:100%;}
.rule-section-content .rule-list-area::-webkit-scrollbar-track {  background-color: #004865; }
.rule-section-content .rule-list-area::scrollbar-track {  background-color: #004865; }
.rule-section-content .rule-list-area::-webkit-scrollbar-button:single-button { display: block;  background-color: #004865; width: 10px;  }
.rule-section-content .rule-list-area::-webkit-scrollbar-button:single-button:vertical:decrement { display: none;} 
.rule-section-content .rule-list-area::-webkit-scrollbar-button:single-button:vertical:increment { 
border-style: solid; border-right: 5px solid transparent; border-left: 5px solid transparent; border-top: 8.8px solid #fff; border-bottom: 0;   }
.rule-section-content .rule-list-area::-webkit-resizer{ display:none;}
/* スクロールバー2 */


@media screen and (max-width: 896px) {
  .rule-section-content .section-header-img { max-width: 293px;}
}
@media screen and (max-width: 680px) {
  .rule-section-content { padding: 40px 10px;}
  .rule-section-content .rule-list-area .rule-list-inner { padding: 20px;}
}
/*-------------------------------------------------------------------
フッター
------------------------------------------------------------------- */
footer{background-color:#eeeeee; padding: 60px 0; }
footer h2{color:#004865; margin-bottom:20px;font-size: 20px; }
footer p{ font-size: 18px; color: #3e3a39;  }
@media screen and (max-width: 680px) {
  footer{ padding: 40px 15px; }
  footer h2{ margin-bottom:10px;font-size: 18px; }
  footer p{ font-size: 15px;}
}

.bdr5{border-radius: 5px;}
.bdr10{border-radius: 10px;}
.bdr10-top{border-radius: 10px 10px 0 0;}
.box5-20{padding: 5px 20px;}
.box15{padding: 15px;}
.box0-20{padding: 0px 20px 30px;}
.box0-15{padding: 0px 20px 30px;}
.bdr-tb-wh{position: relative; width: 80%; margin-right: auto; margin-left: auto; display: flex; justify-content: center;}
.bdr-tb-wh .img_01-03.spImg{width: calc(100%);}
.bdr-tb-wh .img_01-03.pcImg{width: calc(100% - 60px);}
.bdr-tb-wh::before,.bdr-tb-wh::after{position: absolute; content: ""; height: 3px; border-radius: 6px; width: 100%; background-color: white; left: 50%; transform: translateX(-50%);}
.bdr-tb-wh::before{top: 0;}
.bdr-tb-wh::after{bottom: 0;}
.half-5{width: calc(50% - 5px);}
.oFitSD{object-fit: scale-down!important;}
.c-link{display: flex;}
.c-ex-tri{position: relative;}
.c-ex-tri::before{position: absolute; content: ""; width: 0; height: 0; border-style: solid; border-right: 7.5px solid transparent; border-left: 7.5px solid transparent; border-top: 10px solid #004865; border-bottom: 0; top: 100%; left: 50%; transform: translateX(-50%);}
.c-2col_img{}
.c-2col_img .half-5{position: relative;}
.c-2col_img .half-5 .txtWH{position: absolute; bottom: 2px; left: 4px; font-size: 0.55rem; text-shadow: 0 0 3px #000; font-weight: 700;}
.c-prize .title img{margin-top: -15px;}

.c-3col{padding: 24px; gap: 24px;}
.c-3col a{display: inline-block; width: calc(33.3333% - 16px); aspect-ratio: 1/1;}
.c-3col a img{width: 100%; aspect-ratio: 1/1;}

.c-circleNum{font-weight: 900; color: white; background-color: #004865; width: 50px; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; line-height: 1; border-radius: 100px; position: absolute; transform: translate(-50%,-50%); top: 0; left: 50%;}
.c-app{border: 2px solid #004865; position: relative; min-height: 250px; padding: 20px 40px 20px 20px; z-index: 0;}
.c-app::before{width: 0px; height: 0px; border-style: solid; border-width: 10px 5.5px 0 5.5px; border-color: white transparent transparent transparent; transform: rotate(0deg); right: 4px; bottom: 6px; content: ""; position: absolute; z-index: 1;}
.c-app::after{position: absolute; right: 0; background-color: #004865; width: 20px; top: 0; content: ""; height: 100%;}

.img.mh70 img{max-height: 70px; object-fit: contain; width: auto;}
.img.mh100 img{max-height: 100px; object-fit: contain; width: auto;}
.img.full{width: 100%;}
/* {background-image: url(../img/top/topbg.png); background-size: cover; background-position: top center; background-repeat: no-repeat;} */
.bg01-01{background-image: url(../img/top/01-01-bg.webp); padding-top: 16vw; background-size: cover; background-position: top center; background-repeat: no-repeat;}
.img_01-01{width: 60%; margin-right: auto; margin-left: auto;}




.top-mv-pc{display: flex; align-items: center; justify-content: center;}
.top-mv-pc .img{max-width:1600px;}
.top-mv .bdr-tb-wh{width: 80%;} 



/* 下ボタンの想定サイズ（調整OK） */
:root { --modal-close-h: 58px;  --tile: 1000px;}
@media (max-width: 680px) {
  :root { --modal-close-h: 40px; }
}

/* 例：ページ全体に適用 */
section.bgBR{
  background-color: unset!important;
  /* 1x/2xの両方を用意して高精細でもボケないように */
  background-image: image-set(
    url("../img/cmn/bg.png")
  );
  background-repeat: repeat;
  background-size: var(--tile) var(--tile); /* ←パーセントやcoverにしない */
  background-position: 0 0;                /* 原点固定 */
}
/* 兄弟の close ボタンを“画面下”に固定（内側ボタンは触らない） */
.join-modal .modal__content + .js-modal-close.close-btn {
  display: block;                 /* あなたの指定を尊重 */
  position: fixed;                /* ← sticky ではなく fixed を使用 */
  left: 50%;
  transform: translateX(-50%);
  right: auto;                    /* 念のため明示 */
  /* フォールバック（safe-areaのみ） */
  bottom: calc(env(safe-area-inset-bottom, 0px) + 10px);
  /* 新しめ環境では URLバー/KB 分も相殺 */
  bottom: calc(max(env(safe-area-inset-bottom, 0px), var(--vv-bottom, 0px)) + 10px);
  z-index: 10001;
}

/* 画像サイズ（任意） */
.join-modal .modal__content + .js-modal-close.close-btn img {
  width: var(--modal-close-h);
  max-width: var(--modal-close-h);
}

/* モーダル内容がボタンの下に潜らないための下余白を“モーダル側”に付ける */
.join-modal .modal__content {
  /* 既存のあなたの指定を拡張：--vv-bottom も考慮し、ボタンの高さぶん余白確保 */
  padding-bottom: calc(
    20px + var(--modal-close-h) +
    max(env(safe-area-inset-bottom, 0px), var(--vv-bottom, 0px))
  );
  overflow: auto;                   /* 既存維持 */
  -webkit-overflow-scrolling: touch;
}

/* 100vh問題の安定化（任意だが推奨） */
@media (max-width: 896px) {
  .bdr-tb-wh{position: relative; width: 100%;}
  .modal__content {
    height: calc(100vh - 100px);
    height: calc(100svh - 100px);
    height: calc(100dvh - 100px);
  }
}
@media (max-width: 680px) {
  .join-modal .modal__content {
    height: calc(100vh - 90px);
    height: calc(100svh - 90px);
    height: calc(100dvh - 90px);
  }
}

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

  .bdr-tb-wh{margin-bottom: 40px!important;}
  .top-mv .txt20{font-size: 30px;}
  .top-mv .txt24{font-size: 36px;}
  .top-mv .txt34{font-size: 36px;}
  .top-mv .txt15{font-size: 20px;}
  .top-mv .txt14{font-size: 18px;}
  .top-mv .box5-20.txtNV{font-size: 24px; width: fit-content; margin-right: auto; margin-left: auto; padding: 12px 40px; }
  .box0-15{padding: 0 60px 40px;}
  .box0-20{padding: 0 60px 40px;}
  .img02-02{display: flex; justify-content: center; padding-top: 20px; padding-bottom: 20px;}
	.img02-02 img{max-width: 675px;}
  .img02-04{display: flex; justify-content: center;}
  .img02-04 img{width: 60%;}
	.c-link.pcImg{max-width: 700px; margin-right: auto; margin-left: auto;}
  .c-ex-tri{font-size: 18px;}
  .c-2col_img{}
  .c-2col_img .half-5{width: calc(25% - 10px);}
  .c-2col_img .half-5 .txtWH{font-size: 13px;}
}
