@charset "UTF-8";
/*
Theme Name: habakiri-child
Theme URI: http://2inc.org
Description: Habakiri の子テーマです
Author: Takashi Kitajima
Author URI: http://2inc.org
Version: 1.0.0
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Template: habakiri
*/
/*!
Theme Name: habakiri
Theme URI: http://habakiri.2inc.org/en/
Author: inc2734
Author URI: http://2inc.org
Description: Habakiri is the simple theme based on Bootstrap 3. This theme's goal is to create a responsive, bootstrap based WordPress theme quickly. The design is very simple, easy to create of child theme. Features are, 100% responsive layouts, the Glyphicons, Genericons, Font Awesome icons, 7 page templates, 8 header design patterns, many color settings, a lot of hooks, related posts, minified CSS and JavaScript, Sass and PHP Class in functions.php.
Version: 2.5.2
Text Domain: habakiri
License: GPLv2 or later
License URI: license.txt
Tags: white, fixed-layout, fluid-layout, responsive-layout, one-column, two-columns, left-sidebar, right-sidebar, editor-style, sticky-post, microformats, featured-images, custom-colors, custom-menu, custom-background, custom-colors
*/
@import './src/js/jquery.responsive-nav/jquery.responsive-nav.css';
@import './src/js/slick/slick.css';
/*==================================================
 * classes
 *================================================*/
.page-header {
  background-position: center center;
  background-size: cover;
  margin: 0;
  padding: 64px 0;
}
@media (min-width: 768px) {
  .page-header {
    background-attachment: fixed;
  }
}
.page-header--has_background-image {
  padding-top: 160px;
  padding-bottom: 160px;
}
.page-header__title {
  font-size: 28px;
  margin: 0;
}
.page-header__description {
  margin-top: 20px;
  margin-bottom: -11.5px;
}

.breadcrumbs {
  margin-bottom: 30px;
  font-size: 12px;
  color: rgb(119.085, 119.085, 119.085);
}
.breadcrumbs a:link, .breadcrumbs a:visited, .breadcrumbs a:hover, .breadcrumbs a:active {
  color: rgb(119.085, 119.085, 119.085);
}
.breadcrumbs strong {
  font-weight: normal;
}

.sticky .entry__title:before {
  content: "FEATURED";
  display: inline-block;
  background-color: #333333;
  border-radius: 3px;
  color: #fff;
  font-size: 12px;
  margin-top: -2px;
  margin-right: 10px;
  padding: 4px 10px;
  vertical-align: middle;
}

.entry-meta {
  border-bottom: 1px solid #ddd;
  font-size: 12px;
  margin-bottom: 30px;
  padding-bottom: 10px;
}
.entry-meta__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.entry-meta__item {
  display: inline-block;
  margin-right: 10px;
}

.pagination li > span {
  border-color: rgb(51.4340909091, 122.2772727273, 183.4159090909);
  color: #fff;
}

.btn-ghost, .habakiri-slider__item-content .btn-default, .jumbotron .btn-default {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
}
.btn-ghost:hover, .habakiri-slider__item-content .btn-default:hover, .jumbotron .btn-default:hover, .btn-ghost:active, .habakiri-slider__item-content .btn-default:active, .jumbotron .btn-default:active {
  background-color: rgba(255, 255, 255, 0.3);
}

.jumbotron {
  margin-bottom: 0;
  padding: 160px 15px;
}
.container .jumbotron, .container-fluid .jumbotron {
  border-radius: 0;
  padding-right: 15px;
  padding-left: 15px;
}
.jumbotron p {
  font-size: 100%;
}
.jumbotron .btn {
  margin: 40px 0 0;
}
div.thumbnail {
  background-color: transparent;
  border: none;
  padding: 0;
}
div.thumbnail > img {
  text-align: center;
}
div.thumbnail .caption {
  padding: 0;
}

.widget_recent_entries ul,
.widget_recent_comments ul,
.widget_archive ul,
.widget_categories ul,
.widget_meta ul,
.widget_pages ul,
.widget_nav_menu ul {
  list-style: none;
  padding-left: 0;
}
.widget_recent_entries ul li,
.widget_recent_comments ul li,
.widget_archive ul li,
.widget_categories ul li,
.widget_meta ul li,
.widget_pages ul li,
.widget_nav_menu ul li {
  padding: 4px 0;
}
.widget_recent_entries ul li li,
.widget_recent_comments ul li li,
.widget_archive ul li li,
.widget_categories ul li li,
.widget_meta ul li li,
.widget_pages ul li li,
.widget_nav_menu ul li li {
  padding-left: 1.5em;
}
.widget_recent_entries ul li li li,
.widget_recent_comments ul li li li,
.widget_archive ul li li li,
.widget_categories ul li li li,
.widget_meta ul li li li,
.widget_pages ul li li li,
.widget_nav_menu ul li li li {
  padding-left: 3em;
}
.widget_recent_entries ul li li li li,
.widget_recent_comments ul li li li li,
.widget_archive ul li li li li,
.widget_categories ul li li li li,
.widget_meta ul li li li li,
.widget_pages ul li li li li,
.widget_nav_menu ul li li li li {
  padding-left: 4.5em;
}
.widget_recent_entries ul li li li li li,
.widget_recent_comments ul li li li li li,
.widget_archive ul li li li li li,
.widget_categories ul li li li li li,
.widget_meta ul li li li li li,
.widget_pages ul li li li li li,
.widget_nav_menu ul li li li li li {
  padding-left: 6em;
}
.widget_recent_entries ul li li li li li li,
.widget_recent_comments ul li li li li li li,
.widget_archive ul li li li li li li,
.widget_categories ul li li li li li li,
.widget_meta ul li li li li li li,
.widget_pages ul li li li li li li,
.widget_nav_menu ul li li li li li li {
  padding-left: 7.5em;
}
.widget_recent_entries ul li ul,
.widget_recent_comments ul li ul,
.widget_archive ul li ul,
.widget_categories ul li ul,
.widget_meta ul li ul,
.widget_pages ul li ul,
.widget_nav_menu ul li ul {
  margin-top: 4px;
  margin-bottom: -4px;
}
.widget_recent_entries ul li ul ul,
.widget_recent_comments ul li ul ul,
.widget_archive ul li ul ul,
.widget_categories ul li ul ul,
.widget_meta ul li ul ul,
.widget_pages ul li ul ul,
.widget_nav_menu ul li ul ul {
  margin-left: -1.5em;
}
.widget_recent_entries ul li ul ul ul,
.widget_recent_comments ul li ul ul ul,
.widget_archive ul li ul ul ul,
.widget_categories ul li ul ul ul,
.widget_meta ul li ul ul ul,
.widget_pages ul li ul ul ul,
.widget_nav_menu ul li ul ul ul {
  margin-left: -3em;
}
.widget_recent_entries ul li ul ul ul ul,
.widget_recent_comments ul li ul ul ul ul,
.widget_archive ul li ul ul ul ul,
.widget_categories ul li ul ul ul ul,
.widget_meta ul li ul ul ul ul,
.widget_pages ul li ul ul ul ul,
.widget_nav_menu ul li ul ul ul ul {
  margin-left: -4.5em;
}
.widget_recent_entries ul li ul ul ul ul ul,
.widget_recent_comments ul li ul ul ul ul ul,
.widget_archive ul li ul ul ul ul ul,
.widget_categories ul li ul ul ul ul ul,
.widget_meta ul li ul ul ul ul ul,
.widget_pages ul li ul ul ul ul ul,
.widget_nav_menu ul li ul ul ul ul ul {
  margin-left: -6em;
}

