@charset "UTF-8";
/*
Theme Name:おむすび博2024
Author: OK COMPUTER
Description: This is my original theme.
Version: 1.0
*/
@import url(http://fonts.googleapis.com/css?family=Hammersmith+One);
/*NOTO SANS*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: middle; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1.5em; }

ol, ul {
  list-style: none;
  list-style-position: inside; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

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

/* 書式*/
.mincho {
  font-family: 'Alex Brush','Hiragino Mincho Pro','ＭＳ Ｐ明朝',cursive; }

.bold {
  font-weight: bold; }

.small {
  font-size: 0.95em; }

.small2 {
  font-size: 0.8em; }

.tax {
  font-size: 0.75em; }

.medium {
  font-size: 1.3em;
  line-height: 1.5em; }

.large {
  font-size: 1.5em;
  line-height: 1.6em; }

.large2 {
  font-size: 1.8em;
  line-height: 1.6em; }

.large3 {
  font-size: 2.0em;
  line-height: 1.6em; }

.large4 {
  font-size: 3.0em;
  line-height: 1.6em; }

.red {
  color: #FF5454; }

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

.a_left {
  text-align: left !important; }

.a_right {
  text-align: right !important; }

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

.honbun {
  padding: 15px; }

.mb_5 {
  margin-bottom: 5px; }

.mb_10 {
  margin-bottom: 10px; }

.mb_20 {
  margin-bottom: 20px; }

.mb_30 {
  margin-bottom: 30px; }

.mb_40 {
  margin-bottom: 40px; }

.mb_50 {
  margin-bottom: 50px; }

.mb_60 {
  margin-bottom: 60px; }

.mb_70 {
  margin-bottom: 70px; }

.mb_80 {
  margin-bottom: 80px; }

.ml_10 {
  margin-left: 10px; }

.f_left {
  float: left; }

.f_right {
  float: right; }

.clear {
  clear: both; }

.c_black {
  color: #000; }

.c_azuki {
  color: #A43841; }

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

.relative {
  position: relative; }

.kuuseki {
  color: #2A6FAB !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

.wazuka {
  color: #2B7233 !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

.manseki {
  color: red !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

.cancel {
  color: #D18C3D !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

.cyusen {
  color: #C7004B !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

.end {
  color: #6BA772 !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

.no_need {
  color: #000 !important;
  background-color: #fff;
  display: inline-block;
  padding: 0 5px;
  border-radius: 10px; }

p {
  line-height: 1.5em; }

.underline {
  width: 100%;
  height: 50px !important;
  border-bottom: 1px solid #999;
  margin-bottom: 50px !important; }

.les_none {
  display: block; }

.les_center {
  text-align: left; }

.waku {
  padding: 5px;
  background-color: #FFF;
  border: 1px solid #F7E19E;
  border-radius: 3px; }

/*jQuery.appear.js*/
.item_top {
  top: -30px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_bottom {
  bottom: -30px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_left {
  left: -40px;
  padding-right: 0px;
  opacity: 0;
  position: relative; }

.item_right {
  right: -40px;
  padding-left: 0px;
  opacity: 0;
  position: relative; }

.item_fade_in {
  opacity: 0;
  position: relative;
  padding-left: 0px;
  right: 0px; }

.list_number li {
  list-style-type: decimal;
  padding-left: 2em;
  text-indent: -1.5em;
  margin-bottom: 5px; }

.list_disc li {
  list-style-type: disc !important;
  padding-left: 2em;
  text-indent: -1.5em;
  margin-bottom: 5px; }

.ul_azuki {
  border-bottom: 1px solid #A43841; }

.recently li {
  border-bottom: 1px dotted #ddd;
  padding: 3px 5px; }

dl.annai dt {
  float: left;
  margin-right: 10px; }

dl.n_s_title dt {
  width: 20px;
  float: left;
  margin-right: 5px; }

dl.n_s_title dd {
  margin-left: 22px;
  vertical-align: middle !important;
  letter-spacing: -0.02em; }

/*リンク設定*/
a:link,
a:visited {
  text-decoration: none;
  color: #A43841; }

a:hover {
  color: #999; }

a img {
  border: none; }

a:hover img {
  opacity: 0.80;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
  -moz-opacity: 0.80; }

body {
  background: #F7F5F1;
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  /*font-family: 'ヒラギノ角ゴシック', 'Hiragino Sans', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
  font-size: 14px;
  color: #333333;
  letter-spacing: 0.1em;
  width: 100%; }

/*骨組み*/
#wrap {
  margin: 0px auto; }

/* header */
#top_catch_bg {
  width: 100%;
  background-color: #40A78F; }

#top_catch {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 10px; }

#top_catch h1 {
  color: #A43841;
  line-height: 1.5em;
  font-size: 1.4em; }

#header_top {
  width: 100%;
  height: auto;
  max-width: 1200px;
  margin: 0 auto;
  padding: 25px 0 25px 0;
  line-height: 1em; }

#header_title {
  width: 100%;
  max-width: 300px;
  height: auto;
  float: left; }

#header_ask {
  width: 100%;
  max-width: 156px;
  height: auto;
  float: right; }

#header_title img {
  width: 100%; }

/*header_navi*/
#header_navi_bg {
  width: 100%;
  background-color: #FFF;
  margin-bottom: 15px; }

#header_navi {
  width: 100%;
  max-width: 500px;
  margin: 0 auto 15px; }

#header_navi_sub {
  width: 100%;
  margin: 0 auto; }

#header_navi ul {
  text-align: center;
  list-style-type: none; }

#header_navi ul li {
  width: 33%;
  text-align: center;
  float: left;
  border-left: none; }

#header_navi ul li:last-child {
  border-right: none; }

#header_navi ul li a:link {
  width: 100%; }

#header_navi ul li:hover {
  text-decoration: none;
  list-style-image: url("images/azuki_icon_01.png") !important;
  list-style-position: inside; }

#header_navi li img {
  margin: 10px 0; }

.n_maintitle {
  font-size: 1.25em;
  color: #333; }

.n_subtitle {
  font-size: 0.8em;
  color: #70BDBA; }

.s_maintitle {
  font-size: 2.2em;
  color: #333;
  font-weight: bold; }

.s_subtitle {
  font-size: 1em;
  color: #70BDBA; }

/*コンテンツ*/
#main_image {
  width: 100%;
  max-width: 1920px;
  height: auto;
  margin: 0 auto; }

.image_contents {
  width: 100%;
  max-width: 1200px;
  height: auto;
  margin: 0 auto;
  line-height: 0; }

#container {
  padding-top: 35px;
  padding-left: 10px;
  padding-right: 10px;
  width: 100%;
  max-width: 1260px;
  height: auto;
  margin: 0 auto; }

h2.t_oshirase {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_oshirase.png");
  background-repeat: no-repeat; }

h2.t_syousai {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_syousai.png");
  background-repeat: no-repeat; }

h2.t_contact {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_contact.png");
  background-repeat: no-repeat; }

h2.t_annainin {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_annainin.png");
  background-repeat: no-repeat; }

h2.t_program {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_program.png");
  background-repeat: no-repeat; }

h2.t_omusubihaku {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_omusubihaku.png");
  background-repeat: no-repeat; }

h2.t_entry {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_entry.png");
  background-repeat: no-repeat; }

h2.t_haishin {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_haishin.png");
  background-repeat: no-repeat; }

h2.t_partner {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_partner.png");
  background-repeat: no-repeat; }

h2.t_workshop {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_workshop.png");
  background-repeat: no-repeat; }

h2.t_gourmet {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_gourmet.png");
  background-repeat: no-repeat; }

h2.t_soudankai {
  display: block;
  width: 100%;
  height: 50px;
  overflow: hidden;
  background-position: left;
  background-image: url("images/title/t_soudankai.png");
  background-repeat: no-repeat; }

#topics {
  width: 100%;
  height: 220px;
  padding: 10px 20px;
  background-color: #fff;
  border: 1px solid #A43841;
  border-radius: 10px;
  overflow-y: scroll; }
  @media screen and (max-width: 767px) {
    #topics {
      height: 310px; } }

