/* ======================================================================= */

/* Table of contents　----------------------------------------------------
01. Color set
02. Fonts settings
03. Basic settings
04. Header styles
05. Page styles
06. Sidebar styles
07. Footer styles
08. Module set
09. Responsive
10. Wordpress
-------------------------------------------------------------------------- */

/* ======================================================================= */
/* 01. Color set
/* ======================================================================= */
.text-red { color: #dc143c; }

/* ======================================================================= */
/* 02. Fonts settings
/* ======================================================================= */
html {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height: 1.5;
  font-size: 16px;
  font-weight: 400;
  -webkit-tap-highlight-color: rgba(0,0,0,0.8);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  -webkit-tap-highlight-color: rgba(0,0,0,0.8);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.5;
  font-weight: 700;
  -webkit-tap-highlight-color: rgba(0,0,0,0.8);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1 span,h2 span,h3 span,h4 span,h5 span,h6 span,.h1 span,.h2 span,.h3 span,.h4 span,.h5 span,.h6 span {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 700;
  -webkit-tap-highlight-color: rgba(0,0,0,0.8);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
p,span,ul,ol,dl,li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  -webkit-tap-highlight-color: rgba(0,0,0,0.8);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
  font-size: 1rem;
  font-weight: 400;
}
.bold {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 700;
}
h1, .h1 {
  font-size: 1.6rem;
}
h2, .h2 {
  font-size: 1.5rem;
}
h3, .h3 {
  font-size: 1.4rem;
}
h4, .h4 {
  font-size: 1.3rem;
}
h5, .h5 {
  font-size: 1.2rem;
}
h6, .h6 {
  font-size: 1.1rem;
}

/* ======================================================================= */
/* 03. Basic settings
/* ======================================================================= */
html {
  background: none #FFF;
  width: 100%;
}
body {
  color: #010101;
}
::selection {
  background: #010101;
  color: #FFF;
}
::-moz-selection {
  background: #010101;
  color: #FFF;
}
a {
  color: #010101;
  transition: all .5s; 
}
a:hover { 
  color: #111;
  text-decoration: none;
  transition: all .5s;
}
:focus {
  outline: none;
}
a img {
  opacity: 1;
  transition: all .5s;
}
a:hover img {
  opacity: 0.8;
  transition: all .5s;
}
button:focus {
  outline:0;
}

.site {
  position: relative;
  overflow-x: hidden;
}
.navbar {
  padding: 0;
}

img.w-50 {
  height: auto;
}

/* ======================================================================= */
/* 04. Header styles
/* ======================================================================= */
/* Header
/* ----------------------------------------------------------------------- */
.header {
  padding: 0.5rem 0;
  height: 168px;
  border-top: 8px solid #d9a3d1;
  background-color: #FFF;
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1);
}

.is-sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99998;
}

/* Header Top
/* ----------------------------------------------------------------------- */
.header-top .logo {
  padding: .5rem 0;
}
.header-top .logo img {
  max-width: 300px;
}

.main-nav .nav-item .nav-link,
.main-nav .nav-item .nav-link span,
.main-nav .close-button .nav-link {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.1;
}
.main-nav .nav-item.active .nav-link {
  color: #b44c97;
}
.main-nav .nav-item .nav-link:hover {
  color: #c4a3bf;
}

/* ======================================================================= */
/* 05. Page styles
/* ======================================================================= */
/* Common
/* ----------------------------------------------------------------------- */
.section-title {
  margin: 0 0 1.5rem;
  text-align: center;
}
.section-title h1 {
  display: inline-block;
  margin: 0;
  padding: 0.5rem;
  border-bottom: 3px solid #d9a3d1;
}

.entry-contents div[id].page-anchor {
  display: block;
  margin-top: -20rem;
  padding-top: 20rem;
  content: "";
}

.section-inner a {
  color: #aa4c8f;
  text-decoration: underline;
}
.section-inner a:hover {
  color: #010101;
  text-decoration: none;
}

