@charset "UTF-8";
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  box-sizing: border-box;
  overflow-y: scroll; /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%; /* iOS 8+ */
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0; /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible; /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

summary {
  display: list-item; /* Add the correct display in all browsers */
}

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none; /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */
  text-decoration: none; /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder; /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic; /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type=number] {
  width: auto; /* Firefox 36+ */
}

[type=search] {
  -webkit-appearance: textfield; /* Safari 8+ */
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none; /* Safari 8 */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

/* Style select like a standard input */
select {
  -moz-appearance: none; /* Firefox 36+ */
  -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

[type=search] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden; /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

html {
  font-family: "Noto Sans JP", sans-serif;
  color: #231815;
  font-weight: 400;
  font-style: normal;
  scroll-behavior: smooth;
}

a {
  color: #231815;
  text-decoration: none;
}

img {
  width: 100%;
  height: auto;
  display: inline-block;
}

.u-en {
  font-family: "jaf-cupidus", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.u-maru {
  font-family: "heisei-maru-gothic-std", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.l-wrapper {
  padding-left: 20px;
  padding-right: 20px;
}

.l-inner {
  max-width: 400px;
  width: 100%;
  margin: 0 auto;
}

.pc-only {
  display: block;
}

.br-pc-only {
  display: inline-block;
}

.sp-only {
  display: none;
}

.br-sp-only {
  display: none;
}

body.thanks-page {
  background-image: url(../img/table-bg.webp);
}

@media screen and (min-width: 1101px) {
  body {
    height: 100vh;
    overflow: hidden;
    position: relative;
    background-image: url(../img/pc-bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  body.thanks-page {
    background-image: url(../img/pc-bg.webp);
  }
}
@media (prefers-reduced-motion: no-preference) {
  html:focus-within {
    scroll-behavior: smooth;
  }
}
/*===========================================================================*/
/*  pc版  */
/*===========================================================================*/
.p-pc-main {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  padding-left: 40px;
  padding-right: 40px;
}

.p-pc-main .left-box {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 304px;
  text-align: center;
}
.p-pc-main .left-box .p-pc-logo {
  text-align: center;
}
.p-pc-main .left-box .p-pc-logo .date {
  width: 90%;
  margin-top: -10px;
}
.p-pc-main .left-box .cta-text {
  text-align: center;
  margin-top: 32px;
}
.p-pc-main .left-box .cta-text img {
  display: inline-block;
  width: 280px;
}
.p-pc-main .left-box .cta-btn-info {
  margin-top: 20px;
  margin-bottom: -5px;
}
.p-pc-main .left-box .cta-btn {
  max-width: 100%;
  width: 280px;
  height: 82px;
  display: flex;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2;
}
.p-pc-main .left-box .cta-btn .cta-btn__text {
  background: url(../img/btn.png) no-repeat center center/contain;
  font-size: 24px;
  font-weight: 800;
  color: #fff;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: transform 0.3s ease;
  padding-bottom: 5px;
  padding-right: 20px;
}
.p-pc-main .left-box .cta-btn .btn-accent {
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.p-pc-main .left-box .cta-btn .btn-accent .btn-accent-wave {
  position: relative;
  z-index: 2;
  width: 20px;
  height: 20px;
  display: block;
}
.p-pc-main .left-box .cta-btn .btn-accent .btn-accent-wave::before, .p-pc-main .left-box .cta-btn .btn-accent .btn-accent-wave::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  border: 2px solid #fff;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: none;
  animation: pulsate 2s linear infinite;
}
.p-pc-main .left-box .cta-btn .btn-accent .btn-accent-wave::after {
  animation-delay: 1s;
}
.p-pc-main .left-box .cta-btn::before {
  content: "";
  background: #14510a;
  transform: translate(0px, 6px);
  height: 50%;
  left: 0;
  position: absolute;
  bottom: 5px;
  width: 100%;
  border-radius: 15px;
}
.p-pc-main .left-box .cta-btn .cta-finger {
  position: absolute;
  width: 76px;
  right: -15px;
  top: 22px;
}
.p-pc-main .left-box .cta-info {
  text-align: center;
  margin-top: 16px;
  font-size: 14px;
}
.p-pc-main .left-box .p-pc-info {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
}
.p-pc-main .left-box .p-pc-info dt {
  background: #004059;
  color: #fff;
  padding: 5px 15px;
  flex-shrink: 0;
  font-size: 18px;
  font-weight: 600;
}
.p-pc-main .left-box .p-pc-info dd p {
  font-size: 18px;
  font-weight: 600;
}
.p-pc-main .left-box .p-pc-info dd .address {
  font-size: 12px;
}
.p-pc-main .left-box .p-pc-info dd .ouchi-logo {
  width: 162px;
}
.p-pc-main .left-box .p-pc-info.logo {
  align-items: stretch;
}
.p-pc-main .left-box .p-pc-info.logo dt {
  display: flex;
  align-items: center;
}
.p-pc-main .left-box .p-pc-info.logo dd .crasis-logo {
  width: 215px;
}
.p-pc-main .left-box .p-pc-info.logo dd .fukuho-logo {
  width: 203px;
  margin-top: 20px;
}

.p-pc-main__list {
  list-style: none;
  position: relative;
}

.house-bg {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 340px;
  top: -125px;
  filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.3));
}

.p-pc-main__list li {
  position: relative;
  z-index: 1;
}
.p-pc-main__list li::after {
  content: "";
  width: 100%;
  height: 11px;
  background: url(../img/pc-list-line.png) no-repeat center center/cover;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
}

.p-pc-main__list li:not(:first-child) {
  margin-top: 35px;
}

.p-pc-main__list li a {
  display: flex;
  align-items: center;
  gap: 12px;
}

.p-pc-main__list li a .house {
  width: 25px;
}

.p-pc-main__list li a .text {
  width: auto;
  height: 30px;
}
.p-pc-main__list li a .text.two {
  height: 61px;
}
.p-pc-main__list li a .text.three {
  height: 92px;
}

@media screen and (max-width: 1100px) {
  .p-pc-main {
    display: none;
  }
  body {
    overflow: auto;
  }
}
.pc-header {
  display: none;
}

@media screen and (min-width: 1101px) {
  .p-main {
    width: 440px;
    position: absolute;
    top: 92px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 2;
    border-radius: 18px 18px 0 0;
    border: 8px solid #FFF;
    background: #fff;
    box-shadow: 0 3px 30px rgba(0, 0, 0, 0.3);
  }
  main.top {
    height: calc(100vh - 100px - 80px);
    overflow-y: scroll;
  }
  .pc-header {
    height: 80px;
    display: flex;
    align-items: center;
  }
  .pc-header img {
    width: 130px;
  }
}
.cta-btn {
  margin: 0 auto;
  animation: fuwafuwa 1s ease 0s infinite alternate;
  transform-origin: center;
  cursor: pointer;
}

@keyframes fuwafuwa {
  from {
    transform: scale(0.97, 0.97);
  }
  to {
    transform: scale(1, 1);
  }
}
.main-header {
  display: none;
  position: absolute;
  top: -10px;
  left: -10px;
}
.main-header .header-logo img {
  width: 120px;
}

.p-fv {
  background: url(../img/bg.webp) no-repeat center center/cover;
  padding-top: 20px;
  overflow: hidden;
}
.p-fv .l-inner {
  position: relative;
  padding-top: 30px;
}
.p-fv .sub-text {
  text-align: right;
}
.p-fv .sub-text p {
  display: inline-block;
}
.p-fv .sub-text p .subtext1 {
  width: 184px;
  margin-right: 50px;
}
.p-fv .sub-text p .subtext2 {
  width: 191px;
}
.p-fv .main-content {
  position: relative;
  padding-bottom: 75px;
}
.p-fv .main-content .main-bg−1 {
  position: absolute;
  width: 100px;
  top: -60px;
  left: -20px;
}
.p-fv .main-content .main-car {
  position: absolute;
  width: 55px;
  top: -30px;
  left: 70px;
}
.p-fv .main-content .main-bg−2 {
  position: absolute;
  width: 140px;
  bottom: -20px;
  left: -20px;
}
.p-fv .main-content .main-greenhall {
  position: absolute;
  width: 290px;
  bottom: -40px;
  right: -75px;
}
.p-fv .main-content .main-tretas {
  position: absolute;
  width: 235px;
  bottom: 18px;
  right: -40px;
}
.p-fv .main-content .main-logo {
  margin-top: 10px;
  position: relative;
  z-index: 1;
}
.p-fv .main-content .main-logo .main-logo-img {
  position: relative;
  z-index: 1;
}
.p-fv .main-content .main-logo .logo-info {
  position: absolute;
  top: 15px;
  right: -18px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 82px;
  height: 82px;
  background: #fff100;
  border-radius: 50%;
  transform: rotate(10deg);
  font-size: 14px;
  line-height: 1;
  color: #00a046;
  font-weight: bold;
}
.p-fv .main-content .main-logo .logo-info span {
  font-size: 24px;
  line-height: 1;
  margin-top: 2px;
}
.p-fv .main-content .main-logo .main-date {
  text-align: center;
  margin-top: -15px;
  position: relative;
  z-index: 1;
}
.p-fv .main-content .main-logo .main-date img {
  width: 90%;
}
.p-fv .mv-gift {
  position: relative;
  z-index: 2;
  background: #fff100;
  margin-left: -20px;
  width: calc(100% + 40px);
}
.p-fv .mv-gift .l-inner {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-top: 0;
  padding-bottom: 10px;
}
.p-fv .mv-gift .mv-gift__illust {
  width: 96px;
  margin-top: -10px;
}
.p-fv .mv-gift .mv-gift__center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.p-fv .mv-gift .mv-gift__center .mv-gift__center--top {
  font-weight: 800;
  font-size: 15px;
  line-height: 1;
}
.p-fv .mv-gift .mv-gift__center .mv-gift__center--bottom {
  display: flex;
  align-items: center;
  color: #e94615;
  margin-left: 5px;
}
.p-fv .mv-gift .mv-gift__center .mv-gift__center--bottom .price {
  font-weight: bold;
  font-size: 45px;
  line-height: 1;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px;
}
.p-fv .mv-gift .mv-gift__center .mv-gift__center--bottom .yen {
  margin-top: -5px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 16px;
  font-weight: bold;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px;
}
.p-fv .mv-gift .mv-gift__right {
  margin-left: 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 7px;
}
.p-fv .mv-gift .mv-gift__right .mv-gift__right--top {
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  background: #e94615;
  line-height: 1;
  padding: 9px 7px 6px;
}
.p-fv .mv-gift .mv-gift__right .mv-gift__right--bottom {
  margin-top: 3px;
  line-height: 1;
  font-size: 27px;
  font-weight: 800;
}

.p-schedule {
  padding-top: 70px;
  padding-bottom: 70px;
  background: url(../img/schedule-bg.webp) no-repeat center center/cover;
  overflow: hidden;
}
.p-schedule .section-title {
  text-align: center;
  position: relative;
}
.p-schedule .section-title::after {
  content: "";
  width: 100%;
  height: 6px;
  background: url(../img/section-title-accent.webp) no-repeat center center/cover;
  position: absolute;
  top: calc(100% - 2px);
  left: 0;
}
.p-schedule .schedule-container {
  margin-top: 40px;
  border-radius: 15px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 3px 30px rgba(0, 0, 0, 0.3);
}
.p-schedule .schedule-container h3 {
  padding: 18px 0;
  background: #009f40;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.p-schedule .schedule-container h3 .date {
  font-size: 32px;
  line-height: 1;
  color: #fff;
}
.p-schedule .schedule-container h3 .day {
  font-size: 15px;
  line-height: 1;
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
}
.p-schedule .schedule-container h3 .day.--blue {
  background: #00b4ff;
}
.p-schedule .schedule-container h3 .day.--red {
  background: #f05291;
}
.p-schedule .schedule-container .schedule-box {
  padding: 15px;
}
.p-schedule .schedule-container .schedule-box dl {
  padding: 10px 0;
  display: flex;
  color: #009f40;
}
.p-schedule .schedule-container .schedule-box dl:not(:last-child) {
  border-bottom: 1px solid #009f40;
}
.p-schedule .schedule-container .schedule-box dl dt {
  width: 50%;
  font-size: 24px;
  font-weight: bold;
}
.p-schedule .schedule-container .schedule-box dl dd {
  width: 50%;
  padding: 0 12px;
  font-size: 14px;
  font-weight: bold;
}

.p-cta {
  padding-top: 70px;
  padding-bottom: 70px;
  border-top: 3px solid #009f40;
  border-bottom: 3px solid #009f40;
  background: url(../img/cta-bg.webp) no-repeat top -30px center/cover;
  overflow: hidden;
}
.p-cta .cta-gift {
  position: relative;
  padding: 20px 0;
  border-radius: 10px;
  background: #fff;
  border: 3px solid #ffe207;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}
.p-cta .cta-gift .cta-gift__ribbon {
  position: absolute;
  width: 220px;
  left: -5px;
  top: 0;
  transform: translateY(-60%);
  -webkit-transform: translateY(-60%);
  -ms-transform: translateY(-60%);
}
.p-cta .cta-gift .cta-gift__card {
  position: absolute;
  width: 67px;
  right: -10px;
  top: -30px;
}
.p-cta .cta-gift .gift__left {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.p-cta .cta-gift .gift__left .gift__left--top {
  font-weight: 800;
  font-size: 15px;
  margin-top: 10px;
}
.p-cta .cta-gift .gift__left .gift__left--bottom {
  display: flex;
  align-items: center;
  color: #e94615;
  margin-left: 5px;
}
.p-cta .cta-gift .gift__left .gift__left--bottom .price {
  font-weight: bold;
  font-size: 45px;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px;
}
.p-cta .cta-gift .gift__left .gift__left--bottom .yen {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 16px;
  font-weight: bold;
  margin-top: -5px;
  text-shadow: rgb(255, 255, 255) 5px 0px 0px, rgb(255, 255, 255) 4.90033px 0.993347px 0px, rgb(255, 255, 255) 4.60531px 1.94709px 0px, rgb(255, 255, 255) 4.12668px 2.82321px 0px, rgb(255, 255, 255) 3.48353px 3.58678px 0px, rgb(255, 255, 255) 2.70151px 4.20736px 0px, rgb(255, 255, 255) 1.81179px 4.6602px 0px, rgb(255, 255, 255) 0.849836px 4.92725px 0px, rgb(255, 255, 255) -0.145998px 4.99787px 0px, rgb(255, 255, 255) -1.13601px 4.86924px 0px, rgb(255, 255, 255) -2.08073px 4.54649px 0px, rgb(255, 255, 255) -2.94251px 4.04248px 0px, rgb(255, 255, 255) -3.68697px 3.37732px 0px, rgb(255, 255, 255) -4.28444px 2.57751px 0px, rgb(255, 255, 255) -4.71111px 1.67494px 0px, rgb(255, 255, 255) -4.94996px 0.7056px 0px, rgb(255, 255, 255) -4.99147px -0.291871px 0px, rgb(255, 255, 255) -4.83399px -1.27771px 0px, rgb(255, 255, 255) -4.48379px -2.2126px 0px, rgb(255, 255, 255) -3.95484px -3.05929px 0px, rgb(255, 255, 255) -3.26822px -3.78401px 0px, rgb(255, 255, 255) -2.4513px -4.35788px 0px, rgb(255, 255, 255) -1.53666px -4.75801px 0px, rgb(255, 255, 255) -0.560763px -4.96845px 0px, rgb(255, 255, 255) 0.437495px -4.98082px 0px, rgb(255, 255, 255) 1.41831px -4.79462px 0px, rgb(255, 255, 255) 2.34258px -4.41727px 0px, rgb(255, 255, 255) 3.17346px -3.86382px 0px, rgb(255, 255, 255) 3.87783px -3.15633px 0px, rgb(255, 255, 255) 4.4276px -2.32301px 0px, rgb(255, 255, 255) 4.80085px -1.39708px 0px, rgb(255, 255, 255) 4.98271px -0.415447px 0px;
}
.p-cta .cta-gift .gift__right {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 7px;
  position: relative;
}
.p-cta .cta-gift .gift__right .gift__right--top {
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  background: #e94615;
  line-height: 1;
  padding: 9px 7px 6px;
}
.p-cta .cta-gift .gift__right .gift__right--bottom {
  margin-top: 3px;
  line-height: 1;
  font-size: 27px;
  font-weight: 800;
}
.p-cta .cta-text {
  text-align: center;
  margin-top: 32px;
}
.p-cta .cta-text.--first {
  margin-top: 0;
}
.p-cta .cta-text img {
  display: inline-block;
  width: 280px;
}
.p-cta .cta-btn-info {
  margin-bottom: -5px;
}
.p-cta .cta-btn {
  width: 325px;
  height: 82px;
  display: flex;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 2;
}
.p-cta .cta-btn .cta-btn__text {
  background: url(../img/btn.png) no-repeat center center/contain;
  font-size: 27px;
  font-weight: 800;
  color: #fff;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: transform 0.3s ease;
  padding-bottom: 5px;
  padding-right: 10px;
}
.p-cta .cta-btn .btn-accent {
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.p-cta .cta-btn .btn-accent .btn-accent-wave {
  position: relative;
  z-index: 2;
  width: 20px;
  height: 20px;
  display: block;
}
.p-cta .cta-btn .btn-accent .btn-accent-wave::before, .p-cta .cta-btn .btn-accent .btn-accent-wave::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  border: 2px solid #fff;
  border-radius: 50%;
  box-sizing: border-box;
  pointer-events: none;
  animation: pulsate 2s linear infinite;
}
.p-cta .cta-btn .btn-accent .btn-accent-wave::after {
  animation-delay: 1s;
}
.p-cta .cta-btn::before {
  content: "";
  background: #14510a;
  transform: translate(0px, 6px);
  height: calc(50% - 1px);
  left: 0;
  position: absolute;
  bottom: 0;
  width: 100%;
  border-radius: 15px;
}
.p-cta .cta-btn .cta-finger {
  position: absolute;
  width: 76px;
  right: -15px;
  top: 22px;
}
.p-cta .cta-info {
  margin-top: 10px;
  text-align: center;
  font-size: 12px;
  font-weight: 500;
}

@keyframes pulsate {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
.p-point {
  padding-top: 60px;
  padding-bottom: 126px;
  background: #fffcd9;
  position: relative;
  overflow: hidden;
}
.p-point::after {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/sec-bg.webp) no-repeat center center/cover;
  position: absolute;
  top: 0;
  left: 0;
  clip-path: polygon(0 0, 100% 0%, 100% calc(100% - 68px), 50% 100%, 0 calc(100% - 68px));
}
.p-point .l-inner {
  position: relative;
  z-index: 2;
}
.p-point .point-container {
  width: 100%;
  border-radius: 50px;
  background: #fff;
  position: relative;
  padding: 40px 20px;
}
.p-point .point-container .point-illust1 {
  position: absolute;
  width: 63px;
  top: -10px;
  left: -5px;
}
.p-point .point-container .point-illust2 {
  position: absolute;
  width: 102px;
  bottom: -50px;
  right: -10px;
}
.p-point .point-container h2 {
  text-align: center;
  font-size: 20px;
  line-height: 1;
}
.p-point .point-container h2 span {
  position: relative;
  line-height: 1;
  font-size: 24px;
  color: #db451b;
}
.p-point .point-container h2 span::after {
  content: "";
  width: 4px;
  height: 4px;
  background: #db451b;
  border-radius: 50%;
  display: block;
  position: absolute;
  bottom: calc(100% - 4px);
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.p-point .point-container ul {
  list-style: none;
  margin-top: 20px;
}
.p-point .point-container ul li {
  padding: 10px 0;
  padding-left: 25px;
  font-size: 14px;
  position: relative;
  border-bottom: 1px solid #ccc;
}
.p-point .point-container ul li::before {
  content: "";
  width: 17px;
  height: 17px;
  background: url(../img/check.webp) no-repeat center center/contain;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.p-seminar {
  padding-top: 6px;
  padding-bottom: 135px;
  background: url(../img/sec-bg.webp) no-repeat center bottom/100% auto;
  overflow: hidden;
  position: relative;
}
.p-seminar::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: -1px;
  left: 0;
  background: #fffcd9;
  clip-path: polygon(0 0, 100% 0%, 100% calc(100% - 68px), 50% 100%, 0 calc(100% - 68px));
}
.p-seminar .l-inner {
  position: relative;
  z-index: 2;
}
.p-seminar h2 {
  display: flex;
  justify-content: center;
}
.p-seminar h2 img {
  width: 450px;
}
.p-seminar .seminar-text__wrap {
  text-align: center;
  margin-top: 40px;
}
.p-seminar .seminar-text__wrap .seminar-text {
  position: relative;
  display: inline-block;
}
.p-seminar .seminar-text__wrap .seminar-text p {
  font-size: 16px;
  line-height: 1.5;
  z-index: 1;
  position: relative;
  font-weight: 600;
}
.p-seminar .seminar-text__wrap .seminar-text img {
  width: 284px;
  height: auto;
  opacity: 0.32;
  position: absolute;
  top: -25px;
  left: -15px;
}
.p-seminar .seminar-lecturer {
  margin-top: 60px;
  box-shadow: 0 3px 30px rgba(0, 0, 0, 0.3);
  padding: 55px 0 30px 15px;
  background: #fff;
  display: flex;
  position: relative;
  z-index: 1;
}
.p-seminar .seminar-lecturer .seminar-lecture__text {
  width: 185px;
  flex-shrink: 0;
}
.p-seminar .seminar-lecturer .seminar-lecture__text .title-img {
  position: absolute;
  width: 194px;
  top: -15px;
  left: 0;
}
.p-seminar .seminar-lecturer .seminar-lecture__text .seminar-lecturer__title {
  font-size: 14px;
  color: #1d8b3b;
  padding-bottom: 13px;
  border-bottom: 1px solid #1d8b3b;
}
.p-seminar .seminar-lecturer .seminar-lecture__text .seminar-lecturer__text {
  font-size: 12px;
  margin-top: 13px;
}
.p-seminar .seminar-lecturer .seminar-lecturer__img {
  width: calc(100% - 185px);
}
.p-seminar .seminar-lecturer .seminar-lecturer__img .profile-img {
  margin-top: -70px;
  width: calc(100% + 20px);
}
.p-seminar .seminar-lecturer .seminar-lecturer__img .profile-qualification {
  display: flex;
  align-items: center;
  gap: 5px;
}
.p-seminar .seminar-lecturer .seminar-lecturer__img .profile-qualification img {
  width: 50%;
}
.p-seminar .seminar-content {
  position: relative;
  z-index: 1;
  background: linear-gradient(180deg, transparent 0%, transparent 50px, #fff 50px, #fff 100%);
  margin-top: 55px;
  padding: 80px 40px 40px;
  box-shadow: 0 5px 30px rgba(0, 0, 0, 0.3);
}
.p-seminar .seminar-content .seminar-memo {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}
.p-seminar .seminar-content .seminar-time__info {
  font-size: 12px;
  font-weight: 600;
  margin-top: 10px;
  padding-right: 60px;
}
.p-seminar .seminar-content .seminar-illust-1 {
  position: absolute;
  width: 74px;
  top: 0;
  left: 0;
}
.p-seminar .seminar-content .seminar-illust-2 {
  position: absolute;
  width: 66px;
  bottom: 7px;
  right: 15px;
}
.p-seminar .seminar-content .seminar-illust-3 {
  position: absolute;
  width: 100px;
  bottom: 7px;
  right: 15px;
}
.p-seminar .seminar-content h3 {
  position: absolute;
  width: 182px;
  top: -18px;
  right: -10px;
}
.p-seminar .seminar-content .seminar-content__list {
  position: relative;
}
.p-seminar .seminar-content .seminar-content__list .seminar-good {
  position: absolute;
  width: 63px;
  top: -40px;
  left: 40px;
}
.p-seminar .seminar-content .seminar-content__list .seminar-check {
  position: absolute;
  width: 65px;
  bottom: 90px;
  right: -20px;
}
.p-seminar .seminar-content .seminar-time__list {
  list-style: none;
}
.p-seminar .seminar-content .seminar-time__list li {
  position: relative;
  padding: 10px 0;
  font-size: 16px;
  font-weight: 600;
}
.p-seminar .seminar-content .seminar-time__list li p {
  display: flex;
  align-items: center;
  gap: 5px;
}
.p-seminar .seminar-content .seminar-time__list li::after {
  content: "";
  width: 227px;
  height: 1px;
  position: absolute;
  background: url(../img/line-stitch.png) no-repeat center center/contain;
  top: 100%;
  left: 0;
}
.p-seminar .seminar-content .seminar-time__list li span {
  color: #e94615;
  font-size: 20px;
}
.p-seminar .seminar-content .seminar-flow {
  position: relative;
  list-style: none;
}
.p-seminar .seminar-content .seminar-flow li {
  position: relative;
}
.p-seminar .seminar-content .seminar-flow li::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e94615;
  display: block;
  position: absolute;
  right: calc(100% + 6px);
  top: 10px;
}
.p-seminar .seminar-content .seminar-flow li:not(:first-child) {
  margin-top: 20px;
}
.p-seminar .seminar-content .seminar-flow li h4 {
  font-size: 16px;
  line-height: 1;
  font-weight: 600;
  padding-bottom: 6px;
  position: relative;
}
.p-seminar .seminar-content .seminar-flow li h4::after {
  content: "";
  width: 227px;
  height: 1px;
  background: url(../img/line-stitch.png) no-repeat center center/contain;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}
.p-seminar .seminar-content .seminar-flow li p {
  padding-top: 5px;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 600;
}
.p-seminar .seminar-container {
  position: relative;
}
.p-seminar .seminar-container .seminar-accent {
  position: absolute;
  opacity: 0.32;
  width: 284px;
  transform: scale(-1, 1);
  right: -20px;
  top: 30%;
}

.p-company {
  padding-top: 40px;
  padding-bottom: 60px;
  overflow: hidden;
  background: url(../img/com-bg.webp) no-repeat center center/cover;
  position: relative;
}
.p-company .l-inner {
  position: relative;
  z-index: 2;
}
.p-company h2 {
  position: relative;
}
.p-company h2::before {
  content: "";
  position: absolute;
  width: 168px;
  aspect-ratio: 337/125;
  top: calc(100% - 20px);
  left: 0;
  background: url(../img/c-illust-1.png) no-repeat center center/contain;
}
.p-company h2::after {
  content: "";
  position: absolute;
  width: 45px;
  aspect-ratio: 89/193;
  top: calc(100% - 20px);
  right: 20px;
  background: url(../img/c-illust-2.png) no-repeat center center/contain;
}
.p-company .company-slide {
  margin-top: 40px;
  position: relative;
}
.p-company .company-slide::before {
  content: "";
  position: absolute;
  width: 69px;
  aspect-ratio: 137/128;
  bottom: -50px;
  left: 0;
  background: url(../img/c-illust-3.png) no-repeat center center/contain;
}
.p-company .company-slide::after {
  content: "";
  position: absolute;
  width: 76px;
  aspect-ratio: 151/53;
  bottom: -40px;
  right: 0px;
  background: url(../img/c-illust-4.png) no-repeat center center/contain;
}
.p-company .company-slide .swiper-pagination {
  bottom: -20px;
}
.p-company .company-slide .swiper-pagination .swiper-pagination-bullet {
  width: 25px;
  height: 6px;
  border-radius: 0;
}
.p-company .company-slide .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #EA4712;
}
.p-company .company-slide .swiper-button-next,
.p-company .company-slide .swiper-button-prev {
  background-color: #EA4712;
  border: 2px solid #fff;
  border-radius: 50%;
  width: 40px;
  height: 40px;
}
.p-company .company-slide .swiper-button-next::after,
.p-company .company-slide .swiper-button-prev::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fff;
  font-size: 1rem;
}
.p-company .company-slide .swiper-button-next {
  right: -10px;
}
.p-company .company-slide .swiper-button-prev {
  left: -10px;
}
.p-company .company-slide .swiper-button-next::after {
  content: "\f054";
}
.p-company .company-slide .swiper-button-prev::after {
  content: "\f053";
}
.p-company .company-slide .swiper-slide {
  position: relative;
}
.p-company .company-slide .swiper-slide.auie {
  height: 220px;
}
.p-company .company-slide .swiper-slide.kajima {
  height: 240px;
}
.p-company .company-slide .swiper-slide.gh {
  height: 240px;
}
.p-company .company-slide .swiper-slide.grandhouse {
  height: 250px;
}
.p-company .company-slide .swiper-slide.mitamura {
  height: 268px;
}
.p-company .company-slide .swiper-slide .company-item {
  position: relative;
  z-index: 2;
  padding-top: 95px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 20px;
  margin-top: 5px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo {
  width: 50%;
  padding-right: 25px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo img.auie-logo {
  width: 92px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo img.kajima-logo {
  width: 92px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo img.gh-logo {
  width: 105px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo img.grandhouse-logo {
  width: 105px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo img.mitamura-logo {
  width: 110px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__logo img.mok-logo {
  width: 95px;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__text {
  width: 50%;
  padding-left: 0;
}
.p-company .company-slide .swiper-slide .company-item .company-item__info .company-item__text p {
  font-size: 10px;
  font-weight: 600;
  width: 130px;
}
.p-company .company-slide .swiper-slide .company-item h3 {
  text-align: center;
  font-size: 17px;
  font-weight: 600;
  margin-top: 15px;
}
.p-company .company-slide .swiper-slide .company-item h3.--white {
  color: #fff;
}
.p-company .company-slide .swiper-slide .company-item h3 span {
  font-size: 12px;
  margin-left: 5px;
}
.p-company .company-slide .swiper-slide .company-item h3 span.--left {
  margin-left: 0;
  margin-right: 5px;
}
.p-company .company-slide .swiper-slide .company-item__bg {
  position: absolute;
  top: 0;
  width: 330px;
  height: auto;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  filter: drop-shadow(0 3px 30px rgba(0, 0, 0, 0.3));
}
.p-company .company-info {
  font-size: 12px;
  text-align: center;
  margin-top: 60px;
}

.p-event {
  padding-top: 58px;
  padding-bottom: 70px;
  background-color: #fff9ad;
  background-image: url(../img/stripe.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 100%;
  position: relative;
  overflow: hidden;
}
.p-event .event-hata {
  position: absolute;
  width: 520px;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.p-event .l-inner {
  position: relative;
  z-index: 2;
}
.p-event h2 {
  position: relative;
}
.p-event h2 .event-logo {
  position: absolute;
  z-index: 2;
  width: 220px;
  left: 10px;
  top: -10px;
}
.p-event h2 .event-title-img {
  position: relative;
  z-index: 1;
}
.p-event h2 .event-accent {
  position: absolute;
  max-width: 400px;
  width: 100vw;
  left: -20px;
  top: 0;
}
.p-event .event-cotent-first {
  padding-top: 20px;
  position: relative;
}
.p-event .event-cotent-first .event-accent {
  position: absolute;
  width: 100vw;
  max-width: 400px;
  left: -20px;
  top: 0;
}
.p-event .event-cotent-first .event-content-img {
  position: relative;
  z-index: 1;
}
.p-event .event-cotent-second {
  padding-top: 0px;
  position: relative;
}
.p-event .event-cotent-second .event-accent-1 {
  position: absolute;
  width: 100vw;
  max-width: 400px;
  left: -20px;
  top: -70px;
}
.p-event .event-cotent-second .event-accent-2 {
  position: absolute;
  width: 100vw;
  max-width: 400px;
  left: -20px;
  top: 24%;
}
.p-event .event-cotent-second .event-accent-3 {
  position: absolute;
  width: 100vw;
  max-width: 400px;
  left: -20px;
  bottom: 20px;
}
.p-event .event-cotent-second .event-content-img {
  position: relative;
  z-index: 1;
}
.p-event .event-cotent-third {
  margin-top: 10px;
  position: relative;
}
.p-event .event-cotent-third .event-content-img {
  filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.2));
}
.p-event .event-cotent-third .event-h3-title {
  position: absolute;
  width: 220px;
  top: 30px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  position: relative;
  z-index: 1;
}
.p-event .event-cotent-third .event-icon {
  position: absolute;
  width: 68px;
  top: 85px;
  left: -10px;
}
.p-event .event-cotent-third p {
  font-size: 12px;
  text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;
  position: absolute;
  bottom: 20px;
  right: 10px;
}

.p-table {
  padding-top: 60px;
  padding-bottom: 60px;
  background: url(../img/table-bg.webp) no-repeat center center/cover;
  overflow: hidden;
}
.p-table .table-content {
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 3px 30px rgba(0, 0, 0, 0.3);
  padding: 25px 18px;
}
.p-table .table-content h2 {
  text-align: center;
}
.p-table .table-content h2 img {
  width: 207px;
}
.p-table .table-content dl {
  display: flex;
  margin-top: 25px;
}
.p-table .table-content dl.flex-start {
  align-items: flex-start;
}
.p-table .table-content dl.center {
  align-items: center;
}
.p-table .table-content dl dt {
  flex-shrink: 0;
  width: 95px;
  height: 35px;
  background: #379b26;
  color: #fff;
  font-size: 20px;
  font-weight: 800;
  text-align: center;
  line-height: 35px;
  margin-right: 20px;
}
.p-table .table-content dl dd .day {
  font-size: 16px;
  font-weight: 800;
}
.p-table .table-content dl dd .time {
  font-size: 24px;
  font-weight: 800;
}
.p-table .table-content dl dd .place {
  font-size: 17px;
  font-weight: 800;
}
.p-table .table-content dl dd .place span {
  font-size: 12px;
}
.p-table .table-content dl dd .free {
  font-size: 24px;
  font-weight: 800;
}
.p-table .table-content dl dd img {
  width: 150px;
}
.p-table .table-content dl dd.sponsor {
  margin-top: 0px;
}
.p-table .table-content dl dd.sponsor img:first-child {
  margin-bottom: 10px;
}

footer {
  background: #379b26;
  padding: 15px 0;
  text-align: center;
  font-size: 10px;
  color: #fff;
}

.p-reservation {
  padding-top: 70px;
  padding-bottom: 70px;
  background: url(../img/schedule-bg.webp) no-repeat center center/cover;
  overflow: hidden;
}
.p-reservation .section-title {
  text-align: center;
  color: #019F43;
  text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
  font-size: 32px;
}
.p-reservation .reservation-container {
  margin-top: 40px;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 3px 30px rgba(0, 0, 0, 0.3);
  padding: 20px 10px;
}
.p-reservation .reservation-container .p-contact__table dl:not(:first-child) {
  margin-top: 20px;
}
.p-reservation .reservation-container .p-contact__head {
  font-size: 16px;
  font-weight: 800;
}
.p-reservation .reservation-container .p-contact__head .mandatory {
  font-size: 12px;
  background: #019F43;
  color: #fff;
  padding: 2px 5px;
  border-radius: 5px;
  margin-left: 5px;
}
.p-reservation .reservation-container .input-form {
  width: 100%;
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 5px;
  margin-top: 10px;
}
.p-reservation .reservation-container input[type=radio] {
  margin-top: 10px;
}
.p-reservation .reservation-container .p-contact__btn {
  margin-top: 20px;
}
.p-reservation .reservation-container .p-contact__btn .p-contact__agree {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-reservation .reservation-container .p-contact__btn .p-contact__agree input {
  width: 20px; /* チェックボックスの幅 */
  height: 20px; /* チェックボックスの高さ */
  accent-color: #007BFF; /* チェックボックスの色（ブラウザによってサポートされている場合） */
  cursor: pointer;
  margin-right: 5px;
}
.p-reservation .reservation-container .p-contact__btn .p-contact__agree a {
  text-decoration: underline;
}
.p-reservation .reservation-container .p-contact__btn input[type=submit] {
  font-size: 18px;
  margin-top: 20px;
  background: #019F43;
  color: #fff;
  padding: 10px 20px;
  border-radius: 5px;
  display: block;
  width: 100%;
  cursor: not-allowed;
  opacity: 0.5;
}
.p-reservation .reservation-container .p-contact__btn input[type=submit].enabled {
  cursor: pointer;
  opacity: 1;
}

.p-thanks {
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
}
.p-thanks .thanks-content {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 3px 30px rgba(0, 0, 0, 0.3);
  padding: 40px 20px;
}
.p-thanks .thanks-content .p-pc-logo {
  margin: 0 auto;
  width: 80%;
}
.p-thanks .p-thanks__head {
  margin-top: 20px;
  font-size: 20px;
}
.p-thanks .p-thanks__txt {
  margin-top: 20px;
  font-size: 13px;
}

@media (max-width: 900px) {
  .l-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
  .l-inner {
    max-width: 400px;
  }
  .pc-only {
    display: none;
  }
  .br-pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
  .br-sp-only {
    display: inline-block;
  }
  .p-reservation .reservation-container iframe {
    height: 2770px;
  }
  .main-header {
    display: block;
  }
}/*# sourceMappingURL=style.css.map */