@charset "UTF-8";
/*!
Theme Name: morispa_theme
Author: TS
Description: This is a morispa atami wordpress theme.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
scss contents
# Generic
  - Normalize
  - Box sizing
#

CSS STRUCTURE:
1. VARIABLES
2. GENERAL TYPOGRAPHY
  2.1 General Styles
  2.3 Background Color
  2.4 Section
    - Section Paddings
    - Section Margins
    - Section Title
  2.5 Buttons
  2.6 Forms
3. SITE STRUCTURE
  3.1 Header
  3.2 Billboard
  3.3 Banner
  3.4 Info
  3.5 Map
  3.6 Video
  3.7 Footer
4. PAGES
  4.1 FrontPage Section About
  4.2 Staff Page
  4.3 Menu Page
  4.4 Blog Page
  4.5 Search Page
  4.6 Single Post Page
  4.7 Blog Category Page
  4.8 Front Page

--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/* Box sizing
--------------------------------------------- */
/*--------------------------------------------------------------
/** 1. VARIABLES
--------------------------------------------------------------*/
:root {
  --accent-color: #777777;
  --white-color: #fff;
  --black-color: #151412;
  --light-dark: #36332F;
  --gray-color: #F3F3F3;
  --gray-color-300: #F7F7F7;
  --gray-color-400: #EFEFEF;
  --gray-color-500: #AEAEAE;
  --gray-color-600: #999999;
  --gray-color-800: #3A3A3A;
  --light-gray-color: #D7DDDF;
  --primary-color: #87826E;
  --bs-primary-rgb: 135, 130, 110;
  --light-color: #f8f9fa;
  --dark-color: #212529;
  --light-blue-color: #EDF1F3;
  --navbar-color-color: #131814;
  --swiper-theme-color: #4A4A4A;
  --swiper-pagination-color: #4A4A4A;
  --bookBtn-color: #FBDADE;
  --link-color: #0000ee;
  --visited-color: #551a8b;
}

/* on mobile devices below 600px
 */
@media screen and (max-width: 600px) {
  :root {
    --header-height: 50px;
    --header-height-min: 30px;
  }
  #school h3 {
    font-size: 1rem !important;
  }
  #header .container {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
  #header .logo-name img {
    width: 150px;
    height: 35px;
  }
  #header .navbar-center {
    left: 45%;
  }
  .banner-content .fs-3 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
  }
  p {
    font-size: 1.1rem;
  }
  .frontNewsList .newsDate {
    font-size: 1.1rem !important;
  }
  .frontNewsList a {
    font-size: 1.1rem !important;
  }
}
/* on mobile devices below 460px
 */
@media screen and (max-width: 460px) {
  #header .navbar-center {
    left: 50%;
  }
  #header .navbar-center i {
    width: 16px;
    height: 16px;
  }
  #header .navbar-center span {
    font-size: 0.9rem;
  }
  .banner-content .fs-3 {
    font-size: 1.05rem !important;
  }
  .billboardNewsDate {
    font-size: 0.9rem;
  }
  .billboardNewsTitle a {
    font-size: 0.9rem !important;
  }
}
/* Fonts */
:root {
  --body-font: "Noto Serif JP", serif;
  --heading-font: "Noto Serif JP", serif;
  --serif-font: "Noto Serif JP", serif;
}