.page-header {
  position: relative;
}
.page-header .txt {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 20;
}
.page-header .txt .black-box {
  display: inline-block;
  padding: 1.5rem;
  color: #FFF;
  background-color: rgba(0,0,0,0.6);
  border-radius: 0.25rem;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.9);
}
.page-header .txt .black-box h2,
.page-header .txt .black-box p {
  margin-bottom: 0;
}
.page-header .cover {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.page-header .cover .pic {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: auto;
  transform: translate(-50%,-50%);
}
.page-header .cover .pic.top {
  position: absolute;
  left: 50%;
  top: 0;
  width: 100%;
  transform: translateX(-50%);
}

/* Main
/* ----------------------------------------------------------------------- */

.entry-body a {
  color: #aa4c8f;
  text-decoration: underline;
}
.entry-body a:hover {
  text-decoration: none;
}
.entry-body a.btn {
  text-decoration: none; 
}

.page-in-nav {
  padding: 0.75rem 0;
  background-color: #ecbde5;
}
.page-in-nav .nav-link:before {
    margin-right: .25rem;
    content: "\f13a";
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 900;
    color: rgba(0,0,0,0.2);
}
.page-in-nav .nav-link {
  color: rgba(0,0,0,0.8);
  text-decoration: none;
}
.page-in-nav .nav-link:hover {
  color: rgba(0,0,0,0.6);
}

/* profile */
.introduction-box {
  text-align: center;
  border: none;
}
.introduction-box .catchcopy {
  border-bottom: 3px solid #d9a3d1;
}
.introduction-box .card-img-top {
  margin: 0 auto;
  width: auto;
  height: 200px;
}
.introduction-box .card-footer {
  background-color: transparent;
  border: none;
}

/* contact */
.contact .form-group {
  margin: 0.75rem 0;
  padding: 0.75rem 0;
  border-top: 1px dotted #DDD;
}
.contact ol li {
  padding: 0.75rem 0;
}

/* appoint */
.appoint .form-group {
  margin: 0.75rem 0;
  padding: 0.75rem 0;
  border-top: 1px dotted #DDD;
}
.appoint .form-group .form-set {
  border-bottom: 1px dotted #DDD;
}
.appoint .form-group .day,
.appoint .form-group .time {
  display: inline-block;
  padding: 0.75rem 0;
}
.appoint .form-group .day .form-control {
  display: inline-block;
  width: auto;
}
.appoint .form-group .time .form-control {
  display: inline-block;
  width: auto;
}

/* Slider
/* ----------------------------------------------------------------------- */
.hero-slider {
  position: relative;
}
.hero-slider .title {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  text-align: center;
  transform: translate(-50%, -50%);
  z-index: 20;
}
.hero-slider .title img {
  height: 300px;
  width: auto;
}
.hero-slider .cover {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 480px;
  z-index: 2;
}
.hero-slider .cover .pic {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  min-height: 480px;
  transform: translate(-50%, -50%);
}

/* swiper */
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  text-align: center;
}
.swiper-pagination-bullet-active {
  background: #d9a3d1;
}
.swiper-button-next {
  margin-top: -2.75rem;
  background-image: none;
}
.swiper-button-prev {
  margin-top: -2.75rem;
  background-image: none;
}
.swiper-button-next::before {
  content: "\f054";
  color: #d9a3d1;
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-size: 2rem;
}
.swiper-button-prev::before {
  content: "\f053";
  color: #d9a3d1;
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-size: 2rem;
}

.news-swiper {
  margin-left: -50px;
  margin-right: -50px;
  padding-top: 50px;
  padding-left: 50px;
  padding-right: 50px;
}
.news-swiper .news-photo {
  padding: 2px;
  text-align: center;
}

.news-swiper .news-title .new {
  padding: .25rem;
  color: #FFF;
  font-size: .6rem;
  line-height: 1;
  background-color: #9b539c;
  border-radius: 2px;
}

.news-swiper .news-title {
  text-align: center;
}
.news-swiper .news-title a {
  margin: 0.5rem 0;
  padding: 0 0.5rem;
  text-align: center;
  font-size: 0.9rem;
}

.voice-swiper {
  margin-left: -50px;
  margin-right: -50px;
  padding-left: 50px;
  padding-right: 50px;
}
.voice-swiper .voice-swiper-pagination {
  counter-reset: dots;
}
.voice-swiper .voice-swiper-pagination span {
  margin: 0 0.5rem;
  padding: 2px 8px;
  width: auto;
  height: auto;
  background-color: #f9f9f9;
  border: 2px solid #d9a3d1;
  border-radius: 0;
}
.voice-swiper .voice-swiper-pagination span::before {
  display: block;
  counter-increment: dots;
  content: counter(dots);
}
.voice-box {
  padding: 1.5rem;
  background-color: #f9f9f9;
  border: 2px solid #d9a3d1;
  border-radius: 1.5rem;
}