.widget_calendar table thead th {
  text-align: center;
}
.widget_calendar table tbody td {
  text-align: right;
}
.widget_calendar #next {
  text-align: right;
}

.widget_tag_cloud .tagcloud {
  line-height: 1.3;
}

.habakiri-slider__transparent-layer {
  height: 100%;
}
.habakiri-slider__item {
  background-size: cover;
  background-position: 50% 50%;
  display: none;
  position: relative;
}
.habakiri-slider__item:first-child {
  display: block;
}
.habakiri-slider__item-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.habakiri-slider__item-content {
  color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.habakiri-slider__item-content a {
  color: #fff;
}
.habakiri-slider__image {
  visibility: hidden;
  width: 100%;
}
.habakiri-slider__arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  margin-top: -16px;
  width: 32px;
  height: 32px;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
}
.habakiri-slider__arrow--prev {
  left: 10px;
  transform: rotate(-90deg);
}
.habakiri-slider__arrow--next {
  right: 10px;
  transform: rotate(90deg);
}
.habakiri-slider__arrow:before {
  font-size: 32px;
}

/*==================================================
 * layout
 *================================================*/
#container {
  overflow: hidden;
}

.sub-page-contents {
  padding-top: 40px;
}

#main {
  margin-bottom: 60px;
}
.page-template-front-page #main, .page-template-rich-front-page #main {
  margin-bottom: 0;
}

.entry:before, .entry:after {
  content: " ";
  display: table;
}
.entry:after {
  clear: both;
}
.entry__title {
  margin: 0 0 10px;
}
.entry__content:before, .entry__content:after {
  content: " ";
  display: table;
}
.entry__content:after {
  clear: both;
}
.entry__content > *:first-child {
  margin-top: 0;
}

/*==================================================
 * header
 *================================================*/
.header {
  position: relative;
  z-index: 3;
}
.header--fixed, .header.header--fixed--is_scrolled {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}
.header--default .global-nav .menu, .header--transparency .global-nav .menu {
  float: right;
}
.header--center .global-nav {
  text-align: center;
}
.header--center .global-nav .menu {
  display: inline-block;
  text-align: left;
  vertical-align: bottom;
}
.header--transparency {
  background-color: transparent !important;
  box-shadow: none;
  transition: background-color 0.2s;
  position: absolute;
  right: 0;
  left: 0;
}
.header--transparency .global-nav {
  background-color: transparent;
  transition: background-color 0.2s;
}
.header--transparency .global-nav .menu > .menu-item > a {
  background-color: transparent;
}
.header--fixed {
  position: absolute;
  right: 0;
  left: 0;
}
.header--fixed--is_scrolled {
  position: fixed;
}

.admin-bar .header--fixed.header--fixed--is_scrolled {
  top: 32px;
}
@media screen and (max-width: 782px) {
  .admin-bar .header--fixed.header--fixed--is_scrolled {
    top: 46px;
  }
}
@media screen and (max-width: 600px) {
  .admin-bar .header--fixed.header--fixed--is_scrolled {
    top: 0;
  }
}
.admin-bar.open .header--fixed.header--fixed--is_scrolled {
  top: 0;
}

/**
 * .header__content
 */
.header__content {
  display: table;
  margin-right: 0;
  margin-left: 0;
  width: 100%;
}
.header__content .header__col {
  display: table-cell;
  float: none;
  padding-left: 0;
  padding-right: 0;
  vertical-align: middle;
}

/**
 * .site-branding
 */
.site-branding {
  padding: 20px 0;
}
.site-branding__heading {
  font-size: 24px;
  line-height: 1;
  margin: 0;
}
@media (min-width: 480px) {
  .site-branding__heading {
    font-size: 26px;
  }
}
.site-branding__logo {
  font-size: 24px;
  line-height: 1;
  margin: 0;
}
@media (min-width: 480px) {
  .site-branding__logo {
    font-size: 26px;
  }
}
.site-branding a {
  text-decoration: none;
}

/**
 * .global-nav
 */
.global-nav-wrapper {
  position: relative;
}

.responsive-nav .menu-item {
  text-align: center;
}
.responsive-nav a {
  text-decoration: none;
}
.responsive-nav a strong {
  font-weight: normal;
}
.responsive-nav a small {
  display: block;
}
.responsive-nav .sub-menu .menu-item, .responsive-nav .children .menu-item {
  text-align: left;
}
.responsive-nav .sub-menu a, .responsive-nav .children a {
  padding: 10px;
}
.responsive-nav ul li ul li ul {
  left: 220px;
}
.responsive-nav ul li ul li ul.reverse-pulldown {
  left: -220px;
}

.off-canvas-nav .menu-item {
  text-align: left;
}
.off-canvas-nav a strong {
  font-weight: normal;
}
.off-canvas-nav a small {
  display: none;
}

/**
 * #responsive-btn
 */
#responsive-btn {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  transition: all 0.1s;
  border-width: 1px;
  border-style: solid;
  height: 40px;
  width: 40px;
  font-size: 18px;
  line-height: 18px;
  padding: 10px;
}

/*==================================================
 * sub
 *================================================*/
.sidebar-widget {
  font-size: 93%;
  margin: 0 0 20px;
}
.sidebar-widget__title {
  font-weight: bold;
  margin-top: 0;
}

/*==================================================
 * footer
 *================================================*/
/**
 * .footer-widget-area
 */
.footer-widget-area {
  font-size: 12px;
  padding: 60px 0 25px;
}

.footer-widget__title {
  font-size: 18px;
  font-weight: normal;
  margin: 0 0 20px;
}

/**
 * .social-nav
 */