dl.topics {
  padding: 10px;
  border-bottom: 1px dotted #A43841; }

dl.topics dt {
  font-weight: bold;
  color: #555;
  margin-bottom: 5px; }

dl.topics dd {
  margin-bottom: 20px;
  margin-left: 10px; }

dl.topics:last-child {
  border-bottom: none; }

#koushin {
  width: 100%;
  height: auto;
  padding: 10px;
  background-color: #fff;
  border: 1px solid #DDCACA;
  border-radius: 10px; }

.white_box {
  width: 100%;
  max-width: 333px;
  margin: 35px auto;
  padding: 30px 25px 30px 25px;
  background-color: #FFF;
  border-radius: 12px; }

.white_box h3 {
  color: #0C6D56;
  text-align: center;
  font-size: 1.72em;
  font-weight: bold;
  line-height: 1.5em; }

.white_box a:hover {
  opacity: 0.8; }

.white_box h3 a {
  color: #0C6D56;
  opacity: 1 !important; }

h3.entry {
  font-size: 1.6em;
  font-weight: bold;
  background-color: #fff;
  padding: 10px;
  border-left: 10px solid #C30000;
  margin-bottom: 15px; }

/*50_50*/
.column_2_50_50 {
  width: 100%; }

.column_2_50_50 .left50 {
  width: 50%;
  float: left;
  padding: 5px; }