.video-swiper {
  margin-left: -50px;
  margin-right: -50px;
  padding-left: 50px;
  padding-right: 50px;
}
.video-swiper .swiper-slide {
  padding: 2px;
}

/* Menu
/* ----------------------------------------------------------------------- */
.menu-header {
  position: relative;
}
.menu-header .title {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  text-align: center;
  transform: translate(-50%, -50%);
  z-index: 20;
}
.menu-header .title h2 {
  display: inline-block;
  padding: 0.5rem 1rem;
  color: #FFF;
  background-color: rgba(0,0,0,0.6);
  border-radius: 0.25rem;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.9);
}
.menu-header .cover {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 16rem;
  z-index: 2;
}
.menu-header .cover .pic {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: auto;
  transform: translate(-50%,-50%);
}
.menu-header .cover .pic.top {
  position: absolute;
  left: 50%;
  top: 0;
  width: 100%;
  transform: translateX(-50%);
}
.menu-body {
  display: table;
  margin: 1.5rem auto;
}
.menu-body p:last-child {
  margin-bottom: 0;
}

/* Contact
/* ----------------------------------------------------------------------- */
.contact-box {
  margin: 1rem;
}
.contact-box a {
  display: block;
  padding: 2.75rem 1.5rem 1.5rem;
  color: #FFF;
  text-decoration: none;
  text-align: center;
  background-color: #d9a3d1;
  border-radius: 1rem;
}
.contact-box a:hover {
  text-decoration: none;
  background-color: #999;
}
.contact-box .icon {
  display: block;
  font-size: 3rem;
  color: #FFF;
}

/* Note
/* ----------------------------------------------------------------------- */
.note-banner {
  text-align: center;
  background: url("../img/bg-photo-02.jpg") no-repeat center center;
  background-size: cover;
}
.note-banner .pc img {
  width: 75%;
  height: auto;
}
.note-banner .sp img {
  width: 50%;
  height: auto;
}

.history-post .date {
  margin: 0.5rem 0;
  font-size: 0.9rem;
}
.history-post .title {
  margin: 0.5rem 0;
}

/* Related link
/* ----------------------------------------------------------------------- */
.related-link-nav {
  text-align: center;
}

/* item
/* ----------------------------------------------------------------------- */
.item-box {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #DDD;
}
.item-box .item-photo {
  text-align: center;
}
.item-box .item-photo img {
  width: auto;
  max-height: 260px;
}
.item-box .catchcopy {
  padding: 0.25rem 0;
  border-bottom: 3px solid #d9a3d1;
}
.item-box .title {
  font-size: 1.2rem;
  font-weight: 700;
}
.item-box .note {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px dotted #DDD;
}
.item-box .note .item-comment-img {
  padding: 0 0.75rem;
  text-align: center;
}
.item-box .note .item-comment-img img {
  max-width: 120px;
  height: auto;
}

/* ======================================================================= */
/* 06. Sidebar styles
/* ======================================================================= */


/* ======================================================================= */
/* 07. Footer styles
/* ======================================================================= */
/* Footer
/* ----------------------------------------------------------------------- */
.footer {
  padding-top: 3rem;
  padding-bottom: 1rem;
  text-align: center;
  background-color: #d9a3d1;
}
.footer .logo {
  padding: .5rem 0;
}

.footer-nav .nav-item .nav-link {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.1;
}
.footer-nav .nav-item .nav-link::before {
  margin-right: 0.25rem;
  content: "\f152";
  color: rgba(0,0,0,0.2);
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900; 
}
.footer-nav .nav-item .nav-link:hover {
  color: #FFF;
}
.privacy-nav .nav-item .nav-link {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.1;
}
.privacy-nav .nav-item .nav-link:hover {
  color: #FFF;
}
.social-nav .facebook img {
  height: 30px;
  width: auto;
}
.social-nav .note img {
  height: 30px;
  width: auto;
}
.social-nav .hanaemi img {
  height: 40px;
  width: auto;
}

