@charset "UTF-8";
/* 3部会合同 謝恩キャンペーン 埋め込み用CSS
   - すべて .cp27 の中だけに効く（ホストページのスタイルに影響しない）
   - PC: 769px以上 / SP: 768px以下
   - 画像: https://img.hitou.or.jp/campaign/img/ */

/* ホスト側（Bootstrap 等）の影響を打ち消す */
.cp27, .cp27 *, .cp27 *::before, .cp27 *::after { box-sizing: content-box; }
.cp27 { display: block; width: auto; text-align: left; }
.cp27 img { max-width: none; vertical-align: baseline; }
.cp27 a:hover { color: inherit; }
.cp27 .cpInfo__link01 { text-decoration: underline; }
/* SP: ホスト側コンテナの左右余白（1.33333vw）を打ち消して画面幅いっぱいに表示 */
@media (max-width: 768px) {
  #contentSection > .cp27 { margin-left: -1.33333vw; margin-right: -1.33333vw; }
}

/* ===== PC ===== */
@media (min-width: 769px) {
.cp27 a, .cp27 abbr, .cp27 acronym, .cp27 address, .cp27 applet, .cp27 article, .cp27 aside, .cp27 audio, .cp27 b, .cp27 big, .cp27 blockquote, .cp27, .cp27 canvas, .cp27 caption, .cp27 center, .cp27 cite, .cp27 code, .cp27 dd, .cp27 del, .cp27 details, .cp27 dfn, .cp27 div, .cp27 dl, .cp27 dt, .cp27 em, .cp27 embed, .cp27 fieldset, .cp27 figcaption, .cp27 figure, .cp27 footer, .cp27 form, .cp27 h1, .cp27 h2, .cp27 h3, .cp27 h4, .cp27 h5, .cp27 h6, .cp27 header, .cp27 hgroup, .cp27, .cp27 i, .cp27 iframe, .cp27 img, .cp27 ins, .cp27 kbd, .cp27 label, .cp27 legend, .cp27 li, .cp27 mark, .cp27 menu, .cp27 nav, .cp27 object, .cp27 ol, .cp27 output, .cp27 p, .cp27 pre, .cp27 q, .cp27 ruby, .cp27 s, .cp27 samp, .cp27 section, .cp27 small, .cp27 span, .cp27 strike, .cp27 strong, .cp27 sub, .cp27 summary, .cp27 sup, .cp27 table, .cp27 tbody, .cp27 td, .cp27 tfoot, .cp27 th, .cp27 thead, .cp27 time, .cp27 tr, .cp27 tt, .cp27 u, .cp27 ul, .cp27 var, .cp27 video {margin: 0px; padding: 0px; border: 0px; font: inherit; vertical-align: baseline;}
.cp27 article, .cp27 aside, .cp27 details, .cp27 figcaption, .cp27 figure, .cp27 footer, .cp27 header, .cp27 hgroup, .cp27 menu, .cp27 nav, .cp27 section {display: block;}
.cp27 {line-height: 1;}
.cp27 ol, .cp27 ul {list-style: none;}
@media (min-width: 769px) {
.cp27 .global-pc-mt-20px {margin-top: 20px !important;}
.cp27 .global-pc-mt-40px {margin-top: 40px !important;}
.cp27 .global-pc-mt-80px {margin-top: 80px !important;}
.cp27 .global-pc-pt-50px {padding-top: 50px !important;}
.cp27 .global-pc-pt-60px {padding-top: 60px !important;}
.cp27 .global-pc-pt-80px {padding-top: 80px !important;}
.cp27 .global-pc-pb-50px {padding-bottom: 50px !important;}
.cp27 .global-pc-pb-60px {padding-bottom: 60px !important;}
.cp27 .global-pc-pb-80px {padding-bottom: 80px !important;}
}
@media (max-width: 768px) {
.cp27 .global-sp-mt-3vw {margin-top: 3vw !important;}
.cp27 .global-sp-mt-6vw {margin-top: 6vw !important;}
.cp27 .global-sp-mt-10vw {margin-top: 10vw !important;}
.cp27 .global-sp-pt-5vw {padding-top: 5vw !important;}
.cp27 .global-sp-pt-6vw {padding-top: 6vw !important;}
.cp27 .global-sp-pt-10vw {padding-top: 10vw !important;}
.cp27 .global-sp-pt-15vw {padding-top: 15vw !important;}
.cp27 .global-sp-pb-5vw {padding-bottom: 5vw !important;}
.cp27 .global-sp-pb-10vw {padding-bottom: 10vw !important;}
.cp27 .global-sp-pb-15vw {padding-bottom: 15vw !important;}
}
.cp27 .global-colorRed {color: rgb(217, 0, 0) !important;}
.cp27 .global-spOnly {display: none !important;}
.cp27 {font-size: 16px; color: rgb(35, 35, 35); line-height: 1.6; word-break: break-all; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;}
.cp27 .cont01__item01 {width: 900px; max-width: 100%; padding: 30px 0px; aspect-ratio: 3 / 1; background: url("https://img.hitou.or.jp/campaign/img/bg_cont01.png") center center / contain no-repeat; box-sizing: border-box;}
.cp27 .cont01__item01:not(:first-child) {margin-top: 30px;}
.cp27 .cont01__txt01 {margin-top: 12px; font-size: 30px; font-weight: bold; text-align: center; line-height: 1.3; color: rgb(0, 57, 92);}
.cp27 .cont01__txt01-1 {font-size: 74px;}
.cp27 .cont01__txt01-2 {font-size: 46px;}
.cp27 .cont01__txt01-3 {font-size: 38px;}
.cp27 .cont01__txt02 {margin-top: 50px; font-size: 38px; font-weight: bold; text-align: center; line-height: 1.3; color: rgb(0, 57, 92);}
.cp27 .cont01__txt02-1 {font-size: 46px;}
@media screen and (max-width: 1000px) {
.cp27 .cont01__txt01 {font-size: 26px;}
.cp27 .cont01__txt01-1 {font-size: 62px;}
.cp27 .cont01__txt01-2 {font-size: 40px;}
.cp27 .cont01__txt01-3 {font-size: 32px;}
.cp27 .cont01__txt02 {font-size: 32px;}
.cp27 .cont01__txt02-1 {font-size: 40px;}
}
.cp27 .cpBox {font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif !important;}
.cp27 .cpBox__inner01.-bg-lead {background: url("https://img.hitou.or.jp/campaign/img/bg_lead.jpg") center center repeat;}
.cp27 .cpBox__inner01.-bg-cont01 {background: url("https://img.hitou.or.jp/campaign/img/bg_cont01-left.png") left top no-repeat, url("https://img.hitou.or.jp/campaign/img/bg_cont01-right.png") right bottom no-repeat;}
.cp27 .cpBox__inner01.-bg-info {background: url("https://img.hitou.or.jp/campaign/img/bg_info.jpg") center center repeat;}
.cp27 .cpBox__inner02 {max-width: 96%; margin: 0px auto;}
.cp27 .cpBox__inner02.-w900px {width: 900px;}
.cp27 .cpGroup__list01 {display: flex; justify-content: center;}
.cp27 .cpGroup__item01 + li {margin-left: 10px;}
.cp27 .cpGroup__link01 {display: block; max-width: 100%; transition: 0.2s;}
.cp27 .cpGroup__link01:hover {box-shadow: rgba(0, 0, 0, 0.3) 0px 3px 7px 0px; transform: translateY(-4px);}
.cp27 .cpGroup__img01 {max-width: 100%; vertical-align: bottom;}
.cp27 .heading__type01 {display: flex; justify-content: center; padding: 0px 0px 30px; background: url("https://img.hitou.or.jp/campaign/img/bg_heading.png") center bottom / 500px auto no-repeat;}
.cp27 .heading__type01-1 {font-size: 32px; font-weight: bold; color: rgb(0, 57, 92); text-align: center;}
.cp27 .heading__type01-1.-skyblue {color: rgb(35, 123, 210);}
.cp27 .heading__type02 {display: flex; justify-content: center;}
.cp27 .heading__type02-1 {font-size: 26px; font-weight: bold; color: rgb(0, 57, 92); text-align: center;}
.cp27 .cpInfo__list01 {background: rgb(255, 255, 255);}
.cp27 .cpInfo__item01 {padding: 15px 30px; border-bottom: 3px solid rgb(232, 237, 240);}
.cp27 .cpInfo__defList01 {display: flex; font-size: 20px; font-weight: bold; color: rgb(0, 57, 92);}
.cp27 .cpInfo__defTtl01 {display: flex; align-items: center; width: 25%; padding: 10px 0px;}
.cp27 .cpInfo__defCont01 {width: 75%; padding: 10px 0px 10px 30px; border-left: 1px solid rgb(0, 57, 92); line-height: 1.3;}
.cp27 .cpInfo__defContTxt01 {font-size: 20px; line-height: 1.5;}
.cp27 .cpInfo__list02 {margin-top: 14px;}
.cp27 .cpInfo__list02.-noMt {margin-top: 0px;}
.cp27 .cpInfo__item02 {position: relative; padding-left: 1em;}
.cp27 .cpInfo__item02 + li {margin-top: 14px;}
.cp27 .cpInfo__item02.-note {line-height: 1.5;}
.cp27 .cpInfo__item02.-note::before {content: "※"; top: 0px; left: 0px; width: 1em; height: 1em; background: none; color: rgb(217, 0, 0);}
.cp27 .cpInfo__item02::before {content: ""; position: absolute; left: 4px; top: 6px; width: 14px; height: 14px; background: rgb(0, 57, 92);}
.cp27 .cpInfo__link01 {display: inline-block; padding-right: 30px; background: url("https://img.hitou.or.jp/campaign/img/icon_blank-navy.png") right center no-repeat; color: rgb(0, 57, 92);}
.cp27 .cpInfo__link01:hover {text-decoration: none;}
.cp27 .cpInfo__btnWrapper {margin-top: 60px;}
.cp27 .cpInfo__btn {display: flex; justify-content: center; align-items: center; position: relative; width: 860px; max-width: 96%; height: 110px; margin: 0px auto; background: rgb(179, 19, 63); text-decoration: none; border-radius: 20px; transition: 0.2s; font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif !important;}
.cp27 .cpInfo__btn:hover {background: rgb(204, 22, 74);}
.cp27 .cpInfo__btn:hover::before {background: rgb(204, 22, 74);}
.cp27 .cpInfo__btn::before {display: block; position: absolute; top: 50%; left: 50%; width: 900px; max-width: 105%; height: 70px; background: rgb(179, 19, 63); border-radius: 20px; z-index: 1; transform: translate(-50%, -50%); transition: 0.2s; content: "";}
.cp27 .cpInfo__btn::after {position: absolute; top: 50%; right: 24px; display: block; width: 18px; height: 18px; border-top: 2px solid rgb(255, 255, 255); border-right: 2px solid rgb(255, 255, 255); transform-origin: 100% 0px; transform: rotate(45deg); content: ""; z-index: 2;}
.cp27 .cpInfo__btn.-closed::before {display: none;}
.cp27 .cpInfo__btn.-closed::after {display: none;}
.cp27 .cpInfo__btn.-closed:hover {background: rgb(179, 19, 63);}
.cp27 .cpInfo__btn-1 {font-size: 32px; font-weight: bold; color: rgb(255, 255, 255); z-index: 2;}
.cp27 .cpInfo__list03 {margin-top: 14px;}
.cp27 .cpInfo__list03.-noMt {margin-top: 0px;}
.cp27 .cpInfo__item03 {position: relative; padding-left: 1em;}
.cp27 .cpInfo__item03 + li {margin-top: 10px;}
.cp27 .cpInfo__item03::before {content: "・"; position: absolute; left: 0px;}
.cp27 .cpLead {font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif !important;}
.cp27 .cpLead__txt01 {display: flex; flex-direction: column;}
.cp27 .cpLead__txt01-1 {font-size: 40px; font-weight: bold; color: rgb(255, 255, 255); text-align: center; text-shadow: rgba(0, 0, 0, 0.9) 3px 3px 13px;}
.cp27 .cpLead__txt01-2 {display: inline-block; margin-top: 30px; font-size: 26px; font-weight: bold; color: rgb(255, 255, 255); text-align: center;}
.cp27 .cpLead__txt01-3 {display: inline-block; margin-top: 30px; font-size: 21px; font-weight: bold; color: rgb(253, 255, 65); text-align: center;}
@media screen and (max-width: 1350px) {
.cp27 .cpLead__txt01-1 {font-size: 36px;}
.cp27 .cpLead__txt01-2 {margin-top: 20px; font-size: 22px;}
.cp27 .cpLead__txt01-3 {margin-top: 20px; font-size: 18px;}
}
@media screen and (max-width: 1150px) {
.cp27 .cpLead__txt01-1 {font-size: 28px;}
.cp27 .cpLead__txt01-2 {margin-top: 20px; font-size: 18px;}
.cp27 .cpLead__txt01-3 {margin-top: 20px; font-size: 16px;}
}
.cp27 .sns__list {display: flex; justify-content: center; z-index: 100;}
.cp27 .sns__item {width: 60px; height: 60px;}
.cp27 .sns__item + li {margin-left: 30px;}
.cp27 .sns__link {transition: 0.2s;}
.cp27 .sns__link:hover {opacity: 0.8;}
.cp27 .sns__img {max-width: 100%;}
}

