@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@24,500,0..1,0');


:root {
  --color-kaipoke-orange: #ff9933;
  --color-kaipoke-orange-10: #fff4ea;
  --color-kaipoke-orange-100: #ffebd6;
  --color-kaipoke-yellow: #ffcc00;
  --color-kaipoke-yellow-50: #fefaea;
  --color-kaipoke-yellow-100: #fff1c6;

  --color-orange-50: #fff6eb;  /* orange-03 */
  --color-orange-100: #ffe8c9; /* sub:bg,border */
  --color-orange-400: #f68100; /* orange-01 */ 
  --color-orange-500: #e46500; /* orange-02 */ 
  --color-orange-600: #d46300; /* sub */
  --color-orange-700: #bc5305; /* sub */

  --color-orange-01: var(--color-orange-400); /* bg */
  --color-orange-02: var(--color-orange-500); /* text,bg,border */
  --color-orange-03: var(--color-orange-50); /* bg,border */

  --color-blue-50: #f3f6ff;
  --color-blue-100: #ecf1ff;
  --color-blue-200: #d1e0ff;
  --color-blue-300: #a8c8fe;
  --color-blue-400: #6fb0fc;
  --color-blue-500: #2686e3;
  --color-blue-600: #1e5d9e;
  --color-blue-700: #224876;
  --color-blue-800: #273b57;
  --color-blue-900: #2a3548;

  --color-blue-01: var(--color-blue-400); /* text */
  --color-blue-02: var(--color-blue-500); /* text */
  --color-blue-03: var(--color-blue-50); /* bg */

  --color-red-01: #ff5454; /* 不使用 */
  --color-red-02: #fe3939; /* 不使用 */
  --color-red-03: #fdeeee; /* 不使用 */
  --color-teal-01: #009388;
  --color-teal-02: #006d65; /* 放デイ */
  --color-teal-03: #e2f5f3; /* 放デイ */

  --color-black: #333333; /* text */
  --color-white: #ffffff; /* text,bg,border */
  --color-gray-01: #121212; /* bg(footer) */
  --color-gray-02: #707070; /* text,bg */
  --color-gray-03: #eff1f7; /* bg,border */
  --color-transparency-01: rgba(51, 51, 51, 0.1);

  --color-home-care-01: #ff9933;
  --color-home-care-02: #ac5907;
  --color-home-care-03: #fff7e2;
  --color-day-service-01: #00b5de;
  --color-day-service-02: #007590;
  --color-day-service-03: #effbfd;
  --color-home-visit-01: #9a4f97;
  --color-home-visit-02: #92368e;
  --color-home-visit-03: #fbf4fd;
  --color-houkan-01: #e95d87; /* 訪看 */
  --color-houkan-02: #c93d67; /* 訪看 */
  --color-houkan-03: #fdf5fa; /* 訪看 */
  --color-after-school-day-service-01: var(--color-teal-01);
  --color-after-school-day-service-02: var(--color-teal-02);
  --color-after-school-day-service-03: var(--color-teal-03);
  --color-opening-01: #0b2e71;
  --color-opening-02: #062662;
  --color-opening-03: #effbfd;
  --color-day-care-01: #edb821;
  --color-day-care-02: #896704;
  --color-day-care-03: #fff8e0;

  --number-00: 0px;
  --number-01: 4px;
  --number-02: 8px;
  --number-04: 16px;
  --number-05: 20px;
  --number-06: 24px;
  --number-08: 32px;
  --number-10: 40px;
  --number-12: 48px;
  --number-14: 56px;
  --number-16: 64px;
  --number-20: 80px;

  --shadow-black-base: 0px 4px 4px 0px
    var(--color-transparency-01, rgba(51, 51, 51, 0.1));
  --shadow-black-default: 0px 4px 4px 0px
    var(--color-transparency-01, rgba(51, 51, 51, 0.1));
  --shadow-black-hover: 0px 16px 24px 0px
    var(--color-transparency-01, rgba(51, 51, 51, 0.1));

  --shadow-button-default: var(--shadow-black-default);
  --shadow-button-hover: var(--shadow-black-hover);

  --shadow-card-default: var(--shadow-black-default);
  --shadow-card-hover: var(--shadow-black-hover);

  /* font-size: 14px */
  --font-size-14px: 0.875rem;
  /* font-size: 16px */
  --font-size-16px: 1rem;
  /* font-size: 18px */
  --font-size-18px: 1.125rem;
  /* font-size: 20px */
  --font-size-20px: 1.25rem;
  /* font-size: 24px */
  --font-size-24px: 1.5rem;
  /* font-size: 28px */
  --font-size-28px: 1.75rem;
  /* font-size: 32px */
  --font-size-32px: 2rem;
  /* font-size: 36px */
  --font-size-36px: 2.25rem;
  /* font-size: 40px */
  --font-size-40px: 2.5rem;
  /* font-size: 48px */
  --font-size-48px: 3rem;
  /* font-size: 56px */
  --font-size-56px: 3.5rem;
  /* font-size: 60px */
  --font-size-60px: 3.75rem;
  /* font-size: 64px */
  --font-size-64px: 4rem;
  /*  */
  --line-height-none: 1;
  --line-height-small: 1.25;
  --line-height-smallmedium: 1.4;
  --line-height-medium: 1.5;
  --line-height-large: 1.75;
  --line-height-taller: 2;

  /*  */
  --layout-margin-inline: auto;
  --layout-padding-inline: 8px;
  --layout-column-full: 1200px;
  --layout-column-12: 1184px;
  --layout-column-10: 984px;
  --layout-column-9: 884px;
  --layout-column-8: 784px;
  --layout-column-6: 584px;
  --layout-column-5: 484px;
  --layout-column-4: 384px;
  --layout-column-3: 284px;
  --layout-column-2: 184px;
  --layout-column-1: 84px;

  /*  */
  --radius-rounded: 4px;
  --radius-rounded-lg: 8px;
  --radius-rounded-2xl: 16px;
  --radius-rounded-full: 9999px;

  --radius-badge: var(--radius-rounded);
  --radius-box: var(--radius-rounded-lg);
  --radius-box-2xl: var(--radius-rounded-2xl);
  --radius-button: var(--radius-rounded-lg);
  --radius-card: var(--radius-rounded-2xl);
}