.column_2_50_50 .right50 {
  width: 50%;
  float: right;
  padding: 5px; }

/*column_3*/
.column_3 > div {
  width: 33.33333%;
  /* 未対応ブラウザ用フォールバック */
  width: -webkit-calc(100% / 3);
  width: calc(100% / 3);
  float: left;
  padding: 20px;
  height: auto;
  min-height: 450px; }

/*column_5*/
.column_5 > div {
  width: 20%;
  /* 未対応ブラウザ用フォールバック */
  width: -webkit-calc(100% / 5);
  width: calc(100% / 5);
  float: left;
  padding: 10px; }

/*30_70*/
.column_2_30_70 {
  width: 100%; }

.column_2_30_70 .left {
  width: 30%;
  float: left;
  padding: 5px; }

.column_2_30_70 .right {
  width: 70%;
  float: right;
  text-align: left;
  padding: 5px; }

/*24_76*/
#sub_area {
  width: 23%;
  float: left;
  padding: 12px; }

#main_area {
  width: 75%;
  float: right;
  text-align: left;
  padding: 12px; }

/*70_30*/
.column_2_70_30 {
  width: 100%; }

.column_2_70_30 .left {
  width: 70%;
  float: left;
  padding: 5px; }

.column_2_70_30 .right {
  width: 30%;
  float: right;
  text-align: left;
  padding: 5px; }

/*60_40*/
.column_2_60_40 {
  width: 100%; }

.column_2_60_40 .left {
  width: 60%;
  float: left;
  padding: 5px; }

.column_2_60_40 .right {
  width: 40%;
  float: right;
  text-align: left;
  padding: 5px; }

/*40_60*/
.column_2_40_60 {
  width: 100%; }

.column_2_40_60 .left {
  width: 40%;
  float: left;
  padding: 5px; }

.column_2_40_60 .right {
  width: 60%;
  float: right;
  text-align: left;
  padding: 5px; }

/* footer */
footer {
  width: 100%; }

footer ul {
  padding-left: 0.5em; }

footer a {
  position: relative;
  display: inline-block;
  transition: .3s;
  color: #fff !important; }

footer a::after {
  position: absolute;
  bottom: .3em;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background-color: #fff;
  opacity: 0;
  transition: .3s; }

footer a:hover::after {
  bottom: 0;
  opacity: 1; }

address {
  width: 100%;
  background: #A47864;
  padding: 12px 0;
  color: #fff;
  text-align: center;
  font-style: normal;
  font-size: 1em; }

address br {
  display: none; }

/*ページトップ*/
#pageTop {
  background: url(images/pagetop.png) no-repeat;
  width: 40px;
  height: 40px;
  position: fixed;
  bottom: 10%;
  right: 2%;
  z-index: 10000;
  text-indent: -9999em;
  cursor: pointer; }

