.main_area{ padding-bottom:66px; }
.font_color1{ color:#333333; }
.note{ line-height:140%;font-size:110%; }
.note.center{ text-align:center; }
.mincho{ font-family:"YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; }
.flex{ display:flex;flex-wrap:wrap; }

/* 管理画面/カレンダー */
.header{ position:fixed;top:0;left:0;width:100%;background-color:#fff;z-index:700;box-shadow:0 0px 5px 2px rgba(0, 0, 0, 0.1); }
.header .wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between; }
.header .logo{ width:24%;padding:17px 0;grid-row:0;-ms-flex-negative:0;flex-shrink:0;margin-right:4%; }
.header nav{ display:-webkit-box;display:-ms-flexbox;display:flex;width:68%;max-width:788px;-webkit-box-flex:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;z-index:700; }
.header nav a{ color:#333333;font-size:110%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center; }
.header nav a.active{ color:#ff6633;position:relative; }
.header nav a.active::after{ content:'';background-color:#1dc0d9;position:absolute;top:0;left:50%;transform:translateX(-50%);width:130%;height:4px;z-index:550; }

.bg_mask{ background-color:#000;opacity:0;position:fixed;width:100vw;height:100vh;top:0;right:0;transition:opacity 0.8s; }
.bg_mask.active{ opacity:0.8;transition:opacity 0.8s;z-index:700; }

input, textarea{ background-color:#ffd9be6e;border:none; }
input[type="submit"]{-webkit-appearance:none;border-radius:0;font-weight:bold;padding:5px 10px;color:#fff;border:none;background-color:cornflowerblue;}
input[type="text"],input[type="email"],input[type="tel"], .bt_reserve{ font-size:100%;width:100%;padding:2.3% 3.2%;box-sizing:border-box; }
input[type="radio"]{ line-height:130%; }
input[type="submit"], .bt_reserve{ background-color:#469a65;display:block;margin:4.6% auto;font-size:180%;border-radius:9px;color:#fff;padding:1.4% 3%;transition:.3s;cursor:pointer; }
input[type="submit"]:disabled{ background-color:#c3c3c3;box-shadow:0 5px 0 0 #5d5d5d; }
input[type="submit"]:hover{ transition:.3s;opacity:0.8; }
input[type="submit"]:disabled:hover{ background-color:#c3c3c3;box-shadow:0 5px 0 0 #5d5d5d;opacity:1;cursor:inherit; }
label[for="choice1"],label[for="choice2"]{ margin-right:7%; } 
textarea{ width:100%;height:150px;resize:none;font-size:100%;padding:2% 3%;font-size:100%;box-sizing:border-box; }

.calendar_wrap{ margin-top:30px; }
#calendar, .month_bt_wrap{ max-width:870px;width:100%;margin:0 auto;line-height:30px; }
#calendar{ margin-bottom:50px; }
.month_bt_wrap{ position:absolute;left:50%;transform:translateX(-50%);z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between; }
.month_bt_wrap .bt_change_month{ font-size:120%;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline; }
#calendar h1{ text-align:center;font-size:160%; }
#calendar .top_row span{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center; }
#calendar .sun .top_row span, #calendar th:first-of-type{ color:#ff6633; }
#calendar .sat .top_row span, #calendar th:last-of-type{ color:#3089fe; }
#calendar .table_wrap{ width:100%; }
#calendar table{ width:100%;background-color:#acacac;overflow-x:scroll; }
#calendar th, #calendar td{ width:76px;padding-left:3px; }
#calendar th{ background-color:#e1e1e1;text-align:center;height:40px; }
#calendar td{ background-color:#fff;vertical-align:top;height:75px;padding:3px;position:relative; }
#calendar td .state{ display:inline-block;padding-left:2px;font-size:22px;cursor:pointer;text-align:center;width:20px; }
#calendar td .info{ position:absolute;left:0;top:0;width:100%;height:100%;padding:3px;padding-top:24px; }
#calendar td .info .lunch_wrap{ position:absolute;top:4px;right:0; }
#calendar td .info > div{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center; }
#calendar td .note{ padding-left:3px; }
#calendar td .lunch_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center; }
#calendar td .icon_lunch{ width:16px; }
#calendar td .lunch_wrap .state{ font-size:15pt; }
#calendar td div[data-type="0"]{ margin-bottom:2px; }
#calendar td div[data-type="2"]{ margin-bottom:2px; }
#calendar .top_row{ display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%); }
#calendar .top_row.need_reserve span{ background-color:#ff3d3d;color:#fff;width:min(29px, 5vw);aspect-ratio:1;border-radius:999px; }
#calendar .top_row .lunch_wrap{ margin-left:auto; }
#calendar .time_tag{ padding:0 3px;color:#fff;border-radius:3px; }
#calendar .time_tag.pm{ background-color:#99f;border:1px solid #99f; }
#calendar .time_tag.am{ background-color:#f99;border:1px solid #f99; }
/* #calendar .time_tag.ampm{ background-color:#bb7; } */
#calendar .time_tag.all{ background-color:rgb(119, 187, 129); }
.bg_popup{ background-color:rgba(0, 0, 0, 0.7);position:fixed;top:0;left:0;width:100%;height:100%;z-index:600;display:none; }
.bg_popup .pop_wrap{ width:80%;height:90vh;max-width:600px;position:relative;top:50%;left:50%;transform:translate(-50%,-50%);padding:10px;padding-bottom:55px;background-color:#fff; }
.bg_popup .pop{ width:100%;height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:10px;padding-bottom:15px;background-color:#fff;overflow-y:scroll; }
.pop_js{ cursor:pointer;transition:opacity .5s;opacity:1;position:absolute;right:0;top:0; }
.pop_js:hover{ transition:opacity .5s;opacity:0.8; }
.close_js{ position:absolute;right:20px;top:10px;width:30px;height:30px;z-index:1;cursor:pointer; }
.pop .edit{ padding-top:20px;padding-bottom:20px; }
.pop .edit h2{ margin-bottom:30px; }

.reserve_system{ padding-top:30px;padding-bottom:100px; }
.admin_nav{ display:-webkit-box;display:-ms-flexbox;display:flex;width:calc(100% - 60px);margin:20px auto;border-bottom:1px #999 solid;padding-bottom:20px; }
.admin_nav .item{ margin-left:20px; }
.admin_nav .block{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:300px;margin-right:20px;font-size:100%;line-height:110%; }
.admin_nav span{ font-weight:bold;margin-bottom:10px; }
.admin_nav a{ margin-bottom:10px;text-decoration:none;color:#469a65;line-height:160%; }
.admin_nav a:before{ content:'・ '; }
.reserve_system.top h2,.reserve_system.top h3{ text-align:center; }
.reserve_system h2{ font-size:190%;text-align:center;margin-bottom:70px; }
.reserve_system.top .row{ border-top:1px solid #aeaeae;padding:40px 0;max-width:515px;margin:0 auto; }
.reserve_system.top .row:last-of-type{ border-bottom:1px solid #aeaeae; }
.reserve_system.top .row h3{ font-size:130%;width:130px; }
.reserve_system.top .row a{ font-size:120%;width:150px;text-align:center;border-radius:6px;padding:10px 0;background-color:#207b84;color:#fff; }
.reserve_system .bt_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center; }
.reserve_system .bt_wrap a{ display:block;margin:10px 20px; }
.reserve_system .is_hidden td{ background-color:#d4dddd; }
.reserve_system th,.reserve_system td{ font-size:14px; }
.reserve_system table{ background-color:#acacac;margin:0 auto;margin-top:3%;width:100%; }
.reserve_system tr.disabled th{ background-color:gray; }
.reserve_system tr.disabled input{ background-color:rgb(211, 211, 211); }
.reserve_system td{ background-color:#fff; }
.reserve_system .time, .reserve_system .publish, .reserve_system .type, .reserve_system .date{ text-align:center; }
.reserve_system .title, .reserve_system .num, .reserve_system .lunch_num{ text-align:right; }
.reserve_system td.no_post_td{ text-align:center; }
.reserve_system form .error_note{ color:#b50009;padding:4px;border:1px solid #b50009;background-color:#ffd9db;border-radius:3px;line-height:164%;display:block;margin-bottom:8px; }
.reserve_system.edit th{ max-width:220px;min-width:90px;padding:10px 0;background-color:#469a65;text-align:center;color:#fff;padding:2px 8px; }
.reserve_system.edit td{ padding:10px; }
.reserve_system.edit td.td_img{ object-fit:contain;max-width:320px; }
.reserve_system.edit td.td_img img{ padding:5px;padding-left:0;box-sizing:border-box;max-width:250px;display:block; }
.reserve_system.edit label{ margin-right:3%; }
.reserve_system.edit input[type='text'], .reserve_system.edit textarea, .reserve_system.edit select{ font-size:100%;font-family:"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; }
.reserve_system.edit input[type='text'], .reserve_system.edit input[type='email'], .reserve_system.edit textarea{ width:100%;box-sizing:border-box;border:none;border:1px solid #aeaeae;padding:5px; }
.reserve_system.edit input[type='file']{ background-color:transparent; }
.reserve_system.edit input[type='submit'], .bt_reserve{ font-size:110%;display:block;background-color:#469a65;padding:17px 60px;letter-spacing:5px;border:1px solid #acacac;margin:30px auto 70px auto;cursor:pointer;color:#fff;border-radius:999px;transition:opacity .5s;box-shadow:none;width:260px;text-align:center;margin-bottom:3%; }
.reserve_system.edit input[type='submit']:hover, .bt_reserve:hover{ opacity:0.7;transition:opacity .5s; }
.reserve_system.edit input[type='button'], .reserve_system.edit input[type='file']{ margin:8px 0; }
.reserve_system.edit input[type='submit'].bt_delete{ margin-top:3%;background:#966; }
.inline_radio{ display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;border-radius:3px;overflow:hidden;border:1px solid #b6b6b6;margin-bottom:5%; }
.inline_radio .radio_num{ position:relative;width:20%; }
.inline_radio input{width:100%;height:30px;opacity:0; }
.inline_radio label{position:absolute;top:0; left:0;color:#b6b6b6;width:100%;height:100%;background:#fff;display:flex;align-items:center;justify-content:center;pointer-events:none;border-right:1px solid #b6b6b6; }
.inline_radio div:last-child label{border-right:0; }
.inline_radio input:checked + label{background:#469a65;font-weight:500;color:#fff; }
#age_wrap .title{ margin-top:5%;display:block;text-align:left; }
.reserve_system.edit textarea{ resize:none;margin:5px 0; }
.reserve_system.edit select{ width:auto; }
.reserve_system.edit .date_select{ margin-left:10px;margin-right:4px; }
.reserve_system.edit #date{ margin-left:0; }
.reserve_system.edit .cal_icon{ width:50px;height:50px;background-color:#000;display:block; }
.reserve_system.list{ max-width:600px;margin-left:auto;margin-right:auto; }
.reserve_system.list td{ padding:2px 5px; }
.reserve_system.list *{ overflow-wrap:anywhere; }
.reserve_system.list .head_row{ text-align:center; }
.reserve_system.list .head_row td{ background-color:#e4e4e4;white-space:nowrap;text-align:center; }
.head_row td.publish br{ display:none; }
.reserve_system.list .wrap{ overflow-x:auto; }
.reserve_system.list .edit{ text-align:center;width:60px;white-space:nowrap; }
.reserve_system.list .edit a{ border:1px solid #acacac;border-radius:3px;padding:2px;background-color:#e4e4e4; }
.reserve_system.list .publish{ text-align:center;width:98px;white-space:nowrap; }
.reserve_system.list .title{ min-width:160px; }
.reserve_system.list .plan,.reserve_system.list .publish_date{ width:100px;text-align:center;white-space:nowrap; }
.reserve_system.list .client{ width:100px; }
.reserve_system.list .note{ min-width:200px; }
.reserve_system .form_search{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center; }
.form_search input[type='text']{ border:1px solid #acacac;height:30px;margin-left:auto;padding:0 14px; }
.reserve_system .bt_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:40px; }
.reserve_system .bt_wrap a{ display:block;border:1px solid #acacac;padding:3px 5px; }
.reserve_system .bt_wrap a.active{ background-color:#469a65;color:#fff; }
input[type='submit'].bt_search{ margin:0;margin-left:10px;font-size:130%;padding:3px 13px;border-radius:6px; }
.page_nation .page_number{ color:#acacac; }
.page_nation .page_number.current{ color:#3B4043; }
.page_nation{ display:-webkit-box;display:-ms-flexbox;display:flex;max-width:180px;margin:0 auto;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:41px; }
.page_nation .num_wrap{ display:block;margin:0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;width:100%; }
.page_nation .num_wrap *{ margin:0 10px;font-size:140%; }
.news .page_nation a,.news .page_nation span{ font-size:170%;font-weight:bold;color:#c3c3c3; }
.page_nation > a{ position:absolute;top:50%;transform:translateY(-50%);width:50px;z-index:1; }
.page_nation .bt_prev{ left:-45%; }
.page_nation .bt_next{ right:-45%; }

.reserve_system table.inner_table{ margin:0;margin-top:5px;margin-bottom:30px;width:240px; }
.reserve_system table.inner_table th{ padding:0 20px; }
.reserve_system table.inner_table td{ width:80px; }

.td_center{ text-align:center; }
.td_right{ text-align:right; }

@media screen and (min-width:576px){
    #popup_event .title_date{ display:block;font-size:160%;margin-bottom:20px; }
    #popup_event .title{ display:block;font-size:140%;text-align:left;border-bottom:1px #999 solid;padding-bottom:5px; }
    #popup_event .note{ font-size:120%; }
}

/* 閲覧画面 */
.bg_green{ background:url(../img/bg_green.jpg) repeat center center/contain; }
section{ padding:80px 0; }
.sec{ max-width:600px;margin:0 auto; }
.sec_th img{ display:block;margin:0 auto; }
.sec_detail .note, .rule .th, .rule .note,.sec_lunch .note{ font-family:'Zen Maru Gothic', sans-serif;font-size:16px; }

.hamburger-btn{ cursor:pointer; }
.hamburger-btn.close{ position:absolute;right:3.8%;top:2%;display:block;width:32px;height:auto; }
.hamburger{ display:block;position:fixed;z-index:800;top:0;right:0;width:25vw;max-width:670px;min-width:500px;height:100vh;transform:translateX(100vw);-webkit-transition:all 0.5s;transition:all 0.5s;background-color:#fff;padding:5.2% 5.5% 5.2% 6.1%; }
.hamburger.active{ -webkit-transform:translateX(0);transform:translateX(0); }
.hamburger *{ color:#a1826c; }
.hamburger .logo{ width:14vh;max-width:124px;display:block; }
.hamburger .menu_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:70%; }
.hamburger_lists{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:100%;width: 100%;padding-top:2vh;margin-right:auto; }
.hamburger_list{ border-bottom :1px solid #a1826c;text-align:center;width:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start; }
.hamburger_list a{ font-size:112%;font-weight:300;display:block;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;white-space:nowrap;padding:3.5vh 0;font-weight:bold; }
.hamburger .nav_note{ width:auto;max-width:90px;height:44vh;margin-top:5vh;margin-right:2%; }
.hamburger .bt_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:4.9vh; }
.hamburger .bt_wrap a{ border:1px solid #fff;height:6.2vh;max-height:100px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:46%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center; }
.url_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;margin-top:3.9vh;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between; }
.url_wrap a{ margin-top:auto; }
.nav_instagram{ width:47px;height:auto; }
.nav_instagram img{ vertical-align:top; }
.frame{ position:fixed;top:0;left:50%;transform:translateX(-50%);width:98%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;z-index:500;padding-top:16px;height:0; }
.frame .logo{ width:13%;max-width:125px;margin-left:1.2%;height:0;position:relative; }
.frame .instagram{ width:100%;align-items:center;margin-top:30%; }
.frame .th_header{ width:23.2%;margin-top:180%; }
.side_header{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:40px;height:calc(100vh - 60px);-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-left:auto; }
.menu_mask{ background-color:rgba(0, 0, 0, 0.8);position:fixed;width:100vw;height:100vh;z-index:600;display:none; }

.top_wrap{ height:100vh;width:100%;position:relative; }
.top_img_wrap{ height:100%; }
.top_wrap img{ object-fit:cover;object-position:center center;width:100%;height:100%; }
.top_wrap img.sp{ display:none; }
.top_wrap .bt_to_calendar{ position:fixed;bottom:0;left:50%;z-index:501;transform:translateX(-50%);width:100%;background-color:#ffbe1e;background:url(../img/bg_yellow.jpg) repeat center center/contain;padding:30px 0; }
.top_wrap .bt_to_calendar:hover{ opacity:1; }
.top_wrap .bt_to_calendar img{ width:70%;max-width:350px;display:block;margin:0 auto;transition:.3s; }
.top_wrap .bt_to_calendar img:hover{ opacity:0.6;transition:opacity .3s; }
.sec_space .map{ margin-bottom:6%; }
.sec_space .bg_map{ width:100%; }
.sec_space .map_wrap{ position:relative;margin-bottom: 5%; }
.sec_space .bt_space{ width:9%; }
.sec_space .bt_space_a{ position:absolute;top:49%;right:38%; }
.sec_space .bt_space_b{ position:absolute;top:50%;right:5.1%; }
.sec_space .bt_space_c{ position:absolute;top:20%;right:12%; }
.sec_space .bt_space_d{ position:absolute;top:7%;right:37.7%; }
.sec_space .bt_space_e{ position:absolute;top:6%;right:55.3%; }
.sec_space .bt_space_f{ position:absolute;top:26.6%;right:46.2%; }
.sec_space .bt_space_g{ position:absolute;top:26%;right:72%; }
.sec_space .bt_space_h{ position:absolute;top:79%;right:7.2%; }
.sec_space .bt_space_i{ position:absolute;top:67%;right:80%; }
.sec_space .university{ margin-top:4%; }
.slide_cont{ margin-bottom:4.1%; }
.slide_cont .p_head{ border-top-left-radius:12px;border-top-right-radius:12px;padding:2%;cursor:pointer; }
.slide_cont video{ cursor:pointer; }
.slide_cont .th{ height:30px;width:auto;margin-right:auto;display:block; }
.slide_cont .bt{ width:20px; }
.slide_cont .slide_menu{ display:none;box-sizing:border-box;padding-bottom:3%;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:none; }
.slide_cont .slide_menu .menu{ padding:3%;position:relative; }
.slide_menu{ overflow:hidden; }
.slide_menu video{ width:102%;transform:translateX(-1%);border-bottom-left-radius: 12px;border-bottom-right-radius: 12px; }
.slide_cont:last-of-type .slide_menu{ padding-top:5%; }
.slide_cont .p_head{ position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between; }
.space_a .p_head{ background-color:#73c391; }
.space_b .p_head{ background-color:#e6b464; }
.space_c .p_head{ background-color:#8296c8; }
.space_d .p_head{ background-color:#4bbec8; }
.space_e .p_head{ background-color:#f0a0b4; }
.space_f .p_head{ background-color:#afbeb4; }
.space_g .p_head{ background-color:#b491d2; }
.space_h .p_head{ background-color:#9acce2; }
.space_i .p_head{ background-color:#cdbd8b; }
.university .row{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:0.5%; }
.university .row img{ width:49%; }
.sec_detail .th{ margin:0 auto;margin-top:8%;display:block; }
.sec_detail .note,.sec_lunch .note{ color:#fff;text-align:center;font-weight:500;margin-top:3%; }
.sec_maps{ padding:0; }
.gmap{ height:0;overflow:hidden;padding-bottom:95%;position:relative; }
.gmap iframe{ position:absolute;left:0;right:0;height:100%;width:100%; }
.rule{ width:85%;margin-left: auto;margin-right: auto; }
.rule .th, .rule .note{ color:#a1826c;display:block; }
.rule .th{ font-size:200%;font-weight:bold;margin-top:50px;margin-bottom:30px; }
.rule .note, .lunch_desc .note{ padding-left:20px;position:relative;font-weight:bold;font-size:130%;line-height:155%;margin-bottom: 2%; }
.rule .note:before{ content:"●";position:absolute;top:0;left:0;font-size:20px; }
.lunch_desc{ width:85%;margin-left:auto;margin-right:auto;margin-top:7%;margin-bottom:2.5%; }
.lunch_desc .note{ padding-left:0;line-height:180%;margin:3% 0;font-size:128%; }
.lunch_desc .note span{ display:inline-block; }
.sec_footer .wrap{ width:80%; }
.f_info{ position:relative;margin-top:8%; }
.f_info .bt{ display:block;position:absolute;top:34%;right:0;width:22%; }
.f_info .bt img{ vertical-align:top; }
.univ_note{ margin-top:2%; }
.copyright{ width:70%;display:block;margin:0 auto;margin-top:10%;margin-bottom:2%; }

.calendar_mask{ position:absolute;background:#999;opacity:0.8;text-align:center;font-size:160%;text-align:center;color:#fff;font-weight:bold;z-index:500;padding-top:200px; }
.note_alert{ font-size:95%;margin-top:5px; }
/* .note_alert .alert{ display:block;padding-bottom:5px;padding-left:1em; } */
.note_alert .alert{ display:block;padding-bottom:0;padding-left:1em; }
.note_alert .alert:before{ content:'※';	position:absolute;left:0;top:0; }
#reserve_form .register_wrap{ margin-bottom:24px; }
#reserve_form .register_wrap .note{ margin-bottom:10px;text-align:center; }
#reserve_form .intro_caution{ display:block;text-align:center; }
#reserve_form .intro_caution .inner{ text-align:center;margin-bottom:14px;position:relative;padding-left:15px;display:inline-block; }
#reserve_form .intro_caution .inner:before{ content:'※';position:absolute;top:0;left:0; }
#reserve_form .intro_caution span{ white-space:nowrap; }
#reserve_form .bt_register{ display:block;text-align:center;padding:13px 0;background-color:rgb(255, 184, 57);color:#fff;font-size:160%;letter-spacing:2px;width:270px;margin-left:auto;margin-right:auto;border-radius:7px; }
#reserve_form th span{ white-space:nowrap; }
#reserve_form .caution{ margin-top:20px;display:block;color:#ff4747;text-align:center; }
#tr_adult .alert{ padding-bottom:0; }




@media screen and (max-width:960px){
    .header .hamburger-btn{ display:block; }
    .header .nav_wrap{ display:none; }

    .epc table td{ padding-left:20%; }
}

@media screen and (max-width:767px){
    section{ padding:10% 0; }
    .header .wrap{ -webkit-box-align:center;-ms-flex-align:center;align-items:center; }
    .header .logo{ width:60%;max-width:280px; }
    .hamburger .menu_wrap{ margin-left: auto;margin-right: auto; }
    .hamburger_lists{ padding-top: 9vh; }
    .bg_half{ height:auto;overflow:hidden; }
    .bg_half .wrap{ -webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:10% 0;overflow:hidden; }
    .bg_half .wrap .right{ width:80%;max-width:400px; }
    .sec_info .info h2{ margin-bottom:8%; }
    .sec_info .wrap{ -webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column; }
    .sec_info .wrap > div{ width:100%; }
    .sec_info .wrap .instagram{ margin-top:14%; }
    .instagram .post:nth-of-type(n+6){ margin-bottom:0; }
    .instagram .post:last-of-type{ margin-bottom:4%; }
    .sec_info .bt_more{ margin-top:9%; }
    .instagram .bt_more{ margin-top:4%; }
    .bg_half_green{ right:-10%; }
    .bg_green_offset{ right:-10%; }
    .bg_half.sec2 .wrap{ padding-top:0; }
    .sec2 .bg_half_green{ right:5%; }
    .sec2 .bg_green_offset{ right:5%; }
    .b_epc .flex{ -webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-top:4%; }
    .bg_half.sec2 .note_wrap{ max-width:480px;width:90%;margin:0 auto;border:none; }
    .bg_half.sec2 .note_wrap .th{ font-size:180%;display:inline-block;margin-bottom:4.5%;position:relative;color:#fff; }
    .bg_half.sec2 .note_wrap .th::after{ content:"";width:100%;height:2px;background-color:#a9ccd0;position:absolute;bottom:-10px;left:50%;transform:translateX(-50%); }
    .bg_half.sec2 .note_wrap .note{ width:100%;max-width:100%;margin-bottom:7%;font-size:120%;line-height:160%; }
    .b_epc .img_wrap .col3{ background:url(../img/bg_top_epc3.png) no-repeat center right/cover;width:100%;height:100%; }
    .bg_half.sec2 .wrap .bt_sec{ margin-top:10px; }
    .bg_half.sec3 .right > img{ margin-bottom:16%; }
    .note_wrap .note{ display:block; }
    .top_wrap .bt_to_calendar{ padding:6% 0; }
    footer .wrap{ -ms-flex-pack:distribute;padding-top:8%; }
    footer .nav_wrap a{ margin-bottom:12%; }
    footer .nav_wrap .th{ margin-bottom:9%; }
    footer .bottom_row{ -webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;padding-bottom:9%;padding-top:5%;margin-top:6%; }
    footer .bottom_row .nav_wrap{ width:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center; }
    footer .bottom_row .nav_wrap a{ margin-bottom:5%; }
    footer .bottom_row > a{ max-width:300px;display:block;margin:0 auto;width:80%; }

    .head_row td.publish br{ display:block; }
    .reserve_system .bt_wrap{ -ms-flex-wrap:wrap;flex-wrap:wrap; }
    .reserve_system.top .row h3{ width:100%;display:block;margin-bottom:1%; }
    .reserve_system.top .row a{ margin-left:5px;margin-right:5px; }
    .reserve_system.list .wrap{ width:98%; }
    .reserve_system.list .publish{ width:55px; }
    .reserve_system.list .title{ min-width:100px; }
    #room, #lunch{ margin:10px 0;margin-right:3px; }
}

@media screen and (max-width:575px){
    .top_wrap img.pc{ display:none; }
    .top_wrap img.sp{ display:block;object-position:center 11%; }
    .hamburger{ width:100%; }
    footer .wrap{ width:95%;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between; }
    footer .wrap > .nav_wrap{ width:calc((100% - 15%)/2); }
    footer .wrap > .nav_wrap:nth-of-type(2n){ margin-right:0; }
    footer .wrap > .nav_wrap.nav_contact{ margin-right:auto; }
    input[type="submit"]{ margin:13% auto; }
    .reserve_system.list .edit{ padding:18px 0; }
    .reserve_system.list td.plan, .reserve_system.list td.note{ display:none; }
    .admin_nav .flex{  -webkit-box-orient: vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;}
    .admin_nav .item{ margin-bottom: 20px; }
    .admin_nav a{ margin-top:10px;margin-bottom:0;line-height:124%;display:block; }
    .reserve_system.list td{ padding:2px 3px; }
    .reserve_system.list .head_row td{ white-space:inherit; }
    .reserve_system.list .edit{ width:auto; }
    .reserve_system.list .publish{  width:30px; }
    .reserve_system.admin_reserve.list .num,.reserve_system.admin_reserve.list .lunch_num{ width:30px; }
    .bg_popup .pop_wrap{ width:100%;height:100vh;transform:none;left:0;top:0; }
    .reserve_system.edit th{ width:80px; }
    .date_detail{ font-size:200%;padding-top:25px; }
    .title_date{ font-size:110%;margin-bottom:15px;display:block;text-align:left; }
    .date_detail .list{ display:-webkit-box;display:-ms-flexbox;display:flex;text-align:left;margin-bottom:7px;border-top:1px solid #acacac;border-bottom:1px solid #acacac;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0; }
    .date_detail .list .bt_to_form{ margin:10px 0;margin-right:3%;padding:7px 0;width:95px;text-align:center;border:1px solid #acacac;border-radius:4px;background-color:#469a65;color:#fff; }
    .order_title{ margin-bottom:20px;display:block;font-size:150%;text-align:center; }
    .date_detail span{ font-size:100%; }
    .date_detail .left{ font-size:120%;width:29%;min-width:120px;text-align:center;padding:10px 0;border-right:1px solid #acacac;-ms-flex-item-align:stretch;align-self:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0; }
    .date_detail .vacancy{ font-size:140%;font-weight:bold;margin-left:auto;margin-right:auto; }
    .date_detail .event_note{ display:block;padding:13px;border:2px solid #acacac;border-radius:6px;margin-bottom:20px; }
    .date_detail .time.am .left{ background-color:#f99; }
    .date_detail .time.pm .left{ background-color:#99f; }
    .date_detail .lunch .left{ background-color:#ff9; }
    .event_note .title{ text-align:left;width:100%;font-size:120%;margin-bottom:10px;display:inline-block;border-bottom:1px #bbb dashed;padding-bottom:8px; }
}
@media screen and (max-width:575px){
    #calendar td .info{ display:flex;flex-wrap:wrap;justify-content:space-between; }
    /* #calendar td .info .lunch_wrap, #calendar td .info .am_wrap, #calendar td .info .pm_wrap, #calendar td .info .ampm_wrap, #calendar td .info .tel_wrap{ margin:1px;position:relative;top:auto;left:auto;width:calc(50% - 2px);height:calc(50% - 2px);border:1px #aa7 solid;border-radius:500px;background:#ff9; } */
    /* #calendar td .info .lunch_wrap *{ display:none; } */
    /* #calendar td .info .am_wrap{ background:#f99; } */
    /* #calendar td .info .am_wrap *{ display:none; } */
    /* #calendar td .info .pm_wrap{ background:#99f; } */
    /* #calendar td .info .pm_wrap *{ display:none; } */
    /* #calendar td .info .ampm_wrap{ background:#bb7; } */
    /* #calendar td .info .ampm_wrap *{ display:none; } */
    /* #calendar td .info .tel_wrap{ background:#9f9; } */
    /* #calendar td .info .tel_wrap *{ display:none; } */
    /* #calendar td .info .state_ng{ background-image:url(/img/icon_ng.png);background-position:50% 50%;background-repeat:no-repeat;background-size:cover; } */
    .calendar_mask{ font-size:140%; }
    .reserve_system.edit th{ font-size:8.5pt; }
    .reserve_system.edit .wrap{ width:100%;margin:0; }
    .reserve_system.edit input[Type="text"]{ font-size:16px; }
    #age_wrap .title{ margin-top:9%; }
    .hamburger{ width:100%;box-sizing:border-box;min-width:0; }
}

/* 20230215追加 */
.room_note .ampm_text{ display:block;color:#ff4747;position:relative;padding-left:1em; }
.room_note .ampm_text:before{ content: '※';position: absolute;left: 0;top: 0; }
.reserve_system table.inner_table{ width: 360px; }
.reserve_system table.inner_table th{ width:80px; }
.side_header{ height:0; }

@media screen and (max-width:575px){
    .date_detail .vacancy{ text-align: center;-ms-flex-negative:1;flex-shrink:1;padding:12px 6px;font-size: 180%; }
    .date_detail .vacancy b{ font-weight:normal;font-size: 13px;display:block;text-align: left;white-space:break-spaces; }
    .reserve_system table.inner_table .br_sp{ display:block; }
    .date_detail .time .left{ -ms-flex-negative:0;flex-shrink:0; }
    .date_detail .list .bt_to_form{ -ms-flex-negative:0;flex-shrink:0; }
}

/* 20240326追記 */
.side_header{ height:auto; }
#calendar{ margin-bottom:20px; }
#calendar td .info{ padding-top:0; }
.all_wrap, .am_wrap, .pm_wrap, .ampm_wrap{ cursor:pointer; }
.cant_reserve{ opacity:0.5;cursor:default; }
/* #calendar .cant_reserve .time_tag.pm, #calendar .cant_reserve .time_tag.am{ background-color:#bfbfbf; } */
#calendar .cant_reserve .time_tag.pm, #calendar .cant_reserve .time_tag.am{ background-color:#f0f0f0; }
#calendar .cant_reserve .time_tag.pm{ color:#99f;border:1px solid #99f; }
#calendar .cant_reserve .time_tag.am{ color:#f99;border:1px solid #f99; }
.all_wrap{ position:absolute;left:50%;bottom:0;transform:translateX(-50%); }
.am_wrap{ position:absolute;left:0;bottom:0;margin-left:2px; }
.pm_wrap{ position:absolute;right:0;bottom:0;margin-right:2px; }
.ampm_wrap{ position:absolute;right:0;top:0;margin-top:4px; }
#calendar .ampm_wrap .time_tag.ampm{ font-size:20px; }
.lunch_wrap{ margin-left:2px;margin-top:2px; }
#calendar .day{ background: repeating-linear-gradient(-45deg, rgba(204, 204, 204, 1), rgba(204, 204, 204, 1) 2px, rgba(255, 255, 255, 1) 0, rgba(255, 255, 255, 1) 12px);background-color:#fff; }
#calendar .time_tag{ font-size:12px; }
#calendar td .info .lunch_wrap{ position:absolute;top:0;left:0;width:22px; }
#calendar td .icon_lunch{ width:22px;cursor:pointer; }
#calendar td .state{ display:none; }
.cant_reserve, #calendar td .cant_reserve .icon_lunch{ cursor:default; }
#calendar .top_row{ z-index:10; }
.icon_desc_wrap{ display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap; }
.icon_desc_wrap .note{ font-size:95%; }
.icon_desc_wrap .list{ display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-right:20px;margin-bottom:14px; }
.date_sample, .am_sample, .pm_sample, .all_sample{ color:#fff; }
.date_sample{ display:inline-block;width:16px;aspect-ratio:1;background-color:#ff3d3d;border-radius:999px;text-align:center;line-height:20px; }
.am_sample, .pm_sample, .all_sample{ border-radius:2px;padding:1px 2px;font-size:75%;line-height:120%; }
.all_sample{ background-color:rgb(119, 187, 129); }
.am_sample{ background-color:#f99; }
.pm_sample{ background-color:#99f; }
.lunch_sample img{ display:block;width:18px; }
.close_sample{ background:repeating-linear-gradient(-45deg, rgba(204, 204, 204, 1), rgba(204, 204, 204, 1) 2px, rgba(255, 255, 255, 1) 0, rgba(255, 255, 255, 1) 5px);width:18px;aspect-ratio:1;border:1px solid rgba(204, 204, 204, 1); }
.reserve_system .time.close td, .num.close td, .unit_num.close td{ position:relative; }
/* .reserve_system .time.close td:after, .num.close td:after, .unit_num.close td:after{ position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.5);content:'';pointer-events:unset; } */
.reserve_system .time.close, .num.close, .unit_num.close, .note_op.close{ display:none; }
.event_note .note{ white-space:break-spaces; }
.reserve_system.edit th{ width:18vw; }
.room_note .ampm_text{ white-space:break-spaces; }

@media screen and (max-width:575px){
    #calendar .time_tag, #calendar .icon_lunch{ pointer-events:none; }
    #calendar .time_tag{ padding:0 2px;font-size:11px; }
    #calendar .top_row.need_reserve span{ width:min(27px, 7vw); }
    #calendar .ampm_wrap .time_tag.ampm{ font-size:15px; }
    #calendar td .icon_lunch{ width:19px; }
    .close_js{ position:fixed;right:20px;top:10px;width:30px;height:30px;z-index:1;cursor:pointer; }
    .reserve_system.edit input[type='text'], .reserve_system.edit input[type='email'], .reserve_system.edit textarea{ font-size:16px; }
    #reserve_form .intro_caution{ text-align:left; }
    #reserve_form .intro_caution .inner{ padding-left:15px;text-align:left; }
    #reserve_form .intro_caution span{ display:inline-block; }
}

/* 20241113追記 */
.room_note a, .date_detail .vacancy b a, #popup_event .note a, .event_note .note a{ text-decoration:underline;color:#505bff; }
.room_note .ampm_text{ margin-bottom:18px; }
.date_detail .vacancy b{ margin-top:8px; }