/* 部活ページ共通スタイル */
h1 {
    font-size: 1.6rem !important;
}

h2 {
    clear: both;
    padding-top: 30px;
}

pre {
    white-space: pre-wrap;
    padding-top: 0.3rem !important;
}

.pc {
    display: block;
}
.sp {
    display: none !important;
}

.none_imp {
    display: none !important;
}
.none {
    display: none;
}
.invisible {
    visibility: hidden;
}
.relative {
    position: relative;
}
.clickable {
    cursor: pointer;
}
.link {
    cursor: pointer;
    color: #0000ff;
}
.link:hover {
    text-decoration: underline;
}
div.link {
    width: fit-content;
}
.t-center {
    text-align: center;
}
.f-normal {
    font-weight: 500;
}
.err_color {
    color: #ff3333;
}
.right {
    margin-left: auto;
    margin-right: 0;
}

.mt03 {
    margin-top: 0.3rem !important;
}
.mr1 {
    margin-right: 1rem;
}

.row::after {
    content: "";
    display: block;
    clear: both;
}
.row > div {
    float: left;
}
.row_right::after {
    content: "";
    display: block;
    clear: both;
}
.row_right > div {
    float: right;
}

.text_counter{
    position: relative;
    display: inline-block;
}
.text_num{
    position: absolute;
    right: 2px;
    top: -20px;
    font-size: 0.8rem;
}

.hint_text {
    margin-top: 1rem;
}
.caution_pay {
    width: 100%;
    height: 150px;
    background-image: url(../img/banner/caution_pay.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center top;
    background-color: #F7EB60;
}

.input_form select {
    border-radius: 3px;
    padding: 8px 13px;
    max-height: 2.4rem;
    max-width: 100%;
    border: 1px #ccc solid;
    outline: none;
    box-sizing: border-box;
}
.input_form .required::after {
    content: '*';
    color: #ff0000;
    margin-left: 2px;
    vertical-align: middle;
}
.required_label::after {
    content: '*';
    color: #ff0000;
    margin-left: 2px;
    vertical-align: middle;
}

.inline-block {
    display: inline-block;
}

.none-item{
    display: none;
}

.middle-text{
    width: 325px;
}

.required {
    color: #FF0000;
}
.required::after {
    content: '*';
    color: #ff0000;
    margin-left: 2px;
    vertical-align: middle;
}

.right_hint {
    margin-top: 1rem;
    width: 100%;
    text-align: right;
    font-size: 0.9rem;
}

.btn-small.disabled, .btn-small.disabled:hover,
.btn-xsmall.disabled, .btn-xsmall.disabled:hover,
.preview-btn.disabled, .preview-btn.disabled:hover,
.success-btn.disabled, .success-btn.disabled:hover,
.btn-open.disabled, .btn-default.disabled, .btn-download.disabled,
.button_action.disabled, .button_action_red.disabled {
    cursor: not-allowed !important;
}

#main {
    padding-top: 58px;
}
.firstviewA #main {padding-top: 92px;}
.firstviewB #main,
.firstviewC #main {padding-top: 95px;}
.firstviewD #main {padding-top: 58px;}
.firstviewE #main {padding-top: 63px;}

.firstviewD .detail_title {margin-top: 37px;}
.firstviewE .detail_title {margin-top: 37px;}
.firstviewF .detail_title {margin-top: 37px;}
 
#cancelBank {
    min-width: 100px;
    height: 40px;
    color: #ffffff;
    border: 0;
    background-color: #e26000;
    font-weight: bold;
    border-radius: 4px !important;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
    margin: 0 auto;
    display: block;
    font-size: 1.2rem;
}

.btn-open {
    color: #ffffff !important;
    background-color: #0071E2 !important;
}

.btn-default {
    color: #ffffff !important;
    background-color: #3B9CF5 !important;
}

.btn-xsmall {
    min-width: 40px;
    height: 30px;
    color: #ffffff;
    border: 0;
    background-color: #e26000;
    font-weight: bold;
    border-radius: 4px;
}

.btn-download {
    color: #ffffff;
    background-color: #3B9CF5;
    background-image: url(../img/icon/bukatsunavi_icon-34W.svg);
    padding-right: 34px !important;
    background-repeat: no-repeat;
    background-position: right 6px center;
    background-size: 22px;
}

.button_action {
    min-width: 15rem;
    height: 4rem;
    line-height: 4rem;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: -2px;
    color: #ffffff;
    background-color: #FF2634;
    text-align: center;
    cursor: pointer;
    border-radius: 2px;
    border: unset;
}
.button_action.disabled {
    color: #C7C7C7;
    background-color: #FFFFFF;
    border: 1px solid #C7C7C7;
    font-weight: 500;
}

.btn-save {
    color: #ffffff;
    background-color: #E26000;
}

.button_receptionQrCode {
    min-width: 15rem;
    height: 4rem;
    line-height: 4rem;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: -2px;
    color: #ffffff;
    background-color: #3B9CF5;
    text-align: center;
    cursor: pointer;
    border-radius: 2px;
    border: unset;
}

.button_receptionQrCode.small {
    height: 2rem !important;
    line-height: 2rem !important;
    width: unset !important;
    min-width: unset !important;
    padding: 0 1rem !important;
    background-color: #3B9CF5;
    border-radius: 0px !important;
}

#dialogPaymentCard,
#dialogPaymentBank,
#dialogPaymentPaypay,
#dialogSkippay {
    min-width: 15rem;
    height: 4rem;
    line-height: 4rem;
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: -2px;
    color: #ffffff !important;
    background-color: #FF2634 !important;
    text-align: center !important;
    cursor: pointer;
    border-radius: 2px !important;
    border: unset !important;
    padding: unset !important;
    margin: 1rem 0 0 0 !important;
    border-radius: unset !important;
}
#dialogPaymentBank,
#dialogPaymentCard {
    margin-right: 1rem !important;
}
  

.wIcon-upload{
    background-image: url(../img/icon/bukatsunavi_icon-17W.svg);
    margin-right: 5px;
}
button.icon-btn {
    padding: 0 !important;
}
.icon-btn > .wIcon-upload {
    margin-right: 0;
}


#dialogQrButton {
    padding: 2px 1rem 0 1rem;
    border-radius: 0 !important;
    background-color: #3B9CF5;
}

#shareDialog .dialog_inner {
    padding: 0;
}

#dialogHtmlCopy {
    padding: 2px 1rem 0 1rem;
    border-radius: 0 !important;
}

.button_bordered {
    min-width: 15rem;
    height: 3rem;
    line-height: 3rem;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0px;
    color: #FB2A3A !important;
    background-color: #FFFFFF !important;
    border: 1px solid #FB2A3A !important;
    text-align: center;
    cursor: pointer;
    border-radius: 2px !important;
}

.button_bordered.small {
    height: 2rem;
    line-height: 2rem;
    width: unset !important;
    min-width: unset;
    padding: 0 1rem;
}

/*
 * 閉じるボタン
 */
 .button_dialog_close {
    font-size: 1.3rem;
    color: #ffffff !important;
    background-color: unset !important;
    cursor: pointer;
    border: unset;
}

.outer_buttons {
    width: 100%;
    height: 50px;
    display: flex;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    padding-bottom: 15px;
    box-sizing: border-box;
}