.social-nav {
  padding: 15px 0 0;
}
.social-nav ul {
  list-style: none;
  padding: 0;
}
.social-nav ul:before, .social-nav ul:after {
  content: " ";
  display: table;
}
.social-nav ul:after {
  clear: both;
}
.social-nav ul li {
  float: left;
  margin: 0 15px 0 0;
  padding: 0;
  position: relative;
}
.social-nav ul li a {
  color: #fff;
  display: block;
  width: 16px;
  height: 16px;
  overflow: hidden;
  text-decoration: none;
}
.social-nav ul li a:before {
  content: "\f408";
  display: inline-block;
  font-family: "Genericons";
  font-size: 16px;
  line-height: 16px;
  -webkit-font-smoothing: antialiased;
}
.social-nav ul li a[href*="wordpress.org"]:before {
  content: "\f205";
}
.social-nav ul li a[href*="github.com"]:before {
  content: "\f200";
}
.social-nav ul li a[href*="dribbble.com"]:before {
  content: "\f201";
}
.social-nav ul li a[href*="twitter.com"]:before {
  content: "\f202";
}
.social-nav ul li a[href*="facebook.com"]:before {
  content: "\f203";
}
.social-nav ul li a[href*="plus.google.com"]:before {
  content: "\f206";
}
.social-nav ul li a[href*="linkedin.com"]:before {
  content: "\f207";
}
.social-nav ul li a[href*="pinterest.com"]:before {
  content: "\f210";
}
.social-nav ul li a[href*="flickr.com"]:before {
  content: "\f211";
}
.social-nav ul li a[href*="vimeo.com"]:before {
  content: "\f212";
}
.social-nav ul li a[href*="youtube.com"]:before {
  content: "\f213";
}
.social-nav ul li a[href*="instagram.com"]:before {
  content: "\f215";
}
.social-nav ul li a[href*="codepen.io"]:before {
  content: "\f216";
}
.social-nav ul li a[href*="polldaddy.com"]:before {
  content: "\f217";
}
.social-nav ul li a[href*="path.com"]:before {
  content: "\f219";
}
.social-nav ul li a[href*="skype.com"]:before {
  content: "\f220";
}
.social-nav ul li a[href*="digg.com"]:before {
  content: "\f221";
}
.social-nav ul li a[href*="reddit.com"]:before {
  content: "\f222";
}
.social-nav ul li a[href*="stumbleupon.com"]:before {
  content: "\f223";
}
.social-nav ul li a[href*="getpocket.com"]:before {
  content: "\f224";
}
.social-nav ul li a[href*="dropbox.com"]:before {
  content: "\f225";
}
.social-nav ul li a[href*="foursquare.com"]:before {
  content: "\f226";
}
.social-nav ul li a[href$="/feed"]:before {
  content: "\f413";
}

/**
 * .copyright
 */
.copyright {
  background-color: #0a0a0a;
  color: #393939;
  font-size: 12px;
  padding: 15px 0;
}
.copyright a {
  color: #444;
}

/*==================================================
 * commentarea
 *================================================*/
.comments, .trackbacks {
  border-top: 1px solid #ddd;
  margin-top: 30px;
  padding-top: 30px;
}
.comments__title, .trackbacks__title {
  margin: 0 0 30px;
}

.comments__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.comments__item {
  margin-left: 0;
  padding-left: 0;
}

.comment {
  margin: 0 0 10px;
  padding: 0;
}
.comment__header {
  float: left;
  margin-right: 10px;
}
.bypostauthor .comment__header {
  float: right;
  margin: 0 0 0 10px;
}
.comment__author {
  font-size: 12px;
  line-height: 1.4;
  width: 50px;
}
.comment__author img {
  margin: 0 0 5px;
}
.comment__body {
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 20px 20px 10px;
  overflow: hidden;
}
.comment__body:before, .comment__body:after {
  content: " ";
  display: table;
}
.comment__body:after {
  clear: both;
}
.comment__meta {
  font-size: 12px;
  margin-bottom: 10px;
}
.comment__reply {
  margin-bottom: 10px;
}
.comment__reply .comment-reply-link {
  color: #fff;
  text-decoration: none;
}
.comment .children {
  list-style: none;
  margin: 0;
  padding: 0 0 0 60px;
}

.trackbacks__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.trackbacks__item {
  border-left: 3px solid rgb(238.425, 238.425, 238.425);
  margin: 0 0 20px;
  padding-left: 20px;
}

.trackback__body {
  margin-left: 0;
}
.trackback__meta .fn {
  display: block;
}

/*==================================================
 * archive
 *================================================*/
/**
 * .entries
 */
.entries .article {
  border-bottom: 1px solid #eee;
  margin-bottom: 30px;
  padding-bottom: 30px;
}
.entries .entry--has_media__inner:before, .entries .entry--has_media__inner:after {
  content: " ";
  display: table;
}
.entries .entry--has_media__inner:after {
  clear: both;
}
.entries .entry--has_media__media {
  float: left;
  width: 70px;
}
@media (min-width: 768px) {
  .entries .entry--has_media__media {
    width: 180px;
  }
}
.entries .entry--has_media__link {
  width: 50px;
  height: 50px;
  color: #fff;
  display: block;
  font-size: 18px;
  font-weight: bold;
  overflow: hidden;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .entries .entry--has_media__link {
    width: 150px;
    height: 150px;
  }
}
.entries .entry--has_media__text {
  width: 50px;
  height: 50px;
  background-color: #eee;
  display: table-cell;
  vertical-align: middle;
  position: relative;
  top: -2px;
}
@media (min-width: 768px) {
  .entries .entry--has_media__text {
    width: 150px;
    height: 150px;
  }
}
.entries .entry--has_media__text:after {
  content: "";
  display: block;
  background: #fff;
  margin: 0 auto;
  height: 1px;
  width: 1em;
  position: relative;
  top: -2px;
}
.entries .entry--has_media__body {
  overflow: hidden;
}
.entries .entry--has_media__body__title {
  margin-top: 0;
}
.entries .entry-meta {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.related-posts {
  border-top: 1px solid #ddd;
  margin-top: 30px;
  padding-top: 30px;
}
.related-posts .article:last-child {
  border-bottom: none;
}
.related-posts__title {
  margin: 0 0 30px;
}
.related-posts .entry__title {
  margin-top: 0;
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .related-posts .entry--has_media__media {
    width: 130px;
  }
}
@media (min-width: 768px) {
  .related-posts .entry--has_media__link {
    width: 100px;
    height: 100px;
  }
}
@media (min-width: 768px) {
  .related-posts .entry--has_media__text {
    width: 100px;
    height: 100px;
  }
}
.related-posts .entry-meta {
  margin-bottom: 0;
}

/*==================================================
 * Tags
 *================================================*/
/**
 * body
 */
body {
  -webkit-font-smoothing: antialiased;
}

/**
 * heading
 */
.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
}

/**
 * img
 */
img {
  height: auto;
  max-width: 100%;
}

/**
 * a
 */
a {
  transition: color 0.2s, background-color 0.2s, border-color 0.2s, text-decoratin 0.2s;
}

/**
 * blockquote
 */
blockquote {
  font-size: 100%;
}

/**
 * media
 */
embed,
iframe,
object {
  max-width: 100%;
}

/**
 * table
 */
table {
  margin-bottom: 11.5px;
}
table small {
  font-weight: normal;
}

/**
 * list
 */
dl {
  margin-bottom: 11.5px;
}

/*==================================================
 * WordPress Classes
 *================================================*/
/**
 * .wp-caption
 */
.wp-caption {
  border: none;
  text-align: left;
  background-color: transparent;
  padding: 0;
  margin: 0 0 11.5px;
  border-radius: 0;
  max-width: 100%;
}
.wp-caption-text {
  color: rgb(85.425, 85.425, 85.425);
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.4;
}

/**
 * alignment
 */
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/**
 * .bypostauthor
 */
/**
 * Galleries
 */