.roboto {
    font-family: "Roboto", sans-serif;   
}

body {
    font-family: Roboto, "Noto Sans JP", Arial, Arial, "Hiragino Sans","ヒラギノ角ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo,"MS Pゴシック", "MS PGothic", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: var(--color-black);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media(max-width: 600px) {
    body {
        font-size: var(--font-size-14px);
    }
}

* {
    font-family: Roboto, "Noto Sans JP", Arial, Arial, "Hiragino Sans","ヒラギノ角ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo,"MS Pゴシック", "MS PGothic", sans-serif;
    color: var(--color-black);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

p {
    font-weight: 400;
    letter-spacing: 0.04em;
}

.v-application p:last-of-type {
    margin-bottom: 0;
}

@media(max-width: 600px) {
    p {
        font-size: var(--font-size-14px);
    }
}

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

@media(min-width: 601px) {
    .sp-only {
        display: none !important;
    }
}

@media(max-width: 600px) {
    .pc-only {
        display: none !important;
    }
}

/* ───────────────────────────────────────────── */
/* 公開前は非表示 */
/* ───────────────────────────────────────────── */

.contents-header {
    display: none !important;
}

/* ───────────────────────────────────────────── */
/* 登録フォーム */
/* ───────────────────────────────────────────── */

.fast-register-layout__wrap {
    background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -400px left calc(50% - -490px)/1656px auto !important;
    background-color: #FFF8EB;
    align-items: center;
}

@media screen and (min-width: 901px) {
    .fast-register-layout__wrap {
        flex-direction: column;
    }
}

@media screen and (max-width: 600px) {
    .fast-register-layout__wrap {
        background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -190px left 50px/800px auto !important;   
        padding: 16px;
    }
}

.fast-register-form-layout {
    background: var(--color-white);
    box-shadow: var(--shadow-black-base);
    width: 100%;
    max-width: 800px;
}

@media screen and (max-width: 600px) {
    .fast-register-form-layout {
        padding: 32px 16px;
    }
}

.fast-register-title-layout {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding-bottom: 0;
}

@media screen and (max-width: 600px) {
    .fast-register-title-layout {
        padding: 0;
    }    
}

.fast-register-title-layout .title__wrap {
    width: 100%;
}

.fast-register-title-layout .title__content {    
    display: none;
}

.fr-view-title {
    color: var(--color-orange-02);
    padding-top: 48px;
    background: url(https://sms-festa.eventos.tokyo/images/1273/1195/15385/event-551e26bb-c66f-4ded-8493-3bb82f72ea5b.png) no-repeat center top/auto 34px;
    text-align: center;
    font-size: var(--font-size-32px);
    font-weight: 700;
    width: 100%;
    text-align: center;
}

.fr-view-title__small {
    font-size: var(--font-size-24px);
    font-weight: 700;
    color: inherit;
    display: inline-block;
    margin-inline: 6px 8px;
    transform: translateY(-2px);
}

@media screen and (max-width: 600px) {
    .fr-view-title {
        background-position: top center;
        font-size: var(--font-size-24px);
    }

    .fr-view-title__small {
        font-size: var(--font-size-18px);
        margin-inline: 4px 6px;
    }
}

.fast-register-title-layout p {
    text-align: center;
}

.register__mail__label {
    font-family: Roboto, "Noto Sans JP", Arial, Arial, "Hiragino Sans","ヒラギノ角ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo,"MS Pゴシック", "MS PGothic", sans-serif !important;
}

/* 「ログイン画面へ」リンク削除 */
.register__account__text {
    display: none;
}

/* ───────────────────────────────────────────── */
/* 登録フォームサンクスページ */
/* ───────────────────────────────────────────── */

@media screen and (max-width: 600px) {
    .regit-complete__wrap .regit-complete__content {
        padding: var(--number-10) var(--number-04);
        width: 100%;
        margin: 0 auto;
    }
}

.layout-wrap .complete__wrap {
    min-height: 100%;
    background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -400px left calc(50% - -490px)/1656px auto !important;
}

.regit-complete__content__title {
    display: none;
}

.regit-complete-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.regit-complete-content > p {
    text-align: center;
    line-height: 1.7;
}

@media screen and (max-width: 600px) {
    .regit-complete-content > p {
        text-align: left;
    }
}

.regit-complete-content__heading {
    padding-top: 48px;
    background: url(https://sms-festa.eventos.tokyo/images/1273/1195/15385/event-551e26bb-c66f-4ded-8493-3bb82f72ea5b.png) no-repeat center top/auto 34px;
    font-size: var(--font-size-32px);
    color: var(--color-orange-02);
    font-weight: 700;
    letter-spacing: 0;
}

@media screen and (max-width: 600px) {
    .regit-complete-content__heading {
        font-size: var(--font-size-24px);
    }
}

.regit-complete-bg-white {
    padding: var(--number-08);
    border-radius: 12px;
    background-color: var(--color-white);
    margin-top: var(--number-08);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--number-04);
}

.regit-complete-bg-white > p {
    margin-bottom: 0;
    text-align: center;
    line-height: 1.7;
    letter-spacing: 0;
}

@media(max-width: 600px) {
    .regit-complete-bg-white {
        padding: var(--number-08) var(--number-04);
    }

    .regit-complete-bg-white > p {
        text-align: left;
    }
}

.regit-complete-bg-white__heading {
    font-size: var(--font-size-24px);
    color: var(--color-orange-02);
    font-weight: 700;
}

@media(max-width: 600px) {
    .regit-complete-bg-white__heading {
        font-size: var(--font-size-18px);
    }
}

.regit-complete-bg-white__strong {
    /*color: var(--color-orange-02);*/
    background:linear-gradient(transparent 60%, var(--color-orange-100) 60%);
    padding-inline: 4px;
}

.regit-complete-bg-white__help {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--number-01);
    padding-top: var(--number-02);
}

.regit-complete-bg-white__help-heading {
    font-size: var(--font-size-18px);
    font-weight: 700;
}

@media(max-width: 600px) {
    .regit-complete-bg-white__help-heading {
        font-size: var(--font-size-16px);
    }
}

.regit-complete__content .regit-complete__button {
    display: none !important;
}

/* ───────────────────────────────────────────── */
/* ログイン画面 */
/* ───────────────────────────────────────────── */

.v-application.login__wrap {
    background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -400px left calc(50% - -490px)/1656px auto !important;
    padding: 16px;
}

@media screen and (max-width: 600px) {
    .v-application.login__wrap {
        background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -190px left/800px auto !important;
    }
}

/* 新規登録ボタン削除 */
.login-layout__wrap #register_button {
    display: none !important;
}