/* Copyright
/* ----------------------------------------------------------------------- */
.copyright p {
  margin: 0;
  padding: 2rem 0 1rem;
  text-align: center;
  font-size: 0.8rem;
}

/* page to top
/* ----------------------------------------------------------------------- */
#scrollTop {
  width: 100px;
  height: 100px;
}

/* ======================================================================= */
/* 08. Module set
/* ======================================================================= */
/* layout
/* ----------------------------------------------------------------------- */
.mt-30 {
  margin-top: 30px;
}
.mb-30 {
  margin-bottom: 30px;
}
.my-30 {
  margin-top: 30px;
  margin-bottom: 30px;
}
.mt-60 {
  margin-top: 60px;
}
.mb-60 {
  margin-bottom: 60px;
}
.my-60 {
  margin-top: 60px;
  margin-bottom: 60px;
}

.pt-30 {
  padding-top: 30px;
}
.pb-30 {
  padding-bottom: 30px;
}
.py-30 {
  padding-top: 30px;
  padding-bottom: 30px;
}
.pt-60 {
  padding-top: 60px;
}
.pb-60 {
  padding-bottom: 60px;
}
.py-60 {
  padding-top: 60px;
  padding-bottom: 60px;
}

.txt-5r {
  display: inline-block;
  width: 5rem;
}

/* size
/* ----------------------------------------------------------------------- */
.w-75 {
  width: 75%;
  height: auto;
}

/* font
/* ----------------------------------------------------------------------- */
.fs11r { font-size: 1.1rem; }
.fs12r { font-size: 1.2rem; }
.fs13r { font-size: 1.3rem; }
.fs14r { font-size: 1.4rem; }
.fs15r { font-size: 1.5rem; }

/* Radius
/* ----------------------------------------------------------------------- */
.rounded-15r {
  border-radius: 1.5rem;
}

/* Button
/* ----------------------------------------------------------------------- */
.btn.normal {
  color: #FFF;
  background-color: #aa4c8f;  
}
.btn.normal::before {
  margin-right: 0.25rem;
  content: "\f138";
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  opacity: 0.4;
}

/* Icon
/* ----------------------------------------------------------------------- */
.icon {
  display: block;
  font-size: 2rem;
  color: #aa4c8f;
}

/* List
/* ----------------------------------------------------------------------- */
ul.none {
  list-style: none;
  padding: 0;
}
ul.none li {
  list-style: none;
}

/* Accordion
/* ----------------------------------------------------------------------- */
.accordion {
  margin-bottom: 1.5rem;
}
.accordion .card-header {
  padding: 0;
}
.accordion .card-header a {
  position: relative;
  display: block;
  cursor: pointer;
  padding: 1rem;
  font-size: 1.3rem;
  font-weight: 700;
  text-decoration: none;
}
.accordion .card-header a i {
  color: #aa4c8f;
  font-size: 2rem;
  width: 2.5rem;
  text-align: center;
}
.accordion .card-header a::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-right: 0.25rem;
  content: "\f146";
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  opacity: 0.2;
  transform: translateY(-50%);
}
.accordion .card-header a.collapsed::after {
  content: "\f0fe"
}

/* Flow
/* ----------------------------------------------------------------------- */
.flow-step .nav-item {
  position: relative;
  margin-right: 3.5rem;
  padding: 1rem;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  background-color: #aa4c8f;
  border-radius: 0.75rem;
}
.flow-step .nav-item:last-child {
  margin-right: 0;
}
.flow-step .nav-item::after {
  position: absolute;
  top: 50%;
  right: -3.25rem;
  content: "\f054";
  color: #DDD;
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-size: 2rem;
  transform: translateY(-50%);
}
.flow-step .nav-item:last-child::after {
  display: none;
  content: none;
}

/* Table
/* ----------------------------------------------------------------------- */
.table.custom th,
.table.custom td {
  vertical-align: middle;
}
.table.custom p:last-child {
  margin-bottom: 0;
} 
.table-striped.custom tbody tr:nth-of-type(odd) {
  background-color: rgba(0,0,0,.025);
}

/* Form
/* ----------------------------------------------------------------------- */
.form-label {
  position: relative;
  width: 100%;
}
.form-label .required {
  position: absolute;
  right: 0;
  top: 50%;
  color: #FFF;
  background-color: maroon;
  transform: translateY(-50%);
}