.gallery {
  margin: 0 0 11.5px;
}
.gallery-item {
  display: inline-block;
  padding: 1.79104477%;
  text-align: center;
  vertical-align: top;
  width: 100%;
}
.gallery-columns-2 .gallery-item {
  max-width: 50%;
}
.gallery-columns-3 .gallery-item {
  max-width: 33.3333333333%;
}
.gallery-columns-4 .gallery-item {
  max-width: 25%;
}
.gallery-columns-5 .gallery-item {
  max-width: 20%;
}
.gallery-columns-6 .gallery-item {
  max-width: 16.6666666667%;
}
.gallery-columns-7 .gallery-item {
  max-width: 14.2857142857%;
}
.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
  max-width: 11.1111111111%;
}
.gallery-icon img {
  margin: 0 auto;
}
.gallery-caption {
  display: block;
}
.gallery-columns-6 .gallery-caption, .gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption {
  display: none;
}

/**
 * Screen reader text
 */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/*==================================================
 * Classes
 *================================================*/
/**
 * .section
 */
.section {
  padding-top: 50px;
  padding-bottom: 50px;
}
.section__title, .section-title {
  font-size: 28px;
  margin: 0 0 45px;
  text-align: center;
}
.section__title .small, .section__title small, .section-title .small, .section-title small {
  display: block;
  font-size: 60%;
  margin-top: 10px;
}
.section .section {
  padding-top: 0;
  padding-bottom: 0;
}
.section .section .section__title, .section .section .section-title {
  margin: 0 0 20px;
  text-align: left;
}
.section--image, .section-image {
  background-size: cover;
  color: #fff;
}
@media (min-width: 768px) {
  .section--fixed, .section-fixed {
    background-attachment: fixed;
  }
}

.entry__content .alignfull {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

html,
body {
  font-size: 16px;
}

body {
  line-height: 2;
  color: #261809;
  background-color: #f9f8f3;
  font-family: "Shippori Mincho B1", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", "Yu Mincho", YuMincho, serif;
  font-weight: 500;
}

img {
  border-radius: 0.5rem;
}

ul,
ol,
dl,
table {
  margin-bottom: 20px;
}

.small,
small {
  letter-spacing: 0.07em;
}

h2,
.h2 {
  font-size: 1.9rem;
  margin: 20px 0 40px;
  line-height: 1.8;
}

h3,
h3 {
  font-size: 22px;
}

.footer-widget-area {
  font-size: 14px;
}

.roboto-bold {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

.marcellus-regular {
  font-weight: 400;
  font-style: normal;
}

#menu-main_navi .menu-item a small {
  font-size: 16px;
  font-weight: 400;
  font-style: normal;
}

.pink {
  color: #c51eab;
}

.shadow-green {
  text-shadow: 2px 3px 3px rgba(1, 69, 63, 0.79);
}

.fuchidori {
  text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px;
}

article > div.entry {
  /*H2見出し*/
}
article > div.entry h1 {
  display: block;
  color: #b2845e; /*文字色*/
  border-radius: 30px 0px 0px 30px; /*角丸サイズ（左上 右上 右下 左下）*/
}
article > div.entry div.entry__content.entry-content {
  /*H3見出し*/
  /*H4見出し*/
}
article > div.entry div.entry__content.entry-content h2:not(.fuchidori) {
  color: #261809; /*文字色*/
  font-size: 24px; /*文字サイズ*/
  padding: 2px 20px; /*文字回りの余白（上下 左右）*/
  display: block;
  position: relative;
  border-left: 8px solid #cfe2e3; /*左線上側（太さ 実線 色）*/
}
article > div.entry div.entry__content.entry-content h2:not(.fuchidori):before {
  position: absolute;
  content: "";
  left: -8px;
  bottom: 0;
  width: 8px; /*左線下側の太さ（幅）*/
  height: 50%; /*左線下側の高さ*/
  background-color: #7ac1cf; /*左線下側の色*/
}
article > div.entry div.entry__content.entry-content h2:not(:first-of-type) {
  margin-top: 70px;
}
article > div.entry div.entry__content.entry-content h3 {
  color: #261809; /*文字色*/
  font-size: 20px; /*文字サイズ*/
  padding: 8px 40px; /*文字回りの余白（上下 左右）*/
  display: block;
  position: relative;
}
article > div.entry div.entry__content.entry-content h3:before {
  content: "❖";
  font-weight: 900; /*マーク部の太さ*/
  position: absolute;
  font-size: 30px; /*マーク部のサイズ*/
  left: 0;
  top: 0;
  color: #7ac1cf; /*マーク部の色*/
}

a {
  transition: 0.4s;
}

a:hover {
  filter: brightness(1.1);
}

a:focus,
a:hover {
  text-decoration: none;
}

.btn-main {
  margin: 2rem 0 2.5rem;
}

.btn-main a {
  background: #fff;
  border-radius: 30px;
  border: 1px solid #b2845e;
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  max-width: 280px;
  padding: 10px 25px;
  color: #b2845e;
  transition: 0.3s ease-in-out;
  font-weight: 700;
}

a.btn:hover {
  filter: brightness(1.1);
}

a.btn:after,
.btn-main a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}

.btn-main a:hover {
  background: #15bfc5;
  color: #fff;
  border: none;
}

.btn-main a:hover:after {
  right: 1.4rem;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.1;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
  max-width: 400px;
  height: 78px;
  margin: 15px 0 30px;
  width: 100%;
}

.btn-wrap-pc-sp {
  max-width: 435px;
  margin: 0 auto 20px;
}

a.btn-pc-sp {
  line-height: 1.4;
  width: 49.5%;
  padding: 1.25rem 0;
  color: white;
}

a.btn--contact {
  font-size: 1.5rem;
  display: block;
  padding: 1.6rem 1rem 1.6rem 0rem;
  color: #fff;
  border-radius: 100vh;
  background: #15bfc5;
  box-shadow: 0px 0px 10px -5px #777;
  letter-spacing: 0.001em !important;
  margin: 2rem auto;
}
a.btn--contact:hover {
  color: #fff;
}

a.btn--contact i {
  font-size: 2rem;
}

a.btn--contact i.fa-position-left {
  font-size: 1.5rem;
}

a.btn--tel {
  display: block;
  padding: 0.7rem 0 0.7rem 0;
  color: #15bfc5;
  border-radius: 100vh;
  background: #fff;
  margin: 2rem auto;
  box-shadow: 0px 0px 10px -5px #777;
}
a.btn--tel:hover {
  color: #15bfc5;
}

.telicon-a::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 30px;
  background: url(./img/icon-tel-c.svg) center bottom/contain no-repeat;
  position: absolute;
  top: 50%;
  bottom: 0;
  left: 1rem;
  transform: translate(0px, -15px);
}

.telicon-d {
  position: relative;
}

.telicon-d::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 30px;
  background: url(./img/icon-tel-d.svg) center bottom/contain no-repeat;
  position: absolute;
  top: 50%;
  bottom: 0;
  left: -2.5rem;
  transform: translate(0px, -15px);
  filter: invert(52%) sepia(77%) saturate(232%) hue-rotate(345deg) brightness(91%) contrast(88%);
}

.telicon-d:hover::before {
  filter: invert(54%) sepia(74%) saturate(497%) hue-rotate(133deg) brightness(98%) contrast(91%);
}