#pageTop:hover {
  background: url(images/pagetop_hover.png) no-repeat; }

.wpcf7 textarea, .wpcf7 input[type="text"],
.wpcf7 input[type="email"], .wpcf7 input[type="tel"] {
  width: 100%;
  margin: 0 auto 1em;
  padding: 10px;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 3px; }

.wpcf7 textarea:focus, .wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus, .wpcf7 input[type="tel"]:focus {
  outline: 0;
  border: 1px solid #A43841;
  background-color: #fff; }

.wpcf7 input[type="zip"] {
  width: 180px; }

.wpcf7 input[type="submit"] {
  width: 150px;
  padding: 10px;
  border: none;
  color: #fff;
  background-color: #777;
  -webkit-appearance: none;
  cursor: pointer;
  margin-top: 1em;
  margin-bottom: 1em;
  border-radius: 5px; }

.wpcf7 input[type="submit"]:hover {
  background-color: #A43841; }

.wpcf7-list-item-label {
  margin-right: 15px; }

span.wpcf7-list-item {
  display: block; }

dl.syousai {
  width: 100%;
  padding: 5px;
  margin-bottom: 8px; }

dl.syousai dt {
  display: block;
  clear: left;
  float: left;
  background-color: #2A6FAB;
  color: #FFF;
  width: 100px;
  padding: 5px;
  text-align: center;
  border-radius: 5px;
  margin-right: 10px; }

dl.syousai dd {
  display: block;
  margin-left: 110px;
  padding: 3px; }

table.recruit {
  width: 100%;
  margin: 0 auto;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  background-color: #ffffff;
  empty-cells: show;
  font-size: 1em; }

.recruit th {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  color: #000;
  background-color: #EDF5DD;
  /*    background-image:url(../img/table-back.gif);*/
  background-position: left top;
  padding: 0.3em 1em;
  white-space: nowrap;
  text-align: center; }

.recruit td {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 0.5em 1em; }

.recruit td.left {
  text-align: left; }

/* slick */
.slider {
  display: block;
  width: 33%;
  max-width: 500px;
  height: auto;
  margin: 0 auto;
  background-position: center center;
  border: none; }

.slider a {
  border: none; }

.slider img {
  display: block;
  width: auto !important;
  max-width: 100%;
  max-height: 220px;
  margin: auto; }

.hoge {
  width: 95%;
  min-width: 320px;
  margin: 20px auto 30px; }

.hoge img {
  width: auto !important;
  max-width: 100%;
  height: 120px;
  margin: 5px auto; }

/*.archive_img{
	max-height: 180px;
	position:relative;
	overflow: hidden;	
}
*/
figure {
  width: 100%;
  display: block;
  position: relative;
  height: 150px;
  overflow: hidden; }

figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.res_block {
  display: none; }

.res_none {
  display: block; }

.res_center {
  text-align: left; }

@media screen and (max-width: 767px) {
  .res_block {
    display: block; }

  .res_none {
    display: none; } }
li.s_title {
  text-indent: -1em; }

.icon_area_bg {
  width: 100%;
  background-color: #A43841;
  position: fixed;
  bottom: -50px; }

.icon_area {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  padding-top: 5px;
  padding-bottom: 5px; }

.icon_area img {
  max-width: 40px;
  height: auto; }

ul.icon {
  width: 100%; }

ul.icon li {
  float: left;
  width: 20%;
  text-align: center; }

ul.cyuuizikou li {
  list-style-type: disc !important;
  padding-left: 1em;
  text-indent: -1em; }

ul.list2 li {
  padding-left: 1em;
  text-indent: -1em; }

@media screen and (max-width: 767px) {
  address br {
    display: block; }

  /*50_50*/
  .column_2_50_50 .left50 {
    width: 100%;
    float: none; }

  .column_2_50_50 .right50 {
    width: 100%;
    float: none; }

  /*30_70*/
  .column_2_30_70 .left50 {
    width: 100%;
    float: none; }

  .column_2_30_70 .right50 {
    width: 100%;
    float: none; }

  #main_area {
    width: 100%;
    float: none; }

  #sub_area {
    width: 100%;
    float: none; }

  /*70_30*/
  .column_2_70_30 .left {
    width: 100%;
    float: none; }

  .column_2_70_30 .right {
    width: 100%;
    float: none; }

  /*60_40*/
  .column_2_60_40 .left {
    width: 100%;
    float: none; }

  .column_2_60_40 .right {
    width: 100%;
    float: none; }

  /*40_60*/
  .column_2_40_60 .left {
    width: 100%;
    float: none; }

  .column_2_40_60 .right {
    width: 100%;
    float: none; }

  /*column_3*/
  .column_3 > div {
    width: 100%;
    float: none;
    min-height: 100px; }

  /*column_5*/
  .column_5 > div {
    width: 100%;
    float: none; }

  .les_center {
    text-align: center !important; }

  dl.syousai dt {
    float: none; }

  dl.syousai dd {
    display: block;
    margin-left: 10px;
    padding: 3px; } }