/* Box
/* ----------------------------------------------------------------------- */
.color-box {
  padding: 1.5rem;
  background-color: #f9f9f9;
  border-radius: 1rem;
}
.color-box p:last-child,
.color-box ul:last-child,
.color-box ol:last-child {
  margin-bottom: 0;
}

.urgency-box {
  padding: 1.5rem;
  border: 3px solid #dc143c;
  background-color: #fff5f7;
  border-radius: 1rem;
}
.urgency-box h2 {
  color: #dc143c;
  border-bottom: 1px dotted #dc143c;
}
.urgency-box p:last-child,
.urgency-box ul:last-child,
.urgency-box ol:last-child {
  margin-bottom: 0;
}

.faq-box {
  margin: 0.75rem;
  padding: 0.75rem;
  border-bottom: 1px dotted #DDD;
}
.faq-box .question {
  position: relative;
  padding-left: 1.5rem;
}
.faq-box .question::before {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  position: absolute;
  content: "Q";
  left: 0;
  color: #2ca9e1;
}
.faq-box .answer {
  position: relative;
  padding-left: 1.5rem;
}
.faq-box .answer::before {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  position: absolute;
  content: "A";
  left: 0;
  color: #d9333f;
}


/* Video
/* ----------------------------------------------------------------------- */
.video-box {
  margin: 0 auto 1rem;
  position: relative;
  width: 100%;
  text-align: center;
  padding-top: 56.25%;
}

.video-box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.video-title {
  margin: 0;
  padding: 0 1rem;
  text-align: center;
  font-size: 0.85rem;
}