.emailicon,
.emailicon-s {
  display: flex;
  align-items: center;
  justify-content: center;
}

.emailicon::before,
.emailicon-s:before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 20px;
  background: url(./img/email.svg) center bottom/contain no-repeat;
  margin-right: 2px;
}

.emailicon:before {
  width: 40px;
  height: 30px;
}

a.btn--tel .number {
  line-height: 1;
  display: inline-block;
  margin-top: 0;
  padding: 0.1rem 0.4rem;
  letter-spacing: 0;
  color: #fff;
  border-radius: 0.5rem;
  background: #15bfc5;
  font-size: 0.7em;
}

.fa-position-left {
  position: absolute;
  top: calc(50% - 0.5em);
  left: 1rem;
}

.fa-position-right {
  position: absolute;
  top: calc(50% - 0.5em);
  right: 1rem;
}

.color0 {
  background-color: #fff;
  padding: 3rem 10px 3rem !important;
}

.color1 {
  background-color: rgba(129, 216, 208, 0.6901960784);
  padding: 3rem 10px 3rem !important;
}

.color2 {
  border: 20px solid #81d8d0;
  background-color: #ffffff;
  z-index: 0;
  padding: 60px 10px 120px;
  width: 100% !important;
  max-width: 1260px !important;
}

.color3 {
  background: rgba(254, 241, 255, 0.61) url(./img/contact_bg_02_sp.webp) center/cover no-repeat;
  padding: 3rem 0;
}
.color3 h2[id$=heading],
.color3 p {
  color: #6d2700;
  font-weight: 700;
  line-height: 1.8;
}
.color3 h2[id$=heading] span,
.color3 p span {
  color: #c51eab;
}
.color3 p {
  font-size: 1.1rem;
}

.color4 {
  background-color: rgba(20, 178, 183, 0.1803921569);
}

.color5 {
  background-color: #efece4;
  padding: 2rem;
}

.color6_a {
  background: radial-gradient(circle, #e8e6d9 0%, rgba(232, 230, 217, 0.9) 40%, rgba(232, 230, 217, 0) 60%);
  margin: 0 0px 20px;
  width: 210px;
  margin: 0 auto;
  border-radius: 50%;
  height: 210px;
}

.color6_b {
  background: radial-gradient(circle, #d9e8e7 0%, rgba(217, 229, 232, 0.9) 40%, rgba(217, 219, 232, 0) 60%);
  margin: 0 0px 20px;
  width: 210px;
  margin: 0 auto;
  border-radius: 50%;
  height: 210px;
}

.color6_c {
  background: radial-gradient(circle, #e8d9e5 0%, rgba(232, 217, 228, 0.9) 40%, rgba(228, 217, 232, 0) 60%);
  margin: 0 0px 20px;
  width: 210px;
  margin: 0 auto;
  border-radius: 50%;
  height: 210px;
}

.pc-on {
  display: none;
}

.sp-on {
  display: block;
}

.block-over,
.block-over-sp {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}

.mx-auto {
  margin: 0 auto;
}

/**
 * .copyright
 */
.copyright {
  background-color: #81d8d0;
  color: #ffffff;
  padding: 0.5em 0;
}
.copyright .container {
  padding-top: 0;
  text-align: center;
}
.copyright a {
  color: #444;
}

#responsive-btn:hover {
  background-color: transparent !important;
}

.off-canvas-nav {
  padding: 60px 30px 60px 30px;
}

.off-canvas-nav--dark {
  background-color: #f9f8f3;
  color: #261809;
  border: none;
}

.off-canvas-nav--dark .current-menu-item > a,
.off-canvas-nav--dark .current_page_ancestor > a,
.off-canvas-nav--dark .current-page-ancestor > a,
.off-canvas-nav--dark .current_page_item > a,
.off-canvas-nav--dark .current_page_parent > a {
  background-color: initial;
  color: #15bfc5;
}

.off-canvas-nav--dark a:hover,
.off-canvas-nav--dark a:active,
.off-canvas-nav--dark a:focus {
  background-color: initial;
  color: #15bfc5;
}

.off-canvas-nav--dark a {
  color: #261809;
}

.off-canvas-nav--dark li {
  border-top: 0.5px solid #b2845e;
  border-bottom: 0.5px solid #b2845e;
}
.off-canvas-nav--dark li:last-child {
  border-bottom: none;
}

.off-canvas-nav--dark > ul,
.off-canvas-nav--dark > * > ul {
  border-bottom: none;
}

.off-canvas-nav--dark ul ul {
  border-top: none;
  border-left: none;
}

.off-canvas-nav--dark ul ul li {
  border-left: none;
}

#menu-item-3135 {
  margin-top: 30px;
  border: none;
  background: #15bfc5;
  border-radius: 50px;
  text-align: center;
}
#menu-item-3135 a {
  color: #fff;
}

#responsive-btn {
  position: fixed;
  top: 10px;
  margin-top: 0;
  height: 50px;
  width: 50px;
  font-size: 23px;
  line-height: 23px;
}

.page-header {
  position: relative;
  color: #fff;
  height: 150px;
  padding: 47px 0;
}

.page-header {
  position: relative;
  background: url("https://mkpiano-academy.com/wp-content/themes/habakiri-child/img/header_bg_contact.webp") center bottom/cover no-repeat !important;
}
.page-header::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.sub-page-contents {
  padding-top: 0;
}

.site-branding__txt {
  white-space: nowrap;
}
.site-branding__txt p,
.site-branding__txt h1 {
  font-size: 11px;
  margin: 0;
  font-weight: 500;
}

.site-branding {
  padding: 0.5em 0;
}

.site-branding {
  padding: 0;
}

.site-branding__heading {
  max-width: 180px;
}

.site-branding__logo {
  border-radius: 0;
}

.normal-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header-cta {
  display: flex;
  gap: 10px;
}

.header-cta .call {
  line-height: 1;
  white-space: nowrap;
  margin-left: 3em;
}
.header-cta .call .tel {
  font-size: 30px;
}

.header-cta .btn-mail {
  border-radius: 30.117px;
  background: var(--Primitive-Color, #15bfc5);
  width: 100%;
  margin: 0 auto;
}
.header-cta .btn-mail:hover {
  filter: brightness(1.1);
}
.header-cta .btn-mail a {
  box-shadow: 0px 0px 7px -5px #777;
}
.header-cta .btn-mail a span {
  color: #fff;
  font-size: 14px;
  padding: 0.5em 1em;
}
.header-cta .btn-mail .emailicon::before {
  width: 30px;
  height: 20px;
}

.breadcrumbs {
  margin-bottom: 0;
}

#ez-toc-container {
  max-width: 840px;
  position: relative;
  padding: 3.5rem 1rem 1rem;
  background-color: #ffffff !important;
  outline: 1px solid #d2c197;
  border: 1px solid #d2c197;
  outline-offset: -0.5rem;
  margin: 30px auto 20px !important;
}

.ez-toc-title {
  position: absolute;
  top: 1rem;
  left: 0;
  width: 100%;
  padding: 0.5rem 0;
  background-color: #81d8d0;
  color: #fff !important;
  text-align: center !important;
}