.buttons_inner {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 入力枠(数値は半角文字相当) */
.input16 {
    width: 16rem;
}
.input80 {
    width: 43rem;
}
.input100 {
    width: 60rem;
}
.input160 {
    width: 83rem;
}

/* ファーストビュー選択B */
body.firstviewB .header_bar{
    display: none;
}

/* ファーストビュー選択C */
body.firstviewC .header_bar{
    display: none;
}
/* ファーストビュー選択D */
body.firstviewD .header_bar{
    display: none;
}
/* ファーストビュー選択E */
body.firstviewE .header_bar{
    display: none;
}
/* ファーストビュー選択F */
body.firstviewF .header_bar{
    display: none;
} 
/* ファーストビュー選択以上 */

/* 変数定義 */
body.thema1 {
    --color-main: #FF0000;
    --color-light: #F78181;
    --color-text: #ffffff;
}
body.thema2 {
    --color-main: #B40404;
    --color-light: #FF8000;
    --color-text: #ffffff;
}
body.thema3 {
    --color-main: #FF8000;
    --color-light: #F79F81;
    --color-text: #ffffff;
}
body.thema4 {
    --color-main: #FFBF00;
    --color-light: #F7D358;
    --color-text: #2E2E2E;
}
body.thema5 {
    --color-main: #FFFF00;
    --color-light: #F3F781;
    --color-text: #2E2E2E;
}
body.thema6 {
    --color-main: #00FF00;
    --color-light: #ACFA58;
    --color-text: #2E2E2E;
}
body.thema7 {
    --color-main: #088A08;
    --color-light: #00FF00;
    --color-text: #ffffff;
}
body.thema8 {
    --color-main: #0000FF;
    --color-light: #58ACFA;
    --color-text: #ffffff;
}
body.thema9 {
    --color-main: #00BFFF;
    --color-light: #81BEF7;
    --color-text: #ffffff;
}
body.thema10 {
    --color-main: #00FFFF;
    --color-light: #81DAF5;
    --color-text: #2E2E2E;
}
body.thema11 {
    --color-main: #8A0886;
    --color-light: #D358F7;
    --color-text: #ffffff;
}
body.thema12 {
    --color-main: #BF00FF;
    --color-light: #DA81F5;
    --color-text: #ffffff;
}
body.thema13 {
    --color-main: #FF00BF;
    --color-light: #F781F3;
    --color-text: #ffffff;
}
body.thema14 {
    --color-main: #ff1493;
    --color-light: #F781D8;
    --color-text: #ffffff;
}
body.thema15 {
    --color-main: #000080;
    --color-light: #7401DF;
    --color-text: #ffffff;
}
body.thema16 {
    --color-main: #2E2E2E;
    --color-light: #6E6E6E;
    --color-text: #ffffff;
}
body.thema17 {
    --color-main: #FC9090;
    --color-light: #F8BEBE;
    --color-text: #ffffff;
}
body.thema18 {
    --color-main: #0093FF;
    --color-light: #6FC2FF;
    --color-text: #ffffff;
}
body.thema19 {
    --color-main: #0B7964;
    --color-light: #24A78E;
    --color-text: #ffffff;
}

/* 領域別 */
body.thema1  .header_bar { background-color: #F78181; }
body.thema2  .header_bar { background-color: #FF8000; }
body.thema3  .header_bar { background-color: #F79F81; }
body.thema4  .header_bar { background-color: #F7D358; }
body.thema5  .header_bar { background-color: #F3F781; }
body.thema6  .header_bar { background-color: #ACFA58; }
body.thema7  .header_bar { background-color: #00FF00; }
body.thema8  .header_bar { background-color: #58ACFA; }
body.thema9  .header_bar { background-color: #81BEF7; }
body.thema10 .header_bar { background-color: #81DAF5; }
body.thema11 .header_bar { background-color: #D358F7; }
body.thema12 .header_bar { background-color: #DA81F5; }
body.thema13 .header_bar { background-color: #F781F3; }
body.thema14 .header_bar { background-color: #F781D8; }
body.thema15 .header_bar { background-color: #7401DF; }
body.thema16 .header_bar { background-color: #6E6E6E; }
body.thema17 .header_bar { background-color: #FC9090; }
body.thema18 .header_bar { background-color: #0093FF; }
body.thema19 .header_bar { background-color: #0B7964; }

.header_bar{
    width: 100%;
    height: 3px;
}

.outline {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 1px solid #cccccc;
}
.outline_title {
    background-color: #dfdfdf;
}

.history {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 1px solid #cccccc;
}

.navi_login {
    height: 40px;
    min-width: 40px;
    background-color: #ffffff;
}

body.thema1  .icon_menu { background-image: url(../img/page/icon_menu_t1.svg); }
body.thema2  .icon_menu { background-image: url(../img/page/icon_menu_t2.svg); }
body.thema3  .icon_menu { background-image: url(../img/page/icon_menu_t3.svg); }
body.thema4  .icon_menu { background-image: url(../img/page/icon_menu_t4.svg); }
body.thema5  .icon_menu { background-image: url(../img/page/icon_menu_t5.svg); }
body.thema6  .icon_menu { background-image: url(../img/page/icon_menu_t6.svg); }
body.thema7  .icon_menu { background-image: url(../img/page/icon_menu_t7.svg); }
body.thema8  .icon_menu { background-image: url(../img/page/icon_menu_t8.svg); }
body.thema9  .icon_menu { background-image: url(../img/page/icon_menu_t9.svg); }
body.thema10 .icon_menu { background-image: url(../img/page/icon_menu_t10.svg); }
body.thema11 .icon_menu { background-image: url(../img/page/icon_menu_t11.svg); }
body.thema12 .icon_menu { background-image: url(../img/page/icon_menu_t12.svg); }
body.thema13 .icon_menu { background-image: url(../img/page/icon_menu_t13.svg); }
body.thema14 .icon_menu { background-image: url(../img/page/icon_menu_t14.svg); }
body.thema15 .icon_menu { background-image: url(../img/page/icon_menu_t15.svg); }
body.thema16 .icon_menu { background-image: url(../img/page/icon_menu_t16.svg); }
body.thema17 .icon_menu { background-image: url(../img/page/icon_menu_t17.svg); }
body.thema18 .icon_menu { background-image: url(../img/page/icon_menu_t18.svg); }
body.thema19 .icon_menu { background-image: url(../img/page/icon_menu_t19.svg); }

.icon_menu {
    width: 3rem;
    min-width: 48px;
    height: 3rem;
    background-size: contain;
    margin-top: 0;
    cursor: pointer;
    transition: background-image 250ms;
}

body.thema1  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t1.svg); }
body.thema2  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t2.svg); }
body.thema3  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t3.svg); }
body.thema4  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t4.svg); }
body.thema5  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t5.svg); }
body.thema6  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t6.svg); }
body.thema7  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t7.svg); }
body.thema8  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t8.svg); }
body.thema9  .icon_menu:hover { background-image: url(../img/page/icon_menu3_t9.svg); }
body.thema10 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t10.svg); }
body.thema11 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t11.svg); }
body.thema12 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t12.svg); }
body.thema13 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t13.svg); }
body.thema14 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t14.svg); }
body.thema15 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t15.svg); }
body.thema16 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t16.svg); }
body.thema17 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t17.svg); }
body.thema18 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t18.svg); }
body.thema19 .icon_menu:hover { background-image: url(../img/page/icon_menu3_t19.svg); }

