@charset "UTF-8";
html {
  scroll-behavior: smooth; }

.deco_back {
  background: url("../images/back.png") repeat center/50px; }

.al_list {
  display: flex;
  flex-wrap: wrap; }
  .al_list > a {
    background-color: #29275e;
    color: white;
    font-weight: bold;
    text-align: center;
    padding: .75em;
    border-radius: .75em; }
    .al_list > a::after {
      content: "▶︎";
      margin-left: .5em; }
    .al_list > a:hover {
      opacity: .75;
      text-decoration: none; }

.lead01 {
  text-align: center;
  font-weight: bold;
  color: #fff100;
  text-shadow: 2px 2px 0 black; }

.lead02 {
  text-align: center;
  font-weight: bold;
  color: white;
  text-shadow: 2px 2px 2px black; }

.lead03 {
  background-color: white;
  border: #f08441 solid 2px;
  outline-style: solid;
  outline-color: white;
  padding: 10px;
  outline-width: 10px;
  width: calc(100% - 20px);
  border-radius: 10px; }
  .lead03 > p {
    margin: 1em 0 0; }
    .lead03 > p > br {
      display: none; }

.flow {
  margin: 1.5em 0 0; }
  .flow > dt {
    color: #f08441;
    background: url("../images/fdeco01.svg") no-repeat center top, url("../images/fdeco02.svg") no-repeat center bottom;
    font-weight: bold;
    text-align: center;
    justify-content: center;
    align-items: center;
    display: flex; }
  .flow > dd {
    color: #29275e;
    font-weight: bold;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center; }
    .flow > dd > strong {
      font-size: 1.25em; }
    .flow > dd > img {
      display: block;
      margin: 1em auto 0; }

.kikan {
  border-top: 2px dashed black; }
  .kikan > dd:nth-child(2) {
    font-weight: bold;
    margin: 0; }
  .kikan > dd > br {
    display: none; }
  .kikan > dd:nth-child(3) {
    margin: 0; }

@media (min-width: 768px) {
  .al_list {
    margin: 15px -15px; }
    .al_list > a {
      width: calc(25% - 30px);
      margin: 15px; }

  .al_div {
    margin-top: -50px;
    padding-top: 50px; }

  .lead01 {
    font-size: 40px;
    letter-spacing: .1em;
    padding-left: .1em;
    margin: 30px 0 0; }

  .lead02 {
    font-size: 18px;
    letter-spacing: .1em;
    padding-left: .1em;
    margin: 30px 0 0; }

  .lead03 {
    margin: 50px auto;
    display: flex;
    flex-wrap: wrap; }

  .flow {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%; }
    .flow > dt {
      font-size: 22px;
      height: 80px;
      background-size: 160px auto;
      margin-bottom: 10px;
      width: 100%; }
    .flow > dd {
      font-size: 20px;
      margin-top: 20px;
      justify-content: center;
      width: calc(33.33% - 15px); }
      .flow > dd > strong {
        width: 30px; }
      .flow > dd > span {
        padding-top: .2em;
        width: calc(100% - 30px); }
      .flow > dd > img {
        width: 60%; }

  .kikan {
    margin: 30px 0 0;
    padding-top: 20px;
    width: 50%; }
    .kikan > dt {
      text-align: center;
      font-size: 20px; }
    .kikan > dd {
      padding: 0 15px; }
      .kikan > dd:nth-child(2) {
        text-align: center;
        font-size: 24px; } }
@media (max-width: 767.98px) {
  .main_img_container {
    overflow: hidden;
    margin: 0 -10px 10px; }

  .main_img {
    max-width: none;
    width: 130%;
    margin-left: -15%; }

  .al_list {
    margin: 5px -5px; }
    .al_list > a {
      width: calc(50% - 10px);
      margin: 5px; }

  .al_div {
    margin-top: -60px;
    padding-top: 60px; }

  .lead01 {
    font-size: 5vw; }

  .lead02 {
    font-size: 3vw; }

  .lead03 {
    margin: 30px auto; }

  .flow > dt {
    font-size: 16px;
    height: 70px;
    background-size: 140px auto;
    margin-bottom: 10px; }
  .flow > dd {
    font-size: 16px;
    margin-top: 20px; }
    .flow > dd > strong {
      width: 30px; }
    .flow > dd > span {
      padding-top: .2em;
      width: calc(100% - 30px); }
    .flow > dd > img {
      width: 40%; }

  .kikan {
    margin: 30px 0 0;
    padding-top: 20px; }
    .kikan > dt {
      text-align: center;
      font-size: 16px; }
    .kikan > dd:nth-child(2) {
      text-align: center;
      font-size: 20px; } }
.item_list {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  color: #29275e;
  text-align: center; }
  .item_list > li > img {
    display: block; }
  .item_list > li > dl {
    margin: 0 auto; }
    .item_list > li > dl > dt {
      display: flex;
      justify-content: center;
      align-items: flex-end;
      border-bottom: 1px solid #29275e;
      margin: .5em auto;
      padding: 0 1em .2em;
      width: 80%; }
      .item_list > li > dl > dt > h3, .item_list > li > dl > dt p {
        margin: 0;
        font-weight: bold;
        line-height: 1.6em; }
      .item_list > li > dl > dt > h3 {
        margin-right: .5em; }
        .item_list > li > dl > dt > h3 > small {
          font-weight: bold;
          font-size: .6em; }
      .item_list > li > dl > dt > p {
        display: flex;
        align-items: flex-end; }
        .item_list > li > dl > dt > p > span {
          display: block; }
          .item_list > li > dl > dt > p > span:nth-child(1) {
            font-size: .75em;
            line-height: 1.8em; }
    .item_list > li > dl > dd {
      font-weight: bold; }
      .item_list > li > dl > dd > .kome {
        display: inline-block;
        background-color: #fbd9bf;
        padding: 0 .4em; }

