/**
* Stay CSS
* 受験宿泊ページのスタイル
*/
#event {
    .toc-container {
        margin: 0 auto clamp(2.188rem, 1.25rem + 4vw, 3.75rem);
        max-width: 680px;
    }

    .event-container {
        margin-bottom: 50px;

        .event-container__content {
            display: grid;
             grid-template-columns: repeat(auto-fit, minmax(calc(370px - (clamp(0.938rem, -2.25rem + 13.6vw, 6.25rem) * 2)), 1fr));
            gap: 0 1.25rem;

            .event-container__bordered-section {
                border: 2px solid var(--color-main);
                border-radius: 15px;
                margin-bottom: 30px;
                padding: 42px 16px 16px;
                position: relative;

                .event-container__bordered-section-title {
                    background-color: var(--color-main);
                    border-radius: 13px 13px 0 0;
                    color: #FFF;
                    text-align: center;
                    padding: 0 0 6px;
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 100%;
                }
            } /* .event-container__bordered-section */
        } /* .event-container__content */
    } /* .event-container */

    .room-finder {
        border: 2px solid var(--color-main);
        border-radius: 15px;
        margin: clamp(6.75rem, 5.55rem + 5.12vw, 8.75rem) auto clamp(3.125rem, 2rem + 4.8vw, 5rem);
        padding: clamp(3.438rem, 2.688rem + 3.2vw, 4.688rem) clamp(1.25rem, 0.625rem + 1.6vw, 2.5rem) clamp(1.688rem, 1.35rem + 1.44vw, 2.25rem);
        position: relative;
        max-width: 680px;

        &:before {
            content: '';
            background: url(../images/icon_lead_02.svg) no-repeat center center;
            background-size: contain;
            position: absolute;
            top: calc(clamp(3.75rem, 2.25rem + 6.4vw, 6.25rem) - (clamp(3.75rem, 2.25rem + 6.4vw, 6.25rem) * 2));
            left: 50%;
            transform: translateX(-50%);
            width: clamp(6.25rem, 4.075rem + 9.28vw, 9.875rem);
            height: clamp(6.688rem, 4.362rem + 9.92vw, 10.563rem);
        }

        .room-finder__title {
            font-size: clamp(1.5rem, 1.05rem + 1.92vw, 2.25rem);
            display: grid;
            align-items: center;
            gap: clamp(0.875rem, 0.5rem + 1.6vw, 1.5rem);
            grid-template-columns: clamp(4.25rem, 2.975rem + 5.44vw, 6.375rem) auto;
            margin: auto;
            width: fit-content;
        }

        .room-finder__description {
            font-size: clamp(0.813rem, 0.7rem + 0.48vw, 1rem);
            margin: clamp(1.125rem, 0.938rem + 0.8vw, 1.438rem) auto;
            text-align: center;
        }

        .room-finder__button {
            background: var(--color-main);
            border-radius: calc(clamp(1.875rem, 1.125rem + 3.2vw, 3.125rem) / 2);
            color: #FFF;
            cursor: pointer;
            font-size: clamp(0.875rem, 0.725rem + 0.64vw, 1.125rem);
            display: grid;
            place-content: center;
            margin: auto;
            width: clamp(14.375rem, 10.063rem + 18.4vw, 21.563rem);
            height: clamp(1.875rem, 1.125rem + 3.2vw, 3.125rem);
        }
    } /* .room-finder */
}




/**
* バッジ
*/
.event-container__badge {
    display: grid;
    place-content: center;
    width: clamp(2.188rem, 1.25rem + 4vw, 3.75rem);
    height: clamp(0.938rem, 0.563rem + 1.6vw, 1.563rem);

    &.event-container__badge--sub-yellow {
        background: var(--color-sub-yellow);
    }

    span {
        display: block;
        font-size: clamp(0.75rem, 0.525rem + 0.96vw, 1.125rem);
        font-weight: 700;
        margin-block: var(--leading-trim);
        margin-top: -3px;
    }
}




/**
* Media Queries
*/
@media (min-width: 768px) {
    #event {
        .event-container {
            .event-container__bordered-section {
                margin-bottom: 0;
            }
        }
    } /* #event */

    .event-container__badge {
        span {
            margin-top: -6px;
        }
    }
}