/* ───────────────────────────────────────────── */
/* パスワード再設定画面 */
/* ───────────────────────────────────────────── */

.v-application.reset__wrap.v-application--is-ltr.theme--light {
    background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -400px left calc(50% - -490px)/1656px auto !important;
    padding: 16px;
}

@media screen and (max-width: 600px) {
    .v-application.reset__wrap.v-application--is-ltr.theme--light {
        background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-b32c34c6-352a-4d44-88b7-6c4eec2abdba.jpg) #FFF8EB repeat-y top -190px left/800px auto !important;             
    }
}

/* ───────────────────────────────────────────── */
/* layout */
/* ───────────────────────────────────────────── */

.footer {
    padding: var(--number-05) var(--number-02);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--color-black);    
}

.footer_copy {
    color: var(--color-white);
    font-size: var(--font-size-14px);
}

.portal-top-button {
    display: none;
}

.header__wrap.event__header {
    height: auto;
    padding: 26px;
    background: var(---White, #FFF);
    box-shadow: 0 4px 4px 0 rgba(51, 51, 51, 0.10);
    position: sticky;
    top: 0;
    left: 0;
    z-index: 6;
}

@media(max-width: 850px) {
    .layout.menu__name {
        display: block !important;
    }

    .header__wrap.event__header {
        padding: 8px 24px;
    }

    .header__wrap.event__header .header-tab__sp {
        position: fixed;
        top: 8px;
        right: 24px;
        padding: 0;
    }

    .menu__name__area {
        display: none !important;
    }        

    .v-menu__content[role="menu"] {
        top: 40px !important;
        position: fixed !important;
    }

    .menu__icon__image {
        display: block;
    }

    .v-menu__content[role="menu"] .v-list .v-list-item:last-of-type {
        display: none !important;
    }

    img.tab-icon__img {
        display: none;
    }
}

@media(max-width: 600px) {        
    .footer {
        padding-bottom: 80px;
    }
}

.header__logo {
    width: 266px;
    max-width: 100%;
}

.header__logo .header-logo__wrap {
    padding: 0;
    height: 32px !important;
}

.header__content {
    display: flex;
    align-items: center;
    justify-content: space-betweena;
    max-width: 1360px;
    margin-inline: auto;
}

.v-slide-group__content.v-tabs-bar__content {
    justify-content: flex-end !important;
    gap: 24px;
}

/* コンテンツがないのでメニュー非表示 */
.header-tab__v-tab.v-tab.v-tab--active.header-tab__active__event, .menu__name, .header-tab__sp {
    /*display: none !important;*/
}

@media(min-width: 601px) {
    .layout.menu__name {
        display: none;
    }
}

.header-tab__v-tab.v-tab {
    max-width: 100%;
    padding: 0 !important;
    min-width: 0;
}

.header-tab__v-tab.v-tab:first-of-type {
    display: none;
}

.v-tab:before {
    content: none;
}

.v-tabs-bar {
    height: auto;
}

.header-tab__v-tab .header-tab__name {
    font-size: var(--font-size-16px) !important;
    font-weight: 700;
    max-width: 100% !important;
    padding: 0;
    color: var(--color-black);
}

.header-tab__v-tab:last-of-type .header-tab__name {
    color: var(--color-blue-500);
}

.header-tab__v-tab.header-tab__active__event {
    border-bottom: none;
}

.layout_section {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 80px 16px;
}

.layout_section_inner {
    max-width: var(--layout-column-10);
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
}

.layout_section_inner[data-gap="40"] {
    gap: 40px;
}

.layout_section_title {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.layout_section_title_text {
    text-align: center;
    line-height: 1.5;
}

@media(max-width: 600px) {
    .layout_section {
        padding: 48px 24px;
    }

    .layout_section_title_text {
        text-align: left;
    }
}


/* ───────────────────────────────────────────── */
/* 視聴サイトトップページ */
/* ───────────────────────────────────────────── */

.html__wrap {
    margin-top: 0 !important;
}

.home_fv {
    background: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-7d1bcd56-62bd-4e7e-a566-c2b7069ea60d.png) #FFF8EB no-repeat center top/1184px;
    padding: 48px 32px 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--number-10);
    overflow: hidden;
    min-height: calc(100vh - (64px + 61px));
}