#ez-toc-container p {
  color: #261809;
  line-height: 1.5;
}

.box-018 {
  position: relative;
  max-width: 400px;
  margin: 0 auto;
  padding: 1em calc(1.5em + 9px);
  border-top: 1px solid #2589d0;
  border-bottom: 1px solid #2589d0;
  color: #261809;
}

.box-018::before,
.box-018::after {
  position: absolute;
  width: 1px;
  top: 50%;
  transform: translateY(-50%);
  height: calc(100% + 20px);
  background-color: #2589d0;
  content: "";
}

.box-018::before {
  left: 9px;
}

.box-018::after {
  right: 9px;
}

.ez-toc-title-container {
  text-align: center;
  margin: 0 0 0.5em 0;
}

div#ez-toc-container ul li,
div#ez-toc-container ul li a {
  color: #261809;
  line-height: 1.4;
  margin: 0 0 0.2em 0;
}

div#ez-toc-container ul li a:hover {
  color: #15bfc5;
  text-decoration: none;
}

div#ez-toc-container ul li a:visited {
  color: #261809;
}

#main > article > div.habakiri-slider > div > div > div > section {
  height: 500px;
}

.habakiri-slider__item-content {
  color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  top: 55%;
  transform: translateY(-50%);
}

.habakiri-slider {
  position: relative;
}
.habakiri-slider h2 {
  margin: 0px;
  color: #261809;
  font-size: clamp(34px, 8vw, 40px);
  line-height: 1.8;
  font-weight: 700;
}
.habakiri-slider h2 span {
  font-size: clamp(34px, 8vw, 40px);
  color: #c51eab;
}
.habakiri-slider p {
  font-size: 16px;
  color: #261809;
  font-weight: 700;
}
.habakiri-slider p.pink {
  color: #c51eab;
}
.habakiri-slider .habakiri-slider__arrow {
  display: none !important;
}
.habakiri-slider .habakiri-slider__item {
  background-position: 64% 50%;
}
.habakiri-slider .col-xs-offset-1 {
  margin-left: 0;
}
.habakiri-slider .col-xs-10 {
  width: 100%;
}

.slider2 {
  display: none;
}

.slider2.slick-initialized {
  display: block; /*slick-initializedが付与されたら表示*/
}

.slider2.slick-initialized.slick-slider > button.slick-arrow {
  display: none !important;
}

#sticky {
  position: fixed;
  bottom: 0;
  width: 100%;
  left: 0;
  background: rgba(244, 241, 237, 0.8117647059);
  height: 70px;
  z-index: 1000;
  padding: 0;
  box-shadow: 0px -1px 1px 0px rgba(161, 161, 160, 0.3), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3);
}
#sticky .fixed-area {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#sticky .fixed-area > div {
  width: 100%;
}
#sticky a {
  height: 55px;
  font-size: 16px;
  line-height: 1.4;
  border-radius: 30px;
  padding: 14px 0 14px;
  margin: 0.3em auto;
  width: 82%;
}

i.fa.fa-mobile {
  font-size: 3rem;
  top: 8px;
}

i.fas.fa-envelope {
  font-size: 2rem;
  top: 15px;
}

a.btn--tel {
  color: #15bfc5;
  background-color: #fff;
}

a.btn--contact {
  color: #fff;
  background-color: #15bfc5;
}

i.fa-position-left {
  left: 1rem;
}

.page-header::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(255, 211, 241, 0.3882352941) !important;
}
.page-header .page-header__title {
  font-size: 28px;
  margin: 0;
  color: #fff;
  text-shadow: 2px 3px 3px rgba(27, 5, 25, 0.6);
}

.news {
  font-size: 14px;
  position: absolute;
  top: 460px;
  width: 355px;
  flex-wrap: wrap;
  display: flex;
  justify-content: space-between;
  left: 3%;
  border-top: 1px solid #b2845e;
  border-bottom: 1px solid #b2845e;
  background: rgba(249, 248, 243, 0.93);
  padding: 0.7em;
}
.news .news-wrap {
  flex-wrap: wrap;
  display: flex;
  justify-content: space-between;
  padding: 0;
}
.news .news-head {
  border: 1px solid #261809;
  padding: 0 0.3em;
}
.news .news-list {
  width: 100%;
}
.news ul {
  margin-bottom: 0;
}

#front-page-greeting p {
  max-width: 750px;
  margin: 0 auto;
}

.entry__content .color2 {
  margin: 40px auto 0px;
}

.flower {
  position: relative;
}
.flower::before {
  content: ""; /*何も入れない*/
  display: inline-block;
  width: clamp(140px, 24vw, 289px); /*画像の幅*/
  height: clamp(130px, 24vw, 257px); /*画像の高さ*/
  background: url("./img/bg_flower_up.webp") top 0 right 0/contain no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
.flower::after {
  content: ""; /*何も入れない*/
  display: inline-block;
  width: clamp(180px, 32vw, 308px); /*画像の幅*/
  height: clamp(300px, 64vw, 363px); /*画像の高さ*/
  background: url("./img/bg_flower_dw.webp") bottom 0 left 0/contain no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}

.pearl::before {
  content: ""; /*何も入れない*/
  display: inline-block;
  width: 80px; /*画像の幅*/
  height: clamp(120px, 26vw, 212px); /*画像の高さ*/
  background: url("./img/pearl_01.webp") top 0 left 0/contain no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 10px;
  z-index: 2;
}
.pearl::after {
  content: ""; /*何も入れない*/
  display: inline-block;
  width: 30px; /*画像の幅*/
  height: clamp(120px, 19vw, 212px); /*画像の高さ*/
  background: url("./img/pearl_02.webp") top 0 right 0/contain no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  top: clamp(110px, 20vw, 200px);
  right: 20px;
  z-index: 2;
}

h2#front-page-greeting-heading {
  color: #c51eab;
}
h2#front-page-greeting-heading::before {
  margin-bottom: 1rem;
}
h2#front-page-greeting-heading::after {
  content: "";
  display: block;
  width: 27px; /*画像の幅*/
  height: 23px; /*画像の高さ*/
  background: url("./img/ribbon.webp") center/contain no-repeat;
  margin: 8px auto 0;
  top: -30px;
}

h2[id$=heading] {
  color: #c51eab;
  position: relative;
}

h2[id$=heading][data-label]:before,
p.h2[class*=heading][data-label]:before {
  content: attr(data-label);
  display: block;
  font-size: 20px;
  color: #b2845e;
  font-family: "Marcellus", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.4rem;
  width: 100%;
  margin-bottom: 1.8rem;
}

h2[id$=heading][data-label]:after,
p.h2[class*=heading][data-label]:after {
  content: "";
  display: block;
  width: 90px; /*画像の幅*/
  height: 6px; /*画像の高さ*/
  background: url("./img/h2-line.webp") center/contain no-repeat;
  z-index: 1;
  top: 1.4em;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
}

