/* LESS Document */
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFE8j75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFCMj75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFM8k75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFPYk75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/notosansjp/v56/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFLgk75s.ttf) format('truetype');
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs13FvgUE.ttf) format('truetype');
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs169vgUE.ttf) format('truetype');
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1_FvgUE.ttf) format('truetype');
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs18NvgUE.ttf) format('truetype');
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1y9ogUE.ttf) format('truetype');
}
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/oswald/v57/TK3_WkUHHAIjg75cFRf3bXL8LICs1xZogUE.ttf) format('truetype');
}
html,
body {
  width: 100%;
  height: 100%;
  scroll-behavior: smooth;
  overflow-x: hidden;
  overflow-y: auto;
}
body {
  min-width: inherit;
  scroll-behavior: smooth;
  scroll-padding-top: 3rem;
  background: #FFF;
  padding-top: 0;
}
body {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}
img {
  pointer-events: none;
  -webkit-user-drag: none;
}
a {
  color: #0062d8;
}
a:visited {
  color: #0062d8;
}
sup {
  font-size: 60%;
  vertical-align: baseline;
  line-height: normal;
}
img {
  width: 100%;
}
* {
  box-sizing: border-box;
  font-family: 'Noto Sans Japanese', 'Noto Sans JP', sans-serif;
}
.visually-hidden {
  display: none !important;
}
.sp-br {
  display: none;
}
@media screen and (max-width: 859px) {
  .sp-br {
    display: block !important;
  }
}
/* Color
--------------------------------------------------------------------------*/
/* link */
/* FONT
--------------------------------------------------------------------------*/
body {
  color: #111;
}
h1 {
  font-size: min(3.5rem, 5vw);
  line-height: min(4.6rem, 6.3vw);
  font-weight: 700;
  display: inline-block;
  text-align: center;
}
h1 span {
  display: inline-block;
  font-size: min(3.5rem, 5vw);
  line-height: min(4.6rem, 6.3vw);
  font-weight: 700;
  color: #de28c9;
}
h2 {
  font-size: min(2.1rem, 4.8vw);
  line-height: min(2.8rem, 6.4vw);
  letter-spacing: 0.05rem;
  font-weight: 700;
  color: #FFFFFF;
  background: linear-gradient(90deg, #cf46c1 0%, #e086d8 100%);
  padding: 1.4rem 3% 1.6rem 3%;
  margin-bottom: 2rem;
  border-radius: 0.5rem;
}
h2 span {
  color: #3e3e3e;
  font-size: 46%;
  font-weight: 400;
  display: block;
}
h3 {
  font-size: min(1.9rem, 4.6vw);
  letter-spacing: 0.05rem;
  font-weight: 500;
  color: #111111;
  background: url("../../event/img/ttl-h3.webp") bottom left no-repeat;
  background-size: 100% auto;
  padding-bottom: 2.2rem;
  margin-bottom: 1.5rem;
}
h3 span {
  color: #3e3e3e;
  font-size: 65%;
  font-weight: 400;
  display: block;
}
h4 {
  font-size: min(1.8rem, 3.2vw);
  font-weight: 700;
  color: #0262b1;
}
h5 {
  font-size: min(1.8rem, 3.2vw);
  font-weight: 500;
}
h6 {
  font-size: min(1.6rem, 2.2vw);
  font-weight: 500;
}
p,
td,
th,
dt,
dd,
li {
  font-size: 1.6rem;
  letter-spacing: 0.05rem;
}
.tx-l {
  font-size: 240%;
}
.tx-s {
  font-size: 70%;
}
.tx-c {
  text-align: center;
}
strong {
  font-weight: 700 !important;
  color: #de28c9;
  text-decoration: underline;
}
.info-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 14px;
  color: #333;
  margin-bottom: 3rem;
}
.info-table th,
.info-table td {
  border: 1px solid #ccc;
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
  line-height: 1.6;
}
.info-table th {
  width: 100px;
  background-color: #e9e1f0;
  /* 薄い紫 */
  font-weight: normal;
  white-space: nowrap;
}
.info-table td {
  width: auto;
}
@media (max-width: 1249px) {
  h2 {
    padding: 1.4vw 3% 1.6vw 3%;
    margin-bottom: 2vw;
    border-radius: 0.5vw;
  }
  h3 {
    background-size: 100% auto;
    padding-bottom: 2.2vw;
    margin-bottom: 1.5vw;
  }
}
@media (max-width: 859px) {
  h1 {
    font-size: 7vw;
    line-height: 9vw;
  }
  h1 span {
    font-size: 7vw;
    line-height: 9vw;
  }
  h2 {
    padding: 2.4vw 5% 2.8vw 5%;
    margin-bottom: 3.5vw;
    border-radius: 1vw;
  }
  h3 {
    padding-bottom: 2.2vw;
    margin-bottom: 3.5vw;
    padding: 1vw 0 5vw 0;
    background: url("../../event/img/ttl-h3-sp.webp") bottom left no-repeat;
    background-size: 100% auto;
  }
  .info-table {
    margin-bottom: 4vw;
  }
  .info-table,
  .info-table tbody,
  .info-table tr,
  .info-table th,
  .info-table td {
    display: block;
    width: 100%;
  }
  .info-table th {
    white-space: normal;
    border-bottom: none;
  }
  .info-table td.content {
    border-top: none;
  }
  .info-table tr {
    margin-bottom: -1px;
  }
  .tx-c {
    text-align: left;
  }
}
/* LAYOUT
--------------------------------------------------------------------------*/
html {
  scroll-behavior: smooth;
}
.layout-base {
  position: relative;
  box-sizing: border-box;
}
.layout-base-a {
  position: absolute;
  box-sizing: border-box;
}
img {
  width: 100%;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}