@media(max-width: 600px) {
    .home_fv {
        padding: var(--number-12) var(--number-02) var(--number-12);
        background-image: url(https://sms-festa.eventos.tokyo/file/wysiwyg/1273/file-1c09d9c8-1287-4a8d-b0c3-412bf9160bb1.png);
        background-size: 1690px;
        background-position: top -230px center;
    }
}

.home_fv_inner {
    width: 100%;
    max-width: var(--layout-column-10);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
}

.home_fv_heading {
    font-size: var(--font-size-24px);
    font-weight: 700;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
}

.home_fv_heading_border {
    color: var(--color-orange-02);
    border-top: solid 1px;
    border-bottom: solid 1px;
    padding-block: 8px;
    font-weight: 700;
    letter-spacing: .04em;
}

.home_fv_heading_text {
    font-weight: 700;
    letter-spacing: .04em;
}

.home_fv_heading_year {
    font-size: var(--font-size-40px);
    font-weight: 700;
}

.home_fv_heading_strong {
    font-size: var(--font-size-48px);
    color: var(--color-orange-02);
    font-weight: 700;
}

@media screen and (max-width: 600px) {
    .home_fv_heading {
        font-size: var(--font-size-16px);
    }

    .home_fv_heading_border {
        font-size: var(--font-size-14px);
    }

    .home_fv_heading_year {
        font-size: var(--font-size-24px);
    }

    .home_fv_heading_strong {
        font-size: var(--font-size-32px);
    }
}

.home_fv_period {
    display: flex;
    gap: 16px;
    align-items: center;
}

.home_fv_period_head {
    font-size: var(--font-size-24px);
    font-weight: 700;
    color: var(--color-white);
    padding: 8px 20px;
    background: linear-gradient(270deg, #F68100 0%, #FF6A00 100%);
}

.home_fv_period_row {
    display: flex;
    align-items: center;
    gap: 16px;
}

.home_fv_period_schedule {
    display: flex;
    align-items: center;
    gap: 10px;
}

.home_fv_period_date {
    font-size: var(--font-size-48px);
    font-weight: 700;
}

.home_fv_period_day {
    width: 50px;
    height: 50px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-black);
    font-size: var(--font-size-28px);
    font-weight: 700;
    color: var(--color-white);
}

.home_fv_period_time {
    font-size: var(--font-size-28px);
    font-weight: 700;
}

@media screen and (max-width: 600px) {
    .home_fv_period {
        flex-direction: column;
        gap: 6px;
    }

    .home_fv_period_head {
        font-size: var(--font-size-16px);
        padding: 4px 11px;
    }

    .home_fv_period_date {
        font-size: var(--font-size-28px);
    }

    .home_fv_period_row {
        gap: 11px;
    }

    .home_fv_period_schedule {
        gap: 7px;
    }

    .home_fv_period_day {
        width: 32px;
        height: 32px;
        font-size: var(--font-size-16px);
    }

    .home_fv_period_time {
        font-size: var(--font-size-16px);
    }

    .home_fv_period_arrow {
        width: 12px;
    }
}

.home_fv_row {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
}

.home_fv_speaker {
    width: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.home_fv_speaker_content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 11px 6px;
    background-color: var(--color-white);
    border-radius: 8px;
    box-shadow: 0 3.819px 7.637px 0 #FFE1C2;
    height: 100%;
}

.home_fv_speaker_name {
    font-size: 15px;
    font-weight: 700;
}

.home_fv_speaker_text {
    font-size: 11px;
    text-align: center;
    font-weight: 500;
}

@media screen and (max-width: 600px) {
    .home_fv_row {
        gap: 12px 8px;
        max-width: 360px;
    }

    .home_fv_speaker {
        width: 139px;
    }

    .home_fv_speaker[data-order-sp="1"] {
        order: 1;
    }
    .home_fv_speaker[data-order-sp="2"] {
        order: 2;
    }
    .home_fv_speaker[data-order-sp="3"] {
        order: 3;
    }
    .home_fv_speaker[data-order-sp="4"] {
        order: 4;
    }
    .home_fv_speaker[data-order-sp="5"] {
        order: 5;
    }

    .home_fv_speaker[data-width-sp="111"] {
        width: 111px;
    }

    .home_fv_speaker_content {
        padding: 12px 4px;
        justify-content: center;
    }

    .home_fv_speaker_name {
        font-size: 12px;
    }

    .home_fv_speaker_text {
        font-size: 10px;
    }

    .home_fv_speaker_image {
        max-width: 111px;
    }
}

.home_fv_column {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.home_fv_bottom {
    background-color: var(--color-white);
    padding: 36px;
    border-radius: 12px;
    width: 100%;
    max-width: var(--layout-column-10);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    gap: var(--number-06);
}

.home_fv_bottom[data-gap="16"] {
    gap: 16px;
}

.home_fv_bottom[data-border] {
    border: solid 2px var(--color-orange-01);
}

@media screen and (max-width: 600px) {
    .home_fv_bottom {
        padding: var(--number-10) var(--number-06);
    }    
}

.home_fv_bottom_head {
    display: flex;
    flex-direction: column;
    align-items: center;   
    gap: 8px; 
}

p.home_fv_bottom_title {
    font-size: var(--font-size-24px);
    font-weight: 700;
    text-align: center;
    margin-bottom: 0;
}

@media screen and (max-width: 600px) {
    p.home_fv_bottom_title {
        font-size: var(--font-size-16px);
    }
}

p.home_fv_bottom_heading {
    font-size: var(--font-size-32px);
    font-weight: 700;
    color: var(--color-orange-02);
    text-align: center;
    margin-bottom: 0;
}

@media screen and (max-width: 600px) {
    p.home_fv_bottom_heading {
        font-size: var(--font-size-20px);   
    }
}

p.home_fv_bottom_text {
    /*line-height: 2;*/
    margin-bottom: 0;
    text-align: center;
    font-weight: 400;
}

@media screen and (max-width: 600px) {
    p.home_fv_bottom_text {
        text-align: left;
    }
}

p.home_fv_bottom_strong {
    margin-bottom: 0;
    font-size: var(--font-size-20px);
    font-weight: 700;
}

@media screen and (max-width: 600px) {
    p.home_fv_bottom_strong {
        font-size: var(--font-size-16px);
    }
}

p.home_fv_bottom_notes {
    font-size: var(--font-size-14px);
    font-weight: 400;
    text-align: center;
}

@media screen and (max-width: 600px) {
    p.home_fv_bottom_notes {
        text-align: left;
        font-size: 12px;
    }
}

.home_fv_bottom_heading2 {
    font-size: var(--font-size-24px);
    font-weight: 700;
    text-align: center;
}

.home_fv_bottom_heading2[data-color="orange"] {
    color: var(--color-orange-02);
}

.home_fv_bottom_text2 {
    line-height: 2;
}

@media screen and (max-width: 600px) {
    .home_fv_column {
        padding-inline: 16px;
    }

    .home_fv_bottom_heading2 {
        font-size: var(--font-size-16px);
    }    

    .home_fv_bottom_text2 {
        line-height: 1.75;
    }
}

.event__layout.widget__wrap:last-of-type {
    padding-bottom: 0;
}

.event__layout section.contents__wrap.list__contents .booth__wrap {
    display: flex;
    flex-direction: column-reverse;
}

@media screen and (max-width: 600px) {
    .event__layout section.contents__wrap.list__contents .booth__wrap {
        padding-inline: 12px !important;
    }
}

/* トップページブース */
.booth-card-layout__wrap {
    max-width: 984px;
}

/* アンケート */

.home_questionnaire {
    background-color: #F2F5FA;
    margin-top: 80px;
    position: relative;
    z-index: 0;
}

.home_questionnaire::before {
    content: '';
    width: 100vw;
    height: 100%;
    background: #F2F5FA;
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.home_questionnaire_heading {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    font-size: var(--font-size-36px);
    font-weight: 700;
}

.home_questionnaire_heading_balloon {
    font-size: var(--font-size-20px);
    font-weight: 700;
    color: var(--color-orange-02);
    background-color: var(--color-white);
    padding: 8px 24px;
    border-radius: var(--radius-rounded-full);
    position: relative;
}

.home_questionnaire_heading_balloon::after {
    content: '';
    width: 24px;
    height: 14px;
    background-color: var(--color-white);
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    position: absolute;
    bottom: -13px;
    left: 50%;
    transform: translateX(-50%);
}

.home_questionnaire_row {
    display: flex;
    align-items: center;
    gap: 32px;
    justify-content: center;
}

@media(max-width: 600px) {
    .booth__wrap .home_questionnaire.layout_section {
        padding-inline: 8px;
    }
    .home_questionnaire_heading {
        font-size: var(--font-size-24px);
        gap: 11px;
    }

    .home_questionnaire_heading_balloon {
        font-size: var(--font-size-16px);        
    }

    .home_questionnaire_heading_balloon::after {
        width: 13px;
        height: 8px;
        bottom: -7px;
    }

    .home_questionnaire_row {
        flex-direction: column;
        gap: 32px;
    }
    
    .home_questionnaire_row_content p {
        font-size: var(--font-size-16px);
    }
    
    .home_questionnaire_row_content p:last-of-type {
        margin-bottom: 0;
    }
}

/* AIサービスのご活用に関するご注意 */
.home_ai {
    background-color: #FFEAD1;
}

.home_ai_inner {
    background-color: var(--color-white);
    padding: 48px 64px;
    border-radius: 12px;
}

.home_ai_box {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.home_ai_box p {
    margin-bottom: 0;
}

.home_ai_box_heading {
    font-size: var(--font-size-24px);
    font-weight: 700;
}

@media(max-width: 600px) {
    .home_ai_inner {
        padding: 28px;
    }

    .home_ai_box_heading {
        font-size: var(--font-size-18px);
        text-align: center;
    }
}

/* ───────────────────────────────────────────── */
/* アンケート */
/* ───────────────────────────────────────────── */

.questionnaire-description__text {
    display: flex;
    flex-direction: column;    
    font-size: var(--font-size-16px) !important;
    line-height: 1.5;
}

.questionnaire-description__text p:last-of-type {
    margin-bottom: 0;
}

.questionnaire__basecard-text {
    padding: 32px;
}

@media(max-width: 600px) {
    .questionnaire__basecard-text {
        padding: 24px 16px;
    }
}

.questionnaire-base__layout {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin: 0 !important;
}

.questionnaire-title__wrap {
    margin-bottom: 0 !important;
}

.questionnaire-title__text {
    font-size: var(--font-size-24px) !important;
    font-weight: 700;
}

@media(max-width: 600px) {
    .questionnaire-title__text {
        font-size: var(--font-size-20px) !important;
    }
}

.questionnaire-date__wrap {
    margin: 0 !important;
}

.questionnaire-date__text.base-color {
    color: var(--color-gray-02) !important;
    font-weight: 700;
    font-size: var(--font-size-16px);
}

.questionnaire-date__period {
    font-size: var(--font-size-16px) !important;
    color: var(--color-gray-02) !important;
    opacity: 1 !important;
}

@media(max-width: 600px)  {
    .questionnaire-date__text.base-color,
    .questionnaire-date__period {
        font-size: var(--font-size-14px) !important;
    }
}

/* ───────────────────────────────────────────── */
/* アンケートサンクス */
/* ───────────────────────────────────────────── */

.answered-title__wrap:first-of-type {
    display: none;
}

.answered-title__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 80px;
    max-width: var(--layout-column-8);
    margin-inline: auto;
}

.questionnaire-dl {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: var(--layout-column-6);
}

.questionnaire-card {
    display: flex;
    gap: 16px;
    align-items: center;
    width: 100%;
    padding: 16px;
    border: solid 1px rgba(112, 112, 112, 0.2);
    border-radius: 8px;
    text-decoration: none;
    text-align: left;
    box-shadow: var(--Number-00, 0) var(--Number-01, 4px) var(--Number-01, 4px) var(--Number-00, 0) rgba(51, 51, 51, 0.10);
    transition: .2s;
}

.questionnaire-card:hover {
    box-shadow: var(--shadow-card-hover);
}

.questionnaire-card__content {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.questionnaire-card__heading {
    font-size: var(--font-size-18px);
    font-weight: 700;
}

.questionnaire-card__dl-text {
    font-size: var(--font-size-16px);
    font-weight: 700;
    color: var(--color-blue-500);
    display: flex;
    align-items: center;
    gap: 10px;
}

.questionnaire-card__dl-text::after {
    content: "\f090";
    font-family: "Material Symbols Rounded";
    font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
    font-weight: 400;
    font-size: var(--font-size-24px);
    flex-shrink: 0;
}

@media(max-width: 600px) {
    .questionnaire-card {
        flex-direction: column;
    }

    .questionnaire-card__content {
        gap: 8px;
        align-items: center;
    }

    .answered-title__text {
        gap: 48px;
    }
}

/* ───────────────────────────────────────────── */
/* 動画詳細 */
/* ───────────────────────────────────────────── */

.contents__wrap section.booth__wrap {
    padding: 0 24px !important;
}

@media(max-width: 600px) {
    .contents__wrap section.booth__wrap {
        padding: 0 8px !important;
    }   
}

.booth__wrap > section {
    max-width: var(--layout-column-10);
    margin-inline: auto;
}

.booth__wrap h2.title {
    display: none;
}

.booth__wrap section:not([class]) > section:not([class]) > section:not([class]) > img:not([class]) {
    display: none;
}

.booth__wrap div.title {
    padding: 0;
    margin-bottom: 16px;
}

.booth__wrap div.title .title__content {
    padding: 0;
    font-size: var(--font-size-36px);
    font-weight: 700;
    line-height: 1.5;
}

/*.booth__wrap .booth-category__row {
    
}*/

.booth__wrap .booth-category__row .booth-category__chip {    
    color: #333 !important;
    padding: 4px 16px;
    background-color: #FFECC7;
    height: auto !important;
    line-height: 1.5 !important;
    border-radius: 999px;
}

.booth__wrap .booth-category__row .booth-category__chip .booth-category__text {
    font-size: var(--font-size-16px) !important;
    font-weight: 700;
}

@media(max-width: 600px) {
    .booth__wrap .booth-category__row .booth-category__chip .booth-category__text {
        font-size: var(--font-size-14px) !important;
    }   
}

.booth__wrap .booth-category__row .booth-category__col {
    padding: 0;
}

.booth__wrap .booth-category__row {
    margin: 0 0 8px;
    padding: 0;
    gap: 8px;
}


.booth__wrap .description {
    margin: 0 0 32px;
}

.booth__wrap .description .html__wrap > span {
    display: block;
    font-size: var(--font-size-16px);
    font-weight: 400;
    line-height: 1.5;
}

@media(max-width: 600px) {
    .booth__wrap div.title .title__content {
        font-size: var(--font-size-24px);
    }
}

p.video_notes {
    font-size: 12px;
    margin-top: 1.5em;
}

@media(max-width: 600px) {
    p.video_notes {
        font-size: 10px;
    }
}

.video_pr {
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 32px;
    border-radius: 12px;
    background: var(--color-white);
    margin-top: 32px;
    margin-bottom: 48px;
}

.video_pr_head {
    width: 113px;
    flex-shrink: 0;
}

.video_pr_content {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.video_pr_name {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 16px;
    font-size: var(--font-size-20px);
    font-weight: 700;
    line-height: 1.5;
}

.video_pr_name_position {
    font-size: var(--font-size-16px);
}

.video_pr_text {
    font-size: var(--font-size-16px);
    font-weight: 400;
}

@media(max-width: 600px) {
    .video_pr {
        flex-direction: column;
        padding-block: 24px;
        background-color: var(--color-white);
    }

    .video_pr_head {
        display: flex;
        align-items: center;
        gap: 16px;
        width: 100%;
    }

    .video_pr_image {
        width: 80px !important;
        flex-shrink: 0;
    }

    .video_pr_name {
        font-size: var(--font-size-16px);
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .video_pr_name_position {
        font-size: var(--font-size-14px);
    }

    .video_pr_text {
        font-size: 12px;
    }
}

/* ───────────────────────────────────────────── */
/* component */
/* ───────────────────────────────────────────── */

.portal-event-top {
    display: none !important;
}

.top-button__wrap {
    display: none;
}

.detail__wrap {
    background-color: #FEF2E5;    
}

section.contents__wrap.list__contents {
    padding-bottom: 80px;
}

@media(max-width: 600px) {
    .detail__wrap {
        padding-inline: 16px !important;
    }
}

.detail-title__wrap {
    display: block !important;
    height: auto !important;
    background: none !important;
    margin: 0 auto !important;
    padding: 40px 0 32px;
}

.detail-title__text h2,
.booth-list-title__text h2 {
    background-color: transparent !important;
    font-size: var(--font-size-32px) !important;
    font-weight: 700;
}

@media(max-width: 600px) {
    .detail-title__text h2,
    .booth-list-title__text h2 {
        font-size: var(--font-size-24px) !important;
    }
}

.booth-list-title__text {
    text-align: center !important;
    border-left: none !important;
    padding-left: 0 !important;
}

.detail-title__border {
    display: none;
}

.booth-list-title__wrap {
    min-height: 0 !important;
}

.contents__wrap.detail__contents {
    max-width: var(--layout-column-10);
    margin-inline: auto;
}

/* ボタン */
.v-btn, .v-btn:not(.v-btn--round).v-size--large {
    padding: var(--number-04) var(--number-10);
    min-width: 292px;
    width: fit-content;
    height: auto;
    font-size: var(--font-size-20px);
    font-weight: 700;
    background-color: var(--color-blue-02) !important;
    border-radius: var(--radius-button);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--color-white) !important;
}

.v-btn--fab.v-size--default {
    min-width: 0 !important;
    padding: 0 !important;
}

.v-application .blue--text.text--darken-1 {
    color: var(--color-white) !important;
}

@media(max-width: 600px) {
    .button__wrap.widget__button.widget__button__event {
        display: none;
    }
    .booth-card-layout__content.noline.col {
       display: none; 
    }
}

.component_button {
    font-size: var(--font-size-20px);
    font-weight: 700;
    color: var(--color-white) !important;
    text-decoration: none;
    padding: 16px 28px;
    border-radius: 8px;
    background-color: var(--color-blue-02);
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: var(--Number-00, 0) var(--Number-01, 4px) var(--Number-01, 4px) var(--Number-00, 0) rgba(0, 0, 0, 0.10);
    transition: .2s;
}

.component_button::after {
    content: '\e5c8';
    font-family: "Material Symbols Rounded";
    font-variation-settings: "FILL" 0, "wght" 500, "GRAD" 0;
    font-size: var(--font-size-24px);    
}

.component_button:hover {
    box-shadow: var(--shadow-button-hover);
}

.component_button[data-style="floating"] {
    padding: 8px 28px;
    font-size: var(--font-size-16px);   
    border-radius: 4px;
}

.component_button[data-style="floating"]::after {
    content: none;
}

.component_link_back {
    display: flex;
    gap: 8px;
    align-items: center;
    text-decoration: none;
    color: var(--color-blue-500);
    font-size: var(--font-size-16px);
    width: fit-content;
}

.component_link_back::before {
    content: '\ef7d';
    font-family: "Material Symbols Rounded";
    font-variation-settings: "FILL" 0, "wght" 500, "GRAD" 0;
    color: #2686E3;
    font-size: var(--font-size-24px);
    font-weight: 400;
    display: block;
    align-items: center;
    gap: 4px;
    margin-left: auto;
}
/* 見出し */
.widget-header__col {
    width: 100% !important;
}

.row.widget-header__row {
    flex-direction: column;
    align-items: center;
}

.row.widget-header__row .v-application .mr-auto {
    width: 100%;
}

.row.widget-header__row .v-btn {
    display: none;
}

.widget-header__border {
    display: none !important;
}

.widget-title__border.base-background-color {
    display: none !important;
}

.row.widget-header__row h2 {
    font-size: 40px;
    font-weight: 700;
}

@media screen and (max-width: 600px) {
    .row {
        margin-inline: 0;
    }

    .row.widget-header__row h2 {
        font-size: var(--font-size-24px);
    }
}

.component_heading2 {
    font-size: var(--font-size-36px);
    font-weight: 700;
    text-align: center;
    height: auto;
    line-height: 1.5;
}

@media screen and (max-width: 600px)  {
    .component_heading2 {
        font-size: var(--font-size-24px);
    }
}

/* カード */
.booth-card-layout__content .v-card:not(.v-sheet--tile):not(.v-card--shaped) {
    border-radius: 12px !important;
    overflow: hidden;
    height: 100%;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.10);
    transition: .2s;
}

.booth-card-layout__content .v-card:not(.v-sheet--tile):not(.v-card--shaped):hover {
    box-shadow: var(--shadow-card-hover);
}

.booth-favorite__button {
    display: none;
}

.booth-card-layout__content {
    padding-block: 10px !important;
}

.v-card__text.booth-card__text,
.booth-card__content .v-card__text {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 20px !important;
}

.v-card__text.booth-card__text::after,
.booth-card__content .v-card__text::after {
    content: '視聴する\e5c8';
    font-family: "Material Symbols Rounded", Roboto, "Noto Sans JP", Arial, Arial, "Hiragino Sans","ヒラギノ角ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo,"MS Pゴシック", "MS PGothic", sans-serif;
    font-variation-settings: "FILL" 0, "wght" 500, "GRAD" 0;
    color: #2686E3;
    font-size: 16px;
    font-weight: 700;
    display: block;
    align-items: center;
    gap: 4px;
    margin-left: auto;
}

.booth-card__title,
.booth-card__content .v-card__text .booth-title__text {
    font-size: 20px !important;
    font-weight: 700;
    line-height: 1.5 !important;
    height: auto !important;
    width: 100% !important;
    margin-top: 0;
}

.booth-card__content .v-card__text .row--dense {
    margin: 0;
}

.booth-card__content .v-card__text section.booth-description__wrap {
    display: none;
}

.booth__wrap .booth-category__row {
    margin-bottom: 0;
}

.booth-card__content .v-card__text .row--dense .pa-0.col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.booth-card__category {
    font-size: 16px !important;
    color: #333 !important;
    padding: 4px 16px;
    background-color: #FFECC7;
    height: auto !important;
    line-height: 1.5 !important;
    border-radius: 999px;
}

@media(max-width: 600px) {
    .booth-card__title,
    .booth-card__content .v-card__text .booth-title__text {
        font-size: 18px !important;
    }

    .booth-card__category {
        font-size: 14px !important;
    }
}

.booth-list-title__layout-selector {
    display: none;
}

.booth-list__pagination {
    display: none;
}

/* バナー */
.component_banner_row {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.component_banner_link {
    max-width: calc(50% - 16px);
    width: 100%;
    line-height: 0;
    transition: .2s;
}

.component_banner_link:hover {
    box-shadow: var(--shadow-card-hover);
}

@media(max-width: 600px) {
    .component_banner_row {
        flex-direction: column;   
        max-width: 328px;     
    }   

    .component_banner_link {
        max-width: 100%;
    }
}

/* popup */
.component_popup {
    position: fixed;
    bottom: 8px;
    right: 8px;
    z-index: 10;
    width: 240px;
    border-radius: 8px;
    border: 2px solid var(--02, #E46500);
    background: #FFF;
    box-shadow: 0 4px 24px var(--Number-00, 0) rgba(51, 51, 51, 0.20);
    overflow: hidden;
}

.component_popup_input {
    position: absolute;
    opacity: 0;
    visibility: hidden;
}

.component_popup_heading {
    font-weight: 700;
    background-color: var(--color-orange-02);
    color: var(--color-white);
    display: flex;
    gap: 4px;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    cursor: pointer;
}

.component_popup_heading_icon {
    transform: rotate(180deg);
}

.component_popup_content {
    padding: 12px 20px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    display: none;
}

.component_popup_input:checked ~ .component_popup_content {
    display: flex;
}

.component_popup_input:checked + .component_popup_heading .component_popup_heading_icon {
    transform: rotate(0deg);
}

.component_popup_content_head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.component_popup_content_heading {
    font-size: var(--font-size-14px);
    font-weight: 700;
    text-align: center;
}

.component_popup_content_text {
    font-size: 12px;
}

@media(max-width: 600px) {
    .component_popup {
        width: calc(100vw - 48px);
        right: 50%;
        transform: translateX(50%);
    }

    .component_popup_heading {
        padding: 14px 20px;
        line-height: 1;
        justify-content: space-between;
    }

    .component_popup_content {
        padding-inline: 12px;
    }
}


/* ───────────────────────────────────────────── */
/* utility */
/* ───────────────────────────────────────────── */

.text-center {
    text-align: center;
}

.text-underline {
    text-decoration: underline;
}

.font-bold {
    font-weight: 700;
}