.flex_3_1 {
  margin: 0 auto;
  padding: 10px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: flex-start; }
  .flex_3_1 > div {
    margin: 0;
    padding: 10px;
    width: 33%; }
    @media (max-width: 767px) {
      .flex_3_1 > div {
        margin: 0;
        width: 100%; } }

.flex_2_1 {
  margin: 0 auto;
  padding: 10px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center; }
  .flex_2_1 > div {
    margin: 0;
    margin-bottom: 30px;
    padding: 10px;
    width: 50%; }
    @media (max-width: 767px) {
      .flex_2_1 > div {
        margin: 0;
        margin-bottom: 30px;
        width: 100%; } }

a.btn_more {
  display: inline-block;
  font-size: 0.8em;
  padding: 2px 10px;
  color: #3685FF;
  border: 2px solid #3685FF;
  position: relative;
  text-align: center;
  border-radius: 5px; }
  a.btn_more:hover {
    transition: .3s;
    background-color: #3685FF;
    color: #FFF;
    font-weight: bold; }

a.btn_entry {
  display: inline-block;
  font-size: 1.2em;
  padding: 10px;
  color: #FF8735;
  border: 2px solid #FF8735;
  position: relative;
  background-color: #fff;
  margin-bottom: 20px;
  text-align: center;
  border-radius: 5px;
  font-weight: bold; }
  a.btn_entry:hover {
    transition: .3s;
    background-color: #FF8735;
    color: #FFF;
    font-weight: bold; }

.btn_entry0 {
  display: inline-block;
  font-size: 1.2em;
  padding: 10px;
  color: #FF8735;
  border: 2px solid #FF8735;
  position: relative;
  background-color: #fff;
  margin-bottom: 40px;
  text-align: center;
  border-radius: 5px;
  font-weight: bold; }

a.btn_corona {
  display: inline-block;
  font-size: 1.1em;
  padding: 5px 15px;
  color: #FF0E0E;
  border: 4px solid #FF0E0E;
  position: relative;
  text-align: center;
  border-radius: 5px;
  margin: 10px auto;
  font-weight: bold; }
  a.btn_corona:hover {
    transition: .3s;
    background-color: #FF0E0E;
    color: #FFF;
    font-weight: bold; }

a.btn_partner {
  display: inline-block;
  font-size: 2em;
  line-height: 1.5em;
  padding: 5px 15px;
  color: #518E53;
  border: 4px solid #518E53;
  position: relative;
  text-align: center;
  border-radius: 5px;
  margin: 10px auto 50px;
  font-weight: bold; }
  a.btn_partner span {
    font-size: 0.7em; }
  a.btn_partner:hover {
    transition: .3s;
    background-color: #518E53;
    color: #FFF;
    font-weight: bold; }