body {
  background: #cd54c3;
}
main {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 1980px;
  display: block;
  margin: auto;
  z-index: 2;
}
main article {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  margin: auto;
  background: #FFF;
}
main article section {
  width: 100%;
}
main article section.key-v {
  position: relative;
  box-sizing: border-box;
  display: block;
  height: auto;
  max-width: 1980px;
  min-height: 744px;
  margin: auto;
  background: url("../../event/img/kv-bg.webp") top center no-repeat;
  background-size: 1980px 744px;
  z-index: 3;
}
main article section.key-v .key-v-wrap {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 1600px;
  margin: auto;
}
main article section.key-v .key-v-wrap .key-v1,
main article section.key-v .key-v-wrap .key-v2,
main article section.key-v .key-v-wrap .key-v3,
main article section.key-v .key-v-wrap .key-v4,
main article section.key-v .key-v-wrap .key-v5,
main article section.key-v .key-v-wrap .key-v6,
main article section.key-v .key-v-wrap .key-v7,
main article section.key-v .key-v-wrap .key-v8,
main article section.key-v .key-v-wrap .key-noa {
  position: absolute;
  box-sizing: border-box;
  display: block;
  width: 100%;
}
main article section.key-v.kv3 {
  min-height: 742px;
  background: url("../../limited/img/kv-bg.webp") top center no-repeat;
  background-size: 1980px 742px;
  margin: 0 auto 4rem auto;
  z-index: 3;
}
main article section.key-v.kv4 {
  min-height: 742px;
  background: url("../../campaign/img/kv-bg.webp") top center no-repeat;
  background-size: 1980px 742px;
  margin: 0 auto 4rem auto;
  z-index: 3;
  overflow: hidden;
}
main article section.cnt-area {
  position: relative;
  box-sizing: border-box;
  background: #FFF;
}
main article section.cnt-area .cnt-wrap {
  position: relative;
  box-sizing: border-box;
  width: 80%;
  margin: 0 auto;
  max-width: 1200px;
  padding: 0 0 3.5rem 0;
}
main article section.cnt-area .cnt-wrap h1 {
  position: relative;
  text-align: center;
  width: 100%;
  margin-bottom: 6rem;
}
main article section.cnt-area .cnt-wrap h1 span {
  color: #de28c9;
}
main article section.cnt-area .cnt-wrap h1:after {
  position: absolute;
  bottom: -2.5rem;
  content: '';
  display: block;
  left: 50%;
  transform: translateX(-50%);
  width: 10rem;
  height: 6px;
  background: #ff99dd;
  border-radius: 50px;
}
main article section.cnt-area .cnt-wrap p {
  margin-bottom: 3rem;
  line-height: 2.8rem;
}
main article .bnr-x {
  position: relative;
  box-sizing: border-box;
  width: 78%;
  margin: 5rem auto 4rem auto;
}
main article .bnr-x figure.bnr-x-body figcaption {
  position: absolute;
  top: 1.8rem;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 3.2rem;
  font-weight: 900;
  text-align: center;
  color: #ea3262;
}
main article .bnr-x figure.bnr-x-body figcaption span {
  font-size: 2.3rem;
  line-height: 2.8rem;
  font-weight: 700;
  color: #480005;
  display: block;
}
main article .bnr-x figure.bnr-x-bt {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 51%;
  bottom: -2.7rem;
  left: 25%;
  transition: 0.5s;
}
main article .bnr-x figure.bnr-x-bt figcaption {
  position: absolute;
  margin: auto;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  color: #FFF;
  padding: 0 1rem 0.3rem 0;
}
main article .bnr-x2 {
  position: relative;
  box-sizing: border-box;
  width: 78%;
  margin: 5rem auto 2rem auto;
}
main article .bnr-x2 figure.bnr-x-body figcaption {
  position: absolute;
  top: 2.2rem;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 3.4rem;
  font-weight: 900;
  text-align: center;
  color: #ea3262;
}
main article .bnr-x2 figure.bnr-x-body figcaption span {
  font-size: 2.6rem;
  line-height: 3.4rem;
  font-weight: 700;
  color: #480005;
  display: block;
}
@keyframes rotate-lg {
  0% {
    transform: rotate(0deg) scale(0.6);
  }
  50% {
    transform: rotate(60deg) scale(1);
  }
  100% {
    transform: rotate(0deg) scale(0.6);
  }
}
@keyframes fade-sp {
  0%,
  100% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
}
@keyframes fade-kb {
  0% {
    opacity: 0;
    transform: translateY(0);
    filter: blur(0px);
  }
  100% {
    opacity: 0.5;
    transform: translateY(-0.4rem);
    filter: blur(0.2rem);
  }
}
.app-bt {
  position: relative;
  box-sizing: border-box;
  display: flex;
  width: 80%;
  margin: 0 auto 3rem auto;
  gap: 3%;
}
.app-bt figure a {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  display: block;
}
.app-bt figure a figcaption {
  position: absolute;
  margin: auto;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  color: #FFF;
  padding: 1.2rem 0;
  width: 80%;
  top: 0;
  left: 7%;
}
@media screen and (max-width: 1599px) {
  main article section.key-v {
    min-height: 46vw;
    margin: auto;
    background: url("../../event/img/kv-bg.webp") top center no-repeat;
    background-size: 123.7% auto;
  }
  main article section.key-v.kv3 {
    min-height: 46vw;
    background: url("../../limited/img/kv-bg.webp") top center no-repeat;
    background-size: 123.7% auto;
    margin: 0 auto 4vw auto;
  }
  main article section.key-v.kv4 {
    min-height: 46vw;
    background: url("../../campaign/img/kv-bg.webp") top center no-repeat;
    background-size: 123.7% auto;
    margin: 0 auto 4vw auto;
  }
  main article section.cnt-area {
    position: relative;
    box-sizing: border-box;
  }
  main article section.cnt-area .cnt-wrap {
    width: 80%;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 0 6.5vw 0;
  }
  main article section.cnt-area .cnt-wrap h1 {
    margin-bottom: 6vw;
  }
  main article section.cnt-area .cnt-wrap h1:after {
    bottom: -2.5vw;
    width: 10vw;
  }
  main article section.cnt-area .cnt-wrap p {
    margin-bottom: 4.2vw;
  }
  main article .bnr-x {
    margin: 0 auto 1.8vw auto;
  }
  main article .bnr-x figure.bnr-x-body figcaption {
    top: 2vw;
    font-size: 3.2vw;
  }
  main article .bnr-x figure.bnr-x-body figcaption span {
    font-size: 2.4vw;
    line-height: 3vw;
  }
  main article .bnr-x figure.bnr-x-bt {
    bottom: -3.1vw;
  }
  main article .bnr-x figure.bnr-x-bt figcaption {
    font-size: 1.8vw;
    padding: 0 1vw 0.3vw 0;
  }
  main article .bnr-x2 {
    margin: 0 auto 1.8vw auto;
  }
  main article .bnr-x2 figure.bnr-x-body figcaption {
    top: 2.5vw;
    font-size: 3.4vw;
  }
  main article .bnr-x2 figure.bnr-x-body figcaption span {
    font-size: 2.7vw;
    line-height: 3vw;
  }
  .app-bt {
    position: relative;
    box-sizing: border-box;
    display: flex;
    width: 80%;
    margin: 0 auto 3vw auto;
    gap: 3%;
  }
  .app-bt figure a {
    position: relative;
    box-sizing: border-box;
    width: 100%;
  }
  .app-bt figure a figcaption {
    font-size: 2vw;
    padding: 1.2vw 0;
    width: 80%;
    top: 0;
    left: 7%;
  }
}
@media screen and (max-width: 859px) {
  main article section.key-v {
    min-height: 86vw;
    margin: auto;
    background: url("../../event/img/kv-bg-sp.webp") top center no-repeat;
    background-size: 100% auto;
  }
  main article section.key-v.kv2 {
    min-height: 100vw;
    background: url("../../event/img/kv-bg2-sp.webp") top center no-repeat #FFF;
    background-size: 100% auto;
  }
  main article section.key-v.kv3 {
    min-height: 92vw;
    background: url("../../limited/img/kv-bg-sp.webp") top center no-repeat #FFF;
    background-size: 100% auto;
    margin: 0 auto 6vw auto;
  }
  main article section.key-v.kv4 {
    min-height: 92vw;
    background: url("../../campaign/img/kv-bg-sp.webp") top center no-repeat #FFF;
    background-size: 100% auto;
    margin: 0 auto 6vw auto;
  }
  main article section.cnt-area {
    position: relative;
    box-sizing: border-box;
  }
  main article section.cnt-area .cnt-wrap {
    width: 80%;
    margin: 0 auto;
    max-width: 1200px;
    padding: 2vw 0 6vw 0;
  }
  main article section.cnt-area .cnt-wrap h1 {
    margin-bottom: 11vw;
    display: block;
  }
  main article section.cnt-area .cnt-wrap h1 br {
    display: none;
  }
  main article section.cnt-area .cnt-wrap h1 span {
    display: block;
  }
  main article section.cnt-area .cnt-wrap h1:after {
    bottom: -5.8vw;
    width: 18vw;
  }
  main article section.cnt-area .cnt-wrap p {
    margin-bottom: 4.2vw;
    font-size: 1.5rem;
    line-height: 2.6rem;
  }
  main article section.cnt-area .cnt-wrap {
    padding: 2vw 0 13vw 0;
  }
  main article .bnr-x {
    width: 100%;
    margin: 8vw auto 1.8vw auto;
  }
  main article .bnr-x figure.bnr-x-body figcaption {
    width: 72%;
    top: 3.8vw;
    left: 19%;
    font-size: 4.6vw;
    text-align: left;
  }
  main article .bnr-x figure.bnr-x-body figcaption span {
    font-size: 3.4vw;
    line-height: 3.9vw;
  }
  main article .bnr-x figure.bnr-x-bt {
    width: 72%;
    left: 14%;
    bottom: -6.8vw;
  }
  main article .bnr-x figure.bnr-x-bt figcaption {
    font-size: 3.4vw;
    padding: 0 1vw 0.5vw 0;
  }
  main article .bnr-x2 {
    width: 100%;
    margin: 8vw auto 2.8vw auto;
  }
  main article .bnr-x2 figure.bnr-x-body figcaption {
    width: 70%;
    left: 13%;
    top: 4vw;
    font-size: 4.9vw;
    text-align: left;
  }
  main article .bnr-x2 figure.bnr-x-body figcaption span {
    font-size: 3.6vw;
    line-height: 4vw;
  }
  .app-bt {
    position: relative;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    width: 80%;
    margin: 0 auto 6vw auto;
    gap: 2vw;
  }
  .app-bt figure {
    width: 100%;
  }
  .app-bt figure a {
    position: relative;
    box-sizing: border-box;
    width: 100%;
  }
  .app-bt figure a figcaption {
    font-size: 4vw;
    padding: 2.6vw 0;
    width: 80%;
    top: 0;
    left: 7%;
  }
}
/* NO LINK */
.no-link {
  pointer-events: none !important;
}
/* header */
header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10;
}
header .header-wrap {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 1600px;
  margin: auto;
}
header .header-wrap .daiichi {
  position: relative;
  box-sizing: border-box;
  display: block;
  width: 17%;
}
header .header-wrap .daiichi a {
  display: block;
}
.sidebarIconToggle {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  box-sizing: border-box;
  cursor: pointer;
  z-index: 11;
  right: 0;
  top: 0;
  width: 136px;
  height: 82px;
  background: #ea3262;
  border-radius: 0 0 0.8rem 0.8rem;
  padding: 0;
  transition: all 0.3s;
}
.sidebarIconToggle .spinner {
  position: relative;
  display: block;
  width: 50px;
  height: 3px;
  border-radius: 2px;
  background-color: #fff;
  float: none;
  transition: all 0.3s;
}
.sidebarIconToggle div.spinner-tx {
  text-align: center;
  font-size: 1rem;
  line-height: 1rem;
  letter-spacing: 0.08rem;
  color: #fff;
  font-weight: 700;
  opacity: 1;
  transition: all 0.3s;
}
.diagonal.part-1 {
  position: relative;
  box-sizing: border-box;
  float: left;
  background-color: #fff;
  transition: all 0.3s;
}
.diagonal.part-2 {
  box-sizing: border-box;
  position: relative;
  float: left;
  background-color: #fff;
  transition: all 0.3s;
}
input[type=checkbox]:checked ~ .sidebarIconToggle {
  transition: all 0.3s;
  width: 72px;
  height: 60px;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .horizontal {
  opacity: 0;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > div.spinner-tx {
  opacity: 0;
  margin-top: -1.2rem;
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
  transform: scale(0.7) translateY(0.55rem) rotate(135deg);
}
input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
  transform: scale(0.7) translateY(-0.55rem) rotate(-135deg);
}
#sidebarMenu {
  position: relative;
  box-sizing: border-box;
  position: fixed;
  display: block !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 0 !important;
  margin: 0;
  overflow: auto;
  background: #ff9be6;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
#sidebarMenu ul.sidebarMenuInner {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 86%;
  max-height: inherit;
  margin: 10rem auto 3rem auto;
  gap: 0.5rem 0;
}
#sidebarMenu ul.sidebarMenuInner li a {
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
  margin-bottom: 0.6rem;
  padding: 0 0 0 1.8rem;
  font-size: 1.4rem;
  color: #cc3458;
  font-weight: 500;
  border: none;
  transition: 0.5s ease;
}
#sidebarMenu ul.sidebarMenuInner li a:before {
  position: absolute;
  display: block;
  content: url("../img/icon-arrow.svg");
  width: 1rem;
  left: 0;
  top: 0;
}
#sidebarMenu ul.sidebarMenuInner li.sns-bt {
  width: 5rem;
  margin-top: 2rem;
}
#sidebarMenu ul.sidebarMenuInner li.sns-bt a:before {
  content: none !important;
}
#sidebarMenu ul.sidebarMenuInner li.no-link a {
  color: #AF546A;
}
#sidebarMenu ul.sidebarMenuInner li.no-link a:before {
  content: url("../img/icon-arrow-blk.svg");
}
input[type="checkbox"]:checked ~ #sidebarMenu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
header#main-menu:has(input:checked) {
  animation: none !important;
  transform: translateY(0%) !important;
  opacity: 1 !important;
  transition: all 0s !important;
}
input[type=checkbox] {
  transition: all 0.3s;
  box-sizing: border-box;
  display: none;
}
@keyframes example {
  100% {
    opacity: 1;
  }
}
@media screen and (max-width: 1199px) {
  header .header-wrap .daiichi {
    width: 22%;
  }
  .sidebarIconToggle {
    gap: 0.5rem;
    width: 100px;
    height: 64px;
    border-radius: 0 0 0.5rem 0.5rem;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle {
    width: 72px;
    height: 60px;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transform: scale(0.7) translateY(0.51rem) rotate(135deg);
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transform: scale(0.7) translateY(-0.51rem) rotate(-135deg);
  }
}
@media screen and (max-width: 679px) {
  header .header-wrap .daiichi {
    width: 34%;
  }
  .sidebarIconToggle {
    gap: 0.4rem;
    width: 80px;
    height: 58px;
    border-radius: 0 0 0.5rem 0.5rem;
  }
  .sidebarIconToggle .spinner {
    width: 40px;
  }
  .sidebarIconToggle div.spinner-tx {
    font-size: 0.8rem;
    line-height: 0.8rem;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle {
    width: 58px;
    height: 45px;
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-1 {
    transform: scale(0.7) translateY(0.45rem) rotate(135deg);
  }
  input[type=checkbox]:checked ~ .sidebarIconToggle > .diagonal.part-2 {
    transform: scale(0.7) translateY(-0.45rem) rotate(-135deg);
  }
  #sidebarMenu ul.sidebarMenuInner {
    margin: 15vw auto 8vw auto;
    gap: 0.5vw 0;
  }
  #sidebarMenu ul.sidebarMenuInner li a {
    margin-bottom: 0.9vw;
  }
}
footer {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 2rem 8% 4rem 8%;
  text-align: center;
}
footer p {
  font-size: 1rem;
  color: #FFFFFF;
}
.key-v1,
.key-v2,
.key-v3,
.key-v4,
.key-v5,
.key-v6,
.key-v7,
.key-v8,
.cc1,
.cc2,
.cc3,
.cc4,
.cc5,
.cc6,
.cc7,
.cc8,
.cc9,
.cc10,
.cc11 {
  opacity: 0;
}
.cnt-end {
  position: absolute;
  box-sizing: border-box;
  top: 0;
  background: rgba(0, 0, 0, 0.9);
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 4;
  flex-wrap: wrap;
}
.cnt-end .cnt-end-wp {
  position: relative;
  box-sizing: border-box;
  width: 100%;
}
.cnt-end .cnt-end-wp p {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  text-align: center;
  font-size: 2rem;
  color: #FFF;
  padding: 1% 5%;
}
.cnt-end .cnt-end-wp .app-bt {
  width: 300px;
}
.cnt-end .cnt-end-wp .app-bt figure a figcaption {
  padding: 0.3rem 0;
}
.daiichi.daiichi-bb {
  background: #FFFFFF;
}
@media screen and (max-width: 1599px) {
  .cnt-end .cnt-end-wp p {
    font-size: 2rem;
  }
  .cnt-end .cnt-end-wp .app-bt {
    width: 22%;
  }
  .cnt-end .cnt-end-wp .app-bt figure a figcaption {
    padding: 0.4vw 0;
  }
}
@media screen and (max-width: 859px) {
  .cnt-end .cnt-end-wp p {
    font-size: 5vw;
    margin-bottom: 3vw;
  }
  .cnt-end .cnt-end-wp .app-bt {
    width: 38%;
  }
  .cnt-end .cnt-end-wp .app-bt figure a figcaption {
    padding: 0.2vw 0 0.7vw 0;
  }
}
@media screen and (min-width: 860px) {
  main article a {
    display: block;
    transition: 0.5s;
  }
  main article a:hover figure.bnr-x-bt {
    transform: scale(1.1);
  }
  main article .app-bt figure a {
    display: block;
    transition: 0.5s;
  }
  main article .app-bt figure a:hover {
    transform: scale(1.1);
  }
}