@font-face {
  font-family: "Italiana";
  font-display: swap;
  src: url("/wp-content/themes/morispa_theme/fonts/Italiana-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Noto Serif JP";
  font-display: swap;
  src: url("/wp-content/themes/morispa_theme/fonts/NotoSerifJp-Regular.otf") format("opentype");
}
@font-face {
  font-family: "Noto Serif JP";
  src: url("/wp-content/themes/morispa_theme/fonts/NotoSerifJp-Bold.otf") format("woff");
  font-weight: bold;
  font-style: normal;
}
.ff-2 {
  font-display: swap;
  font-family: "Noto Serif Japanese", serif;
}

/*----------------------------------------------*/
/* 2. GENERAL TYPOGRAPHY */
/*----------------------------------------------*/
/* 2.1 General Styles
/*----------------------------------------------*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  box-sizing: border-box;
  height: 100%;
}

body {
  font-family: var(--body-font);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.6;
  margin: 0;
  min-height: 100vh;
}

body {
  position: relative;
  background-image: url(/wp-content/themes/morispa_theme/images/bg_body01.jpg);
  backgraund-repert: repeat;
}

.accordion-button,
.accordion-collapse {
  background-image: url(/wp-content/themes/morispa_theme/images/bg_body01.jpg) !important;
  backgraund-repert: repeat !important;
  height: auto !important;
}

.vertical-rl {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  -writing-mode: vertical-rl;
  -moz-text-orientation: upright;
  -ms-text-orientation: upright;
  text-orientation: upright;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--heading-font);
  text-transform: capitalize;
  color: var(--black-color);
}

h1 {
  font-size: 5.5rem;
}

h2 {
  font-size: 4.5rem;
}

h3 {
  font-size: 2.625rem;
  line-height: 127%;
}

h4 {
  font-size: 1.75rem;
  line-height: 127%;
}

@media only screen and (max-width: 360px) {
  h1 {
    font-size: 4.5rem;
  }
  h2 {
    font-size: 3.5rem;
  }
}
p {
  text-transform: none;
  letter-spacing: normal;
  font-size: 1.2rem;
  font-weight: 400;
  color: var(--light-dark);
  font-family: var(--body-font);
  text-align: justify;
}

ul {
  color: var(--light-dark);
  list-style: none;
}

ul.inner-list li {
  font-size: 1.2em;
}

a {
  color: var(--dark-color) !important;
  text-decoration: none !important;
  transition: 0.3s color ease-out !important;
}

a.light {
  color: var(--light-color);
}

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

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

.fs-3 {
  font-size: 1.375rem !important;
}

.fs-4 {
  font-size: 1.25rem !important;
}

.fs-5 {
  font-size: 1.125rem !important;
}

.fs-6 {
  font-size: 0.875rem !important;
}

/*文章の文字間のスペースの修正 */
@media only screen and (max-width: 575px) {
  .staffIntro {
    text-align: start;
  }
}
.flex {
  display: flex;
}

/* 2.3 Background Color
/*----------------------------------------------*/
.bg-gray {
  background: var(--gray-color);
}

.bg-dark {
  background: var(--dark-color);
}

.bg-light {
  background: var(--light-color);
}

/* 2.4 Section
--------------------------------------------------------------*/
/* - Section Padding
--------------------------------------------------------------*/
.padding-xsmall {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.padding-small {
  padding-top: 2em;
  padding-bottom: 2em;
}

.padding-medium {
  padding-top: 4em;
  padding-bottom: 4em;
}

.padding-large {
  padding-top: 7em;
  padding-bottom: 7em;
}

.padding-xlarge {
  padding-top: 9.5em;
  padding-bottom: 9.5em;
}

.col-8-padding {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.hero-section {
  height: 250px;
}

.hero-section-padding {
  padding-top: 4em;
  padding-bottom: 4em;
}

.sp-1 {
  padding-bottom: 1rem;
}

@media only screen and (max-width: 564px) {
  .padding-medium {
    padding-top: 2em;
    padding-bottom: 2em;
  }
  .padding-large {
    padding-top: 4em;
    padding-bottom: 4em;
  }
  .hero-section {
    height: 200px;
  }
  .hero-section-padding {
    padding-top: 80px;
  }
  .sp-1 {
    padding-bottom: 1.2rem;
  }
}
/* - Section Margin
--------------------------------------------------------------*/
.margin-xlarge {
  margin-top: 9.5em;
  margin-bottom: 9.5em;
}

.margin-sm-bottom {
  margin-bottom: 20px;
}

/* - Section Title
--------------------------------------------------------------*/
.title-accent {
  color: var(--gray-color-600);
  letter-spacing: 0.14em;
}

h5.card-title,
h5.cart-title {
  font-family: var(--body-font);
}

/** 2.5 Buttons
--------------------------------------------------------------*/
.btn {
  font-size: 1.125rem;
  font-weight: 500;
  text-transform: capitalize;
  color: var(--black-color);
  height: fit-content;
  border-bottom: 2px solid var(--black-color);
  padding: 0;
  padding-bottom: 5px;
  border-radius: 0;
  transition: 0.3s ease-in;
}

.btn:hover {
  color: var(--accent-color);
  border-bottom: 2px solid var(--accent-color);
}

.btn:focus {
  box-shadow: none;
}

.btn-dark {
  color: var(--white-color);
  padding: 10px 22px;
  border: 0;
  transition: 0.3s ease;
}

.btn-dark:hover {
  background-color: var(--primary-color);
  color: var(--white-color);
  border: 0;
}

.btn-primary {
  background-color: var(--primary-color);
  color: var(--white-color);
  padding: 10px 22px;
  border: 0;
  transition: 0.3s ease;
}

.btn-primary:hover {
  background-color: var(--black-color);
  color: var(--white-color);
  border: 0;
}

/** 2.6 Forms
--------------------------------------------------------------*/
label {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  width: 100%;
}

textarea,
select,
input {
  padding: 8px 0;
  background: none;
  border-top: none;
  border-right: none;
  border-left: none;
  border-image: initial;
  border-bottom: 1px solid var(--black-color);
  outline: none;
  width: 100%;
}

.form-control {
  font-size: inherit;
  font-weight: inherit;
  line-height: 1.5;
  color: var(--black-color);
  background: none;
  border: none;
  box-shadow: none;
  padding: 0;
}

.form-control::placeholder {
  color: var(--gray-color-600);
}

.form-control:focus {
  background: none;
  box-shadow: none;
}

/* - Image Hover Effects
------------------------------------------------------------- */
.zoom-effect {
  background-color: #f5f3ef;
  overflow: hidden;
}

img.zoom-in {
  transition: 0.6s ease;
}

.zoom-effect:hover img.zoom-in {
  opacity: 0.8;
  transform: scale(1.1);
}

/* zoom out on animate */
.zoom-out {
  overflow: hidden;
}

.zoom-out img {
  transform: scale(1.1);
  transition: transform 1s ease-out;
  transition-delay: 500ms;
}

.aos-animate .zoom-out img {
  transform: scale(1);
}

/* - Preloader
------------------------------------------------------------- */
#preloader {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(247, 247, 247, 0.9215686275);
  display: flex;
  align-items: center;
  z-index: 99999999;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

#preloader.is-active {
  opacity: 0;
  visibility: hidden;
}

#loader.is-active {
  opacity: 0;
  visibility: hidden;
}

#loader {
  width: 180px;
  height: 9px;
  margin: auto;
  position: relative;
  overflow: hidden;
  background-color: var(--white-color);
  border-radius: 20px;
}

#loader:before {
  content: "";
  position: absolute;
  left: -50%;
  height: 9px;
  width: 30%;
  background-color: #b7b4ab;
  animation: lineAnim 1.6s linear infinite;
  border-radius: 20px;
}

@keyframes lineAnim {
  0% {
    left: -40%;
  }
  50% {
    left: 20%;
    width: 80%;
  }
  100% {
    left: 100%;
    width: 100%;
  }
}
/* - Swiper arrows
------------------------------------------------------------- */
.swiper-buttons .swiper-prev,
.swiper-buttons .swiper-next {
  color: var(--black-color);
  border: 1px solid var(--black-color);
  border-radius: 50%;
  padding: 16px;
  background: none;
  transition: 0.3s ease;
}

.swiper-prev:hover,
.swiper-next:hover {
  color: var(--white-color);
  background-color: var(--black-color);
}

.swiper-prev.swiper-button-disabled,
.swiper-next.swiper-button-disabled {
  color: var(--gray-color-500);
  border: 1px solid var(--gray-color-500);
  background: none;
}

.swiper-buttons span {
  color: var(--gray-color-500);
}

.swiper-buttons .swiper-prev.testimonial-arrow-prev,
.swiper-buttons .swiper-next.testimonial-arrow-next {
  border: none;
  background: none;
  padding: 0;
}

.swiper-prev.testimonial-arrow-prev:hover,
.swiper-next.testimonial-arrow-next:hover {
  color: var(--black-color);
}

.swiper-prev.testimonial-arrow-prev.swiper-button-disabled,
.swiper-next.testimonial-arrow-next.swiper-button-disabled {
  color: var(--gray-color-500);
}

/* - Pagination
------------------------------------------------------------- */
.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.pagination span {
  display: block;
  float: left;
  margin: 2px 2px 2px 0;
  padding: 6px 9px 5px 9px;
  text-decoration: none;
  width: auto;
  color: #fff !important;
  background: #555;
}