#front-page-threelink .threelink-image {
  position: relative;
}
#front-page-threelink .threelink-image h2 {
  background-color: #fff;
  padding: 1rem 1rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 16px;
  color: #261809;
  width: 128px;
}
#front-page-threelink .threelink-image h2[id$=heading][data-label]:after,
#front-page-threelink .threelink-image p.h2[class*=heading][data-label]:after {
  width: 100px;
  top: 4em;
}

#front-page-feature h2 span {
  font-size: 1.8em;
}

.feature-image img {
  margin: 0.5rem 0 2rem;
}

.feature-text {
  font-size: 20px;
  color: #b2845e;
  font-weight: 700;
}
.feature-text span {
  background: rgb(255, 255, 255);
  display: inline;
  padding: 0.2em 1em;
}

.toonkigo {
  font-size: 1.1rem;
  display: flex;
  align-items: center;
}
.toonkigo::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 44px;
  background: url(./img/toonkigo.webp) center/contain no-repeat;
  margin-right: 10px;
}

.contact-cta {
  margin: 30px auto 0;
}

.contact-cta-btn .btn {
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}

#front-page-voice .row {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#front-page-voice .col-sm-6 {
  margin: 1rem 0;
}
#front-page-voice .card-body {
  display: flex;
  flex-direction: column;
}
#front-page-voice .card {
  max-width: 670px;
  border: 2px solid #b2845e;
  border-radius: 10px;
}
#front-page-voice .card-text {
  flex-grow: 1;
}
#front-page-voice .card-from {
  border-top: 1px solid #b2845e;
  padding-top: 0.5em;
  text-align: right;
}

.category-box {
  margin-top: 1rem;
}
.category-box .line {
  border-bottom: 1px solid #b2845e;
  padding: 1rem 0;
}
.category-box .line:nth-child(1) {
  border-top: 1px solid #b2845e;
}
.category-box a {
  font-weight: 700;
}

#front-page-news .text-right a {
  border: 1px solid #b2845e;
  padding: 0.3em 1em;
  border-radius: 21px;
}
#front-page-news .text-right a:hover {
  background: #15bfc5;
  color: #fff;
  border: none;
}

.banner {
  margin: 2rem 0;
}

#front-page-blog li {
  margin-bottom: 2.4rem;
}
#front-page-blog li .row {
  display: flex;
  justify-content: space-between;
}
#front-page-blog .col-3 {
  width: 25%;
}
#front-page-blog .col {
  width: 60%;
}

.course-detail tr {
  border-color: #807263;
}
.course-detail table tr:nth-child(1) {
  background-color: #efece4;
}
.course-detail table tr:nth-child(2) {
  background-color: #fff;
}

#activity-request .request-image img {
  max-width: 600px;
}
#activity-request ul {
  width: 360px;
  text-align: left;
  margin: 0 auto;
}

.repertory-list {
  position: relative;
}
.repertory-list ul {
  padding: 0;
  list-style: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -40%);
}
.repertory-list li {
  white-space: nowrap;
}

.tab-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tab-container ul {
  list-style: none;
}

.tab-list {
  display: none;
}
.tab-list h2 {
  line-height: 1.8;
}
.tab-list p {
  line-height: 1.8;
}

.tab-list.show {
  display: block;
}

/* ----------- タブ上部 ---------*/
/* タブの見出しの枠 */
.tab-title-list {
  display: flex;
  width: 100%;
  justify-content: space-around;
}

/* タブの見出し */
.tab-title {
  width: 20%;
  padding: 0.25em 0;
  cursor: pointer;
  transition: border-bottom 0.2s;
  text-align: center;
  letter-spacing: 0.2em;
  font-size: 11px;
  border-bottom: 1px solid transparent;
}

/* 選択されているタイトル */
.tab-title.selected {
  border-bottom: 2px solid #fc2;
  opacity: 0.8;
}

.article-list ul {
  padding: 0;
}

.tab-title:not(.selected):hover {
  opacity: 0.6;
}

.article-list__thumb {
  text-align: center;
}

@media (min-width: 768px) {
  .tab-cont {
    min-height: 900px;
  }
  .tab-title {
    font-size: 14px;
  }
}
/*---------  中身 ---------*/
.article-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-wrap: wrap;
}

.article-list__item {
  list-style: none;
  background-color: #fff;
  padding: 16px;
  margin-top: 24px;
  width: calc((100% - 12px) / 2);
}
.article-list__item a {
  color: #261809;
}

.article-list::after {
  content: "";
  width: calc((100% - 12px) / 2);
}

.article-list__body {
  margin-top: 16px;
}

.article-list__title {
  font-size: 14px;
  margin: 0;
}

.article-list__info-wrap {
  margin-top: 8px;
}

.article-list__date {
  font-size: 10px;
}

.article-list__cat {
  font-size: 10px;
  border: 1px solid #ddd;
  padding: 4px 6px;
  display: inline-block;
  margin: 0 4px;
}

.article-list__thumb {
  width: 100%;
}

.article-list__thumb img {
  aspect-ratio: 695/463;
  -o-object-fit: cover;
     object-fit: cover;
}

.article-list__excerpt {
  margin-top: 12px;
}

@media (min-width: 768px) {
  .article-list::after {
    width: calc((100% - 24px) / 3);
  }
  .article-list__item {
    padding: 16px;
    width: calc((100% - 24px) / 3);
  }
  .article-list__body {
    margin-top: 16px;
  }
  .article-list__title {
    font-size: 18px;
  }
  .article-list__date {
    font-size: 12px;
  }
  .article-list__cat {
    font-size: 12px;
  }
  .article-list__excerpt {
    margin-top: 12px;
    font-size: 14px;
  }
}
.wpforms-submit-container {
  text-align: center;
}
.wpforms-submit-container .btn-send[type=submit] {
  width: 300px;
  height: 60px;
  border-radius: 5rem;
  font-weight: 700;
  background-color: #15bfc5 !important;
}

.academy-area-set .academy-area-set__areaTxt > p,
.academy-area-set .academy-area-set__areaTxt > ul {
  margin-bottom: 0;
}
.academy-area-set .academy-area-set__areaTxt {
  border-top: 1px solid #b2845e;
  border-bottom: 1px solid #b2845e;
  margin: 1rem 0;
  padding: 0.7em;
}

.tab-container ul {
  padding: 0;
}

.archive .article-list {
  padding: 0;
}

#sub .sidebar-widget {
  font-size: 93%;
  margin: 3rem 0 20px;
  /* background: #fff; */
  padding: 1rem;
}
#sub li a {
  background: #efece4;
  border-radius: 40px;
  text-align: center;
  margin-top: 2rem;
  padding: 0.5em 6em;
  display: block;
}
#sub #archives-2 select {
  padding: 0.7em 1em;
  width: 100%;
  border-radius: 10px;
}

#access-access h3 {
  color: #b2845e;
  font-weight: 700;
}
#access-access .access-access__txt {
  margin-bottom: 2rem;
}
#access-access .access-access__data {
  margin-bottom: 4rem;
}
#access-access table th {
  width: 30%;
  border-bottom: 1px solid #b2845e;
  padding: 1rem 0;
}
#access-access td {
  border-bottom: 1px solid #b2845e;
  padding: 1rem 0;
}