body.thema1  .menu_area { background-color: #FF0000; }
body.thema2  .menu_area { background-color: #B40404; }
body.thema3  .menu_area { background-color: #FF8000; }
body.thema4  .menu_area { background-color: #FFBF00; }
body.thema5  .menu_area { background-color: #FFFF00; }
body.thema6  .menu_area { background-color: #00FF00; }
body.thema7  .menu_area { background-color: #088A08; }
body.thema8  .menu_area { background-color: #0000FF; }
body.thema9  .menu_area { background-color: #00BFFF; }
body.thema10 .menu_area { background-color: #00FFFF; }
body.thema11 .menu_area { background-color: #8A0886; }
body.thema12 .menu_area { background-color: #BF00FF; }
body.thema13 .menu_area { background-color: #FF00BF; }
body.thema14 .menu_area { background-color: #ff1493; }
body.thema15 .menu_area { background-color: #000080; }
body.thema16 .menu_area { background-color: #2E2E2E; }
body.thema17 .menu_area { background-color: #FC9090; }
body.thema18 .menu_area { background-color: #0093FF; }
body.thema19 .menu_area { background-color: #0B7964; }

.menu_area {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100vw; /*default hide*/
    z-index: 10;
}
.bottom_menu_area {
    display: none;
}

.menu_content {
    width: 18rem;
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
}

.sns_box {
    max-width: 18rem;
    margin: 2rem auto auto auto;
    display: flex;
    justify-content: space-evenly;
}

body.thema4  .sns_twitter,
body.thema5  .sns_twitter,
body.thema6  .sns_twitter,
body.thema10 .sns_twitter,
.sns_twitter.black {
    background-image: url(../img/page/icon_sns_x_black.svg);
}

.sns_twitter {
    background-image: url(../img/page/icon_sns_x_white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.sns.sns_twitter{
    background-size: 70%;
}


body.thema4  .sns_facebook,
body.thema5  .sns_facebook,
body.thema6  .sns_facebook,
body.thema10 .sns_facebook,
.sns_facebook.black {
    background-image: url(../img/page/icon_sns_facebook_black.png);
}

.sns_facebook {
    background-image: url(../img/page/icon_sns_facebook.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

body.thema4  .sns_line,
body.thema5  .sns_line,
body.thema6  .sns_line,
body.thema10 .sns_line,
.sns_line.black {
    background-image: url(../img/page/icon_sns_line_black.svg);
}

.sns_line {
    background-image: url(../img/page/icon_sns_line.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

body.thema4  .sns_instagram,
body.thema5  .sns_instagram,
body.thema6  .sns_instagram,
body.thema10 .sns_instagram,
.sns_instagram.black {
    background-image: url(../img/page/icon_sns_instagram_black.png);
}

.sns_instagram {
    background-image: url(../img/page/icon_sns_instagram.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

body.thema4  .sns_youtube,
body.thema5  .sns_youtube,
body.thema6  .sns_youtube,
body.thema10 .sns_youtube,
.sns_youtube.black {
    background-image: url(../img/page/icon_sns_youtube_black.svg);
}

.sns_youtube {
    background-image: url(../img/page/icon_sns_youtube.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

body.thema4  .sns_tiktok,
body.thema5  .sns_tiktok,
body.thema6  .sns_tiktok,
body.thema10 .sns_tiktok,
.sns_tiktok.black {
    background-image: url(../img/page/icon_sns_tiktok.png);
}

.sns_tiktok {
    background-image: url(../img/page/icon_sns_tiktok.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.timelinebox_wrap {
    width: 100%;
    color: #000000;
    background-color: #F2F3F7;
    text-align: center;
    margin: 1rem 0;
    position: relative;
}
.timelinebox {
    display: inline-block;
    vertical-align: middle;
    width: 350px;
    max-width: 100%;
    max-height: 330px;
    overflow-y: auto;
    margin: 1rem 0;
}
#facebookBlock.timelinebox {
    overflow-y: hidden;
}


.menu_link {
    width: 15rem;
    color: #ffffff;
    cursor: pointer;
    text-align: center;
    border-width:1px 0px 1px 0;
    border-color: #ffffff;
    border-style: solid;
    margin: -1px auto 0 auto;
}
.menu_link:hover {
    text-decoration: underline;
}

.button_link_wide {
    color: var(--color-text);
    background-color: var(--color-main);
    width: calc(100% - 2rem);
    min-width: 15rem;
    height: 4rem;
    line-height: 4rem;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: -2px;
    text-align: center;
    cursor: pointer;
    border-radius: 2px;
    margin-left: 1rem;
    margin-right: 1rem;
    white-space: nowrap;
}

.button_link_wide::after {
    position: absolute;
    content: "";
    background-image: url(../img/page/icon_arrow_right_small.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 1rem;
    height: 0.6rem;
    margin: 1.7rem 1rem 1.7rem 0.5rem;
    transition: margin 250ms;
}

.button_link_wide:hover::after {
    margin: 1.7rem 1rem 1.7rem 1rem;
}

.button_link_wide_text {
    width: fit-content;
    line-height: 22px;
    vertical-align: middle;
    display: inline-block;
}

.block_title_wide {
    color: var(--color-text);
    background-color: var(--color-main);
    width: 100%;
    min-width: 15rem;
    height: 4rem;
    line-height: 4rem;
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: -2px;
    text-align: center;
}

.section_title {
    color: var(--color-main);
    font-size: 1.3rem;
    font-weight: 500;
    margin-left: 1rem;
}

.inline-icon-small {
    width: 16px;
    height: 16px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
    display: inline-block;
}

.icon-middle{
    width: 28px;
    height: 28px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
}

.inline-icon-middle{
    width: 28px;
    height: 28px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
    display: inline-block;
}

.icon-calendar{
    background-image: url(../img/icon/bukatsunavi_icon-calendar.svg);
}
.icon-mappin{
    background-image: url(../img/icon/bukatsunavi_icon-mappin.svg);
}
.icon-folder{
    background-image: url(../img/icon/bukatsunavi_icon-folder.png);
}

.inline-icon-gallery{
    width: 200px;
    height: 150px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
    display: inline-block;
    margin-left: 30px;
    margin-top: 40px;
    margin-bottom: 67px;
}

.inline-icon-gallery-inFolder{
    width: 30px;
    height: 25px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: 195px;
    margin-top: 5px;
    margin-bottom: 5px;
}

/* ヘッダー */ 

h1 .title_name_wrap {
    display: inline-block;
    max-width: calc(100% - 70px);
    vertical-align: middle;
    font-size: 1.6rem;
}

h1 .title_name {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.6rem;;
}

body.firstviewB h1 .title_name {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.6rem;;
}

.top_title {
    width: 100%;
    /*float: left;*/
    display: flex;
    justify-content: space-evenly;
    padding: 1rem 5rem 1rem 5rem;
    position: fixed;
    top: 0;
    z-index: 5;
    background-color: #ffffff;
}

.top_title > h1 {
    width: 100%;
    font-weight: 600;
    line-height: 1.1;
    margin-top: 0.4rem;
}

.school_logo {
    max-width: 60px;
    max-height: 60px;
}

.top_title .menu {
    position: relative;
    z-index: 2;
    width: fit-content;
    min-width: 40px;
    display: inline-block;
    text-align: center;
    padding: 5px 20px 0 0;
    font-size: 0.8rem;
    font-weight: 500;
}
.headerUser {
    background-image: url(../img/icon/bukatsunavi_icon-31.png);
    /* background-color: #cccccc; */
    border-radius: 20px;
    cursor: pointer;
}

.top_title .menu.menu2.user {
    position: absolute;
    right: 6.3rem;
}

.top_title .menu.menu2 {
    position: absolute;
    right: 3.3rem;
}

/* ヘッダ内ポップアップメニュー */
.top_title .pop_menu {
    position: absolute;
    right: 9px;
    width: fit-content;
    padding: 1rem;
    text-align: left;
    border: 1px solid #999999;
    background-color: #ffffff;
    z-index: 1;
}
.top_title .login_user {
    width: max-content;
    max-width: 200px;
    font-weight: 700;
    margin-bottom: 1rem;
    text-align: center;
    color: #000000;
}
.top_title .pop_item {
    margin: 15px 10px 5px 10px;
    font-size: 1rem;
    font-weight: 500;
    width: max-content;
    color: #C4202B;
    cursor: pointer;
}
.top_title .pop_item:hover {
    color: #ff8888;
}

.content_footer {
    font-size: 0.8rem;
    padding-right: 75px;
}
.content_footer div{
    margin-left: 15px;
}
.content_footer a{
    text-decoration: none;
}

/* フッター */
body.thema1  .club_fotter { background-color: #FF0000; }
body.thema2  .club_fotter { background-color: #B40404; }
body.thema3  .club_fotter { background-color: #FF8000; }
body.thema4  .club_fotter { background-color: #FFBF00; color: #2E2E2E; }
body.thema5  .club_fotter { background-color: #FFFF00; color: #2E2E2E; }
body.thema6  .club_fotter { background-color: #00FF00; color: #2E2E2E; }
body.thema7  .club_fotter { background-color: #088A08; }
body.thema8  .club_fotter { background-color: #0000FF; }
body.thema9  .club_fotter { background-color: #00BFFF; }
body.thema10 .club_fotter { background-color: #00FFFF; color: #2E2E2E; }
body.thema11 .club_fotter { background-color: #8A0886; }
body.thema12 .club_fotter { background-color: #BF00FF; }
body.thema13 .club_fotter { background-color: #FF00BF; }
body.thema14 .club_fotter { background-color: #ff1493; }
body.thema15 .club_fotter { background-color: #000080; }
body.thema16 .club_fotter { background-color: #2E2E2E; }
body.thema17 .club_fotter { background-color: #FC9090; }
body.thema18 .club_fotter { background-color: #0093FF; }
body.thema19 .club_fotter { background-color: #0B7964; }

.club_fotter {
    text-align: center;
    font-size: 0.8rem;
    font-weight: 600;
    color: #FFFFFF;
    width: 100%;
    height: 3rem;
    padding-top: 0.6rem;
}

/* アイコン */
.inline-icon-big100 {
    width: 100px;
    height: 100px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
    display: inline-block;
}

.inline-icon-very-big{
    width: 40px;
    height: 40px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
    display: inline-block;
}

/* ボタン */
body.thema1  .button_link_middle { background-color: #F78181; }
body.thema2  .button_link_middle { background-color: #FF8000; }
body.thema3  .button_link_middle { background-color: #F79F81; }
body.thema4  .button_link_middle { background-color: #F7D358; color: #2E2E2E; }
body.thema5  .button_link_middle { background-color: #F3F781; color: #2E2E2E; }
body.thema6  .button_link_middle { background-color: #ACFA58; color: #2E2E2E; }
body.thema7  .button_link_middle { background-color: #00FF00; }
body.thema8  .button_link_middle { background-color: #58ACFA; }
body.thema9  .button_link_middle { background-color: #81BEF7; }
body.thema10 .button_link_middle { background-color: #81DAF5; color: #2E2E2E; }
body.thema11 .button_link_middle { background-color: #D358F7; }
body.thema12 .button_link_middle { background-color: #DA81F5; }
body.thema13 .button_link_middle { background-color: #F781F3; }
body.thema14 .button_link_middle { background-color: #F781D8; }
body.thema15 .button_link_middle { background-color: #7401DF; }
body.thema16 .button_link_middle { background-color: #6E6E6E; }
body.thema17 .button_link_middle { background-color: #F8BEBE; }
body.thema18 .button_link_middle { background-color: #6FC2FF; }
body.thema19 .button_link_middle { background-color: #24A78E; }

.button_link_middle {
    margin-top: -8px;
    right: 10px;
    font-weight: 600;
    font-size: 1.2rem;
    color: #ffffff;
    width: 15rem;
    min-width: 15rem;
    height: 2.5rem;
    padding-top: 7px;
    text-align: center;
    cursor: pointer;
    border-radius: 7px;
}

body.thema4  .button_link_middle::after,
body.thema5  .button_link_middle::after,
body.thema6  .button_link_middle::after,
body.thema10  .button_link_middle::after {
    background-image: url(../img/page/icon_arrow_right_small_black.svg);
}

.button_link_middle::after {
    position: absolute;
    content: "";
    background-image: url(../img/page/icon_arrow_right_small.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 1rem;
    height: 0.6rem;
    margin: 0.5rem 0 0 0;
    transition: margin 250ms;
}
.button_link_middle:hover::after {
    margin: 0.5rem 0 0 0.5rem;
}

body.thema1  .button_link_samll { background-color: #F78181; }
body.thema2  .button_link_samll { background-color: #FF8000; }
body.thema3  .button_link_samll { background-color: #F79F81; }
body.thema4  .button_link_samll { background-color: #F7D358; color: #2E2E2E; }
body.thema5  .button_link_samll { background-color: #F3F781; color: #2E2E2E; }
body.thema6  .button_link_samll { background-color: #ACFA58; color: #2E2E2E; }
body.thema7  .button_link_samll { background-color: #00FF00; }
body.thema8  .button_link_samll { background-color: #58ACFA; }
body.thema9  .button_link_samll { background-color: #81BEF7; }
body.thema10 .button_link_samll { background-color: #81DAF5; color: #2E2E2E; }
body.thema11 .button_link_samll { background-color: #D358F7; }
body.thema12 .button_link_samll { background-color: #DA81F5; }
body.thema13 .button_link_samll { background-color: #F781F3; }
body.thema14 .button_link_samll { background-color: #F781D8; }
body.thema15 .button_link_samll { background-color: #7401DF; }
body.thema16 .button_link_samll { background-color: #6E6E6E; }
body.thema17 .button_link_samll { background-color: #F8BEBE; }
body.thema18 .button_link_samll { background-color: #6FC2FF; }
body.thema19 .button_link_samll { background-color: #24A78E; }

.button_link_samll {
    margin-left: auto;
    margin-right: 5rem;
    width: 6rem;
    min-width: 6rem;
    height: 1.5rem;
    padding-top: 0.2rem;
    border-radius: 2rem;    
    color: #ffffff;
    text-align: center;
    cursor: pointer;
    font-size: 0.8rem;
}
.button_link_samll.news {
    position: absolute;
    right: 0;
    margin-top: -28px;
}

body.thema1  .button_link_samll:hover { background-color: #FF0000; }
body.thema2  .button_link_samll:hover { background-color: #B40404; }
body.thema3  .button_link_samll:hover { background-color: #FF8000; }
body.thema4  .button_link_samll:hover { background-color: #FFBF00; }
body.thema5  .button_link_samll:hover { background-color: #FFFF00; }
body.thema6  .button_link_samll:hover { background-color: #00FF00; }
body.thema7  .button_link_samll:hover { background-color: #088A08; }
body.thema8  .button_link_samll:hover { background-color: #0000FF; }
body.thema9  .button_link_samll:hover { background-color: #00BFFF; }
body.thema10 .button_link_samll:hover { background-color: #00FFFF; }
body.thema11 .button_link_samll:hover { background-color: #8A0886; }
body.thema12 .button_link_samll:hover { background-color: #BF00FF; }
body.thema13 .button_link_samll:hover { background-color: #FF00BF; }
body.thema14 .button_link_samll:hover { background-color: #ff1493; }
body.thema15 .button_link_samll:hover { background-color: #000080; }
body.thema16 .button_link_samll:hover { background-color: #2E2E2E; }
body.thema17 .button_link_samll:hover { background-color: #F8BEBE; }
body.thema18 .button_link_samll:hover { background-color: #6FC2FF; }
body.thema19 .button_link_samll:hover { background-color: #24A78E; }

body.thema4  .button_link_samll:before,
body.thema5  .button_link_samll:before,
body.thema6  .button_link_samll:before,
body.thema10 .button_link_samll:before{
    background-image: url(../img/page/icon_arrow_right_black.svg);
}

.button_link_samll::before {
    position: absolute;
    content: "";
    background-image: url(../img/page/icon_arrow_right.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 1rem;
    height: 0.8rem;
    margin: 0.2rem 0 0 -1.5rem;
    transition: margin 250ms;
}
.button_link_samll:hover::before {
    margin: 0.2rem 0 0 -1.1rem;
}

body.thema4  #menuArea .button_close,
body.thema5  #menuArea .button_close,
body.thema6  #menuArea .button_close,
body.thema10 #menuArea .button_close {
    background-image: url(../img/page/icon_close_black.svg);
}

.button_close {
    width: 6.5rem;
    height: 1.5rem;
    margin: 3rem 1rem 0 auto;
    background-image: url(../img/page/icon_close.svg);
    background-size: 4.5rem;
    background-repeat: no-repeat;
    background-position: left;
    cursor: pointer;
}

body.thema4  #menuArea .button_close::after,
body.thema5  #menuArea .button_close::after,
body.thema6  #menuArea .button_close::after,
body.thema10 #menuArea .button_close::after {
    background-image: url(../img/page/icon_close_escape_black.svg); 
}

.button_close::after {
    position: absolute;
    content: "";
    width: 6.5rem;
    height: 1.5rem;
    background-image: url(../img/page/icon_close_escape.svg); 
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right;
    animation:0.2s linear 1 rotation0;
    transform-origin:calc(100% - 10px) center;
}
.button_close:hover::after {
    transform: rotate(90deg);
    animation:0.2s linear 1 rotation90;
    transform-origin:calc(100% - 10px) center;
}
.button_close:active {
    transform: rotate(0deg);
}

.icon_close {
    cursor: pointer;
    margin-top: -8px;
    margin-left: calc(100% - 25px);
    position: absolute;
}
.icon_close::after {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    background-image: url(../img/page/icon_close_escape.svg); 
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right;
    animation:0.2s linear 1 rotation0;
    transform-origin:calc(100% - 10px) center;
}
.icon_close:hover::after {
    transform: rotate(90deg);
    animation:0.2s linear 1 rotation90;
    transform-origin:calc(100% - 10px) center;
}
.icon_close:active {
    transform: rotate(0deg);
}
@keyframes rotation0{
    0%{ transform:rotate(90deg);}
    100%{ transform:rotate(0deg); }
}
@keyframes rotation90{
    0%{ transform:rotate(0);}
    100%{ transform:rotate(90deg); }
}

.dialog .button_close {
    margin: 2rem 5rem 0 auto;
}
.dialog .button_close::after {
    width: 3.5rem;
}

body.thema4  .button_experience,
body.thema5  .button_experience,
body.thema6  .button_experience,
body.thema10  .button_experience{
    color: #2E2E2E;
    border: 2px solid #2E2E2E;
}

.button_experience {
    border-radius: 7px;
    border: 2px solid white;
    width: 16rem;
    height: 3rem;
    text-align: center;
    color: white;
    padding-top: 8px;
    margin: 0 auto 3rem auto;
    cursor: pointer;
    font-weight: 600;
    font-size: 1.2rem;
}

body.thema4  .button_experience::after,
body.thema5  .button_experience::after,
body.thema6  .button_experience::after,
body.thema10  .button_experience::after {
    background-image: url(../img/page/icon_arrow_right_small_black.svg);
}
.button_experience::after {
    position: absolute;
    content: "";
    background-image: url(../img/page/icon_arrow_right_small.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 1rem;
    height: 0.6rem;
    margin: 0.5rem 0 0 0;
    transition: margin 250ms;
}
.button_experience:hover::after {
    margin: 0.5rem 0 0 0.5rem;
}

.btn-link {
    border-radius: 7px;
    border: 2px solid white;
    text-align: center;
    color: white;
    width: fit-content;
    padding: 6px 25px 4px 15px;
    margin: 0 auto 3rem auto;
    cursor: pointer;
    font-weight: 600;
    font-size: 1.2rem;
}
.btn-link::after {
    position: absolute;
    content: "";
    background-image: url(../img/page/icon_arrow_right_small.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 1rem;
    height: 0.6rem;
    margin: 0.6rem 0 0 0;
    transition: margin 250ms;
}
.btn-link:hover::after {
    margin: 0.6rem 0 0 0.5rem;
}

body.thema4  .button_menu,
body.thema5  .button_menu,
body.thema6  .button_menu,
body.thema10  .button_menu {
     color: #2E2E2E;
}

.button_menu {
    border-top: 1px solid var(--color-light);
    width: 16rem;
    height: 3rem;
    text-align: center;
    color: white;
    margin: 0 auto 0 auto;
    cursor: pointer;
    padding-top: 0.7rem;
}

body.thema4  .button_menu::before,
body.thema5  .button_menu::before,
body.thema6  .button_menu::before,
body.thema10  .button_menu::before {
    background-image: url(../img/page/icon_arrow_right_small_black.svg);
}

.button_menu::before {
    position: absolute;
    content: "";
    background-image: url(../img/page/icon_arrow_right_small.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    width: 1rem;
    height: 0.6rem;
    margin: 0.5rem 0 0 -1.5rem;
    opacity: 0;
    transition: opacity 250ms, margin 250ms;
}
.button_menu:hover::before {
    opacity: 1;
    margin: 0.5rem 0 0 -0.8rem;
}

.button_header {
    width: 80px;
    min-width: 80px;
    height: 3rem;
    line-height: 3rem;
    text-align: center;
    color: #2E2E2E; /* page-club-topで別色指定あり */
    border: solid 1px #2E2E2E;
    margin-right: 1rem;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 500;
}
.button_header:hover {
    background-color: #2E2E2E;
    color: #ffffff;
    border-color: #ffffff;
}

.end_menu {
    width: 16rem;
    border-top: 1px solid var(--color-light);
    margin: 0 auto 0 auto;
}

body.thema1  .active { background-color: #FF0000 !important; }
body.thema2  .active { background-color: #B40404 !important; }
body.thema3  .active { background-color: #FF8000 !important; }
body.thema4  .active { background-color: #FFBF00 !important; color: #2E2E2E; }
body.thema5  .active { background-color: #FFFF00 !important; color: #2E2E2E; }
body.thema6  .active { background-color: #00FF00 !important; color: #2E2E2E; }
body.thema7  .active { background-color: #088A08 !important; }
body.thema8  .active { background-color: #0000FF !important; }
body.thema9  .active { background-color: #00BFFF !important; }
body.thema10 .active { background-color: #00FFFF !important; color: #2E2E2E; }
body.thema11 .active { background-color: #8A0886 !important; }
body.thema12 .active { background-color: #BF00FF !important; }
body.thema13 .active { background-color: #FF00BF !important; }
body.thema14 .active { background-color: #ff1493 !important; }
body.thema15 .active { background-color: #000080 !important; }
body.thema16 .active { background-color: #2E2E2E !important; }
body.thema17 .active { background-color: #FC9090 !important; }
body.thema18 .active { background-color: #0093FF !important; }
body.thema19 .active { background-color: #0B7964 !important; }
.active {
    background-color: #ba0000 !important;
}
.slide_left {
    margin: auto 0.2rem auto 1.8rem;
    width: 3rem;
    height: 50px;
    background-image: url(../img/page/icon_slide_left.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    cursor: pointer;
    transition: margin 500ms;
}
.slide_left:hover {
    margin: auto 1rem auto 1rem;
}

.slide_right {
    margin: auto 1.8rem auto 0.2rem;
    width: 3rem;
    height: 50px;
    background-image: url(../img/page/icon_slide_right.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    cursor: pointer;
    transition: margin 500ms;
}
.slide_right:hover {
    margin: auto 1rem auto 1rem;
}

.dialog .slide_left {
    background-image: url(../img/page/icon_slide_left2.svg);
    width: 4rem;
    height: 60px;
    position: fixed;
    left: 1rem;
    top: calc(50vh - 30px);

}
.dialog .slide_right {
    background-image: url(../img/page/icon_slide_right2.svg);
    width: 4rem;
    height: 60px;
    position: fixed;
    right: 1rem;
    top: calc(50vh - 30px);
}

/* タグ */
.tag_notice { /* お知らせ */
    background-color: #C80000;
}
.tag_notice::after {
    content: "お知らせ";
}

.tag_activity { /* 活動報告 */
    background-color: #E26000;
}
.tag_activity::after {
    content: "活動報告";
}

.tag_experience { /* 体験入部 */
    background-color: #966400;
}
.tag_experience::after {
    content: "体験入部";
}

.tag_obog { /* OBOG情報 */
    background-color: #649600;
}
.tag_obog::after {
    content: "OBOG情報";
}

.tag_concert { /* 演奏会 */
    background-color: #009600;
}
.tag_concert::after {
    content: "演奏会";
}

.tag_presentation { /* 発表会 */
    background-color: #009696;
}
.tag_presentation::after {
    content: "発表会";
}

.tag_match_result { /* 試合結果 */
    background-color: #006496;
}
.tag_match_result::after {
    content: "試合結果";
}

.tag_tournament_result { /* 大会結果 */
    background-color: #000064;
}
.tag_tournament_result::after {
    content: "大会結果";
}

.tag_event { /* イベント */
    background-color: #640064;
}
.tag_event::after {
    content: "イベント";
}

.tag_gallery { /* フォトギャラリー */
    background-color: #9F003D;
}
.tag_gallery::after {
    content: "フォトギャラリー";
}

.tag_gallerys { /* ギャラリー(限定公開向け) */
    background-color: #9F003D;
}
.tag_gallerys::after {
    content: "ギャラリー";
}

.tag_to_club_member { /* 部員の皆様へ(限定公開向け) */
    background-color: #009696;
}
.tag_to_club_member::after {
    content: "部員の皆様へ";
}

.tag_to_parents { /* 保護者の皆様へ */
    background-color: #320096;
}
.tag_to_parents::after {
    content: "保護者の皆様へ";
}

.tag_to_obog { /* OBOGの皆様へ */
    background-color: #640096;
}
.tag_to_obog::after {
    content: "OBOGの皆様へ";
}

.tag_to_applicants { /* 入学希望の皆様へ */
    background-color: #960096;
}
.tag_to_applicants::after {
    content: "入学希望の皆様へ";
}

.tag_area {
    display: flex;
    padding: 0.8rem 0 0.5rem 0;
}
.tags:first-child {
    margin-left: 0;
}

body.thema1  .tags { background-color: #FF0000; }
body.thema2  .tags { background-color: #B40404; }
body.thema3  .tags { background-color: #FF8000; }
body.thema4  .tags { background-color: #FFBF00; color: #2E2E2E; }
body.thema5  .tags { background-color: #FFFF00; color: #2E2E2E; }
body.thema6  .tags { background-color: #00FF00; color: #2E2E2E; }
body.thema7  .tags { background-color: #088A08; }
body.thema8  .tags { background-color: #0000FF; }
body.thema9  .tags { background-color: #00BFFF; }
body.thema10 .tags { background-color: #00FFFF; color: #2E2E2E; }
body.thema11 .tags { background-color: #8A0886; }
body.thema12 .tags { background-color: #BF00FF; }
body.thema13 .tags { background-color: #FF00BF; }
body.thema14 .tags { background-color: #ff1493; }
body.thema15 .tags { background-color: #000080; }
body.thema16 .tags { background-color: #2E2E2E; }
body.thema17 .tags { background-color: #FC9090; }
body.thema18 .tags { background-color: #0093FF; }
body.thema19 .tags { background-color: #0B7964; }

.tags {
    color: #ffffff;
    width: fit-content;
    padding: 0.1rem 0.8rem;
    font-weight: 600;
    margin-left: 1rem;
}
.tag_foundation {
    border-radius: 1rem;
}
.tag_education{
    border-radius: 0.5rem;
}

/* レイアウト */
.input_row {
    margin-top: 1rem;
    text-align: left;
}
.thin_row {
    margin-top: 1rem;
    text-align: left;
}
.dialog .field_label {
    display: inline-block;
    width: 8rem;
    text-align: right;
    vertical-align: middle;
    padding-right: 20px;
}
.dialog .field_input {
    display: inline-block;
    position: relative;
}
.dialog .field_left {
    display: inline-block;
    width: 9rem;
    text-align: left;
    vertical-align: middle;
    padding-left: 20px;
}
.dialog .field_value {
    display: inline-block;
}

/* スケジュール */
body.thema1  .schedule_box { border-image: url(../img/page/title_start_tall_t1.png);  border-image-slice: 1;}
body.thema2  .schedule_box { border-image: url(../img/page/title_start_tall_t2.png);  border-image-slice: 1;}
body.thema3  .schedule_box { border-image: url(../img/page/title_start_tall_t3.png);  border-image-slice: 1;}
body.thema4  .schedule_box { border-image: url(../img/page/title_start_tall_t4.png);  border-image-slice: 1;}
body.thema5  .schedule_box { border-image: url(../img/page/title_start_tall_t5.png);  border-image-slice: 1;}
body.thema6  .schedule_box { border-image: url(../img/page/title_start_tall_t6.png);  border-image-slice: 1;}
body.thema7  .schedule_box { border-image: url(../img/page/title_start_tall_t7.png);  border-image-slice: 1;}
body.thema8  .schedule_box { border-image: url(../img/page/title_start_tall_t8.png);  border-image-slice: 1;}
body.thema9  .schedule_box { border-image: url(../img/page/title_start_tall_t9.png);  border-image-slice: 1;}
body.thema10 .schedule_box { border-image: url(../img/page/title_start_tall_t10.png); border-image-slice: 1;}
body.thema11 .schedule_box { border-image: url(../img/page/title_start_tall_t11.png); border-image-slice: 1;}
body.thema12 .schedule_box { border-image: url(../img/page/title_start_tall_t12.png); border-image-slice: 1;}
body.thema13 .schedule_box { border-image: url(../img/page/title_start_tall_t13.png); border-image-slice: 1;}
body.thema14 .schedule_box { border-image: url(../img/page/title_start_tall_t14.png); border-image-slice: 1;}
body.thema15 .schedule_box { border-image: url(../img/page/title_start_tall_t15.png); border-image-slice: 1;}
body.thema16 .schedule_box { border-image: url(../img/page/title_start_tall_t16.png); border-image-slice: 1;}
body.thema17 .schedule_box { border-image: url(../img/page/title_start_tall_t17.png); border-image-slice: 1;}
body.thema18 .schedule_box { border-image: url(../img/page/title_start_tall_t18.png); border-image-slice: 1;}
body.thema19 .schedule_box { border-image: url(../img/page/title_start_tall_t19.png); border-image-slice: 1;}

.schedule_box {
    /* float: left; */
    width: calc(100vw - 11rem);
    min-height: 5rem;
    margin: 0 5rem 2rem 5rem;
    border-left: solid 0.5rem transparent;
    border-image: url("../img/page/title_start_tall.png");
    border-image-slice: 1;
    border-image-repeat: stretch;
}

.schedule_box_parent {
    width: 100%;
    height: 100%;
    background-color: #979797;
    padding-left: 5rem;
    padding-right: 5rem;
    margin-bottom: 2rem;
}

.schedule_box > .schedule_title  {
    overflow-x: hidden;
    font-size: 1.3rem;
    width: 100%;
}

body.thema1  .schedule_title { color: #FF0000; }
body.thema2  .schedule_title { color: #B40404; }
body.thema3  .schedule_title { color: #FF8000; }
body.thema4  .schedule_title { color: #2E2E2E; /*background-color: #F7D358; */}
body.thema5  .schedule_title { color: #2E2E2E; /*background-color: #F3F781; */}
body.thema6  .schedule_title { color: #2E2E2E; /*background-color: #ACFA58; */}
body.thema7  .schedule_title { color: #088A08; }
body.thema8  .schedule_title { color: #0000FF; }
body.thema9  .schedule_title { color: #00BFFF; }
body.thema10 .schedule_title { color: #2E2E2E; /*background-color: #00FFFF;*/ }
body.thema11 .schedule_title { color: #8A0886; }
body.thema12 .schedule_title { color: #BF00FF; }
body.thema13 .schedule_title { color: #FF00BF; }
body.thema14 .schedule_title { color: #ff1493; }
body.thema15 .schedule_title { color: #000080; }
body.thema16 .schedule_title { color: #2E2E2E; }
body.thema17 .schedule_title { color: #FC9090; }
body.thema18 .schedule_title { color: #0093FF; }
body.thema19 .schedule_title { color: #0B7964; }

.schedule_title {
    overflow-y: hidden;
    padding: 3px 10px;
    border-bottom: 1px dashed #a5a5a5;
    font-weight: 600;
    color:#BA0000;
}

.schedule_text {
    margin-top: 0.3rem;
    margin-left: 1rem;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    overflow-x: hidden;
}

/* スタッフ・メンバー */
.member_box {
    width: calc((100vw - 15rem) / 4 + 0.5px);
    max-width: 600px;
    height: auto;
    margin: 1rem 2rem 3rem 0rem;
    /* margin: 1rem 3rem 3rem 0rem; */
}

.slide_box .member_box{
    margin-bottom: 0;
}

.member_box > img {
    width: calc((100vw - 7rem) / 4 - 4rem + 0.5px);
    max-width: 530px;
    height: calc((100vw - 7rem) / 4 - 4rem + 0.5px);
    max-height: 530px;
    border-radius: 300px;
    margin-bottom: 1rem;
    object-fit: cover;
    display: block;
    margin-right: auto;
    margin-left: auto;
}

.member_box > .member_name {
    max-width: 100%;
    overflow-x: hidden;
    white-space: pre-wrap;
    text-align: center;
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.member_box > .member_role {
    max-width: 100%;
    overflow-x: hidden;
    white-space: pre-wrap;
    text-align: center;
    margin-bottom: 0.5rem;
}

.member_box > .member_text {
    max-width: 100%;
    overflow-x: hidden;
    white-space: pre-wrap;
    text-align: center;
}

/* ギャラリー */
.gallery_area {
    padding: 0 3rem 1rem 5rem;
    max-width: 1300px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

/* 詳細デザインB 枠ラウンド */
body.detailsB .gallery_box {
    border-radius: 10px;   
}
body.detailsB .gallery_box > img,
body.detailsB .gallery_box > .gallery_youtube {
    border-radius: 10px 10px 0 0;
}
/* 詳細デザインB 以上 */

.gallery_box {
    width: 252px;
    height: 310px;
    margin: 1rem 2rem 1rem 0;
    display: inline-block;
    vertical-align: top;
    border: 1px solid #AAAAAA;
    cursor: pointer;
    position: relative;
}

.gallery_box > img {
    width: 250px;
    height: 250px;
    object-fit: cover;
    margin-bottom: 8px;
}

.gallery_title {
    text-align: left;
    padding-left: 0.61rem;
    font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;    
}

.gallery_text {
    text-align: left;
    padding-left: 0.61rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;    
}

/* 非表示 */
.none {
    display: none;
}

.gallery_date {
    font-size: 0.8rem;
    text-align: right;
    margin: 0.2rem 0.5rem 0.2rem 0;
}

.gallery_youtube {
    width: 250px;
    height: 250px;
}
.gallery_youtube.inFolder {
    width: 150px;
    height: 150px;
    margin-top: 70px !important;
    margin-left: 7px !important;
    margin-bottom: 30px !important;
    border-radius: 0 0 0 0 !important;
}

/* メディア */
.sns {
    width: 32px;
    height: 32px;
    margin: 0px;
    cursor: pointer;
    background-size: 84%;
    transition: background-size 100ms;
}
.sns:hover {
    background-size: 100%;
}

.school_map {
    margin-top: 2rem;
    width: 100%;
    height: 300px;
}

.media_date {
    background-image: url(../img/page/icon_time.svg);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 1.4rem;
    color: #888888;
    font-size: 0.9rem;
}

/* シェアボタン */
.sns_share_box {
    margin: 1rem auto auto auto;
    display: flex;
    justify-content: space-evenly;
}

.share_button {
    width: 100px;
    height: 26px;
    cursor: pointer;
    color: #ffffff;
    background-color: #e26000;
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 26px;
    text-align: center;
}

.share_button.twitter {
    background-color: #000000;
    background-image: url(../img/fan/icon_sns_x_white.svg);
    background-size: 16px;
    background-repeat: no-repeat;
    background-position: 5px;
    padding-left: 20px;
}

.share_button.facebook {
    background-color: #1877F2;
    background-image: url(../img/fan/icon_sns_facebook.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 20px;
}

.share_button.line {
    background-color: #28C661;
    background-image: url(../img/fan/icon_sns_line.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    padding-left: 20px;
}

/*シェアダイアログ*/
.open_share {
    width: 32px;
    height: 32px;
    background-image: url(../img/icon/bukatsunavi_icon-33.svg);
    background-size: contain;
    cursor: pointer;
}

#shareDialog .buttons div {
    display: inline-block;
}
#shareDialog .buttons div,
#shareDialog .buttons input{
    margin: 1rem 0 0 1rem;
    vertical-align: middle;
}
#dialogQrDiv {
    padding: 1rem 0 1rem 0;
}
#dialogQrDiv canvas {
    height: 180px;
}

#dialogHtmlDiv {
    padding: 1rem 1rem 1rem 1rem;
}
#dialogHtml {
    width: 100%;
    height: 6rem;
    margin-bottom: 1rem;
}


/* スポンサー */
.sponsor_area {
    padding: 0 3rem 1rem 5rem;
    max-width: 1300px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    
}

/* 詳細デザインB 枠ラウンド */
/*
body.detailsB .sponsor_box {
    border-radius: 10px;   
}
body.detailsB .sponsor_box > img {
    border-radius: 10px;
}
*/

/* 詳細デザインB 以上 */

.sponsor_box {
    margin: 0.5rem 2rem 2rem 0;
    display: inline-block;
    vertical-align: bottom;
}
.sponsor_box[data-url]{
    cursor: pointer;
} 

.sponsor_box > img {
    width: 100%;
    /* height: 100%; */
    max-height: 300px;
    object-fit: contain;
    margin-bottom: 1px;
}

.sponsor_size_title_large {
    font-size: 1.5rem;
    text-align: center;
}

.sponsor_size_title {
    font-size: 1.2rem;
    margin-top: 50px;
    text-align: center;
}

.sponsor_box_large {
    width: 300px !important;
    /* max-height: 300px; */
}

.sponsor_box_medium {
    width: 200px !important;
    /* max-height: 200px; */
}

.sponsor_box_small {
    width: 100px !important;
    /* max-height: 100px; */
}

.sponsor_title {
    text-align: left;
    /* padding-left: 0.61rem; */
    font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
    display: -webkit-box;
    /* -webkit-line-clamp: 2; */
    -webkit-box-orient: vertical;
}
.sponsor_title pre {
    white-space: pre-wrap;
    text-align: center;
}

#btnMoreSponsor {
    margin-bottom: 1rem;
}

/* プロジェクト枠 */
.project_wrap {
    display: inline-block;
}
.project_box {
    position: relative;
    width: 300px;
    height: 380px;
    margin: 1rem 1rem 0 1rem;
    background-color: #ffffff;
    display: inline-block;
    vertical-align: top;
    text-align: left;
}
.project_box.past {
    background-color: #f0f0f0;
    border: 1px solid #a0a0a0;
}
.project_box .label {
    display: inline;
}
.project_box .value {
    font-weight: 600;
}

.project_top_image{
    width: 300px;
    height: 180px;
    object-fit: cover;
}
.project_tag {
    position: absolute;
    top: 10px;
    left: 10px;
    min-width: 100px;
    height: 24px;
    line-height: 24px;
    border-radius: 24px;
    padding: 0 10px;
    font-size: 11px;
    text-align: center;
    color: #ffffff;
    background-color: #C4202B;
}
.continuation .project_tag {
    background-color: #2ABC8B;
}
.continuation.sponsor .project_tag {
    background-color: #0099e6;
}

.trial .project_tag {
    background-color: #9D00FC;
}
.event .project_tag {
    background-color: #E1776B;
}

.project_title {
    overflow: hidden;
    height: 58px;
    padding: 15px 15px 0 15px;
    margin-bottom: 15px;
    line-height: 21px;
    border-top: 2px solid #C4202B;
    font-weight: 500;
    word-break: break-all;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    color: #000000;
}
.continuation .project_title {
    border-color: #2ABC8B;
}
.continuation.sponsor .project_title {
    border-color: #0099e6;
}
.pay .project_title {
    border-color: #157c3b;
}
.trial .project_title {
    border-color: #9D00FC;
    height: 100px;
    -webkit-line-clamp: 4;
}
.event .project_title {
    border-color: #E1776B;
}
.project_club_name {
    font-size: 11px;
    line-height: 14px;
    color: #767676;
    height: 30px;
    padding: 0 15px;
    overflow-y: hidden;
    word-break: break-all;
}

.project_border {
    height: 10px;
    border-top: 1px solid #E8E8E8 ;
}
.continuation .project_border {
    height: 30px;
    margin-top: 30px;
}

.project_progress_back {
    position: relative;
    margin: 17px 15px;
    height: 16px;
    background-color: #DFE1E6;
    border-radius: 20px;
}
.event_progress_back {
    position: relative;
    margin: 8px 15px;
    height: 16px;
    background-color: #DFE1E6;
    border-radius: 20px;
}
.project_progress {
    height: 16px;
    border-radius: 20px;
    background: linear-gradient(to right, #373EF6, #7E83FF);
}
.project_progress.goal {
    background: linear-gradient(to right, #FF000A, #FF9196);
}

.project_target_amount {
    position: absolute;
    top: 0;
    margin: 0 0 0px 10px;
    font-size: 10px;
    color: #ffffff;
    padding: 0;
    line-height: 17px;
}

.project_status {
    font-size: 11px;
    letter-spacing: 1px;
    color: #000000;
    cursor: default;
}

.project_current_amount {
    display: inline-block;
    margin-left: 15px;
    width: 110px;
}

.project_members {
    display: inline-block;
    width: 95px;
}
.continuation .project_members{
    width: 100%;
    text-align: center;
}

.project_remaining {
    display: inline-block;
    min-width: 55px;
}

.project_left {
    margin-left: 15px;
}
.project_line {
    display: inline-block;
    margin-left: 15px;
    width: 100%;
}

.continuation .project_progress_back,
.continuation .project_current_amount,
.continuation .project_remaining {
    display: none;
}

.event_area_title {
    text-align: center;
    color: #E1776B;
    padding: 50px 0 30px 0 !important;
    background-color: #F2F3F7;
    line-height: 1.5rem !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
}
.event_area_title .sub {
    font-size: 0.8rem;
    color: #454545;
    padding: 5px 0 0 0;
    font-weight: 500 !important;
}

.project_box .alert_div {
    display: inline-block;
    color: #ff0000;
    font-size: 1rem;
    font-weight: 600;
}

.project_box .alert_middle {
    display: inline-block;
    color: #ff0000;
    font-size: 0.9rem;
    font-weight: 600;
}

#myEventDialog .project_button {
    background-color: #ffffff;
    border-top: 4px double #E8E8E8;
    margin: 0;
    padding: 0.5rem 1rem;
    font-size: 12px;
    letter-spacing: 1px;
}

/* プロジェクトスクロール（横１行） */
.project_area {
    display: flex;
    background-color: #F2F3F7;
    text-align: center;
    padding-top: 1rem;
    padding-bottom: 2rem;
}

.slide_box {
    width: fit-content;
    max-width: 100vw;
    display: flex;
    overflow: hidden;
    padding: 0 40px;
    margin: 0 auto;
}

.slide_box .project_wrap {
    margin-left: 0.5rem;
    margin-left: 0.5rem;
}

#btnProjectLeft {
    position: absolute;
    margin-top: 210px;
    margin-left: 0;
    z-index: 1;
}
#btnProjectRight {
    position: absolute;
    margin-top: 210px;
    margin-right: 0;
    right: 0;
}

.project_area .slide_left {
    margin: auto 0.2rem auto 1.8rem;
    width: 40px;
    height: 40px;
    background-image: url(../img/fan/icon_arrow_left.svg);
    background-repeat: no-repeat;
    background-size: 6px;
    background-position: center;
    background-color: #ffffff;
    border: 1px solid #D8D8D8;
    cursor: pointer;
    transition: margin 500ms;
}
.project_area .slide_left:hover {
    margin: auto 1rem auto 1rem;
}

.project_area .slide_right {
    margin: auto 1.8rem auto 0.2rem;
    width: 40px;
    height: 40px;
    background-image: url(../img/fan/icon_arrow_right.svg);
    background-repeat: no-repeat;
    background-size: 6px;
    background-position: center;
    background-color: #ffffff;
    border: 1px solid #D8D8D8;
    cursor: pointer;
    transition: margin 500ms;
}
.project_area .slide_right:hover {
    margin: auto 1rem auto 1rem;
}

.firstviewE .project_area{
    margin-top: 10rem;
    position: relative;
}

/* 限定公開 */
.movie_box {
    max-width: 100%;
    width: 100%;
    height: 394px;
    margin-top: 2rem;
}

/* 体験入部（trial） */
.trial .contents {
    text-align: center;
    margin-bottom: 4rem;
}

.trial .left_box {
    display: inline-block;
    text-align: left;
    width: calc(60% - 60px);
    margin: 2rem 0 0 1rem;
    max-width: 800px;
    max-height: 700px;
}

.trial .right_box {
    display: inline-block;
    text-align: left;
    vertical-align: top;
    width: 500px;
    max-width: calc(40% - 10px);
    margin: 2rem 1rem 0 2rem;
}

.trial .full_box {
    text-align: left;
    width: 1340px;
    max-width: calc(100% - 32px);
    margin: 1rem auto 0 auto;
}

.trial .left_sub_box {
    display: inline-block;
    text-align: left;
    width: calc(40% - 60px);
    margin: 0 0 0 1rem;
    max-width: 500px;
}

.trial .right_sub_box {
    display: inline-block;
    text-align: left;
    vertical-align: top;
    width: 800px;
    max-width: calc(60% - 10px);
    margin: 0 1rem 0 2rem;
}

.trial #scheduleTopTable {
    width: 100%;
    margin-bottom: 1rem;
    border: none;
}
.trial #scheduleTopTable th{
    border: none;
    padding: 5px 10px;
    font-size: 1.2rem;
    font-weight: 600;
}
.trial #scheduleTopTable td {
    border: none;
    border-bottom: 1px solid #e5e5e5;
    padding: 5px 10px;
    vertical-align: top;
}

.trial #scheduleTable .col_date {
    width: 140px;   
}
.trial #scheduleTable .col_status {
    width: 150px;
}
.trial #scheduleTable .col_time {
    width: 130px;
}
.trial #scheduleTable .col_place {
    min-width: 100px;
}

.trial #scheduleTopTable .inline-icon-middle {
    margin-bottom: 3px;
}
.trial #scheduleTopTable pre{
    padding-top: 0 !important;
}

.trial #btnTopApply {
    margin: 1rem auto 0 auto;
    width: 350px;
    max-width: 80%;
    height: 50px;
    font-size: 1.4rem;
}

.trial .btnApply {
    width: 110px;
    height: 36px;
}

.trial .top_image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.full_movie {
    width: 100%;
    height: 100%;
}
.trial .thumbnail_area {
    margin-top: 1rem;
    display: flex;
    justify-content: space-evenly;
}
.trial .thumbnail_area div.img {
    width: calc((100% / 5) - 10px);
    background-color: #000000;
}
.trial .thumbnail_area img.active {
    opacity: 1;
}
.trial .thumbnail_area img {
    width: 100%;
    /* max-height: 85px; */
    object-fit: cover;
    cursor: pointer;
    opacity: 0.6;
}
.trial .block_area {
    margin-top: 2rem;
}

.trial #scheduleTable{
    width: 100%;
    margin: 0 auto 0 auto;
}
.trial #scheduleTable th {
    background-color: #f8f8f8;
}

.trial #scheduleTable .status {
    font-weight: 700;
}
.trial #scheduleTable .status.open {
    color: #FF0000;
}
.trial #scheduleTable .status.finished {
    color: #808080;
}
.trial #scheduleTable .status.standby {
    color: #0000FF;
}
.trial .btn_small {
    padding: 1rem;
    line-height: 4px;
}

.trial #topButton {
    position: absolute;
    top: 2rem;
    right: 2rem;
}

/* 結果画面（trial_result） */
.page_result .content_area {
    background-color: #F2F3F7;
    padding: 1rem;
}
.page_result .main_box {
    background-color: #ffffff;
    width: 700px;
    padding: 3rem 5rem 4rem 5rem;
    margin: 1rem auto;
    text-align: center;
}
.page_result .thank_you {
    margin-bottom: 3rem;
    width: 215px;
    height: 150px;
}

.page_result .biglabel_box {
    width: fit-content;
    min-width: 300px;
    max-width: 100%;
    padding: 0.5rem 1rem;
    margin: 1rem auto 3rem auto;
    background-color: #F4F4F4;
}
.page_result .biglabel {
    font-size: 2rem;
    font-weight: 500;
}

.page_result .row {
    min-height: 3rem;
    margin: 0;
    border-top: 1px solid #E8E8E8;
}
.page_result .row.bottom {
    border-bottom: 1px solid #E8E8E8;
}

.page_result .title {
    display: inline-block;
    min-width: 150px;
    line-height: 3rem;
    text-align: left;
}
.page_result .field {
    display: inline-block;
    width: calc(100% - 150px);
    text-align: left;
    vertical-align: middle;
    margin-top: 12px;
}
.page_result .buttons {
    text-align: center;
    margin: 2rem 0;
}

/* イベント（event） */
.event_detail .contents {
    text-align: center;
    margin-bottom: 4rem;
}
.event_detail .top_box {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    margin: 0 2rem 0.5rem 2rem;
}

.event_detail .left_box {
    display: inline-block;
    text-align: left;
    margin: 2rem 0 0 1rem;
    width: calc(60% - 75px);
    min-width: 550px;
    max-width: 800px;
    max-height: 700px;
}

.event_detail .right_box {
    display: inline-block;
    text-align: left;
    vertical-align: top;
    width: calc(40% - 10px);
    min-width: 400px;
    max-width: 500px;
    margin: 2rem 1rem 0 2rem;
}

.event_detail .full_box {
    text-align: left;
    width: 1340px;
    max-width: calc(100% - 32px);
    margin: 1rem auto 0 auto;
}

.event_detail .left_sub_box {
    display: inline-block;
    text-align: left;
    width: calc(40% - 60px);
    margin: 0 0 0 1rem;
    max-width: 500px;
}

.event_detail .right_sub_box {
    display: inline-block;
    text-align: left;
    vertical-align: top;
    width: 800px;
    max-width: calc(60% - 10px);
    margin: 0 1rem 0 2rem;
}

.event_detail #scheduleTopTable {
    width: 100%;
    margin-bottom: 1rem;
    border: none;
}
.event_detail #scheduleTopTable th{
    border: none;
    padding: 5px 10px;
    font-size: 1.2rem;
    font-weight: 600;
}
.event_detail #scheduleTopTable td {
    border: none;
    border-bottom: 1px solid #e5e5e5;
    padding: 5px 10px;
    vertical-align: top;
}

.event_detail #scheduleTable .col_date {
    width: 140px;   
}
.event_detail #scheduleTable .col_status {
    width: 150px;
}
.event_detail #scheduleTable .col_time {
    width: 130px;
}
.event_detail #scheduleTable .col_place {
    min-width: 100px;
}

.event_detail #scheduleTopTable .inline-icon-middle {
    margin-bottom: 3px;
}
.event_detail #scheduleTopTable pre{
    padding-top: 0 !important;
}

.event_detail #btnTopApply {
    margin: 1rem auto 0 auto;
    width: 350px;
    max-width: 80%;
    height: 50px;
    font-size: 1.4rem;
}

.event_detail .btnApply {
    width: 110px;
    height: 36px;
}

.event_detail .top_image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.event_detail .thumbnail_area {
    margin-top: 1rem;
    display: flex;
    justify-content: space-evenly;
}
.event_detail .thumbnail_area div.img {
    width: calc((100% / 5) - 10px);
    background-color: #000000;
}
.event_detail .thumbnail_area img.active {
    opacity: 1;
}
.event_detail .thumbnail_area img {
    width: 100%;
    /* max-height: 85px; */
    object-fit: cover;
    cursor: pointer;
    opacity: 0.6;
}
.event_detail .block_area {
    margin-top: 2rem;
}

.event_detail #scheduleTable{
    width: 100%;
    margin: 0 auto 0 auto;
}
.event_detail #scheduleTable th {
    background-color: #f8f8f8;
}

.event_detail #scheduleTable .status {
    font-weight: 700;
}
.event_detail #scheduleTable .status.open {
    color: #FF0000;
}
.event_detail #scheduleTable .status.finished {
    color: #808080;
}
.event_detail #scheduleTable .status.standby {
    color: #0000FF;
}
.event_detail .btn_small {
    padding: 1rem;
    line-height: 4px;
}

.event_detail #topButton {
    position: absolute;
    top: 2rem;
    right: 2rem;
}

.event_detail .top_status {
    margin-bottom: 1rem;
    padding: 2rem 2rem;
    background-color: #FFFFFF;
    box-shadow: 0 0 10px 10px #0000000a;
    border-radius: 10px;
}

.event_detail .head_label {
    color: #ffffff;
    background-color: #FF2634;
    height: 4rem;
    line-height: 4rem;
    font-size: 1.3rem;
    font-weight: 500;
    text-align: center;
    box-shadow: 0 0 10px 10px #0000000a;
    border-radius: 10px 10px 0 0;
}

.event_detail .top_status .label {
    text-align: left;
    color: #767676;
    font-size: 1rem;
}

.event_detail .top_status .value {
    display: inline-block;
    text-align: left;
    width: fit-content;
    max-width: 100%;
    margin-right: 1rem;
    color: #333333;
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 2.5rem;
}

.event_detail .top_status .field {
    display: inline-block;
    width: fit-content;
}

.event_detail .top_status .bar {
    width: 100%;
    height: 1px;
    border-top: 1px solid #E8E8E8;
    margin: 1.5rem 0;
}

.event_detail .button {
    margin-left: 1rem;
    margin-right: 1rem;
    min-width: 9rem;
}

.event_detail .detail_box {
    text-align: center;
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.event_detail .detail {
    text-align: left;
}

.event_detail .action_box {
    text-align: center;
    background-color: #F2F3F7;
    margin-top: 2rem;
    padding: 3rem;
    font-size: 1.1rem;
    font-weight: 500;
}

.event_detail .sns_box {
    max-width: unset;
}

.event_detail .block_title {
    border-bottom: 1px solid #DFE1E6;
    margin: 3rem 0 1rem 0;
}

.event_detail .block_title span {
    position: relative;
    display: inline-block;
    color: #C4202B;
    font-size: 1.5rem;
    font-weight: 500;
}

.event_detail .block_title span::after {
    content: '';
    position: absolute;
    border-bottom: 1px solid #C4202B;
    width: calc(100% + 30px);
    top: 38.3px;
    left: 0;
}

.event_detail .project_area {
    margin-top: 0 !important;
}

/* 決済結果画面 */
.page_success .content_area {
    background-color: #F2F3F7;
    padding: 1rem;
}
.page_success .main_box {
    background-color: #ffffff;
    width: 700px;
    padding: 3rem 5rem 4rem 5rem;
    margin: 1rem auto;
    text-align: center;
}
.page_success .thank_you {
    margin-bottom: 3rem;
    width: 215px;
    height: 150px;
}

.page_success .amount_box {
    width: 300px;
    padding: 0.5rem 0;
    margin: 1rem auto 3rem auto;
    background-color: #F4F4F4;
}
.page_success .amount {
    font-size: 2rem;
    font-weight: 500;
}

.page_success .row {
    min-height: 3rem;
    margin: 0;
    border-top: 1px solid #E8E8E8;
}
.page_success .row.bottom {
    border-bottom: 1px solid #E8E8E8;
}

.page_success .title {
    display: inline-block;
    min-width: 150px;
    line-height: 3rem;
    text-align: left;
}
.page_success .field {
    display: inline-block;
    width: calc(100% - 150px);
    text-align: left;
    vertical-align: middle;
    margin-top: 12px;
}
.page_success .bigtext {
    margin-top: 1rem;
    text-align: center;
    width: 100%;
    font-size: 1.2rem;
    font-weight: 600;
}
.page_success .buttons {
    text-align: center;
    margin: 2rem 0;
}
.page_success .sns_box {
    width: 100%;
    justify-content: center;
}
.page_success .sns_box > div {
    margin: 0 0.3rem;
}

/* 金額プラン選択肢枠 */
.return_box {
    margin-top: 3rem;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    background-color: #FFFFFF;
    box-shadow: 0 0 10px 10px #0000000a;
}

.return_box img {
    width: 100%;
    max-height: 300px;
    object-fit: cover;
}

.return_box .return_title {
    padding: 2rem 2rem 0 2rem;
    font-size: 1rem;
    font-weight: 500;
}

.return_box .return_description {
    padding: 0.5rem 2rem 0 2rem;
    font-size: 0.9rem;
}

.return_box .return_status {
    padding-top: 1rem;
    padding-left: 2rem;
    font-size: 0.9rem;
}

.return_box .return_members {
    display: inline-block;
    min-width: 70px;
    margin-right: 10px;
}

.return_box .return_remaining {
    display: inline-block;
    min-width: 70px;
}

.return_box .return_border {
    margin-top: 10px;
    height: 10px;
    border-top: 1px solid #E8E8E8 ;
}

.return_box .return_current_amount {
    margin: 1rem 2rem 0 2rem;
    font-size: 1.1rem;
    font-weight: 500;
    text-align: center;
}

.return_box .return_current_amount .value {
    font-size: 2rem;
    font-weight: 500;
}

.return_box .button {
    margin: 1rem 2rem 1rem 2rem;
}


/* 共通 */
div.link.twitter {
    padding: 4px;
}

/* メッセージボックス */
.swal2-modal.swal2-show {
    width: 540px !important;
    max-width: 100%;
}
#swal2-content .msg_info {
    display: inline-block;
    font-size: 0.9rem;
    border: 1px solid #3fc3ee;
    padding: 3px 0 3px 3px;
    text-align: left;
}

/* 支払ダイアログ */
#payment-form {
    padding: 0 2rem;
    background-color: #ffffff;
}
#submit {
    margin: 1rem 0;
    font-weight: 500;
    color: #ffffff;
    background-color: #FF2634;
}

/* ダイアログ共通 */
.dialog {
    position: fixed;
    padding: 0;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: #000000CC;
    text-align: center;
    z-index: 100;
    color: #000000;
}

.dialog .dialog_content {
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    margin-top: 1rem;
    margin-bottom: 1rem;
    margin-left: 8rem;
    margin-right: 8rem;
    padding: 1.5rem;
    box-sizing: border-box;
    max-width: calc(100vw - 2rem);
    max-height: calc(100vh - 2rem - 50px - 15px);
    overflow: auto;
}

.dialog .dialog_content>*:not(#mediaGallery) {
    flex-shrink: 0;
}

.dialog.center .dialog_content {
    position: relative;
    margin: unset;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: calc(100vh - 120px);
}
.dialog .dialog_inner {
    max-height: calc(100vh - 150px);
    padding: 1rem 0.5rem;
    overflow-y: auto;
    overscroll-behavior-y: none;
}

.dialog .dialog_title {
    font-size: 1.4rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
    text-align: center;
}
.dialog .row {
    padding: 0.5rem 0 1rem 0;
    text-align: left;
}
.dialog .msg_span {
    bottom: -23px;
    font-size: 75%;
    left: 2px;
    position: absolute;
    width: max-content;
    width: -moz-max-content;
    white-space: nowrap;
} 

.dialog .label {
    margin-left: 1rem;
    min-width: 200px;
    text-align: left;
    line-height: 2.7rem;
}

.dialog .title {
    display: inline-block;
    min-width: 130px;
    line-height: 2.7rem;
}

.dialog .field {
    position: relative;
    width: 400px;
    min-width: 400px;
    display: inline-block;
    margin-top: 0.3rem;
}

.dialog select {
    border-radius: 3px;
    padding: 8px 13px;
    max-width: 100%;
    border: 1px #ccc solid;
    outline: none;
    box-sizing: border-box;
}

.dialog .required::after {
    content: '*';
    color: #ff0000;
    margin-left: 2px;
    vertical-align: middle;
}

.dialog .buttons {
    width: 100%;
}

.dialog .buttons input {
    margin-top: 0.5rem;
}

.dialog .err_message {
    font-size: 0.8rem;
}
/* メール通知ダイアログ */
.emailNotification {
    margin-left: 160px;
}
/* ダイアログ（パスワード変更）*/
#changePasswordForm .field {
    width: 470px;
}
/* プロフィールダイアログ */
#profileUserIcon {
    background-image: url(../img/icon/bukatsunavi_icon-09W.svg);
    background-color: #cccccc;
    border-radius: 50px;
    cursor: pointer;
}
.profileDetails {
    width: fit-content;
    max-width: 100%;
    text-align: left;
    margin: 1rem auto;
}
.profileDetails div {
    margin-top: 0.6rem;
}

.profileEdit {
    width: fit-content;
    max-width: 100%;
    text-align: left;
    margin: 1rem auto;
}
.profileEdit .row .title {
    min-width: 150px;
}

#profileDialog .buttons {
    text-align: right;
    padding-right: 0.5rem;
}
#nameSei, #nameMei, #nameKanaSei, #nameKanaMei{
    width: 160px;
}
.img_div_55 {
    display: inline-block;
    border: 1px dotted #a3a9a7;
    width: 55px;
    height: 55px;
    vertical-align: middle;
}
.img_div_55 > img {
    width: 100%;
    height: 100%;
}
.icon-cancel {
    background-image: url(../img/icon/bukatsunavi_icon-11.svg);
    cursor: pointer;
}
.inline-icon-small{
    width: 20px;
    height: 20px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin-left: auto;
    margin-right: auto;
    vertical-align: middle;
    display: inline-block;
}
#profileEditDialog .buttons input[type="button"] {
    padding-left: 0;
    padding-right: 0;
}
#withdrawalDialog textarea {
    width: 400px;
    max-width: 100%;
}
/* 体験入部ダイアログ */
#myTrialDialog .dialog_content {
    width: 1490px;
    max-width: calc(100% - 4rem);
}
#myTrialDialog .template{
    display: none;
}

/* 体験入部枠 */
.trial_wrap {
    display: inline-block;
}
.trial_box {
    position: relative;
    width: 300px;
    min-height: 380px;
    margin: 1rem 1rem 3rem 1rem;
    background-color: #ffffff;
    display: inline-block;
    vertical-align: top;
    text-align: left;
    border: 1px solid #E8E8E8;
}
.trial_box .value {
    font-weight: 600;
}

.trial_top_image{
    width: 300px;
    height: 180px;
    object-fit: cover;
}

.trial_title {
    overflow-y: hidden;
    height: 58px;
    padding: 15px 15px 0 15px;
    margin-bottom: 10px;
    line-height: 21px;
    border-top: 2px solid #0E76F8;
    font-weight: 500;
    word-break: break-all;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.trial_club_name {
    font-size: 11px;
    line-height: 14px;
    color: #767676;
    height: 30px;
    padding: 0 15px;
    overflow-y: hidden;
    word-break: break-all;
}
.trial_start_date_div {
    font-size: 0.8rem;
    line-height: 14px;
    color: #767676;
    height: 30px;
    padding: 0 15px;
    overflow-y: hidden;
    word-break: break-all;
}

.trial_status_name {
    display: inline-block;
    margin-right: 2rem;
}

.trial_border {
    height: 10px;
    border-top: 1px solid #E8E8E8;
}

.trial_user_full_name_div {
    padding: 0 15px;
    font-size: 0.8rem;
}
.trial_reservation_datetime_div{
    padding: 3px 15px;
    font-size: 0.8rem;
}
.trial_border_flat {
    height: 10px;
    border-top: 1px solid #E8E8E8;
}

.trial_buttons {
    text-align: center;
    padding-bottom: 5px;
}

.trial_buttons input[type="button"] {
    padding: 2px 10px;
    min-width: unset;
    line-height: unset;
    height: unset;
    font-size: 0.8rem;
    border-radius: 2px;
}

/* MYイベンダイアログ */
#myEventDialog .dialog_content {
    width: 1490px;
    max-width: calc(100% - 4rem);
}
#myEventDialog .template{
    display: none;
}
#myEventDialog .project_box {
    border: 1px solid #E8E8E8;
    height: unset;
}

#myEventDialog .project_box .value {
    font-weight: 600;
}

#myEventDialog .top_amount {
    width: fit-content;
    margin: 1rem auto 0 auto;
    padding: 0.5rem;
    font-size: 1.1rem;
    font-weight: 700;
    background-color: #ffffff;
}

#myEventDialo .blanceText {
    margin: 2rem 0;
    font-weight: 700;
}

.project_start_date_div {
    font-size: 0.8rem;
    line-height: 14px;
    color: #767676;
    height: 30px;
    padding: 0 15px;
    overflow-y: hidden;
    word-break: break-all;
}

.project_status_name {
    display: inline-block;
    margin-right: 2rem;
}

.project_border {
    height: 10px;
    border-top: 1px solid #E8E8E8;
}

.project_user_full_name_div {
    padding: 0 15px;
    font-size: 0.8rem;
}
.project_reservation_datetime_div{
    padding: 3px 15px;
    font-size: 0.8rem;
}
.event .project_reservation_datetime_div {
    padding: 0px 15px;
}
.project_ticketno_div{
    padding: 0px 15px;
    font-size: 0.8rem;
}
.project_border_flat {
    height: 10px;
    border-top: 1px solid #E8E8E8;
}
.event .project_border_flat {
    height: 5px;
}

.project_buttons {
    text-align: center;
    padding-bottom: 5px;
}

.project_buttons input[type="button"] {
    padding: 2px 10px;
    min-width: unset;
    line-height: unset;
    height: unset;
    font-size: 0.8rem;
    border-radius: 2px;
}

/* 口座ダイアログ */
#commonBankDialog .field_left {
    font-size: 0.9rem;
}
#commonBankDialog .field_value {
    width: 400px;
    max-width: 100%;
    font-size: 0.9rem;
}
#commonBankDialog .field_icon {
    display: inline;
    font-size: 1.2rem;
    cursor: pointer;
}


/* ダイアログ(ギャラリー) */
.gallery_main {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    width: 100vw;
    height: 90vh;
    overflow: hidden;
    box-sizing: border-box;
    margin-top: 1rem;
}

#mediaGallery {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    overflow: hidden;
    min-height: 0;
}

#mediaGallery img {
    max-width: calc(100vw - 25rem);
    max-height: calc(100vh - 12rem);
    object-fit: contain;
    display: block;
}

#mediaGallery iframe{
    width: calc(100vw - 25rem);
    height: calc(100vh - 12rem);
}

#dialogGallery .media_description {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

#dialogGallery .media_description .text {
    width: 100%;
    max-height: 14rem;
    overflow-y: auto;
    padding-right: 5px;
    text-align: left;
    line-height: 1.5rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

#dialogGallery .title {
    width: calc(100% - 6rem);
    text-align: left;
    font-weight: 600;
    line-height: 1.5rem;
    margin-top: 0.5rem;
}

#dateGallery {
    margin: 0 0 0 auto;
}

#dialogGallery .media_date {
    width: 6rem;
    padding-top: 0.4rem;
    text-align: right;
    font-size: 0.8rem;
    height: 2rem;
    margin-right: 0.5rem;
}

/* ニュースピン留め */
.newsTopPin {
    width: 30px !important;
    float: right;
    height: 30px !important;
    margin-top: -170px;
    z-index: 1;
    position: inherit;
    margin-right: 10px;
}

.newsListPin {
    width: 30px !important;
    float: right;
    height: 30px !important;
    margin-top: -30px;
    z-index: 1;
    position: inherit;
    margin-right: 10px;
    top: 67px;
}

/* イベント参加 */
.receptionQrCodeFooter {
    display: flex;
    justify-content: space-between;
}

.receptionQrCodeSwitchingBtn {
    background-color: #ffffff !important;
    border-radius: 0rem !important;
    width: 30px !important;
    height: 30px !important;
    padding: 0px !important;
    color: black !important;
    border: solid 1px #cccccc !important;
    border-radius: 0rem !important;
}

#receptionQrCodeAcceptedMark {
    background-color: white;
    z-index: 3;
    position: relative;
    width: 50px;
    left: 160px;
    top: -140px;
    margin-bottom: -25px;
    height: 25px;
}

#receptionQrCodeAcceptedMark.none {
    background-color: transparent;
}

#directReceptionQrCodeAcceptedMark {
    background-color: white;
    z-index: 3;
    position: relative;
    top: -140px;
    display: inline;
}

/* SNS埋め込み */
.youtubeItem img,
.youtubeItem div{
    max-width: calc(100% - 1rem);
}
.youtubeItem div {
    font-size: 13px;
    margin-bottom: 1rem;
}