.pagination a {
  display: block;
  float: left;
  margin: 2px 6px 8px 0;
  padding: 6px 9px 5px 9px;
  text-decoration: none;
  width: auto;
  color: #fff !important;
  background: #555;
}

.pagination a:hover {
  color: #fff !important;
  background: #b4a276;
}

.pagination .current {
  padding: 6px 9px 5px 9px;
  background: #3279bb !important;
  color: #fff !important;
}

.pagination i {
  padding: 10px;
}

/*----------------------------------------------*/
/* 3. SITE STRUCTURE */
/*----------------------------------------------*/
/* 3.1 Header
/*----------------------------------------------*/
#header {
  background-color: rgba(251, 218, 222, 0.5);
}

#header-nav {
  position: relative;
}

.logo-name img {
  width: 200px;
  height: 50px;
}

.navbar-center {
  display: none;
}
.navbar-center i {
  display: inline-block;
  width: 20px;
  height: 20px;
}
.navbar-center svg {
  max-width: 100%;
}
.navbar-center .nav-item {
  display: inline-block;
}
.navbar-center .nav-link {
  padding: 0.2rem !important;
}

.dropdown-toggle::after {
  display: none !important;
}

.search_container {
  position: relative;
  box-sizing: border-box;
  border: 2px solid var(--light-dark);
  display: block;
  padding: 3px 10px;
  border-radius: 3px;
  height: 2.3em;
  width: 155px;
  overflow: hidden;
}

.search_container input[type=text] {
  border: none;
  height: 2em;
}

.search_container input[type=text]:focus {
  outline: 0;
}

.search_container input[type=submit] {
  cursor: pointer;
  font-family: FontAwesome;
  border: none;
  background: var(--light-dark);
  color: #fff;
  position: absolute;
  width: 2.5em;
  height: 3em;
  right: 0px;
  top: -5px;
  outline: none;
}

.search-bar {
  position: relative;
}

.site-header {
  position: fixed;
  top: 0;
  background-color: transparent;
  width: 100%;
  z-index: 999999;
  transition: background-color 0.3s ease;
}

.site-header.sticky {
  background-color: var(--white-color);
}

.navbar-toggler {
  color: var(--dark-color);
}

.navbar-toggler:visited {
  color: var(--dark-color);
}

.navbar-toggler svg.navbar-icon {
  width: 50px;
  height: 50px;
}

.navbar-nav .nav-item a.nav-link {
  margin-right: 20px;
  margin-left: 100px;
  color: var(--dark-color);
}

.navbar-nav .nav-item a.nav-link.active,
.navbar-nav .nav-item a.nav-link:hover {
  color: var(--accent-color);
}

.dropdown-toggle::after {
  display: none;
}

@media screen and (max-width: 1200px) {
  .navbar-nav .nav-item a.nav-link {
    margin-right: 10px;
  }
}
@media screen and (min-width: 992px) {
  .navbar-brand {
    margin-right: 0 !important;
  }
}
@media screen and (max-width: 991px) {
  .navbar-toggler {
    position: absolute;
    top: 15px;
    right: 10px;
  }
  .navbar-nav {
    text-align: right;
  }
  .justify-content-md-between {
    justify-content: flex-end !important;
  }
  li.nav-item {
    text-align: left !important;
  }
}
@media screen and (max-width: 599px) {
  .navbar-toggler {
    line-height: 0.5 !important;
  }
}
/*------------ Offcanvas -------------- */
#header-nav .navbar-toggler:focus {
  box-shadow: none;
}

#header-nav .offcanvas.show {
  z-index: 9999;
  background-color: rgb(242, 234, 236);
}

#header-nav .offcanvas-end {
  width: 65%;
  border: none;
}

.offcanvas.show .offcanvas-body .navbar-nav {
  align-items: unset !important;
}

.offcanvas-body .dropdown-menu {
  min-width: 13rem;
  background-color: var(--gray-color-300);
  border: 1px solid var(--gray-color-500);
  border-radius: 0;
}

.dropdown-menu {
  background-color: rgba(242, 234, 236, 0.7) !important;
}

.offcanvas-body .dropdown-menu .dropdown-item {
  color: var(--black-color);
}

.offcanvas-body .dropdown-menu .dropdown-item.active,
.offcanvas-body .dropdown-menu .dropdown-item:hover,
.offcanvas-body .dropdown-menu .dropdown-item:focus {
  background: none;
  color: var(--accent-color);
}

@media only screen and (min-width: 564px) {
  #header-nav .offcanvas-end {
    width: 40%;
  }
}
/* cart dropdown */
.cart-dropdown .dropdown-menu {
  min-width: 21rem;
}

@media only screen and (max-width: 564px) {
  .cart-dropdown .dropdown-menu {
    min-width: fit-content;
  }
}
@media only screen and (max-width: 1450px) {
  .navbar-nav .nav-item a.nav-link {
    margin-left: 40px;
  }
}
@media only screen and (max-width: 991px) {
  .navbar-nav .nav-item a.nav-link {
    margin-right: 0;
    margin-left: 0;
  }
  .navbar-center {
    display: block;
    position: absolute;
    left: 50%;
  }
  .navbar-center a {
    text-decoration: none;
  }
  .nav-left-dropdown {
    display: none;
  }
  .forEnglish {
    display: none;
  }
}
.nav-item {
  font-family: var(--serif-font);
  font-weight: 700;
  letter-spacing: 0.1em;
  font-size: 1rem;
}

.nav-link {
  display: none;
}

/* 3.2 Billboard
/*----------------------------------------------*/
#billboard {
  position: relative;
}
#billboard .topNews {
  position: absolute;
  bottom: 0;
  background: rgba(240, 240, 240, 0.7);
  border-radius: 0 3px 3px 0;
  z-index: 9999;
}
#billboard .topNewsDate,
#billboard .topNewsTitle {
  color: #030303;
}

.middle-swiper .swiper-slide img {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  #billboard .topNews {
    bottom: 60px;
  }
}
#banner .menuName {
  color: #FFFEF6;
}
#banner .btn {
  color: #FFFEF6;
}
#banner .banner-content-2-btn {
  color: #FFFEF6;
  font-weight: 700;
}

.banner-content {
  margin-top: 60%;
}
.banner-content p {
  font-family: var(--serif-font);
  font-size: 1.4rem !important;
}

.banner-content-1 h2 {
  color: #FFFEF6 !important;
}

