@charset "UTF-8";
/*
*
* Copyright (c) 2016, AD Line Inc. All rights reserved.
* Data : 2016.04.20
*
*/
/* Googleフォント　Noto Sans,Robot,Open Sans */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700italic,700,900);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800);
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@100;200;300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Galada&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Mochiy+Pop+One&display=swap");
/* アイコンフォント　Google Material,Font Awesome */
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/6.7.2/css/font-awesome.min.css);
/*****************************************************

 SCSS用
 
*****************************************************/
/*****************************************************

 Telリンク制御　※レスポンシブ
 
*****************************************************/
@media (min-width: 668px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; } }
/*****************************************************

 404
 
*****************************************************/
.not_found_container {
  width: 100%;
  padding: 80px 0; }
  .not_found_container > p {
    padding: 30px 0;
    font-size: 16px;
    color: #333; }
    .not_found_container > p span {
      color: #de0515;
      display: block; }

/*****************************************************

 Common - Layout
 
*****************************************************/
html {
  font-size: 10px; }

body {
  position: relative;
  width: auto;
  height: auto;
  background: #FFF;
  z-index: 0;
  color: #333333;
  font-size: 1.4rem;
  font-family: 'IBM Plex Sans JP','Noto Sans Japanese','Noto Sans', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif , serif;
  font-weight: normal;
  line-height: 1.65;
  letter-spacing: 0.5px; }

.inner {
  position: relative;
  max-width: 1008px;
  margin: 0 auto;
  padding: 0 1%;
  box-sizing: border-box; }

.inner_wide {
  position: relative;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 1%;
  box-sizing: border-box; }

.section {
  padding: 120px 0; }

@media screen and (max-width: 896px) {
  .inner_wide {
    width: 90%;
    padding: 0; }

  .inner {
    width: 90%;
    padding: 0; }

  .sp_none {
    display: none !important; }

  .section {
    padding: 60px 0; } }
@media print {
  .pc_none {
    display: none !important; }

  .sp_none {
    display: none !important; } }
@media screen and (min-width: 896px) {
  .pc_none {
    display: none !important; }

  #menu {
    visibility: hidden; } }
/*****************************************************

 Common - Parts
 
*****************************************************/
/*　見出し2
----------------------------------------------------*/
.sub_ttl {
  position: relative;
  margin-bottom: 36px;
  font-size: 100px;
  color: #3d1b00;
  font-family: "Galada", cursive;
  text-align: center;
  z-index: 1; }

.sub_ttl + p {
  font-size: 16px;
  font-weight: 500;
  line-height: 40px;
  text-align: center; }

@media screen and (max-width: 896px) {
  .sub_ttl {
    margin-bottom: 20px;
    font-size: 56px; }

  .sub_ttl + p {
    font-size: 14px;
    line-height: 36px; } }
