@charset "UTF-8";
/* ---------------------------------------------------------
メディアクエリ用
--------------------------------------------------------- */
body {
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-family: heisei-kaku-gothic-std, sans-serif;
  font-weight: 300; }

/* ---------------------------------------------------------
　flex
--------------------------------------------------------- */
.flexNoWrap {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between; }

.flexWrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between; }

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

.flexEmpty {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  height: 0 !important; }

.font20 {
  font-size: 2rem !important; }

.font15 {
  font-size: 1.5rem !important; }

.font13 {
  font-size: 1.3rem !important; }

.font12, #contents .containerArea h2 {
  font-size: 1.2rem !important; }

.font10 {
  font-size: 1rem !important; }

.fontS {
  font-size: 0.9rem !important; }

.fontXS {
  font-size: 0.75rem !important; }

.w80Div {
  width: 80%;
  max-width: 540px;
  margin-left: auto;
  margin-right: auto; }
  .w80Div img {
    width: 100%; }

.w100Div {
  width: 100%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto; }
  .w100Div img {
    width: 100%; }

.logoDiv {
  width: 100%;
  max-width: 600px;
  margin: 0 auto 1rem auto; }

#contents {
  width: 98%;
  max-width: 600px;
  background: #FAFAFA; }
  #contents .tab-lunchDinner {
    font-weight: 700;
    font-size: 0.9rem; }
    #contents .tab-lunchDinner a {
      display: block;
      width: 100%;
      height: 100%; }
    #contents .tab-lunchDinner a:link {
      color: inherit;
      text-decoration: none;
      font-weight: inherit; }
    #contents .tab-lunchDinner a:visited {
      color: inherit;
      text-decoration: none;
      font-weight: inherit; }
    #contents .tab-lunchDinner a:hover {
      color: inherit;
      text-decoration: none;
      font-weight: inherit;
      opacity: 0.5; }
    #contents .tab-lunchDinner a:active {
      color: inherit;
      text-decoration: none;
      font-weight: inherit; }
  #contents .couponArea {
    width: 100%;
    max-width: 540px; }
    #contents .couponArea img {
      width: 100%; }
  #contents .containerArea h2 {
    font-weight: 700; }
  #contents .containerArea h3 {
    font-weight: 500;
    text-align: center;
    background: #EEE;
    padding: .2rem; }
  #contents .newsDivW > a {
    display: block;
    background: #def;
    padding: 1rem; }
    #contents .newsDivW > a > div {
      display: flex;
      flex-flow: row nowrap;
      justify-content: space-between; }
      @media screen and (max-width: 575px) {
        #contents .newsDivW > a > div {
          flex-flow: row wrap; } }
      #contents .newsDivW > a > div > div:nth-of-type(2) {
        flex: 1 1 auto; }
        @media screen and (max-width: 575px) {
          #contents .newsDivW > a > div > div:nth-of-type(2) {
            flex: 0 0 100%; } }
      #contents .newsDivW > a > div > div:nth-of-type(1) {
        flex: 0 0 30%; }
        @media screen and (max-width: 575px) {
          #contents .newsDivW > a > div > div:nth-of-type(1) {
            flex: 0 0 100%; } }
  #contents .newsDivW div.div01 {
    background: #def;
    padding: 1rem; }
  #contents .eventDivW > a {
    display: block;
    background: #def;
    padding: 1rem; }
    #contents .eventDivW > a > div {
      display: flex;
      flex-flow: row nowrap;
      justify-content: space-between; }
      @media screen and (max-width: 575px) {
        #contents .eventDivW > a > div {
          flex-flow: row wrap; } }
      #contents .eventDivW > a > div .div02 {
        flex: 1 1 auto; }
        @media screen and (max-width: 575px) {
          #contents .eventDivW > a > div .div02 {
            flex: 0 0 100%; } }
      #contents .eventDivW > a > div .div01 {
        flex: 0 0 30%; }
        @media screen and (max-width: 575px) {
          #contents .eventDivW > a > div .div01 {
            flex: 0 0 100%; } }
  #contents .eventDivW div.div01 {
    background: #def;
    padding: 1rem; }

.toEnqueteDiv {
  width: 100%;
  max-width: 600px; }

.tab-wrap {
  display: flex;
  flex-wrap: wrap; }

.tab-label {
  color: White;
  background: LightGray;
  padding: .5rem;
  order: -1;
  flex: 0 0 50%;
  text-align: center; }

.tab-content {
  width: 100%;
  display: none;
  background: #FFF;
  border-left: DeepSkyBlue 4px solid;
  border-right: DeepSkyBlue 4px solid;
  border-bottom: DeepSkyBlue 4px solid;
  padding: 1rem; }

.tab-switch:checked + .tab-label {
  background: DeepSkyBlue; }

.tab-switch:checked + .tab-label + .tab-content {
  display: block; }

.tab-switch {
  display: none; }

.tab01 {
  width: 100%; }

/*タブのスタイル*/
.tab_menu {
  width: calc(100%/3);
  line-height: 1.2em;
  font-size: 1rem;
  height: 4rem;
  text-align: center;
  color: #000;
  border-bottom: 3px solid #1f71b5;
  background-color: #d9d9d9;
  display: flex;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease; }

.tab_menu:hover {
  opacity: 0.75; }

/*ラジオボタンを全て消す*/
input[name="tab_menu"] {
  display: none; }

/*タブ切り替えの中身のスタイル*/
.tab_contents {
  display: none;
  padding: 1rem .5rem;
  clear: both;
  overflow: hidden;
  transition: .5s opacity;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

/*選択されているタブを表示*/
#menu01:checked ~ #menu01,
#menu02:checked ~ #menu02,
#menu03:checked ~ #menu03 {
  display: block; }

/*選択されているタブのスタイル*/
.tab01 input:checked + .tab_menu {
  background-color: #1f71b5;
  color: #fff; }
