@charset "UTF-8";


@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, picture, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

body { background: #fff; box-sizing: border-box; overflow-x: hidden; }

article, aside, dialog, figure, footer, header, hgroup, nav, section { display: block; }

a { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

ul, ol { list-style: none; }

picture { display: block; }

/************************************************
common
************************************************/
.wrapper { width: 100%; max-width: 750px; background: inherit; margin: 0 auto; font-family: "Noto Sans JP", sans-serif; font-weight: 400; overflow: clip; }

.wrapper section { overflow: hidden; }

.wrapper .inner { width: 100%; margin: 0 auto; max-width: 750px; position: relative; box-sizing: border-box; }

.wrapper img { display: block; width: 100%; height: auto; margin: 0 auto; }

/************************************************
PARTS
************************************************/
.img, .hdg { font-size: 0; line-height: 0; }

.img img, .hdg img { max-width: 100%; height: auto; }

.wrap-btn1 { position: relative; }

.wrap-btn1 .btn1 { position: absolute; width: calc(620 / 750 * 100%); left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: min(250px, calc(250 / 750 * 100vw)); }

.wrap-btn1 .btn2 { position: absolute; width: calc(470 / 750 * 100%); left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: min(150px, calc(150 / 750 * 100vw)); }

.wrap-attend1 { background-color: #a50519; padding: clamp(15px, 4vw, 30px); }

.list-attend1 li { display: table; color: #fff; font-size: clamp(12px, 3.2vw, 24px); line-height: 1.6; font-weight: 300; }

.list-attend1 li + li { margin-top: clamp(5px, 1.3vw, 10px); }

.list-attend1 li .wrap, .list-attend1 li .nowrap { display: table-cell; vertical-align: top; }

.list-attend1 li .nowrap { white-space: nowrap; }

.list-menu { display: flex; justify-content: space-between; background-color: #000000; padding-block: clamp(10px, 2.67vw, 20px); }

.list-menu > li { display: flex; width: 25%; justify-content: center; }

.list-menu > li a { display: flex; width: 100%; height: 100%; box-sizing: border-box; align-items: center; justify-content: center; text-align: center; font-size: clamp(16px, 4.26vw, 32px); line-height: 1.4; padding-top: clamp(5px, 1.33vw, 10px); padding-bottom: clamp(20px, 5.33vw, 40px); color: #fff; text-decoration: none; border-left: 1px solid #fff; position: relative; }

.list-menu > li a::after { content: ""; position: absolute; width: clamp(7px, 1.86vw, 14px); height: clamp(7px, 1.86vw, 14px); border-top: 2px solid #fff; border-right: 2px solid #fff; bottom: 13%; left: 50%; -webkit-transform: translateX(-50%) rotate(135deg); transform: translateX(-50%) rotate(135deg); }

.list-menu > li:first-child a { font-size: clamp(10px, 5.33vw, 40px); border-left: none; }

.acc-area .inner { padding: clamp(20px, 4.6vw, 35px); }

.acc-area .txt { background-color: transparent; border: none; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; text-align: left; font-size: clamp(14px, 3.73vw, 28px); line-height: 2; font-family: "Noto Sans JP", sans-serif; font-weight: 400; padding: 0; width: 100%; color: #000; }

.acc-area .txt.hide { display: none; }

.acc-area .txt.hide.accordionActive { display: block; }

.acc-area .attend { display: block; font-size: clamp(12px, 3.2vw, 24px); line-height: 1.6; font-weight: 300; margin-top: clamp(5px, 1.3vw, 10px); }

.acc-area .mgt1em { display: block; margin-top: 1em; }

.acc-area .wrap-acc { position: relative; padding-bottom: clamp(20px, 4.6vw, 40px); }

.acc-area .wrap-acc button::after { content: ""; position: absolute; width: clamp(7px, 1.86vw, 14px); height: clamp(7px, 1.86vw, 14px); border-top: 2px solid #A50519; border-right: 2px solid #A50519; bottom: clamp(25px, 6.66vw, 50px); right: 10px; transition: .3s; -webkit-transform: rotate(135deg); transform: rotate(135deg); }

.acc-area .wrap-acc:has(button.accordionActive) button::after { -webkit-transform: rotate(-45deg) translateY(0.5rem); transform: rotate(-45deg) translateY(0.5rem); }

.about-attenir { padding-block: clamp(15px, 4vw, 30px); padding-inline: clamp(25px, 6.66vw, 50px); }

.about-attenir .txt { font-size: clamp(14px, 3.73vw, 28px); line-height: 1.6; border-top: 1px solid #000; border-bottom: 1px solid #000; text-align: center; padding-block: clamp(10px, 2.66vw, 20px); }

.about-attenir .attend { margin-top: clamp(5px, 1.3vw, 10px); line-height: 1.6; font-size: clamp(12px, 3.2vw, 24px); }

.list-step { display: flex; }

.wrap-btn2 { position: relative; }

.wrap-btn2 .btn1 { position: absolute; width: calc(620 / 750 * 100%); left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: min(50px, calc(50 / 750 * 100vw)); }

/************************************************
fixedBtn
************************************************/
.fixedBtn { display: none; position: fixed; left: 0; bottom: 0; width: 100%; z-index: 10000; padding: 0; background-color: rgba(0, 0, 0, 0.5); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }

.fixedBtn a { display: block; max-width: 750px; margin: 0 auto; }

.fixedBtn a img { width: 100%; }

/************************************************
footer
************************************************/
#footer { background-color: #a50519; padding: 0; }

#footer ul { list-style: none; text-align: center; font-size: 0; padding-block: clamp(15px, 4vw, 30px); }

#footer ul li { display: inline-block; padding-inline: clamp(8px, 2.13vw, 16px); position: relative; line-height: 1.6; font-size: clamp(10px, 2.67vw, 20px); font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif; }

#footer ul li::before { content: ""; position: absolute; top: 50%; left: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 1px; height: 60%; background-color: #fff; }

#footer ul li:first-child::before, #footer ul li:last-child::before { display: none; }

#footer ul li a { text-decoration: none; color: #fff; }

#footer p { display: block; background: #10152e; color: #fff; text-align: center; font-size: clamp(9px, 2.4vw, 18px); line-height: 1; padding: 15px 0 14px; font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif; }