#access-about figure > table > tbody > tr > td:nth-child(odd) {
  background-color: #81d8d0;
  border: none !important;
  border-bottom: 1px solid #fff !important;
  color: #fff;
  padding: 1rem 0.5rem !important;
}
#access-about figure > table > tbody > tr > td:nth-child(even) {
  background-color: #fff;
  border: none !important;
  border-bottom: 1px solid #81d8d0 !important;
  padding: 1rem 0.5rem !important;
}

.footer {
  padding-bottom: 65px;
  border-top: 10px solid #81d8d0;
}
.footer .btn-mail {
  margin-bottom: 2rem;
}
.footer .btn-mail a {
  background: #15bfc5;
  padding: 0.2em 1em;
  display: inline-block;
  border-radius: 20px;
  color: #fff;
}

.footer-widget__title {
  background: #fff;
  color: #15bfc5;
  display: inline-block;
}

.sub-page-contents.single,
.sub-page-contents.category {
  padding-top: 20px;
}
.article--single.post {
  margin-top: 2em;
}

@media screen and (min-width: 576px) {
  .pc-on {
    display: block;
  }
  .sp-on {
    display: none;
  }
  .sub-page-contents > .container {
    padding-top: 0 !important;
  }
  .habakiri-slider .habakiri-slider__item {
    background-position: 50% 50%;
  }
  .habakiri-slider .habakiri-slider__item-content {
    top: 45%;
  }
  .habakiri-slider h2 {
    font-size: clamp(44px, 4.3vw, 55px);
  }
  .habakiri-slider h2 span {
    font-size: clamp(44px, 4.3vw, 55px);
  }
  .habakiri-slider p {
    font-size: clamp(22px, 2vw, 30px);
  }
  .news {
    top: 410px;
  }
}
@media screen and (min-width: 768px) {
  html,
  body {
    font-size: 16px;
  }
  #ez-toc-container ul {
    display: flex; /*必須*/
    flex-wrap: wrap; /*必須*/
    justify-content: space-between;
  }
  div#ez-toc-container ul li {
    width: 47%; /*必須*/
    padding: 0;
  }
  #sticky {
    display: none;
  }
  .news dl {
    font-size: 14px;
  }
  .container {
    padding-top: 20px;
  }
  .color2 {
    border: 30px solid #81d8d0;
    margin-top: 40px !important;
    margin-bottom: 40px;
    box-sizing: border-box;
    width: 100% !important;
  }
  .contact-cta {
    display: flex;
    justify-content: space-between;
    max-width: 900px;
    margin: 30px auto 0;
  }
  .contact-cta-btn {
    width: 450px;
  }
  .repertory-ichiran {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .repertory-ichiran .repertory-list {
    width: 24%;
  }
  .academy-area-set {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .academy-area-set > .academy-area__head {
    width: 30%;
  }
  .academy-area-set > .academy-area__txt {
    width: 60%;
  }
  .academy-area-set:nth-child(2) {
    flex-direction: row-reverse;
  }
  .academy-area-set > .academy-area-set__areaImg {
    display: block;
    width: 30%;
  }
  .academy-area-set > .academy-area-set__areaTxt {
    width: 60%;
    display: flex;
  }
  .academy-area-set > .academy-area-set__areaTxt > dl {
    width: 50%;
  }
  #access-access .col-md-4 {
    padding-top: 2rem;
  }
  #access-access .col-md-8 {
    padding-left: 5rem;
  }
  #access-about table {
    max-width: 900px;
    margin: 0 auto;
  }
  .page-header {
    height: auto;
    padding: 54px 0;
  }
  .sub-page-contents.single,
  .sub-page-contents.category {
    padding-top: 20px;
  }
  .color3 {
    background: rgba(254, 241, 255, 0.61) url(./img/contact_bg_02_pc.webp) center bottom/cover no-repeat;
    padding: 3rem 0;
  }
  .color3 h2[id$=heading],
  .color3 p {
    color: #6d2700;
    font-weight: 700;
  }
  .color3 p {
    font-size: 1.1rem;
  }
  .footer {
    padding-bottom: 0;
  }
  .footer .row {
    display: flex;
  }
  #header {
    position: fixed;
    width: 100%;
    box-shadow: 0px 1px 1px 0px rgba(161, 161, 160, 0.3);
  }
  #front-page-voice .card {
    padding: 0 1.2rem 0;
  }
}
@media screen and (min-width: 990px) {
  h2,
  .h2 {
    font-size: 2em;
  }
  .header-cta.header__col {
    display: flex !important;
    gap: 10px;
  }
  .header-cta.header__col .p-2.call .comment {
    font-size: 0.8em;
  }
  .header-cta.header__col .p-2.btn-mail span {
    padding: 0.5em 1em;
  }
  .page-header {
    margin-top: 120px;
  }
  .habakiri-slider {
    margin-top: 140px;
  }
  h2[id$=heading][data-label].ml-left {
    text-align: left;
    margin-bottom: 0;
  }
  h2[id$=heading][data-label].ml-left::after {
    left: 0;
    transform: translate(0, -50%);
  }
  .sub-page-contents.single,
  .sub-page-contents.category {
    padding-top: 60px;
  }
}
@media screen and (min-width: 1024px) {
  #menu-main_navi {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  #menu-main_navi li {
    line-height: 1.4;
  }
  .responsive-nav .menu > .menu-item > a,
  .header--transparency.header--fixed--is_scrolled .responsive-nav .menu > .menu-item > a {
    background-color: transparent;
    padding: 12px 15px !important;
  }
  .habakiri-slider .habakiri-slider__item-content {
    width: 1260px;
    margin: 0 auto;
  }
  .news {
    top: 540px;
    left: 2%;
  }
  .entry__content .color2 {
    margin: 40px auto 0;
  }
  .page-header {
    padding: 84px 0;
    margin-top: 120px;
  }
  h2[id$=heading][data-label]:after,
  p.h2[class*=heading][data-label]:after {
    width: 140px;
    height: 9px;
  }
  .profile.row {
    margin-bottom: 4rem;
  }
  .color2 {
    padding: 60px 10px 80px;
  }
  .pearl::before {
    width: 100px;
  }
  .pearl::after {
    width: 50px;
  }
  #front-page-profile .profile.row {
    display: flex;
    flex-direction: row-reverse;
  }
  #front-page-profile .youtube.row {
    display: flex;
    align-items: center;
  }
  #front-page-academy .row {
    display: flex;
    align-items: center;
  }
  .feature-image img {
    max-width: 900px;
  }
  .feature-text {
    font-size: 2em;
  }
  .sub-page-contents.single,
  .sub-page-contents.category {
    padding-top: 130px;
  }
}
@media screen and (min-width: 1440px) {
  .container {
    width: 1260px;
  }
  .news {
    left: calc((100vw - 1260px) / 2);
  }
  .pearl::before {
    left: 90px;
  }
  .pearl::after {
    top: 220px;
    right: 90px;
  }
  .sub-page-contents.single,
  .sub-page-contents.category {
    padding-top: 130px;
  }
}/*# sourceMappingURL=style.css.map */