/* ======================================================================= */
/* 09. Responsive
/* ======================================================================= */
/* responsive
/* ----------------------------------------------------------------------- */
@media (max-width: 991.98px) {
  .header {
    height: 90px;
  }
  .header-top .logo img {
    max-width: 160px;
  }
  .navbar-light .navbar-collapse {
    padding: 1.5rem;
    background-color: #f9f9f9;
  }
  .main-nav {
    padding: 1.5rem;
    background-color: #FFF;
    border: 3px solid #DDD;
    border-radius: 1.5rem;
  }
  .main-nav .nav .nav-item {
    border-bottom: 1px dotted #DDD;
  }
  .main-nav .nav .nav-item .nav-link {
    padding: 0.75rem;
    font-size: 1rem;
  }
  .main-nav .nav .nav-item .nav-link::before {
    margin-right: 0.25rem;
    content: "\f138";
    color: #DDD;
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 900; 
  }
  .main-nav .close-button .nav-link {
    color: #666;
    font-size: 1.1rem;
  }
  
  .page-header .txt {
    position: relative;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transform: translate(0, 0);
  }
  .page-header .txt .black-box {
    width: 100%;
    color: #010101;
    text-align: center;
    background-color: #FFF;
    box-shadow: none;
  }
  .page-header .cover {
    height: 240px;
  }
  .page-header .cover .pic {
    min-height: 240px;
  }
  
  .hero-slider .title img {
    height: 200px;
  }
  .hero-slider .cover {
    height: 320px;
  }
  .hero-slider .cover .pic {
    min-height: 320px;
  }
  
  .section-inner {
    padding: 0 1.5rem;
  }
  
  .profile-box .photo img {
    max-width: 200px;
    height: auto;
  }
  
  .footer .logo img {
    max-width: 200px;
  }
  .footer-nav {
    padding-right: 0;
    background: none;
  }
  .footer-nav .nav-item .nav-link {
    font-size: 0.8rem;
  }
  #scrollTop {
    width: 75px;
    height: 75px;
  }
  
  .flow-step .nav-item {
    display: block;
    position: relative;
    margin-right: 0;
    margin-bottom: 3rem;
    color: #FFF;
    width: 100%;
    text-align: center;
  }
  .flow-step .nav-item:last-child {
    margin-bottom: 0;
  }
  .flow-step .nav-item::after {
    position: absolute;
    top: 3.5rem;
    right: 50%;
    content: "\f078";
    transform: translateX(50%);
  }
  
  .history-post {
    text-align: center;
  }
  
}
@media (max-width: 767.98px) {
  html, body {
    font-size: 14px;
    line-height: 1.25;
  }
  .page-in-nav {
    display: none;
  }
  .scroll {
    overflow: auto;
    white-space: nowrap;
  }
  .scroll::-webkit-scrollbar {
     height: 5px;
  }
  .scroll::-webkit-scrollbar-track {
     background: #F1F1F1;
  }
  .scroll::-webkit-scrollbar-thumb {
     background: #BCBCBC;
  }
  #scrollTop {
    display: none;
  }
  .mt-30 {
    margin-top: 15px;
  }
  .mb-30 {
    margin-bottom: 15px;
  }
  .my-30 {
    margin-top: 15px;
    margin-bottom: 15px;
  }
  .mt-60 {
    margin-top: 30px;
  }
  .mb-60 {
    margin-bottom: 30px;
  }
  .my-60 {
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .pt-30 {
    padding-top: 15px;
  }
  .pb-30 {
    padding-bottom: 15px;
  }
  .py-30 {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .pt-60 {
    padding-top: 30px;
  }
  .pb-60 {
    padding-bottom: 30px;
  }
  .py-60 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  
  .table.custom th,
  .table.custom td {
    display: block;
  }
  .table.custom td {
    border-top: none;
  }
}

@media (min-width: 992px) {
  .section-inner {
    padding: 0 8rem;
  }
  .is-sticky {
    -webkit-animation: .95s ease-in-out 0s normal none 1 running fadeInDown;
            animation: .95s ease-in-out 0s normal none 1 running fadeInDown;
  }
  @-moz-document url-prefix() {
    .main-nav .nav-item {
      height: 144px;
      text-align: start;
      display: grid;
      overflow: hidden;
    }
  }
  .page-header {
    height: 480px;
  }
  .page-header .txt .black-box,
  .main-nav .nav-item .nav-link,
  .flow-step li {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
  }
  
  .px-lg-10 {
    padding-left: 10rem !important;
    padding-right: 10rem !important;
  }
  
}

/* ======================================================================= */
/* 10. Wordpress
/* ======================================================================= */
/* breadcrumbs
/* ----------------------------------------------------------------------- */
.breadcrumbs {
  margin-bottom: 1.5rem;
  padding: 1.5rem 0.75rem;
  text-align: right;
  color: #555;
  font-size: 0.75rem;
}
.breadcrumbs .arrow {
  color: #DDD;
  margin: 0 0.5rem;
}
.breadcrumbs a {
  color: #999;
  font-size: 0.75rem;
}
.breadcrumbs a:hover {
  color: #c9caca;
}

/* wp-pagenavi
/* ----------------------------------------------------------------------- */
.wp-pagenavi {
  clear: both;
  margin: 30px 0;
  padding: 10px;
  font-size: 1rem;
}

.wp-pagenavi a {
  color: #FFF !important;
  text-decoration: none !important;
}

.wp-pagenavi a, .wp-pagenavi span {
  margin: 2px 5px;
  padding: 8px 16px;
  text-decoration: none;
  background: none #aa4c8f;
  color: #FFF;
  border-radius: 4px;
}

.wp-pagenavi .current,
.wp-pagenavi a:hover {
  color: #cca42f;
  background: none #f6f6f6;
}

/* WordPress Core
/* ----------------------------------------------------------------------- */

blockquote {
  position: relative;
  background: #f9f9f9;
  margin: 1.5rem 0;
  padding: 1.5rem;
  display: block;
}
blockquote:before {
  content: "\f10e";
  color: #DDD;
  font-family: FontAwesome;
  font-size: 1rem;
  top: 0.5rem;
  left: 0.5rem;
  text-align: center;
  position: absolute;
  z-index: 1;
}
blockquote p:last-child {
  margin: 0;
}

.gallery-item dl {
	margin: 5px auto 1.5em;
	padding: 10px;
}

.gallery-caption {
	margin: 5px 0;
	text-align: center;
	font-size: 11px;
}

.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

.gallery-box {
  overflow: hidden;
  margin-bottom: 50px;
  text-align: center;
  width: 100%;
}

.gallery-item img {
  border: 1px solid #DDD !important;
  padding: 2px;
}

.caption-no .gallery-caption {
  display: none;
}

/* ======================================================================= */