@media only screen and (min-width: 780px) {
  .banner-content h2 {
    width: 380px;
  }
}
.swiper-slide .banner-content {
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.swiper-slide-active .banner-content {
  opacity: 1;
}

#billboard .main-slider-pagination {
  z-index: 999;
  bottom: 62px;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  background-color: var(--gray-color-400);
  opacity: 0.9;
  width: 18px;
  height: 18px;
  margin: 0 13px !important;
  transition: 0.3s ease;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--black-color);
  opacity: 1;
}

.frontAboutTitle1,
.frontAboutTitle2 {
  font-size: 2.2rem;
}

.frontAboutTitle3 {
  font-size: 1rem;
}

.frontAboutTitle2 {
  margin-top: 50px;
}

.frontAboutTitle3 {
  margin-top: 70px;
  letter-spacing: 0.2rem;
}

.frontAboutContent {
  margin-top: 70px;
}

.vertical-rl .frontAboutTitle2 {
  margin-left: 0.3rem;
}

@media screen and (min-width: 430px) and (max-width: 767px) {
  .frontAboutTitle1,
  .frontAboutTitle2 {
    font-size: 1.8rem;
  }
  .vertical-rl .py-3,
  .vertical-rl .py-4 {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
}
@media screen and (max-width: 429px) {
  .frontAboutTitle1,
  .frontAboutTitle2 {
    font-size: 1.6rem;
  }
  .vertical-rl .py-3,
  .vertical-rl .py-4 {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
  #about .fs-07 {
    font-size: 0.95rem !important;
  }
}
#about .container .row .offset-md-2 .py-3 {
  padding-bottom: 5px !important;
}
#about .container .row .offset-md-2 .py-4 {
  padding-top: 5px !important;
}

.billboardNews {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 9999;
  padding-right: 1rem;
  background-color: rgba(255, 255, 255, 0.5);
}

.topMessage,
.topMessageFirst {
  font-family: var(--heading-font);
  position: absolute;
  top: 25%;
  left: 10%;
  width: 40%;
  padding: 2%;
  border-radius: 3px;
  background-color: rgba(247, 247, 247, 0.3);
  z-index: 2;
}
.topMessage .secondMessageTitle,
.topMessageFirst .secondMessageTitle {
  margin-bottom: 15px;
}

.topMessagetxt {
  font-size: 1.125rem;
}

.topMessagetxtEng {
  font-size: 1.25rem;
}

@media screen and (max-width: 1400px) {
  .topMessage,
  .topMessageFirst {
    width: 45%;
  }
}
@media screen and (max-width: 1200px) {
  .topMessage,
  .topMessageFirst {
    width: 50%;
  }
}
.topMessageFirst {
  color: #131814;
}

.topMessageButton {
  font-family: var(--bs-body-font-family);
  font-weight: 600;
  background-color: #FFFEF6;
  margin-top: 60px;
  padding: 10px 15px;
  letter-spacing: 0.25rem;
}

@media screen and (max-width: 900px) {
  .topMessage,
  .topMessageFirst {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .topMessage,
  .topMessageFirst {
    position: absolute;
    top: 20%;
    right: 0;
    left: 0;
    margin: 0 auto;
  }
  .topMessagetxt {
    font-size: 1rem !important;
  }
}
@media screen and (max-width: 410px) {
  .topMessage,
  .topMessageFirst {
    top: 15%;
  }
  .topMessageButton {
    display: none;
  }
}
/* 3.3 Banner
/*----------------------------------------------*/
#banner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  height: 90vh;
}

.banner-content-1 {
  grid-area: 1/1/3/2;
}

.banner-content-2 {
  grid-area: 1/2/2/3;
}

.banner-content-2-btn {
  margin-bottom: 45px;
}

.banner-content-3 {
  grid-area: 2/2/3/3;
}

.banner-content-text,
.banner-content-text2,
.banner-content-text3 {
  left: 10%;
  bottom: 10%;
}

@media only screen and (max-width: 410px) {
  .banner-content-text2 {
    bottom: 5%;
  }
  .banner-content-2-btn {
    margin-bottom: 30px;
  }
}
#banner.aos-init.aos-animate .banner-content-1,
#banner.aos-init.aos-animate .banner-content-2,
#banner.aos-init.aos-animate .banner-content-3 {
  animation: parallax 1s ease-in-out forwards;
}

@keyframes parallax {
  from {
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  }
  to {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@media only screen and (max-width: 1100px) {
  #banner {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, 1fr);
    height: 140vh;
  }
  .banner-content-1 {
    grid-area: 1/1/2/2;
  }
  .banner-content-2 {
    grid-area: 2/1/3/2;
  }
  .banner-content-3 {
    grid-area: 3/1/4/2;
  }
}
/* 3.4 info
/*----------------------------------------------*/
@media only screen and (max-width: 991px) {
  .news {
    margin-bottom: 9.5rem;
  }
}
.newsDate {
  font-weight: 300;
  font-size: 1rem;
  padding-bottom: 0.5rem;
}

.frontNewsTitle {
  font-size: 1.2rem;
}

.accordion-item {
  background: none;
}

.accordion-button {
  background: none;
  line-height: 127%;
  color: var(--black-color);
}

@media only screen and (max-width: 599px) {
  .accordion-button p,
  .accordion-body p {
    font-size: 1.1rem;
  }
}
.accordion-button:focus {
  border: none;
  outline: 0;
  box-shadow: none;
}

.accordion-button:not(.collapsed) {
  color: var(--black-color);
  background: none;
  box-shadow: none;
}

.accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  transform: rotate(-180deg);
}

.accordion-body {
  padding-top: 0;
}

.frontFaq {
  font-weight: 500 !important;
}

.cashless-link a:link {
  color: #007aff !important;
}

/* 3.6 Menu
/*----------------------------------------------*/
.priceTable {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
  padding-bottom: 60px;
}

.row-price {
  font-family: var(--serif-font);
  font-size: 22px;
  padding-bottom: 170px !important;
}
.row-price tr {
  position: relative;
}
.row-price tr .recommend {
  position: absolute;
  top: 13px;
  left: 95px;
  font-size: 13px;
  border-radius: 4px;
  display: inline-block;
  margin: 0 0.1em 0.6em 0;
  padding: 0.6em;
  line-height: 1;
  text-decoration: none;
  color: #ffffff;
  background-color: #ff7d8f;
  border: 1px solid #bf1329;
}

.menuCaution p {
  font-size: 18px;
  margin-top: 10px;
}

