@charset "UTF-8";
/**** lity **********************/
@import url("https://fonts.googleapis.com/css2?family=League+Gothic&family=Noto+Sans+JP:wght@100..900&display=swap");
body .lity {
 background: rgba(255, 255, 255, .8);
}

.lity-content {
 padding: 4% 3%;
 background-color: #ffffff;
}

.lity-image img {
 height: 85vh;

 -o-object-fit: contain;
    object-fit: contain;
}
@media (max-width: 769px) {
 .lity-image img {
  height: auto;
 }
}

.lity {
 -webkit-backdrop-filter: blur(3px);
         backdrop-filter: blur(3px);
}

/* ///////////////////////////// */
@font-face {
 font-weight: normal;
 font-style: normal;
 font-family: "LINE SEED";
 src: url("../font/LINESeedJP_OTF_Rg.woff") format("woff"), url("../font/LINESeedJP_OTF_Rg.woff2") format("woff2");
}
@font-face {
 font-weight: bold;
 font-style: normal;
 font-family: "LINE SEED";
 src: url("../font/LINESeedJP_OTF_Bd.woff") format("woff"), url("../font/LINESeedJP_OTF_Bd.woff2") format("woff2");
}
@font-face {
 font-weight: 900;
 font-style: normal;
 font-family: "LINE SEED";
 src: url("../font/LINESeedJP_OTF_Eb.woff") format("woff"), url("../font/LINESeedJP_OTF_Eb.woff2") format("woff2");
}
/* ///// variable ///////////////////////////////// */
:root {
 --f-font-base: "Noto Sans JP", sans-serif;
 --f-font-02: "LINE SEED", sans-serif;
 --f-font-03: "League Gothic", sans-serif;
 /* bg */
 --bg: #f7e0e0;
 --bg-main: #ffffff;
 --bg-cont: #ffffff;
 /* color */
 --c-txt-base: #000000;
 --c-txt-link: #ca235b;
 --c-01: #ebd4a5;
 --c-01-con: #272920;
 --c-02: #646060;
 --c-02-con: #ffffff;
 --c-03: #ffe2e8;
 --c-03-con: #d13755;
 --c-04: #e2ecff;
 --c-04-con: #3346a3;
 --c-05: #f3e6fb;
 --c-05-con: #75478a;
 --c-06: #ffffff;
 --c-06-con: #ffffff;
 --c-07: #a50942;
 --c-08: #005286;
 --c-09: #cc0769;
 --c-10: #148edb;
 --c-11: #005286;
 --c-12: #fff9d8;
 --c-12-con: #b3a558;
 --c-13: #db185f;
 --c-13-con: #ffffff;
}

/* ///// founfation /////////////////////////////////  ****/
body {
 font-weight: 400;
 font-size: clamp(14px, 1.8vw, 18px);
 font-family: var(--f-font-base);
 line-height: 1.6;
}

main * {
 box-sizing: border-box;
 color: var(--c-txt-base);
 letter-spacing: .1rem;
 font-weight: inherit;
 font-size: inherit;
 font-family: inherit;
 line-height: inherit;

 font-feature-settings: "palt";
}

main a {
 padding-bottom: .2em;
 background: linear-gradient(transparent 95%, var(--c-txt-link) 0%);
 color: var(--c-txt-link);
}

/* ///// layout /////////////////////////////////  ****/
body {
 background-color: var(--bg);
}

.l_main {
 background-color: var(--bg-main);
}

.l_main ,
.l_width_main {
 position: relative;
 margin: 0 auto;
 width: min(100%, 1200px);
}

.l_width_full {
 margin: 0 calc(50% - 50vw);
 width: 100vw;
}

.l_container {
 position: relative;
 z-index: 1;
 padding-bottom: 4.44em;
 background: var(--bg-cont);
}

[class*=l_container] {
 display: flex;
 align-items: center;
 flex-direction: column;
 margin: 0 auto;
}

.l_container {
 width: 92.3%;
}

.l_container-l {
 width: 92.3%;
}

@media (max-width: 769px) {
 [class*=l_container] {
  width: 95%;
 }
}
.l_content {
 display: flex;
 gap: 3em;
 flex-direction: column;
 margin-top: 1em;
 width: 95%;
}
@media (max-width: 769px) {
 .l_content {
  gap: 2em;
  width: 100%;
 }
}

/* ///// component ///////////////////////////////// */
/**** text **********************/
/* text-weight */
.c_txtw-b {
 font-weight: 900;
}

/* text-align */
.c_txta-c {
 text-align: center;
}

/* text-color */
.c_color-a {
 color: var(--c-09);
}

.c_color-b {
 color: var(--c-10);
}

.c_color-c {
 color: var(--c-11);
}

/* text-size */
.c_txts-s {
 font-size: clamp(12px, 1.8vw, 16px);
}

.c_txts-l {
 font-size: clamp(16px, 1.8vw, 22px);
}

.c_txts-xl {
 font-size: clamp(18px, 1.8vw, 28px);
}

.c_txts-xxl {
 font-size: clamp(22px, 1.8vw, 30px);
}