@media (min-width: 768px) {
  .item_list > li {
    width: 33.33%;
    margin: 10px 0; }
    .item_list > li > dl > dt > h3, .item_list > li > dl > dt > p {
      font-size: 14px; }
    .item_list > li > dl > dd {
      font-size: 12px; } }
@media (max-width: 767.98px) {
  .item_list {
    justify-content: center; }
    .item_list > li {
      width: 100%;
      margin: 10px 0; }
      .item_list > li > img {
        width: 80%;
        margin: 0 auto; }
      .item_list > li > dl > dt > h3, .item_list > li > dl > dt > p {
        font-size: 14px; }
      .item_list > li > dl > dd {
        font-size: 12px; } }
.drink_ttl {
  text-align: center;
  font-weight: bold;
  color: #fff100;
  text-shadow: 2px 2px 0 black; }

.drink_ttl > small {
  font-weight: bold;
  font-size: .75em;
  display: block;
  margin-bottom: .5em; }

.drink {
  list-style: none;
  padding: 0;
  color: #ea5504;
  margin: 0; }
  .drink > li {
    display: flex; }
    .drink > li > p {
      display: flex;
      align-items: center;
      font-weight: bold;
      margin: 0; }
      .drink > li > p:nth-child(1) {
        background-color: #fad1b1; }
        .drink > li > p:nth-child(1) > span {
          display: flex;
          align-items: center; }
          .drink > li > p:nth-child(1) > span:nth-child(1) {
            background: url("../images/no.svg") no-repeat center/contain;
            color: white;
            justify-content: center; }
      .drink > li > p:nth-child(2) {
        background-color: white; }

@media (min-width: 768px) {
  .drink_ttl {
    font-size: 40px;
    letter-spacing: .1em;
    padding-left: .1em;
    margin: 60px 0 20px; }

  .drink {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-bottom: 50px; }
    .drink > li {
      width: calc(50% - 10px);
      margin: 2px 0; }
      .drink > li > p {
        min-height: 40px; }
        .drink > li > p:nth-child(1) {
          border-radius: 5px 0 0 5px;
          width: 44%;
          font-size: 12px; }
          .drink > li > p:nth-child(1) > span:nth-child(1) {
            width: 36px;
            height: 40px;
            margin-right: 5px; }
        .drink > li > p:nth-child(2) {
          border-radius: 0 5px 5px 0;
          width: 56%;
          font-size: 14px;
          padding-left: 10px; } }
@media (max-width: 767.98px) {
  .drink_ttl {
    font-size: 5vw;
    letter-spacing: .1em;
    padding-left: .1em;
    margin: 60px 0 20px; }

  .drink {
    padding-bottom: 50px; }
    .drink > li {
      width: 100%;
      margin: 2px 0; }
      .drink > li > p {
        min-height: 40px; }
        .drink > li > p:nth-child(1) {
          border-radius: 5px 0 0 5px;
          width: 44%;
          font-size: 12px; }
          .drink > li > p:nth-child(1) > span:nth-child(1) {
            width: 36px;
            height: 40px;
            margin-right: 5px; }
          .drink > li > p:nth-child(1) > span:nth-child(2) {
            width: calc(100% - 41px);
            margin-right: 5px; }
        .drink > li > p:nth-child(2) {
          border-radius: 0 5px 5px 0;
          width: 56%;
          font-size: 14px;
          padding-left: 10px; } }
.otsumami_back {
  background: url("../images/otsumami.jpg") repeat center; }

.otsumami_ttl {
  display: block;
  margin: 0 auto; }

.otsumami_list {
  display: flex;
  flex-wrap: wrap; }
  .otsumami_list > figure > img {
    display: block;
    border-radius: 10px; }
  .otsumami_list > figure > figcaption > p {
    margin: 0;
    font-weight: bold;
    text-align: center; }
    .otsumami_list > figure > figcaption > p:nth-child(3) > span:nth-child(1) {
      margin-right: .3em; }

@media (min-width: 768px) {
  .otsumami_back {
    padding: 30px 0; }

  .otsumami_ttl {
    width: 600px; }

  .otsumami_list {
    margin: 30px -15px 0; }
    .otsumami_list > figure {
      width: calc(25% - 30px);
      margin: 15px; }
      .otsumami_list > figure > figcaption {
        margin: 6px 0 0; }
        .otsumami_list > figure > figcaption > p:nth-child(1) {
          font-size: 12px; }
        .otsumami_list > figure > figcaption > p:nth-child(2) {
          font-size: 16px; }
        .otsumami_list > figure > figcaption > p:nth-child(3) {
          font-size: 14px; }
          .otsumami_list > figure > figcaption > p:nth-child(3) > span:nth-child(1) {
            font-size: 12px; } }
@media (max-width: 767.98px) {
  .otsumami_back {
    padding: 30px 0; }

  .otsumami_ttl {
    margin: 0 0 30px 0; }

  .otsumami_list {
    margin: 0 -5px; }
    .otsumami_list > figure {
      width: calc(50% - 10px);
      margin: 10px 5px; }
      .otsumami_list > figure > figcaption {
        margin: 6px 0 0; }
        .otsumami_list > figure > figcaption > p:nth-child(1) {
          font-size: 10px; }
        .otsumami_list > figure > figcaption > p:nth-child(2) {
          font-size: 14px; }
        .otsumami_list > figure > figcaption > p:nth-child(3) {
          font-size: 12px; }
          .otsumami_list > figure > figcaption > p:nth-child(3) > span:nth-child(1) {
            font-size: 10px; } }