.businessTrip .row h3 {
  text-align: center;
  margin-bottom: 2.5rem;
}
.businessTrip .row p {
  text-align: center;
}

@media screen and (max-width: 599px) {
  .row-price tr .recommend {
    left: 85px;
    font-size: 12px;
  }
  .menuCaution p {
    font-size: 16px;
  }
}
#menuOption h3 {
  text-align: center;
  margin-bottom: 25px;
}
#menuOption h4 {
  text-align: center;
  margin-bottom: 10px;
}
#menuOption .optionDescription {
  padding-top: 15px;
}

.tdPrice {
  text-align: right;
}

@media screen and (max-width: 767px) {
  #menuOption .optionBox {
    margin-bottom: 40px;
  }
}
/* 3.7 Map
/*----------------------------------------------*/
#accessWrap {
  position: relative;
}

#map {
  width: 100%;
  height: 600px;
  margin-top: 50px !important;
}

@media only screen and (max-width: 599px) {
  .accessExplanation p {
    font-size: 1.1rem;
  }
}
.accessExplanation {
  margin-bottom: 45px;
}
.accessExplanation p {
  font-family: var(--serif-font);
}
.accessExplanation a {
  text-decoration: underline !important;
}

.accessGuide {
  font-size: 1.4rem;
  font-weight: 400;
  margin-bottom: 30px;
}

/* 3.7 Video
/*----------------------------------------------*/
.video-section.jarallax {
  min-height: 825px;
}

/* overide */
.modal-dialog {
  max-width: 800px;
  margin: auto;
  height: 100vh;
  display: flex;
  align-items: center;
}

.modal-content {
  padding: 0;
  background-color: #f5f3ef;
  border: none;
  border-radius: 0;
}

.text-pattern {
  animation: rotation 50s infinite linear;
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}
div.vid_contents {
  width: 100%;
  /*背景色を横幅いっぱいに広げる*/
  text-align: center;
  margin: auto;
}

video.vid_main {
  width: 100%;
  max-width: 920px;
  /*PC版での最大幅*/
}

.instagram-post iframe {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 3.8 Contact
/*----------------------------------------------*/
.contactImage {
  position: relative;
  background-image: url(/wp-content/themes/morispa_theme/images/banner-image2.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 500px;
}
.contactImage:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

.contact-info p {
  font-family: var(--serif-font);
}
.contact-info p span {
  font-weight: 500;
}

.frontContact h3,
.frontContact p {
  text-align: left;
}
.frontContact .tel {
  font-size: 2.8rem;
}
.frontContact .time {
  font-weight: bold;
  font-size: 1rem;
}
.frontContact .formContact {
  display: block;
  width: 80%;
  height: 90px;
  margin-top: 30px;
  padding: 25px 0;
  background-color: #fff;
  color: #111;
  font-size: 1.7rem;
  text-align: center;
  transition: all 0.5s;
}
.mailInput {
  box-sizing: border-box;
  padding: 20px 15px;
  border-radius: 3px;
}

.mailInput p {
  font-size: 15px;
  margin-bottom: 20px;
}

.mailError {
  padding: 15px 15px 10px 15px;
  margin-bottom: 10px;
  border: 1px solid #ccc;
}

.mailError li {
  color: orange;
  padding: 6px 0;
}

.contactform label {
  font-size: 15px;
  font-weight: 500;
}

.contactform .labelName {
  display: inline-block;
  margin-bottom: 10px;
}

.require {
  color: #fff;
  background: #ff9dc1;
  font-size: 11px;
  padding: 0 3px;
  margin-left: 8px;
  border: 1px solid #ff9dc1;
}

.formError .formErrorContent {
  background: orange !important;
  border: none !important;
  box-shadow: 0 0 2px #000 !important;
  -moz-box-shadow: 0 0 2px #000 !important;
  -webkit-box-shadow: 0 0 2px #000 !important;
  -o-box-shadow: 0 0 2px #000 !important;
  padding: 6px 5px 6px 10px !important;
  border-radius: 2px !important;
  -moz-border-radius: 2px !important;
  -webkit-border-radius: 2px !important;
  -o-border-radius: 2px !important;
}

.formError .formErrorArrow div {
  background: orange !important;
}

.wpcf7-mail-sent-ok {
  font-size: 16px;
  line-height: 1.5;
  text-align: justify;
}

div.wpcf7-mail-sent-ok {
  border: 2px solid #398f14;
}

.thanks p {
  font-size: 26px;
  line-height: 1.8;
  text-align: center;
  padding: 50px;
  margin-bottom: 200px;
}

/******************************/
/** コンタクトフォームの装飾　entryページ**/
/******************************/
/*　フォーム全体　*/
#entry .cf7-item {
  position: relative;
}
#entry .cf7-req {
  position: absolute;
  left: 150px;
}
#entry #cf7-area {
  width: 100%;
  margin: 0 auto;
  font-family: “遊ゴシック”, ”ヒラギノ角ゴ”, ”メイリオ”, ”MS Pゴシック”, sans-serif;
}
#entry #cf7-area .cf7-item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0 0 1.75em;
}
#entry #cf7-area .cf7-item .cf7-q {
  width: 30%;
  margin: 0 0 0 10px;
}
#entry #cf7-area .cf7-item .cf7-a {
  width: 60%;
}
#entry {
  /*　見出し　*/
}
#entry .form-heading {
  width: 100%;
  background-color: #191970;
  border-left: 1em solid #6495ED;
  border-radius: 2px;
  color: #ffffff;
  font-weight: bold;
  padding: 1em 0.8em;
  margin: 0 0 2em;
}
#entry .form-heading p {
  margin: 0;
}
#entry {
  /* 各項目共通 */
}
#entry #cf7-area label {
  font-weight: bold;
}
#entry #cf7-area input[type=”text”],
#entry #cf7-area input[type=”email”],
#entry #cf7-area input[type=”tel”],
#entry #cf7-area textarea {
  background: #F0F8FF;
  width: 500px;
  margin-left: 10px;
}
#entry #cf7-area input[type=”text”]:focus,
#entry #cf7-area input[type=”email”]:focus,
#entry #cf7-area input[type=”tel”]:focus,
#entry #cf7-area textarea:focus {
  background: #FFE4E1;
  border: 2px solid #FF1493;
  outline: 0;
}
#entry #cf7-area input[type=”checkbox”],
#entry #cf7-area input[type=”radio”] {
  appearance: auto;
}
#entry #cf7-area .wpcf7-list-item {
  display: block;
}
#entry #cf7-area textarea {
  height: 200px;
  padding: 0.625em 0.4375em;
}
#entry .cf7-accept-check {
  text-align: center;
  margin: 50px auto;
}
#entry .cf7-submit {
  width: 40%;
  margin: 0 auto;
  text-align: center;
}
#entry #cf7-area input[type=”submit”] {
  width: 100%;
  background-color: #191970;
  color: #ffffff;
  border-radius: 5px;
  font-size: 1.2em;
  padding: 1em 10px;
}
#entry #cf7-area input[type=”submit”]:hover {
  background-color: #ffffff;
  border: 2px solid #191970;
  color: #191970;
}
#entry .cf7-btn {
  width: 40%;
  margin: 0 auto;
  text-align: center;
}
#entry {
  /*　必須ラベル　*/
}
#entry .cf7-req {
  font-size: 0.8em;
  padding: 4px 6px;
  background: #eb2a2a;
  color: #ffffff;
  margin-left: 10px;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  #entry .cf7-item {
    display: block;
  }
  #entry #cf7-area label {
    display: block;
    margin-bottom: 10px;
  }
  #entry .cf7-q {
    width: 100%;
    margin: 0;
  }
  #entry .cf7-req {
    left: 100px;
  }
  #entry .cf7-a {
    width: 100%;
  }
  #entry #cf7-area input[type=”text”],
  #entry #cf7-area input[type=”email”],
  #entry #cf7-area input[type=”tel”],
  #entry #cf7-area textarea {
    margin-left: 0;
  }
  #entry .cf7-submit {
    width: 90%;
  }
}