/**** ttl **********************/
.c_ttl-chapter {
 padding: .5em;
 width: 100%;
 background-color: var(--c-01);
 color: var(--c-01-con);
 font-weight: 700;
 font-family: var(--f-font-02);
 line-height: 1;
}

.c_ttl-section {
 margin-bottom: .5em;
 padding-bottom: .2em;
 border-bottom: solid 2px;
}

/**** btn **********************/
.c_btn-a a {
 display: inline-block;
 position: relative;
 padding: .5em 4em .5em 3em;
 background: none;
 background-color: var(--c-13);
 color: var(--c-13-con);
 text-align: center;
 font-weight: bold;
 filter: drop-shadow(0px 2px 3px var(--c-13));
}

.c_btn-a a::before ,
.c_btn-a a::after {
 position: absolute;
 top: 0;
 right: 8%;
 bottom: 0;
 margin: auto;
 width: .2rem;
 height: .8rem;
 border: 0;
 border-radius: 10rem;
 background-color: var(--c-02-con);
 content: "";
}

.c_btn-a a:before {
 top: .4rem;
 transform: rotate(45deg);
}

.c_btn-a a:after {
 top: -.4rem;
 transform: rotate(-45deg);
}

/**** attention **********************/
[class*=c_attention] {
 display: flex;
 gap: .6em;
 flex-direction: column;
}
[class*=c_attention] p {
 margin-top: .4em;
 margin-left: 1em;
 text-indent: -1em;
 font-size: inherit;
 line-height: 1.2;
}
[class*=c_attention] p::before {
 content: "※";
}

.c_attention-a p {
 margin-top: .4em;
 margin-left: 1em;
 text-indent: -1em;
 font-size: inherit;
 line-height: 1.4;
}
.c_attention-a p::before {
 padding-right: .3em;
 content: "・";
}

.c_attention-b {
 gap: .2em;
 margin-top: 1em;
}
.c_attention-b p {
 color: var(--c-02);
}

/* ///// project ///////////////////////////////// */
/**** lead **********************/
.p_summary_lead {
 padding-top: 3em;
 text-align: center;
 font-weight: 700;
}

.p_summary_txt {
 margin: 2em 0;
 padding: 2em 4em;
 border: solid 1px var(--c-12-con);
 border-radius: 10px;
 background-color: var(--c-12);
 text-align: center;
}
@media (max-width: 769px) {
 .p_summary_txt {
  padding: 1em .5em;
 }
}

.p_summary_entryBtn {
 margin-top: 2em;
}

/**** prize **********************/
[class*=l_prizeCard-] {
 display: flex;
 gap: 2.5em;
 flex-direction: column;
 padding: 1em 2em;
 text-align: center;
}
@media (max-width: 769px) {
 [class*=l_prizeCard-] {
  padding: 1em .5em;
 }
}
[class*=l_prizeCard-] .l_prizeCard_ttl {
 padding: 1em;
 background-color: var(--c-06);
}
[class*=l_prizeCard-] .l_prizeCard_ttl h3 {
 margin-bottom: 1em;
 font-weight: 700;
}
[class*=l_prizeCard-] .l_prizeCard_prize {
 display: flex;
 gap: 1em;
 flex-direction: column;
 font-weight: 700;
}
[class*=l_prizeCard-] .l_prizeCard_txt {
 text-align: left;
}
[class*=l_prizeCard-] .l_prizeCard_txt p {
 word-break: break-all;
}
[class*=l_prizeCard-] .c_attention-b {
 margin-top: 0;
}

.l_prizeCard-a {
 background-color: var(--c-03);
}
.l_prizeCard-a :is(h3, .l_prizeCard_prize p:first-child) {
 color: var(--c-03-con);
}

.l_prizeCard-b {
 background-color: var(--c-04);
}
.l_prizeCard-b :is(h3, .l_prizeCard_prize p:first-child) {
 color: var(--c-04-con);
}

.l_prizeCard-c {
 background-color: var(--c-05);
}
.l_prizeCard-c :is(h3, .l_prizeCard_prize p:first-child) {
 color: var(--c-05-con);
}

/**** q and a **********************/
.p_qAndA dl {
 display: flex;
 gap: 1.5em;
 flex-direction: column;
 margin-top: 1em;
}
.p_qAndA dl :is(dt, dd) {
 margin-top: .4em;
 margin-left: 1.3em;
 text-indent: -1.3em;
 word-break: break-all;
 font-size: inherit;
 line-height: 1.2;
}
.p_qAndA dl dt {
 color: var(--c-07);
}
.p_qAndA dl dd {
 color: var(--c-08);
}

/* /////  ///////////////////////////////// */
.u_mt-m {
 margin-top: 1em;
}

/* ///// responsive ///////////////////////////////// */
.sp {
 display: none;
}

.pc {
 display: block;
}

.br_pc {
 display: block;
}

@media (max-width: 769px) {
 .sp {
  display: block;
 }
 .pc {
  display: none;
 }
 .br {
  display: block;
 }
 .br_pc {
  display: none;
 }
}
/* /////////////////////////////////////////////////// */