/* ===== SP ===== */
@media (max-width: 768px) {
.cp27 a, .cp27 abbr, .cp27 acronym, .cp27 address, .cp27 applet, .cp27 article, .cp27 aside, .cp27 audio, .cp27 b, .cp27 big, .cp27 blockquote, .cp27, .cp27 canvas, .cp27 caption, .cp27 center, .cp27 cite, .cp27 code, .cp27 dd, .cp27 del, .cp27 details, .cp27 dfn, .cp27 div, .cp27 dl, .cp27 dt, .cp27 em, .cp27 embed, .cp27 fieldset, .cp27 figcaption, .cp27 figure, .cp27 footer, .cp27 form, .cp27 h1, .cp27 h2, .cp27 h3, .cp27 h4, .cp27 h5, .cp27 h6, .cp27 header, .cp27 hgroup, .cp27, .cp27 i, .cp27 iframe, .cp27 img, .cp27 ins, .cp27 kbd, .cp27 label, .cp27 legend, .cp27 li, .cp27 mark, .cp27 menu, .cp27 nav, .cp27 object, .cp27 ol, .cp27 output, .cp27 p, .cp27 pre, .cp27 q, .cp27 ruby, .cp27 s, .cp27 samp, .cp27 section, .cp27 small, .cp27 span, .cp27 strike, .cp27 strong, .cp27 sub, .cp27 summary, .cp27 sup, .cp27 table, .cp27 tbody, .cp27 td, .cp27 tfoot, .cp27 th, .cp27 thead, .cp27 time, .cp27 tr, .cp27 tt, .cp27 u, .cp27 ul, .cp27 var, .cp27 video {margin: 0px; padding: 0px; border: 0px; font: inherit; vertical-align: baseline;}
.cp27 article, .cp27 aside, .cp27 details, .cp27 figcaption, .cp27 figure, .cp27 footer, .cp27 header, .cp27 hgroup, .cp27 menu, .cp27 nav, .cp27 section {display: block;}
.cp27 {line-height: 1;}
.cp27 ol, .cp27 ul {list-style: none;}
@media (min-width: 769px) {
.cp27 .global-pc-mt-20px {margin-top: 20px !important;}
.cp27 .global-pc-mt-40px {margin-top: 40px !important;}
.cp27 .global-pc-mt-80px {margin-top: 80px !important;}
.cp27 .global-pc-pt-50px {padding-top: 50px !important;}
.cp27 .global-pc-pt-60px {padding-top: 60px !important;}
.cp27 .global-pc-pt-80px {padding-top: 80px !important;}
.cp27 .global-pc-pb-50px {padding-bottom: 50px !important;}
.cp27 .global-pc-pb-60px {padding-bottom: 60px !important;}
.cp27 .global-pc-pb-80px {padding-bottom: 80px !important;}
}
@media (max-width: 768px) {
.cp27 .global-sp-mt-3vw {margin-top: 3vw !important;}
.cp27 .global-sp-mt-6vw {margin-top: 6vw !important;}
.cp27 .global-sp-mt-10vw {margin-top: 10vw !important;}
.cp27 .global-sp-pt-5vw {padding-top: 5vw !important;}
.cp27 .global-sp-pt-6vw {padding-top: 6vw !important;}
.cp27 .global-sp-pt-10vw {padding-top: 10vw !important;}
.cp27 .global-sp-pt-15vw {padding-top: 15vw !important;}
.cp27 .global-sp-pb-5vw {padding-bottom: 5vw !important;}
.cp27 .global-sp-pb-10vw {padding-bottom: 10vw !important;}
.cp27 .global-sp-pb-15vw {padding-bottom: 15vw !important;}
}
.cp27 .global-colorRed {color: rgb(217, 0, 0) !important;}
.cp27 .global-spOnly {display: block !important;}
.cp27 {font-size: 3.73333vw; color: rgb(35, 35, 35); line-height: 1.6; word-break: break-all; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;}
.cp27 .cont01__item01 {width: 100%; padding: 3.2vw 0px; aspect-ratio: 3 / 1; background: url("https://img.hitou.or.jp/campaign/img/bg_cont01.png") center center / cover no-repeat; box-sizing: border-box;}
.cp27 .cont01__item01:not(:first-child) {margin-top: 4vw;}
.cp27 .cont01__txt01 {margin-top: 1.6vw; font-size: 3.2vw; font-weight: bold; text-align: center; line-height: 1.2; color: rgb(0, 57, 92);}
.cp27 .cont01__txt01-1 {font-size: 6.93333vw;}
.cp27 .cont01__txt01-2 {font-size: 4.8vw;}
.cp27 .cont01__txt01-3 {font-size: 3.73333vw;}
.cp27 .cont01__txt02 {margin-top: 5.33333vw; font-size: 4vw; font-weight: bold; text-align: center; line-height: 1.3; color: rgb(0, 57, 92);}
.cp27 .cont01__txt02-1 {font-size: 4.8vw;}
.cp27 .cpBox {font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif !important;}
.cp27 .cpBox__inner01.-bg-lead {background: url("https://img.hitou.or.jp/campaign/img/bg_lead.jpg") center center / 10.1333vw auto repeat;}
.cp27 .cpBox__inner01.-bg-cont01 {background: url("https://img.hitou.or.jp/campaign/img/sp/bg_cont01-left.png") left top / 80% auto no-repeat, url("https://img.hitou.or.jp/campaign/img/sp/bg_cont01-right.png") right bottom / 100% auto no-repeat;}
.cp27 .cpBox__inner01.-bg-info {background: rgb(238, 242, 245);}
.cp27 .cpBox__inner02 {max-width: 96%; margin: 0px auto;}
.cp27 .cpBox__inner02.-w90vw {width: 90vw;}
.cp27 .cpBox__inner02.-w92vw {width: 92vw;}
.cp27 .cpGroup__item01 {width: 48vw; margin: 0px auto;}
.cp27 .cpGroup__item01 + li {margin-top: 2.66667vw;}
.cp27 .cpGroup__link01 {display: block; max-width: 100%; border: 1px solid rgb(31, 20, 16); transition: 0.2s;}
.cp27 .cpGroup__link01:hover {box-shadow: rgba(0, 0, 0, 0.3) 0px 0.4vw 0.933333vw 0px; transform: translateY(-0.533333vw);}
.cp27 .cpGroup__img01 {max-width: 100%; vertical-align: bottom;}
.cp27 .heading__type01.-present {background-size: 54.9333vw auto;}
.cp27 .heading__type01 {display: flex; justify-content: center; padding: 0px 0px 2.66667vw; background: url("https://img.hitou.or.jp/campaign/img/bg_heading.png") center bottom / 66.6667vw auto no-repeat;}
.cp27 .heading__type01-1 {font-size: 4.26667vw; font-weight: bold; color: rgb(0, 57, 92); text-align: center;}
.cp27 .heading__type01-1.-skyblue {color: rgb(35, 123, 210);}
.cp27 .heading__type02 {display: flex; justify-content: center;}
.cp27 .heading__type02-1 {font-size: 3.2vw; font-weight: bold; color: rgb(0, 57, 92); text-align: center;}
.cp27 .cpInfo__list01 {background: rgb(255, 255, 255);}
.cp27 .cpInfo__item01 {padding: 2vw 4vw; border-bottom: 0.4vw solid rgb(232, 237, 240);}
.cp27 .cpInfo__defList01 {display: flex; font-size: 2.66667vw; font-weight: bold; color: rgb(0, 57, 92);}
.cp27 .cpInfo__defTtl01 {display: flex; align-items: center; width: 30%; padding: 1.33333vw 0px;}
.cp27 .cpInfo__defCont01 {width: 70%; padding: 1.33333vw 0px 1.33333vw 4vw; border-left: 0.133333vw solid rgb(0, 57, 92); line-height: 1.3;}
.cp27 .cpInfo__defContTxt01 {font-size: 2.66667vw; line-height: 1.5;}
.cp27 .cpInfo__list02 {margin-top: 1.86667vw;}
.cp27 .cpInfo__list02.-noMt {margin-top: 0px;}
.cp27 .cpInfo__item02 {position: relative; padding-left: 1em;}
.cp27 .cpInfo__item02 + li {margin-top: 1.86667vw;}
.cp27 .cpInfo__item02.-note {line-height: 1.5;}
.cp27 .cpInfo__item02.-note::before {content: "※"; top: 0px; left: 0px; width: 1em; height: 1em; background: none; color: rgb(217, 0, 0);}
.cp27 .cpInfo__item02::before {content: ""; position: absolute; left: 0.533333vw; top: 0.8vw; width: 1.86667vw; height: 1.86667vw; background: rgb(0, 57, 92);}
.cp27 .cpInfo__link01 {display: inline-block; padding-right: 4vw; background: url("https://img.hitou.or.jp/campaign/img/icon_blank-navy.png") right center / 2.66667vw auto no-repeat; color: rgb(0, 57, 92);}
.cp27 .cpInfo__link01:hover {text-decoration: none;}
.cp27 .cpInfo__btnWrapper {margin-top: 6.66667vw;}
.cp27 .cpInfo__btn {display: flex; justify-content: center; align-items: center; position: relative; width: 88vw; max-width: 96%; height: 14.6667vw; margin: 0px auto; background: rgb(179, 19, 63); text-decoration: none; border-radius: 2.66667vw; transition: 0.2s; font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif !important;}
.cp27 .cpInfo__btn:hover {background: rgb(204, 22, 74);}
.cp27 .cpInfo__btn:hover::before {background: rgb(204, 22, 74);}
.cp27 .cpInfo__btn::before {display: block; position: absolute; top: 50%; left: 50%; width: 93.3333vw; height: 9.33333vw; background: rgb(179, 19, 63); border-radius: 2.66667vw; z-index: 1; transform: translate(-50%, -50%); transition: 0.2s; content: "";}
.cp27 .cpInfo__btn::after {position: absolute; top: 50%; right: 3.2vw; display: block; width: 2.4vw; height: 2.4vw; border-top: 0.266667vw solid rgb(255, 255, 255); border-right: 0.266667vw solid rgb(255, 255, 255); transform-origin: 100% 0px; transform: rotate(45deg); content: ""; z-index: 2;}
.cp27 .cpInfo__btn.-closed::before {display: none;}
.cp27 .cpInfo__btn.-closed::after {display: none;}
.cp27 .cpInfo__btn.-closed:hover {background: rgb(179, 19, 63);}
.cp27 .cpInfo__btn-1 {font-size: 4.26667vw; font-weight: bold; color: rgb(255, 255, 255); z-index: 2;}
.cp27 .cpInfo__list03 {margin-top: 1.86667vw;}
.cp27 .cpInfo__list03.-noMt {margin-top: 0px;}
.cp27 .cpInfo__item03 {position: relative; padding-left: 1em;}
.cp27 .cpInfo__item03 + li {margin-top: 1.33333vw;}
.cp27 .cpInfo__item03::before {content: "・"; position: absolute; left: 0px;}
.cp27 .cpLead {font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Noto Serif JP", serif !important;}
.cp27 .cpLead__txt01 {display: flex; flex-direction: column;}
.cp27 .cpLead__txt01-1 {font-size: 5.33333vw; font-weight: bold; color: rgb(255, 255, 255); text-align: center; text-shadow: rgba(0, 0, 0, 0.9) 0vw 0vw 1.33333vw;}
.cp27 .cpLead__txt01-2 {display: inline-block; margin-top: 4vw; font-size: 3.46667vw; font-weight: bold; color: rgb(255, 255, 255); text-align: center;}
.cp27 .cpLead__txt01-3 {display: inline-block; margin-top: 4vw; font-size: 2.8vw; font-weight: bold; color: rgb(253, 255, 65); text-align: center;}
.cp27 .sns__list {display: flex; justify-content: center; z-index: 100;}
.cp27 .sns__item {width: 41px; height: 40px;}
.cp27 .sns__item + li {margin-left: 20px;}
.cp27 .sns__link {transition: 0.2s;}
.cp27 .sns__link:hover {opacity: 0.8;}
.cp27 .sns__img {max-width: 100%;}
}

/* ===== キービジュアル ===== */
.cp27 .cpKv {position: relative; overflow: hidden; z-index: 1;}
.cp27 .cpKv__inner {position: relative; left: 50%; transform: translateX(-50%); width: 1920px; aspect-ratio: 1920 / 700; container-type: inline-size;}
.cp27 .cpKv__imgWrapper, .cp27 .cpKv__img {display: block; width: 100%; height: auto;}
.cp27 .kvText {--u: calc(100cqw / 1920); --navy: #03385a; --blue: #247cd5; --cream: #fcf9ef; position: absolute; inset: 0; font-family: "Noto Serif JP", "Noto Serif CJK JP", "游明朝", YuMincho, "Hiragino Mincho ProN", serif; color: var(--navy); line-height: 1; font-weight: 700; pointer-events: none;}
.cp27 .kvText * {margin: 0; padding: 0;}
.cp27 .kvText__ribbon {position: absolute; left: calc(1102 * var(--u)); top: calc(39 * var(--u)); width: calc(74 * var(--u)); padding: calc(25 * var(--u)) 0 calc(46 * var(--u)); background: var(--blue); color: #fff; font-size: calc(35 * var(--u)); letter-spacing: calc(5 * var(--u)); writing-mode: vertical-rl; text-orientation: upright; display: flex; align-items: center; clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 19 * var(--u)), 0 100%);}
.cp27 .kvText__title {position: absolute; left: calc(870 * var(--u)); top: calc(110 * var(--u)); width: calc(194 * var(--u)); display: flex; flex-direction: column; align-items: center; font-weight: 500;}
.cp27 .kvText__titleMain {writing-mode: vertical-rl; font-size: calc(81 * var(--u)); line-height: calc(103.5 * var(--u)); font-feature-settings: "vpal"; height: calc(420 * var(--u));}
.cp27 .kvText__titleLine1 {letter-spacing: calc(4 * var(--u));}
.cp27 .kvText__year {margin-top: calc(-5 * var(--u)); font-size: calc(59 * var(--u)); font-weight: 700; letter-spacing: calc(3 * var(--u)); margin-right: calc(-3 * var(--u));}
.cp27 .kvText__period {position: absolute; left: calc(700 * var(--u)); top: calc(142 * var(--u)); width: calc(156 * var(--u)); display: flex; flex-direction: column; align-items: center;}
.cp27 .kvText__periodLabel {position: relative; writing-mode: vertical-rl; margin-left: calc(25 * var(--u)); padding: calc(6 * var(--u)) calc(6 * var(--u)); border: calc(2 * var(--u)) solid var(--navy); font-size: calc(18 * var(--u)); line-height: calc(22 * var(--u));}
.cp27 .kvText__periodLabel::after {content: ""; position: absolute; right: calc(-2 * var(--u)); top: 100%; width: calc(16 * var(--u)); height: calc(16 * var(--u)); margin-top: calc(-2 * var(--u)); border-right: calc(2 * var(--u)) solid var(--navy); background: linear-gradient(to top right, transparent calc(50% - 1.4 * var(--u)), var(--navy) calc(50% - 1.4 * var(--u)), var(--navy) calc(50% + 1.4 * var(--u)), transparent calc(50% + 1.4 * var(--u))), var(--cream); box-sizing: border-box;}
.cp27 .kvText__periodDate {display: flex; flex-direction: column; align-items: center; margin-top: calc(11 * var(--u)); font-size: calc(54 * var(--u)); letter-spacing: calc(-5 * var(--u));}
.cp27 .kvText__periodDate > span {margin-right: calc(-5 * var(--u));}
.cp27 .kvText__tilde {writing-mode: vertical-rl; font-size: calc(34 * var(--u)); margin: calc(6 * var(--u)) 0 calc(-3 * var(--u)); letter-spacing: 0;}
.cp27 .kvText__periodNote {margin-top: calc(11 * var(--u)); font-size: calc(20 * var(--u)); letter-spacing: calc(-0.5 * var(--u));}
.cp27 .kvText__band {position: absolute; left: calc(577 * var(--u)); top: calc(505 * var(--u)); display: flex; flex-direction: column; align-items: flex-end; transform: rotate(-9.8deg); transform-origin: left top; color: #fff; font-size: calc(25 * var(--u)); font-feature-settings: "palt";}
.cp27 .kvText__bandLine {background: var(--blue); padding: 0 calc(12 * var(--u)); line-height: calc(38 * var(--u)); white-space: nowrap;}
.cp27 .kvText__bandLine:first-child {margin-right: calc(26 * var(--u)); line-height: calc(41 * var(--u));}
.cp27 .kvText__bandLine:last-child {line-height: calc(35 * var(--u));}
.cp27 .kvText__prize {position: absolute; left: calc(1408 * var(--u)); top: calc(398 * var(--u)); width: calc(400 * var(--u)); display: flex; flex-direction: column; align-items: center; color: #fff; text-align: center;}
.cp27 .kvText__prizeLead {font-size: calc(30 * var(--u)); line-height: calc(39 * var(--u)); padding-bottom: calc(4 * var(--u)); width: calc(260 * var(--u)); background: linear-gradient(#fff, #fff) left bottom calc(3 * var(--u)) / 100% calc(1 * var(--u)) no-repeat, linear-gradient(rgba(255,255,255,.55), rgba(255,255,255,.55)) left bottom / 100% calc(2 * var(--u)) no-repeat;}
.cp27 .kvText__prizeAmount {margin-top: calc(4 * var(--u)); font-size: calc(59 * var(--u)); letter-spacing: calc(1 * var(--u));}
.cp27 .kvText__prizeAmount small {font-size: calc(36 * var(--u)); letter-spacing: 0;}
.cp27 .kvText__prizeNote {margin-top: calc(6 * var(--u)); font-size: calc(25 * var(--u)); line-height: calc(35 * var(--u));}
@media (max-width: 768px) {
.cp27 .cpKv__inner {width: 100%; aspect-ratio: 750 / 700;}
.cp27 .kvText {--sp: calc(100cqw / 750); --u: calc(var(--sp) * 0.78);}
.cp27 .kvText__ribbon {left: calc(486.5 * var(--sp)); top: calc(32.7 * var(--sp));}
.cp27 .kvText__title {left: calc(305.5 * var(--sp)); top: calc(88.1 * var(--sp));}
.cp27 .kvText__period {left: calc(172.9 * var(--sp)); top: calc(113.1 * var(--sp));}
.cp27 .kvText__band {left: calc(74.5 * var(--sp)); top: calc(397.5 * var(--sp));}
.cp27 .kvText__prize {--u: calc(var(--sp) * 0.735); left: calc(402 * var(--sp)); top: calc(494.3 * var(--sp));}
}