/******************************/
@media only screen and (max-width: 599px) {
  .inquiry-item .contactBelow {
    font-size: 1.1rem;
  }
}
.grecaptcha-badge {
  bottom: 50px !important;
}

.entry-text {
  margin-bottom: 60px;
}

.recruitEntryBtn {
  margin-top: 60px;
  margin-bottom: 30px;
}
.recruitEntryBtn a {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  max-width: 200px;
  padding: 15px 20px;
  color: #313131;
  transition: 0.3s ease-in-out;
  font-weight: 600;
  background: #fdc3cb;
  filter: drop-shadow(0px 2px 4px #fedce1);
  border-radius: 3px;
}
.recruitEntryBtn a:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
}
.recruitEntryBtn a:after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 3px solid #313131;
  border-right: 3px solid #313131;
  transform: rotate(45deg) translateY(-48%);
  position: absolute;
  top: 48%;
  right: 20px;
  border-radius: 1px;
  transition: 0.3s ease-in-out;
}

.wpcf7-form-control-wrap[data-name=born-y] .wpcf7-select {
  width: 80px;
  margin-right: 10px;
}

.wpcf7-form-control-wrap[data-name=born-m] .wpcf7-select,
.wpcf7-form-control-wrap[data-name=born-d] .wpcf7-select {
  width: 80px;
  margin-left: 15px;
  margin-right: 10px;
}

.wpcf7-form-control-wrap[data-name=select-pref] .wpcf7-select {
  width: 160px;
}

.wpcf7-form-control-wrap[data-name=text-city] .wpcf7-text {
  width: 160px;
  margin-left: 25px;
}

.recruitEntry {
  text-align: center;
}
.recruitEntry input[type=submit] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  align-items: center;
  margin: 0 auto;
  margin-top: 40px;
  max-width: 240px;
  padding: 15px 20px;
  color: #313131;
  transition: 0.3s ease-in-out;
  font-weight: 600;
  background: #fdc3cb;
  filter: drop-shadow(0px 2px 4px #fedce1);
  border-radius: 3px;
}
.recruitEntry span.wpcf7-spinner {
  display: none;
}

.wpcf7-textarea {
  border: solid 1px;
  border-radius: 3px;
  padding-left: 10px;
  padding-right: 10px;
}

.wpcf7-list-item.first {
  margin: 0;
}

.wpcf7-list-item-label {
  cursor: pointer;
  display: flex;
}

/* デフォルトのボタン */
input[type=radio] {
  opacity: 0;
  /* デフォルトのボタンを非表示 */
  position: absolute;
}

/* チェック前のボタン */
.wpcf7-list-item-label::before {
  background: #fff;
  border: 1px solid #333;
  border-radius: 100%;
  /* ラジオボタンっぽく丸くする */
  content: "";
  height: 1.1em;
  margin-bottom: auto;
  margin-right: 0.5em;
  margin-top: auto;
  transition: background-color 0.5s;
  /* 色をじんわり変化させる */
  width: 1.1em;
}

/* チェック後のボタン */
input[type=radio]:checked + .wpcf7-list-item-label::before {
  background-color: #7fbfff;
  /* チェック後の中心の色 */
  box-shadow: inset 0 0 0 3px #fff;
  /* 中心の色のスタイル */
}

.wpcf7-form-control-wrap[data-name=entry-radio] .wpcf7-list-item-label {
  font-size: 18px;
  margin-right: 10px;
}

@media only screen and (max-width: 599px) {
  .wpcf7-form-control-wrap[data-name=born-y] .wpcf7-select {
    width: 17%;
  }
  .wpcf7-form-control-wrap[data-name=born-m] .wpcf7-select,
  .wpcf7-form-control-wrap[data-name=born-d] .wpcf7-select {
    width: 16%;
  }
  .wpcf7-form-control-wrap[data-name=select-pref] .wpcf7-select {
    width: 43%;
  }
  .wpcf7-form-control-wrap[data-name=text-city] .wpcf7-text {
    width: 43%;
  }
}
#entry-thanks {
  height: 100vh;
}
#entry-thanks .container p {
  text-align: center;
  font-size: 18px;
}

/* 3.8 Footer
/*----------------------------------------------*/
/*------------ Social Icon -----------*/
.social-icons {
  margin-top: 80px;
}

.social-links svg {
  width: 30px;
  height: 30px;
  color: var(--gray-color-500);
  transition: 0.3s ease;
}

.post-grid .social-links svg {
  width: 40px;
  height: 40px;
}

.social-links svg:hover {
  color: var(--primary-color);
}

.social-links li {
  padding-right: 30px;
}

.footer-left p {
  font-family: var(--serif-font);
  font-size: 0.9rem;
  font-weight: 400;
}

.footerTel {
  font-size: 1.1rem !important;
}

.footerResevation {
  text-decoration: underline;
}