/*　テーブル
----------------------------------------------------*/
.tbl_type_01 {
  width: 100%; }
  .tbl_type_01 tr {
    border-bottom: 1px solid #3d1b00; }
    .tbl_type_01 tr th {
      width: 30%;
      padding: 32px 0;
      box-sizing: border-box;
      font-size: 16px;
      font-weight: bold;
      color: #333;
      vertical-align: center; }
      .tbl_type_01 tr th span {
        color: #b8272d; }
    .tbl_type_01 tr td {
      width: 70%;
      padding: 32px 0;
      box-sizing: border-box;
      font-size: 16px;
      font-weight: 400;
      color: #333;
      vertical-align: center; }
    .tbl_type_01 tr:first-of-type th {
      padding-top: 0; }
    .tbl_type_01 tr:first-of-type td {
      padding-top: 0; }
    .tbl_type_01 tr:last-of-type {
      border-bottom: 0; }

@media screen and (max-width: 896px) {
  .tbl_type_01 tr th {
    width: 100%;
    display: block;
    padding: 12px 0 0;
    font-size: 14px; }

  .tbl_type_01 tr td {
    width: 100%;
    display: block;
    padding: 12px 0;
    font-size: 14px; } }
/*****************************************************

 メールフォーム装飾
 
*****************************************************/
.contactform_container {
  width: 100%; }
  .contactform_container p {
    font-size: 14px; }

.agreementicon {
  padding: 2px 14px;
  font-size: 14px;
  color: #FFF;
  text-align: center;
  background: #c30d23; }

.confirm_box {
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 10px;
  box-sizing: border-box;
  color: #FFF;
  border: 1px solid #ffFF00;
  background: #F9A638; }

.policy_title {
  padding: 10px 0 0;
  font-size: 18px;
  text-align: center; }

.privacypolicy {
  width: 100%;
  height: 200px;
  position: relative;
  padding: 24px;
  box-sizing: border-box;
  margin-bottom: 40px;
  color: #666666;
  text-align: left !important;
  border: 1px solid #ccc;
  background: #fff;
  overflow-y: scroll; }
  .privacypolicy p {
    text-align: left !important; }
  .privacypolicy h3 {
    font-size: 18px; }
  .privacypolicy h4 {
    margin: 24px 0 8px;
    font-size: 16px;
    font-weight: bold;
    color: #666666; }
    .privacypolicy h4:first-child {
      margin-top: 0; }

.privacypolicy::-webkit-scrollbar {
  width: 8px; }

.privacypolicy::-webkit-scrollbar-track {
  background: #ccc; }

.privacypolicy::-webkit-scrollbar-thumb {
  background: #999; }

.thanks_container {
  text-align: center; }

#formWrap {
  padding: 80px 0; }
  #formWrap h3 {
    margin-bottom: 40px; }

.form_section {
  padding: 120px 0 80px; }

.form_to_top {
  width: 30%;
  height: auto;
  display: block;
  padding: 10px 0;
  margin: 50px auto;
  font-size: 16px;
  font-weight: 300;
  color: #FFF;
  text-decoration: none;
  text-align: center;
  background: #DB621D; }

.wpcf7 form.sent .wpcf7-response-output {
  background: #46b450;
  color: #fff;
  text-align: center; }

@media screen and (max-width: 896px) {
  .contactform_container p {
    font-size: 14px; }

  .contact_phone_container span {
    font-size: 24px; }

  .contactform_container table th {
    width: 100%;
    display: block;
    padding: 20px 0 0; }

  .contactform_container table td {
    width: 100%;
    display: block;
    padding: 10px 0 20px;
    border-bottom: none; }

  .privacypolicy {
    width: 100%;
    margin-bottom: 24px; }

  .privacypolicy h4 {
    font-size: 15px; }

  .thanks_container .link_btn {
    width: 100%; }

  .form_table th {
    width: 100%;
    display: block;
    text-align: left;
    border-bottom: none;
    padding: 20px 20px 0; }

  .form_table td {
    width: 100%;
    display: block;
    padding: 20px; }

  .form_to_top {
    margin: 20px auto;
    width: 80%; } }
/* フォーム装飾
----------------------------------------------------*/
input[type="text"], input[type="tel"], input[type="number"], input[type="email"], textarea, select {
  -webkit-appearance: none;
  width: 100%;
  height: auto;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #ccc;
  background: #FFF;
  transition: all .3s; }
  input[type="text"].w100, input[type="tel"].w100, input[type="number"].w100, input[type="email"].w100, textarea.w100, select.w100 {
    width: 98%; }
  input[type="text"].w80, input[type="tel"].w80, input[type="number"].w80, input[type="email"].w80, textarea.w80, select.w80 {
    width: 80%; }
  input[type="text"].w60, input[type="tel"].w60, input[type="number"].w60, input[type="email"].w60, textarea.w60, select.w60 {
    width: 60%; }
  input[type="text"].w40, input[type="tel"].w40, input[type="number"].w40, input[type="email"].w40, textarea.w40, select.w40 {
    width: 40%;
    margin-right: 20px; }
  input[type="text"].w30, input[type="tel"].w30, input[type="number"].w30, input[type="email"].w30, textarea.w30, select.w30 {
    width: 30%; }

input[type='checkbox'] {
  width: 20px;
  height: 24px;
  position: relative;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  text-align: center;
  appearance: none;
  outline: none;
  cursor: pointer; }
  input[type='checkbox']::before {
    width: 20px;
    height: 20px;
    position: absolute;
    content: '';
    display: block;
    border: solid 1px #ccc;
    border-radius: 4px;
    background: #fff; }
  input[type='checkbox']:checked::before {
    background-color: #B3B3B3; }
  input[type='checkbox']::after {
    width: 4px;
    height: 12px;
    position: absolute;
    content: '';
    left: 8px;
    top: 2px;
    display: block;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    transform: rotate(45deg);
    opacity: 0; }
  input[type='checkbox']:checked::after {
    opacity: 1; }

input[type="file"] {
  padding: 10px 0;
  transition: all .3s; }

/*input[type="text"]:focus , input[type="tel"]:focus , input[type="email"]:focus , textarea:focus {
  box-shadow: 0 0 4px #86BBCD;
  border: 1px solid #86BBCD;
}*/
input[type="radio"] {
  width: 18px;
  height: 18px;
  vertical-align: middle; }

textarea {
  height: 160px;
  margin-bottom: 20px; }

::-webkit-input-placeholder {
  color: #cccccc; }

::-moz-placeholder {
  color: #cccccc; }

:-ms-input-placeholder {
  color: #cccccc; }

input[type="radio"] {
  display: none; }
  input[type="radio"] + span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 24px;
    cursor: pointer;
    font-size: 14px;
    color: #333; }
    input[type="radio"] + span::before {
      width: 14px;
      height: 14px;
      position: absolute;
      top: 50%;
      left: 0;
      content: "";
      display: block;
      border: 1px solid #B3B3B3;
      border-radius: 50%;
      transform: translateY(-50%);
      background: #fff; }
  input[type="radio"]:checked + span::after {
    width: 8px;
    height: 8px;
    position: absolute;
    top: 50%;
    left: 4px;
    content: "";
    display: block;
    border-radius: 50%;
    transform: translateY(-50%);
    background: #666666; }
  input[type="radio"]:checked + span::before {
    border: 1px solid #B3B3B3; }

input[type="submit"] {
  width: 35%;
  height: auto;
  position: relative;
  display: block;
  padding: 16px 0;
  margin: 32px auto 0;
  font-size: 16px;
  font-weight: bold;
  color: #FFF;
  text-decoration: none;
  text-align: center;
  background: #111;
  transition: .3s;
  cursor: pointer; }
  input[type="submit"]:hover {
    opacity: 0.7;
    transition: .3s; }

input[type="button"] {
  width: 35%;
  height: auto;
  position: relative;
  display: block;
  padding: 16px 0;
  margin: 56px auto 0;
  font-size: 16px;
  font-weight: bold;
  color: #333;
  text-decoration: none;
  text-align: center;
  border: 1px solid #111;
  border-radius: 8px;
  background: #FFF;
  transition: .3s;
  cursor: pointer; }
  input[type="button"]:hover {
    opacity: 0.7;
    transition: .3s; }

@media screen and (max-width: 896px) {
  input[type="button"] {
    width: 80%; }

  input[type="submit"] {
    width: 100%;
    margin: 24px auto 0;
    padding: 12px 0; }

  input[type="text"], input[type="tel"], input[type="number"], input[type="email"], textarea, select {
    background: #fff; }

  input[type="text"].w40, input[type="tel"].w40, input[type="email"].w40, textarea.w40, select.w40 {
    width: 100%;
    margin: 0; }

  input[type="text"].w60, input[type="tel"].w60, input[type="email"].w60, textarea.w60, select.w60 {
    width: 100%;
    margin: 0; }

  input[type="text"].w80, input[type="tel"].w80, input[type="email"].w80, textarea.w80, select.w80 {
    width: 100%;
    margin: 0; }

  input[type="text"].w100, input[type="tel"].w100, input[type="email"].w100, textarea.w100, select.w100 {
    width: 100%;
    margin: 0; }

  textarea {
    margin-left: 0;
    margin-bottom: 0; } }
/*****************************************************

 Template - Header
 
*****************************************************/
.global_header {
  padding: 40px;
  box-sizing: border-box;
  background: #fff; }
  .global_header .main_cover {
    height: 1000px;
    position: relative;
    background: url("../images/home/main_cover.jpg") center/cover no-repeat; }

@media screen and (max-width: 896px) {
  .global_header {
    padding: 14px; }

  .global_header .main_cover {
    height: 500px; } }
.nav_area {
  width: 100%;
  position: absolute;
  top: -40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 40px;
  box-sizing: border-box; }
  .nav_area .header_ttl {
    width: 250px;
    height: 250px;
    position: relative;
    background: #111; }
    .nav_area .header_ttl h1 {
      position: relative;
      padding: 28px 20px;
      box-sizing: border-box; }
      .nav_area .header_ttl h1 img {
        width: 100%; }
      .nav_area .header_ttl h1 a {
        width: 100%;
        height: 100%;
        position: absolute;
        content: '';
        top: 0;
        left: 0; }
      .nav_area .header_ttl h1:hover {
        opacity: 0.7;
        transition: .3s; }
  .nav_area ul {
    display: flex;
    justify-content: flex-end;
    align-items: center; }
    .nav_area ul li {
      margin-right: 24px; }
      .nav_area ul li a {
        width: 80px;
        height: 80px;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 14px;
        box-sizing: border-box;
        text-decoration: none;
        border-radius: 50%;
        background: #e8c473;
        transition: .3s; }
        .nav_area ul li a i {
          font-size: 40px;
          color: #fff; }
        .nav_area ul li a:hover {
          opacity: 0.7;
          transition: .3s; }
      .nav_area ul li:last-of-type {
        margin-right: 0; }

@media screen and (max-width: 896px) {
  .nav_area {
    top: -14px;
    padding: 0 14px; }

  .nav_area .header_ttl {
    width: 100px;
    height: 100px; }

  .nav_area .header_ttl h1 {
    padding: 10px; }

  .nav_area ul li {
    margin-right: 10px; }

  .nav_area ul li a {
    width: 55px;
    height: 55px;
    padding: 14px; }

  .nav_area ul li a i {
    font-size: 28px; } }
.tittle {
  position: absolute;
  left: 40px;
  bottom: 40px;
  z-index: 1; }
  .tittle p {
    display: inline-block;
    margin-top: 20px;
    padding: 10px 24px;
    box-sizing: border-box;
    font-size: 48px;
    font-weight: bold;
    color: #3d1b00;
    background: #fff; }
    .tittle p span {
      color: #e8c473; }
    .tittle p:first-of-type {
      margin-top: 0; }

@media screen and (max-width: 896px) {
  .tittle {
    left: 20px;
    bottom: 20px; }

  .tittle p {
    margin-top: 14px;
    padding: 8px 16px;
    font-size: 20px; } }
/*****************************************************

 Template - Footer
 
*****************************************************/
.global_footer {
  width: 100%;
  position: relative;
  background: url("../images/home/footer_bk.jpg") center/cover no-repeat; }

.footer_area {
  width: 100%;
  padding: 80px 0;
  box-sizing: border-box; }
  .footer_area .logo_area {
    width: 200px;
    margin: 0 auto; }
    .footer_area .logo_area img {
      width: 100%; }
    .footer_area .logo_area:hover {
      opacity: 0.7;
      transition: .3s; }
  .footer_area .f_link_area p {
    margin-bottom: 14px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #fff; }
  .footer_area .f_link_area ul {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center; }
    .footer_area .f_link_area ul li {
      margin-right: 16px; }
      .footer_area .f_link_area ul li a {
        width: 50px;
        height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 14px;
        box-sizing: border-box;
        text-decoration: none;
        border-radius: 50%;
        background: #e8c473;
        transition: .3s; }
        .footer_area .f_link_area ul li a:hover {
          opacity: 0.7;
          transition: .3s; }
        .footer_area .f_link_area ul li a i {
          font-size: 24px;
          color: #fff; }
      .footer_area .f_link_area ul li:last-of-type {
        margin-right: 0; }
  .footer_area .youtube_area {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    .footer_area .youtube_area .youtube_area_item {
      width: 49%;
      margin: 56px 20px 0 0;
      padding: 24px;
      box-sizing: border-box;
      border-radius: 10px;
      background: rgba(17, 1, 0, 0.6); }
      .footer_area .youtube_area .youtube_area_item p {
        margin: 0 0 10px 0;
        text-align: center;
        font-size: 14px;
        font-weight: bold;
        color: #fff; }
      .footer_area .youtube_area .youtube_area_item figure {
        text-align: center; }
        .footer_area .youtube_area .youtube_area_item figure a:hover {
          opacity: 0.7;
          transition: .3s; }
      .footer_area .youtube_area .youtube_area_item:last-of-type {
        margin-right: 0; }

@media screen and (max-width: 896px) {
  .footer_area {
    padding: 60px 0; }

  .footer_area .logo_area {
    width: 150px; }

  .footer_area .youtube_area {
    flex-wrap: wrap; }

  .footer_area .youtube_area .youtube_area_item {
    width: 100%;
    margin: 40px 0 0 0;
    padding: 20px; }

  .footer_area .youtube_area .youtube_area_item:last-of-type {
    margin-top: 24px; }

  .footer_area .youtube_area .youtube_area_item figure {
    width: 70%;
    margin: 0 auto; }

  .footer_area .youtube_area .youtube_area_item figure img {
    width: 100%; } }
.f_btn {
  width: 285px;
  display: block;
  margin: 40px auto;
  padding: 16px;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  border: 1px solid #fff; }
  .f_btn:hover {
    opacity: 0.7;
    transition: .3s; }

@media screen and (max-width: 896px) {
  .f_btn {
    width: 90%;
    padding: 14px; } }
.copyright_container {
  width: 100%;
  padding: 20px 0;
  box-sizing: border-box;
  border-top: 1px solid #fff; }
  .copyright_container p {
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    color: #fff; }

@media screen and (max-width: 896px) {
  .copyright_container {
    padding: 16px 0; } }
/*****************************************************

 Page - Home
 
*****************************************************/
/* URIBOU
----------------------------------------------------*/
.sec01 {
  position: relative;
  background: #fffdf4; }
  .sec01 .t_area {
    width: 100%;
    margin: 48px 0 450px;
    padding: 40px;
    box-sizing: border-box;
    border-radius: 10px;
    background: rgba(61, 27, 0, 0.5); }
    .sec01 .t_area p {
      text-align: center;
      font-size: 18px;
      font-weight: bold;
      color: #fff;
      line-height: 40px; }
  .sec01 figure {
    position: absolute;
    bottom: -86px;
    z-index: 1; }
    .sec01 figure img {
      width: 100%; }
    .sec01 figure::before {
      width: 416px;
      height: 387px;
      position: absolute;
      top: -290px;
      left: 80px;
      content: '';
      background: url("../images/home/illust_01.png") center/cover no-repeat; }
  .sec01::after {
    width: 430px;
    height: 475px;
    position: absolute;
    right: 2%;
    top: -20%;
    content: '';
    background: url("../images/home/about_img_01.png") center/cover no-repeat; }

@media screen and (max-width: 896px) {
  .sec01::after {
    width: 120px;
    height: 135px;
    top: -7%; }

  .sec01 .t_area {
    padding: 20px;
    margin: 48px 0 56px; }

  .sec01 .t_area p {
    font-size: 14px;
    line-height: 32px; }

  .sec01 figure::before {
    width: 150px;
    height: 142px;
    top: -80px;
    left: 20px; } }
/* MENU
----------------------------------------------------*/
.sec02 {
  position: relative;
  background: url("../images/common/pattern01.jpg") repeat; }
  .sec02 .menu_area {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center; }
    .sec02 .menu_area figure {
      width: 70%; }
      .sec02 .menu_area figure img {
        width: 100%; }
    .sec02 .menu_area .txt_area {
      width: 50%;
      z-index: 1; }
      .sec02 .menu_area .txt_area h3 + p {
        margin-top: 24px;
        font-size: 20px;
        font-weight: bold;
        color: #3d1b00;
        text-shadow: 2px 2px 4px #fff; }
      .sec02 .menu_area .txt_area .price {
        margin-top: 24px;
        font-size: 48px;
        color: #3d1b00;
        font-family: "Mochiy Pop One", sans-serif; }
        .sec02 .menu_area .txt_area .price span {
          font-family: "Galada", cursive; }
    .sec02 .menu_area:nth-of-type(odd) .txt_area {
      margin-left: -100px; }
    .sec02 .menu_area:nth-of-type(even) {
      flex-direction: row-reverse; }
      .sec02 .menu_area:nth-of-type(even) .txt_area {
        margin-right: -100px;
        padding-left: 10%; }

@media screen and (max-width: 896px) {
  .sec02 {
    padding-top: 120px; }

  .sec02 .menu_area {
    position: relative;
    margin: 80px 0 0; }
    .sec02 .menu_area:first-of-type {
      margin-top: 40px; }

  .sec02 .menu_area figure {
    width: 90%;
    position: relative; }

  .sec02 .menu_area .txt_area {
    width: 65%;
    position: absolute;
    bottom: -28%; }

  .sec02 .menu_area .txt_area h3 + p {
    margin-top: 14px;
    font-size: 14px; }

  .sec02 .menu_area .txt_area h3 img {
    width: 70%; }

  .sec02 .menu_area:nth-of-type(odd) .txt_area {
    right: 0;
    margin-left: 0; }

  .sec02 .menu_area:nth-of-type(even) .txt_area {
    left: 7%;
    margin-right: 0;
    padding-left: 0;
    text-align: left; }

  .sec02 .menu_area .txt_area .price {
    margin-top: 0;
    font-size: 20px; }

  .sec02 .menu_area:nth-of-type(even) .txt_area p {
    margin-right: 0; } }
.m_01 {
  position: relative; }
  .m_01::after {
    width: 110px;
    height: 224px;
    position: absolute;
    bottom: 0;
    right: 100px;
    content: '';
    background: url("../images/home/illust_02.png") center/cover no-repeat; }

@media screen and (max-width: 896px) {
  .m_01::after {
    width: 30px;
    height: 62px;
    bottom: -50px;
    right: 10px; } }
.m_02 {
  position: relative; }
  .m_02::before {
    width: 186px;
    height: 218px;
    position: absolute;
    top: 0;
    left: 80px;
    content: '';
    background: url("../images/home/illust_03.png") center/cover no-repeat; }

@media screen and (max-width: 896px) {
  .m_02::before {
    width: 76px;
    height: 89px;
    top: -40px;
    left: 20px; } }
.m_03 {
  position: relative; }
  .m_03::after {
    width: 211px;
    height: 207px;
    position: absolute;
    bottom: 0;
    right: 100px;
    content: '';
    background: url("../images/home/illust_04.png") center/cover no-repeat; }

@media screen and (max-width: 896px) {
  .m_03::after {
    width: 70px;
    height: 70px;
    bottom: -130px;
    right: 10px;
    z-index: 1; } }
.insta_fixed {
  width: 324px;
  position: absolute;
  right: 6%;
  top: -6%;
  z-index: 2; }
  .insta_fixed a {
    width: 100%;
    height: 100%;
    display: block;
    text-decoration: none;
    transition: 0.3s; }
    .insta_fixed a figure {
      width: 100%; }
      .insta_fixed a figure img {
        width: 100%; }
    .insta_fixed a:hover {
      opacity: 1;
      transform: scale(1.1, 1.1); }

@media screen and (max-width: 896px) {
  .insta_fixed {
    width: 115px;
    right: 2%;
    top: 0; } }
.other_menu {
  width: 100%;
  margin-top: 64px;
  padding: 80px;
  box-sizing: border-box;
  border-radius: 10px;
  background: #fff; }
  .other_menu h3 {
    margin-bottom: 40px;
    text-align: center;
    font-size: 36px;
    font-weight: bold;
    color: #3d1b00; }
  .other_menu .other_menu_container {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap; }
    .other_menu .other_menu_container .other_menu_item {
      width: 48%;
      margin: 0 4% 4% 0; }
      .other_menu .other_menu_container .other_menu_item figure {
        width: 100%; }
        .other_menu .other_menu_container .other_menu_item figure img {
          width: 100%; }
      .other_menu .other_menu_container .other_menu_item h4 {
        font-size: 24px;
        font-weight: bold;
        color: #333; }
      .other_menu .other_menu_container .other_menu_item p {
        text-align: right;
        font-size: 32px;
        color: #3d1b00;
        font-family: "Mochiy Pop One", sans-serif; }
        .other_menu .other_menu_container .other_menu_item p span {
          font-family: "Galada", cursive; }
      .other_menu .other_menu_container .other_menu_item:nth-of-type(2n) {
        margin-right: 0; }
      .other_menu .other_menu_container .other_menu_item:nth-last-of-type(-n+2) {
        margin-bottom: 0; }

@media screen and (max-width: 896px) {
  .other_menu {
    margin-top: 100px;
    padding: 40px 20px 20px; }

  .other_menu h3 {
    margin-bottom: 32px;
    font-size: 24px; }

  .other_menu .other_menu_container .other_menu_item {
    width: 100%;
    margin: 0 0 40px 0; }
    .other_menu .other_menu_container .other_menu_item:last-of-type {
      margin-bottom: 0 !important; }

  .other_menu .other_menu_container .other_menu_item:nth-last-of-type(-n+2) {
    margin-bottom: 40px; }

  .other_menu .other_menu_container .other_menu_item h4 {
    font-size: 18px; }

  .other_menu .other_menu_container .other_menu_item p {
    font-size: 20px; } }
/* SCHEDULE
----------------------------------------------------*/
.sec03 {
  position: relative;
  background: linear-gradient(to bottom, #dcf1fd, #fff9e5); }
  .sec03 .inner {
    z-index: 1; }
  .sec03::after {
    width: 100%;
    height: 243px;
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    background: url("../images/home/schedule_bk.png") center/cover no-repeat; }

.calendar_area {
  width: 100%;
  height: 100%;
  margin: 64px 0 200px;
  aspect-ratio: 3 / 2; }

@media screen and (max-width: 896px) {
  .sec03::after {
    height: 80px; }

  .calendar_area {
    margin: 40px 0 100px;
    aspect-ratio: 5 / 5; } }
/* SNS
----------------------------------------------------*/
.sec04 {
  position: relative;
  background: rgba(251, 217, 191, 0.3); }
  .sec04 .innsta_area {
    margin-top: 40px; }
  .sec04::before {
    width: 865px;
    height: 150px;
    position: absolute;
    left: 0;
    top: -40px;
    content: '';
    background: url("../images/home/t_uribou.png") center/cover no-repeat; }
  .sec04 figure {
    margin: 64px auto 0;
    text-align: center; }
    .sec04 figure a:hover {
      opacity: 0.7;
      transition: .3s; }

@media screen and (max-width: 896px) {
  .sec04::before {
    width: 260px;
    height: 45px;
    top: -14px; }

  .sec04 figure {
    width: 90%;
    margin: 40px auto 0; }

  .sec04 figure img {
    width: 100%; } }
/* CONTACT
----------------------------------------------------*/
.sec05 {
  position: relative;
  background: url("../images/common/pattern01.jpg") repeat; }
  .sec05::before {
    width: 216px;
    height: 340px;
    position: absolute;
    right: 40px;
    top: -160px;
    content: '';
    background: url("../images/home/illust_05.png") center/cover no-repeat; }

.tel_area {
  width: 60%;
  margin: 64px auto;
  padding: 20px 1%;
  box-sizing: border-box;
  text-align: center;
  color: #fff;
  background: #111; }
  .tel_area a {
    text-decoration: none;
    font-size: 40px;
    font-weight: bold;
    color: #fff; }
    .tel_area a i {
      margin-right: 20px; }
    .tel_area a:hover {
      opacity: 0.7;
      transition: .3s; }
  .tel_area p {
    font-size: 16px; }

.contactform_container {
  width: 100%;
  padding: 40px;
  box-sizing: border-box;
  background: #fff; }

@media screen and (max-width: 896px) {
  .sec05::before {
    width: 70px;
    height: 118px;
    right: 20px;
    top: -40px; }

  .tel_area {
    width: 90%;
    margin: 40px auto;
    padding: 16px 1%; }

  .tel_area a {
    font-size: 24px; }

  .tel_area a i {
    margin-right: 10px; }

  .tel_area p {
    font-size: 14px; }

  .contactform_container {
    padding: 20px; } }