/**
* 見出し上部テキスト
*/
.midashi-upper-text span::before,
.midashi-upper-text span::after 
{
	display: inline-block;
    content: "";
    width: 1px;
    height: 20px;
    background-color: #333333;
    margin: 0 0.6rem -0.3rem;
}

.midashi-upper-text span::before {
    transform: rotate(-40deg);
}

.midashi-upper-text span::after {
    transform: rotate(40deg);
}

/**
* fontsize weight
*/
b,
strong,
.bold {
	font-weight: bold;
}

.normal {
	font-weight: 400;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
	line-height: 1.6;
}

h1,
.h1 {
	font-size: 2rem;
}

h2,
.h2 {
	font-size: 1.65rem;
}

h3,
.h3 {
	font-size: 1.3rem;
}

h4,
.h4 {
	font-size: 1.2rem;
}

h5,
.h5 {
	font-size: 1.1rem;
}

h6,
.h6 {
	font-size: 1.0rem;
}

.small {
    	font-size: 0.8rem;
}


/**
*　アイコン
**/
.icon-check:before{
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	font-family: "Font Awesome 6 Free"; 
	font-weight: 900;
	content: '\f058';
	color: #fd155f;
    margin-right:0.3rem;
}

/**
*　ボタン
**/
.btn {
  font-weight: 500 !important;
}
.btn-sm {
  font-weight: normal !important;
}
.btn-arrow,
.btn-arrow-sm {
  color: #ffffff;
}
a.btn-arrow,
a.btn-arrow-sm,
a.btn-arrow-gray {
  position: relative;
}
a.btn-arrow::after,
a.btn-arrow-sm::after,
a.btn-arrow-gray::after {
  position: absolute;
  /* float: right; */
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  border: none;
  line-height: 1;
  content: url(../../img/2025/toggle_arrow.svg);
  /* padding-top: 0.3rem; */
}
a.btn-arrow-sm::after {
  content: url(../../img/2025/btn_arrow_sm.svg);
  padding-top: 0.1rem;
}
a.btn-arrow-gray::after {
  content: url(../../img/2025/toggle_arrow_gray.svg);
}
a.btn-arrow-sm.btn-arrow-gray::after {
  content: url(../../img/2025/btn_arrow_sm_gray.svg);
}
.btn-210 {
  width: 210px;
  max-width: 100%;
}
.btn-280 {
  width: 280px;
  max-width: 100%;
}
.btn-330 {
  width: 330px;
  max-width: 100%;
}
.btn-360 {
  width: 360px;
  max-width: 100%;
}
.btn-lg {
  font-weight: bold;
  font-size: 1.1rem;
}
.btn-xlg {
  padding: 1rem 1rem;
  font-weight: bold;
  font-size: 1.2rem;
}
.btn-upper-text {
  padding: 0.5rem 0.8rem;
  max-width: 100%;
  margin-top: 40px;
  position: relative;
}
.btn-upper-text span {
  position: absolute;
  top: -30px;
  left: 0;
  font-size: 0.9rem;
  width: 100%;
  text-align: center;
  color: #333;
}
.btn-upper-text span::before,
.btn-upper-text span::after {
  display: inline-block;
  content: "";
  width: 1px;
  height: 20px;
  background-color: #333333;
  margin: 0 0.6rem -0.3rem;
}
.btn-upper-text span::before {
  transform: rotate(-40deg);
}
.btn-upper-text span::after {
  transform: rotate(40deg);
}
.btn-dbook,
.btn-outsite {
  position: relative;
}
.btn-dbook::after {
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  content: "\f518";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
.btn-outsite::after {
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  content: "\f35d";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}
.btn-movie,
.btn-file {
  position: relative;
}

.btn-movie::after {
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  content: "\f144";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.btn-file::after {
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  content: "\f15c";
  font-family: "Font Awesome 5 Free";
  font-weight: 500;
}

.rounded-lg {
  border-radius: 0.8rem !important;
}


/**
*アンダーライン
**/


.underline {
  background: linear-gradient(transparent 60%, #f9e600 30%);
}