.menu-list {
  font-family: var(--serif-font);
  letter-spacing: 0.1em;
}

.footer-lang-dropdown .nav-link {
  font-weight: 400;
  padding: 0;
}

.reservationButton,
.reservationButtonEn {
  background-color: var(--bookBtn-color) !important;
  position: fixed;
  bottom: 3px;
  right: 0;
  width: 136px;
  padding: 6px 14px;
  border-radius: 5px;
  border: 1px solid #808080 !important;
  z-index: 1000;
  box-shadow: 2px 2px 4px gray !important;
}
.reservationButton a,
.reservationButtonEn a {
  color: #808080;
  font-weight: 500;
  font-size: 0.95rem;
}

.reservationButtonEn {
  font-weight: 600;
  letter-spacing: 0.2rem;
  transition: 0.4s;
}

.reservationButtonEn:hover {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0);
}

.modal-header {
  border-bottom: 1px solid transparent !important;
}

.modal-content {
  background-image: url(/wp-content/themes/morispa_theme/images/bg_body01.jpg);
}

.modal-body {
  padding: 40px !important;
}

.modalFormBtn {
  background-color: var(--bookBtn-color);
  padding: 6px 48px;
  border-radius: 7px;
  border: 2px solid #808080 !important;
}

.modalBookBtn {
  background-color: var(--bookBtn-color);
  padding: 8px 20%;
  border-radius: 7px;
  border: 2px solid #808080 !important;
}

.whatsUpBtn,
.bookOnline,
.bookFromForm,
.phoneNo,
.mailAdress {
  text-align: center;
  margin-bottom: 45px;
}

.phoneNo {
  background-color: var(--bookBtn-color);
  font-size: 1.2rem;
  padding: 4px 10px;
  border-radius: 7px;
  border: 2px solid #808080 !important;
}

.mailAdress {
  background-color: var(--bookBtn-color);
  font-size: 0.9rem;
  padding: 7px 0 8px 0;
  border-radius: 7px;
  border: 2px solid #808080 !important;
}

@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media only screen and (max-width: 575px) {
  .modal-body {
    padding: 25px !important;
  }
  .phoneNo {
    width: 190px;
    margin: 0 auto;
    margin-bottom: 40px;
  }
  .mailAdress {
    width: 190px;
    margin: 0 auto;
    margin-bottom: 40px;
  }
}
/* 4. PAGES
/*----------------------------------------------*/
/* 4.1 FrontPage Section About
/*----------------------------------------------*/
#about .about-content {
  position: absolute;
  min-width: 50%;
  min-height: fit-content;
  max-height: fit-content;
  padding: 60px;
  background-color: var(--gray-color-300);
}

#about.aos-init.aos-animate img.single-image {
  animation: parallax 0.8s ease-in-out forwards;
}

@keyframes parallax {
  from {
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  }
  to {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@media only screen and (max-width: 1200px) {
  #about .about-content {
    min-width: 70%;
  }
}
@media only screen and (max-width: 991px) {
  #about .about-content {
    position: unset;
    padding: 40px;
  }
  .accessExplanation {
    position: static;
  }
}
/* 4.2 Staff Page
/*----------------------------------------------*/
#staff .staff {
  margin-bottom: 5rem;
}
#staff .staffImage img {
  width: 100%;
}
#staff .staffContent {
  font-size: 1.1rem;
  margin-bottom: 2.2rem;
  padding-left: 1.4rem;
}
#staff .staffContent .staffTitle {
  margin-bottom: 2rem;
}
#staff .staffContent .staffDescriptionText span {
  display: inline-block;
  overflow-wrap: anywhere;
  word-break: normal;
}
#staff .career h3, #staff .career p {
  text-align: center;
}
#staff .staffTitle span {
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .staffContent {
    padding-left: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .staffTitle span {
    display: block;
    padding-bottom: 0.4rem;
  }
  .staffImage {
    text-align: center;
    margin-bottom: 4rem;
  }
  .staffContent {
    text-align: center;
  }
}
/* 4.3 Menu Page
--------------------------------------------------------------*/
#menu .menu-content {
  position: absolute;
  min-width: 50%;
  min-height: fit-content;
  max-height: fit-content;
  padding: 60px;
  background-color: rgba(247, 247, 247, 0.7);
}
#menu .menu-content p {
  font-family: var(--serif-font);
}

@media only screen and (max-width: 991px) {
  #menu .menu-content {
    background-color: var(--gray-color-300);
  }
}
.menu-content02 p {
  font-family: var(--serif-font);
}

#menu.aos-init.aos-animate img.single-image {
  animation: parallax 0.8s ease-in-out forwards;
}

@keyframes parallax {
  from {
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  }
  to {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@media only screen and (max-width: 1200px) {
  #menu .menu-content {
    min-width: 70%;
  }
}
@media only screen and (max-width: 991px) {
  #menu .menu-content {
    position: unset;
    padding: 40px;
  }
  #about .ownerImage {
    width: 50%;
  }
}
#menu .row {
  padding-bottom: 120px;
}

.giftLink {
  background-color: var(--bookBtn-color) !important;
  bottom: 3px;
  right: 0;
  width: 180x;
  padding: 10px 16px;
  margin-top: 30px;
  border-radius: 5px;
  border: 1px solid #808080 !important;
  z-index: 1000;
  box-shadow: 2px 2px 4px gray !important;
}
.giftLink a {
  font-weight: 500;
}

.arrow-right {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  transform: rotate(45deg);
}

/* 4.4 Access Page
--------------------------------------------------------------*/
.accessLeft p {
  font-family: var(--serif-font);
}

.accessImage img {
  width: 100%;
}

.accessImageRight img {
  width: 100%;
}

.image-access-map,
.image-access-exterior01 {
  max-width: 60% !important;
  margin-left: 15%;
  margin-bottom: 70px;
}

/* 4.4 School Page
--------------------------------------------------------------*/
#school h3 {
  font-family: var(--serif-font);
  font-size: 1.5rem;
  padding-bottom: 15px;
}
#school h4 {
  font-size: 1.3rem;
}
#school .videoLink img {
  width: 100%;
}

.schoolLeft,
.schoolRight {
  padding: 30px;
}

.schoolLeft ul {
  padding: 20px 0;
}
.schoolLeft ul li {
  font-size: 1.3rem;
  font-family: var(--serif-font);
}

.schoolright img {
  width: 100%;
}

.schoolDescription h4,
.schoolDescription h5 {
  margin: 30px 0;
}