.haishin {
  display: inline-block;
  padding: 3px 15px;
  color: #3685FF;
  font-size: 0.8em;
  font-weight: bold;
  background-color: #fff;
  border: 2px solid #3685FF;
  position: relative;
  margin: 10px;
  margin-right: 10px;
  text-align: right;
  border-radius: 20px; }

.koukai {
  display: inline-block;
  padding: 3px 15px;
  color: #DF2174;
  font-size: 0.8em;
  font-weight: bold;
  background-color: #fff;
  border: 2px solid #DF2174;
  position: relative;
  margin: 10px;
  margin-right: 10px;
  text-align: right;
  border-radius: 20px; }

.mask_black {
  position: relative; }
  .mask_black:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1; }

.cs {
  content: '';
  position: absolute;
  color: #fff;
  font-weight: bold;
  top: 30%;
  left: 50%;
  font-size: 1.5em;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 2; }
  @media screen and (max-width: 767px) {
    .cs {
      font-size: 1.2em; } }

ul.list li {
  font-weight: bold; }

.movie {
  position: relative;
  width: 100%;
  padding: 5px;
  background-color: #FFF;
  border: 1px solid #F7E19E;
  border-radius: 3px;
  padding-top: 56.25%;
  margin-bottom: 10px;
  z-index: 0; }

.movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important; }

ul.partner {
  font-size: 1.2em;
  margin-bottom: 30px; }
  ul.partner li {
    margin-bottom: 10px; }

.res_block_1000 {
  display: none; }
  @media screen and (max-width: 1000px) {
    .res_block_1000 {
      display: block; } }

ul.past li {
  text-align: center;
  margin-bottom: 0.5em; }

/* ===== Tabs Component ===== */
:root {
  --tab-bg: #fff;
  --tab-border: #e5e7eb;
  /* gray-200 */
  --tab-active: #2563eb;
  /* blue-600 */
  --tab-text: #374151;
  /* gray-700 */
  --tab-text-muted: #6b7280;
  /* gray-500 */
  --radius: 12px; }

.tabs {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  color: var(--tab-text); }

.tabs__radio {
  position: absolute;
  opacity: 0;
  pointer-events: none; }

/* タブ見出し */
.tabs__list {
  display: grid;
  grid-auto-flow: column;
  gap: 6px;
  overflow-x: auto;
  padding: 6px;
  scrollbar-width: thin; }

.tabs__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  padding: 10px 14px;
  border: 1px solid var(--tab-border);
  border-radius: var(--radius);
  background: #f9fafb;
  color: var(--tab-text-muted);
  cursor: pointer;
  user-select: none;
  transition: color .2s ease, background .2s ease, box-shadow .2s ease, border-color .2s ease;
  outline: none; }
  @media screen and (max-width: 1000px) {
    .tabs__label {
      font-size: 0.85rem;
      padding: 5px 7px;
      border-radius: 6px; } }

.tabs__label:focus-visible {
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.35);
  border-bottom: none; }

/* アクティブ状態の装飾（:checked と label の対応） */
#tab-all:checked ~ .tabs__list label[for="tab-all"],
#tab-oct:checked ~ .tabs__list label[for="tab-oct"],
#tab-nov:checked ~ .tabs__list label[for="tab-nov"],
#tab-free:checked ~ .tabs__list label[for="tab-free"] {
  background: var(--tab-active);
  color: var(--tab-bg);
  border-color: var(--tab-active);
  font-weight: bold; }

/* パネル領域 */
/* すべて非表示 → 該当だけ表示 */
.tabs__panel {
  display: none; }

#tab-all:checked ~ .tabs__panels #panel-all,
#tab-oct:checked ~ .tabs__panels #panel-oct,
#tab-nov:checked ~ .tabs__panels #panel-nov,
#tab-free:checked ~ .tabs__panels #panel-free {
  display: block; }

/* 実用的なおまけ: コードブロックの見た目を少し整える（任意） */
.tabs__panel pre,
.tabs__panel code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", "Courier New", monospace;
  background: #0b0f1580;
  color: #e5e7eb;
  border-radius: 8px;
  padding: 12px;
  display: block;
  overflow: auto; }