.frameBox {
  position: relative;
  padding: 1em 2em;
  border: 3px solid #cebd96;
  border-radius: 3px;
  margin-bottom: 90px;
}
.frameBox h3 {
  font-size: 1.3rem;
}

.frameBox .headline {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 1em;
  margin: 0;
  background-color: white;
  transform: translateY(-50%) translateX(1em);
}

.frameBox ul {
  padding: 0 10px;
  margin-bottom: 15px;
}

.frameBox ul li {
  font-family: var(--serif-font);
  font-size: 14px;
  line-height: 1.8;
}

.schoolPrice {
  display: inline-block;
  background-color: #b4a276;
  font-family: var(--serif-font);
  border-radius: 3px !important;
  margin: 15px 0 !important;
  padding: 5px 15px !important;
}
.schoolPrice p {
  color: #fff !important;
  font-size: 1rem !important;
  letter-spacing: 0.1em;
}

.frameBox p {
  font-family: var(--serif-font);
  line-height: 1.8;
  padding: 5px;
  margin-bottom: 0px;
  text-align: justify;
}

/* 4.5 Flow Page
--------------------------------------------------------------*/
.flowImage img {
  width: 100%;
}

.flowDescription {
  padding: 40px 0;
}

.processArrow img {
  width: 60px;
  margin: 0 auto;
  padding: 40px 0;
}

.treatmentDescription dd,
.treatmentDescription dt {
  font-family: var(--serif-font);
}

/* 4.6 Contact Page
--------------------------------------------------------------*/
.content-box .contact-address p {
  font-size: 1.1rem;
}

.contactContent {
  margin-bottom: 1rem;
}

.reserveLink {
  margin-bottom: 4rem;
}

/* 4.6 Blog Page
--------------------------------------------------------------*/
.entry-jp {
  line-height: 1.6;
}

.frontNewsList {
  margin-bottom: 30px;
}

.entry {
  padding-top: 30px;
}
.entry a:link {
  color: var(--link-color) !important;
}
.entry a:hover {
  text-decoration: none;
  color: var(--link-color) !important;
}
.entry a:visited {
  color: var(--visited-color) !important;
}

.post-entry {
  margin-bottom: 50px;
}
.post-entry h2,
.post-entry p {
  font-family: var(--serif-font);
}
.post-entry .excerpt {
  width: 100%;
}

.postMore a {
  display: block;
  position: relative;
  font-size: 16px;
  color: #fff !important;
  width: 120px;
  background: #b4a276;
  padding: 8px 15px;
  margin-left: auto;
}

.postMore a:after {
  display: block;
  content: "";
  position: absolute;
  top: 42%;
  right: 12px;
  width: 9px;
  height: 9px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

/*------------ Video -----------*/
.wp-video {
  margin-bottom: 50px;
}

iframe {
  width: 60%;
}

@media only screen and (max-width: 991px) {
  iframe {
    width: 100%;
  }
}
/*------------ Sidebar -----------*/
.widget.sidebar-recent-post .card-image {
  max-width: 120px;
}

.sidebar-post-item h4.card-title {
  font-size: 1.2em;
}

.sidebar-list .cat-item {
  padding-bottom: 10px;
}

/* 4.7 Search Page
--------------------------------------------------------------*/
.search-title {
  margin-bottom: 30px;
}

.search-result {
  padding-top: 15px;
  padding-bottom: 15px;
}

/* 4.8 Single Post Page
--------------------------------------------------------------*/
#single-post-navigation .post-navigation span.page-nav-title {
  font-size: 1.5em;
}

.post-navigation svg {
  width: 30px;
  height: 45px;
}

.post-navigation:hover svg,
.post-navigation:focus svg {
  fill: var(--primary-color);
}

.tags {
  font-size: 8px;
  margin-bottom: 15px;
}

.tags li {
  display: inline-block;
  margin-right: 8px;
  margin-bottom: 10px;
}

.tags a {
  line-height: 1em;
  background: #ffb6c1;
  color: #fff;
  display: inline-block;
  white-space: nowrap;
  padding: 5px 4px;
  border-radius: 2px;
  text-decoration: none;
}

.tags a:hover {
  background: #dda0dd;
  color: #ffb6c1;
}

.archive-news .card-body h2 {
  padding-bottom: 10px;
}

.card-body h2,
.card-body p {
  font-family: var(--serif-font);
}

.postPaging {
  overflow: hidden;
}

.prevPost {
  float: left;
  width: 110px;
}

.prevPost a:before {
  display: block;
  content: "";
  position: absolute;
  top: 40%;
  left: 10px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(225deg);
}

.prevPost a {
  display: block;
  position: relative;
  color: #fff !important;
  width: 105px;
  background: #b4a276;
  padding: 5px 0 5px 15px;
  margin-right: auto;
}

.nextPost {
  float: right;
  width: 110px;
}

.nextPost a {
  display: block;
  position: relative;
  color: #fff !important;
  width: 105px;
  background: #b4a276;
  padding: 5px 10px;
  margin-left: auto;
}

.nextPost a:after {
  display: block;
  content: "";
  position: absolute;
  top: 40%;
  right: 8px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

/*-----------  yarpp  -----------------*/
.yarpp-related {
  margin-top: 4em !important;
}

.yarpp-related h3 {
  font-size: 1.2rem !important;
  font-weight: 500 !important;
  margin: 0 !important;
  padding: 0 0 5px !important;
  text-transform: capitalize !important;
}

.yarpp-related a {
  font-weight: 400;
  text-decoration: none;
}

.yarpp ul li a {
  font-family: var(--serif-font);
  font-weight: 400 !important;
}

/* 4.9 Blog Category Page
--------------------------------------------------------------*/
.categoryTitle {
  margin-bottom: 50px;
}

/* 4.10  Page-en
--------------------------------------------------------------*/
.frontAboutSubTitle {
  font-size: 1rem;
}

/* 4.11  Page-en-menu
--------------------------------------------------------------*/
@media screen and (max-width: 767px) {
  .menuimage {
    margin-bottom: 20px;
  }
}
/* 4.12  Page-cn
--------------------------------------------------------------*/
/*contact-cn*/
.wechatQr {
  margin-bottom: 2rem;
}
.wechatQr img {
  width: 30%;
}

/* modal-cn */
.contactWechat {
  text-align: center;
  margin-bottom: 30px;
}
.contactWechat img {
  width: 35%;
}/*# sourceMappingURL=style.css.map */