@charset "UTF-8";
.mb0 {
  margin-bottom: 0 !important; }

.ml0 {
  margin-left: 0 !important; }

.mr0 {
  margin-right: 0 !important; }

.mt0 {
  margin-top: 0 !important; }

.pb0 {
  padding-bottom: 0 !important; }

.pl0 {
  padding-left: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.pt0 {
  padding-top: 0 !important; }

.mb0 {
  margin-bottom: 0 !important; }

.ml0 {
  margin-left: 0 !important; }

.mr0 {
  margin-right: 0 !important; }

.mt0 {
  margin-top: 0 !important; }

.pb0 {
  padding-bottom: 0 !important; }

.pl0 {
  padding-left: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.pt0 {
  padding-top: 0 !important; }

/* ==========================================================================
   Reset
   ========================================================================== */
/* Initialize
   ========================================================================== */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strong, sub, sup, var,
b, u, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, main,
menu, nav, output, ruby, section, summary, input, textarea,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

html {
  font-size: .625em;
  height: 100%;
  overflow-y: scroll; }

body {
  color: #111;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  text-align: center;
  -webkit-text-size-adjust: 100%; }

dd,
dt,
td,
th,
li,
p {
  font-size: 1.6em; }

td td,
td th,
td p,
td li,
dd dd,
dd dt,
dd p,
dd li,
li dd,
li dt,
li li,
li p {
  font-size: 1em; }

@media screen and (max-width: 767px) {
  dd,
  dt,
  td,
  th,
  li,
  p {
    font-size: 1.4em; } }

@media screen and (max-width: 320px) {
  dd,
  dt,
  td,
  th,
  li,
  p {
    font-size: 1.2em; } }

ul {
  list-style: none; }

ol {
  counter-reset: cnt;
  list-style: none;
  margin-left: 0; }
  ol li {
    counter-increment: cnt;
    margin-bottom: 5px;
    padding-left: 1.6em;
    text-indent: -1.6em; }
    ol li:last-child {
      margin-bottom: 0; }
    ol li:before {
      content: counter(cnt) ".";
      font-size: 1.1em;
      padding-right: 10px; }
      @media all and (-ms-high-contrast: none) {
        ol li:before {
          line-height: 1;
          -webkit-transform: translateY(4px);
              -ms-transform: translateY(4px);
                  transform: translateY(4px); } }

input[type="button"],
input[type="submit"],
input[type="reset"],
a {
  color: #111;
  text-decoration: none; }

@media screen and (min-width: 768px) {
  a:hover {
    text-decoration: underline; }
  a[href^="tel:"] {
    pointer-events: none; }
  a:hover img {
    opacity: .7;
    -webkit-transition: .3s;
    transition: .3s; } }

address {
  font-style: normal; }

p {
  line-height: 1.8; }

/* clearfix */
.clear {
  clear: both; }

.clearfix:after {
  clear: both;
  content: "";
  display: block;
  overflow: hidden; }

/* align */
.t_left {
  text-align: left !important; }

.t_center {
  text-align: center !important; }

.t_right {
  text-align: right !important; }

.vb {
  vertical-align: bottom !important; }

.vm {
  vertical-align: middle !important; }

.vt {
  vertical-align: top !important; }

/* google chrome input button padding */
input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="file"]::-webkit-file-upload-button, button {
  padding: 1px 6px; }

input[type="checkbox"] {
  margin: 0; }

img {
  border: 0;
  height: auto;
  max-width: 100%;
  vertical-align: bottom; }

.img-box {
  font-size: 0;
  line-height: 0; }

.inner-wrap {
  margin-left: auto;
  margin-right: auto;
  width: 700px;
  position: relative; }
  @media screen and (max-width: 767px) {
    .inner-wrap {
      width: auto; } }

.wrap {
  margin-left: auto;
  margin-right: auto;
  width: 980px;
  position: relative; }

.wide-wrap {
  margin-left: auto;
  margin-right: auto;
  max-width: 1300px; }

@media (max-width: 1100px) {
  .wrap {
    width: auto; } }

table {
  border-collapse: collapse;
  width: 100%; }

sup {
  font-size: 10px;
  font-weight: normal;
  vertical-align: top; }

.text-bold,
strong {
  font-weight: bold; }

html {
  overflow-x: hidden; }

body {
  overflow: hidden; }

.text-small {
  font-size: .8em; }

.text-large {
  font-size: 2.4em; }

video {
  outline: none; }

/* ---------------------------------------------------------

■■■ PC SP ■■■■■■■■■■

--------------------------------------------------------- */
@media screen and (min-width: 768px) {
  img.sp,
  br.sp,
  span.sp,
  .sp {
    display: none; }
  br.sp {
    width: 0; }
  .pc {
    display: block; }
  span.pc,
  img.pc,
  br.pc {
    display: inline; } }

@media screen and (max-width: 767px) {
  .sp {
    display: block; }
  span.pc,
  br.pc,
  img.pc,
  .pc {
    display: none; }
  img.sp,
  br.sp,
  span.sp {
    display: inline; } }

.mb0 {
  margin-bottom: 0 !important; }

.ml0 {
  margin-left: 0 !important; }

.mr0 {
  margin-right: 0 !important; }

.mt0 {
  margin-top: 0 !important; }

.pb0 {
  padding-bottom: 0 !important; }

.pl0 {
  padding-left: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.pt0 {
  padding-top: 0 !important; }

/* ==========================================================================
   Parts module
   ========================================================================== */
/* m-carousel
   ========================================================================== */
.m-carousel {
  position: relative; }
  .m-carousel .m-carousel_container {
    overflow: visible; }
  .m-carousel .m-carousel_pagination {
    height: 6px;
    padding-left: 45px;
    padding-right: 45px;
    position: static; }
    .m-carousel .m-carousel_pagination .swiper-pagination-bullet {
      background-color: #fff;
      height: 6px;
      opacity: 1;
      vertical-align: top;
      width: 6px; }
      .m-carousel .m-carousel_pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
        margin-left: 14px; }
      .m-carousel .m-carousel_pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background-color: #f0c003; }
    @media screen and (max-width: 767px) {
      .m-carousel .m-carousel_pagination {
        height: 4px;
        padding-left: 34px;
        padding-right: 34px; }
        .m-carousel .m-carousel_pagination .swiper-pagination-bullet {
          background-color: #484848;
          height: 4px;
          width: 4px; }
          .m-carousel .m-carousel_pagination .swiper-pagination-bullet + .swiper-pagination-bullet {
            margin-left: 10px; } }
  .m-carousel .m-carousel_pagination-wrap {
    height: 6px;
    position: absolute;
    bottom: 18px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 101; }
    .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_next,
    .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_prev {
      background: none;
      display: block;
      height: 8px;
      margin-top: 0;
      width: 8px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_next:after,
      .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_prev:after {
        content: "";
        display: block;
        height: inherit;
        width: inherit;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg);
        -webkit-transform-origin: center center;
            -ms-transform-origin: center center;
                transform-origin: center center; }
    .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_prev {
      left: 0; }
      .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_prev:after {
        border-left: 2px solid #fff;
        border-bottom: 2px solid #fff; }
    .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_next {
      right: 0; }
      .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_next:after {
        border-right: 2px solid #fff;
        border-top: 2px solid #fff; }
    @media screen and (max-width: 767px) {
      .m-carousel .m-carousel_pagination-wrap {
        background-color: #111;
        height: 4px;
        padding: 15px 15px;
        bottom: 0; }
        .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_next,
        .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_prev {
          height: 6px;
          width: 6px; }
        .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_prev {
          left: 15px; }
        .m-carousel .m-carousel_pagination-wrap .m-carousel_pagination_next {
          right: 15px; } }
  .m-carousel .m-carousel_button {
    height: inherit;
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 100; }
    .m-carousel .m-carousel_button .m-carousel_button_next,
    .m-carousel .m-carousel_button .m-carousel_button_prev {
      background: none;
      height: 47px;
      margin-top: 0;
      width: 47px;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      .m-carousel .m-carousel_button .m-carousel_button_next:after,
      .m-carousel .m-carousel_button .m-carousel_button_prev:after {
        content: "";
        height: inherit;
        width: inherit;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg);
        -webkit-transform-origin: center center;
            -ms-transform-origin: center center;
                transform-origin: center center; }
    .m-carousel .m-carousel_button .m-carousel_button_prev {
      left: -50px; }
      .m-carousel .m-carousel_button .m-carousel_button_prev:after {
        border-left: 1px solid #fff;
        border-bottom: 1px solid #fff; }
    .m-carousel .m-carousel_button .m-carousel_button_next {
      right: -50px; }
      .m-carousel .m-carousel_button .m-carousel_button_next:after {
        border-right: 1px solid #fff;
        border-top: 1px solid #fff; }
    @media screen and (max-width: 767px) {
      .m-carousel .m-carousel_button .m-carousel_button_next,
      .m-carousel .m-carousel_button .m-carousel_button_prev {
        height: 27px;
        width: 27px; }
      .m-carousel .m-carousel_button .m-carousel_button_prev {
        left: 15px; }
      .m-carousel .m-carousel_button .m-carousel_button_next {
        right: 15px; } }

/* 
   ========================================================================== */
/* m-btn
   ========================================================================== */
.m-btn {
  line-height: 1.1; }
  .m-btn > span,
  .m-btn > a {
    background: url(/cart/wp-content/themes/wp-valx/common/img/icon-arrow-white_bg.svg) no-repeat right 14px top 50%, -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.3)), to(transparent));
    background: url(/cart/wp-content/themes/wp-valx/common/img/icon-arrow-white_bg.svg) no-repeat right 14px top 50%, -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.3), transparent);
    background: url(/cart/wp-content/themes/wp-valx/common/img/icon-arrow-white_bg.svg) no-repeat right 14px top 50%, linear-gradient(0deg, rgba(0, 0, 0, 0.3), transparent);
    background-size: 18px auto, auto;
    -webkit-box-shadow: 0 0 0 1px #3d3d3d inset;
            box-shadow: 0 0 0 1px #3d3d3d inset;
    display: inline-block;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    max-width: 200px;
    text-decoration: none;
    width: 100%;
    position: relative;
    -webkit-transition: all .7s;
    transition: all .7s; }
    .m-btn > span:after, .m-btn > span:before,
    .m-btn > a:after,
    .m-btn > a:before {
      content: "";
      height: 1px;
      width: 100%;
      position: absolute;
      left: 0; }
    .m-btn > span:before,
    .m-btn > a:before {
      background: -webkit-gradient(linear, left top, right top, color-stop(60%, #3d3d3d), to(#b1b1b1));
      background: -webkit-linear-gradient(left, #3d3d3d 60%, #b1b1b1);
      background: linear-gradient(90deg, #3d3d3d 60%, #b1b1b1);
      top: 0; }
    .m-btn > span:after,
    .m-btn > a:after {
      background: -webkit-gradient(linear, right top, left top, color-stop(60%, #3d3d3d), to(#b1b1b1));
      background: -webkit-linear-gradient(right, #3d3d3d 60%, #b1b1b1);
      background: linear-gradient(-90deg, #3d3d3d 60%, #b1b1b1);
      bottom: 0; }
    .m-btn > span > span,
    .m-btn > a > span {
      display: block;
      padding: 20px 0; }
      .m-btn > span > span:after, .m-btn > span > span:before,
      .m-btn > a > span:after,
      .m-btn > a > span:before {
        content: "";
        height: 100%;
        width: 1px;
        position: absolute;
        top: 0; }
      .m-btn > span > span:before,
      .m-btn > a > span:before {
        background: -webkit-gradient(linear, left bottom, left top, from(#b1b1b1), color-stop(60%, #3d3d3d));
        background: -webkit-linear-gradient(bottom, #b1b1b1, #3d3d3d 60%);
        background: linear-gradient(0deg, #b1b1b1, #3d3d3d 60%);
        left: 0; }
      .m-btn > span > span:after,
      .m-btn > a > span:after {
        background: -webkit-gradient(linear, left bottom, left top, color-stop(60%, #3d3d3d), to(#b1b1b1));
        background: -webkit-linear-gradient(bottom, #3d3d3d 60%, #b1b1b1);
        background: linear-gradient(0deg, #3d3d3d 60%, #b1b1b1);
        right: 0; }
    @media screen and (min-width: 768px) {
      .m-btn > span:hover,
      .m-btn > a:hover {
        background-color: #111; } }
  @media screen and (max-width: 767px) {
    .m-btn > span,
    .m-btn > a {
      font-size: 1.4rem; } }

/* m-iframe
   ========================================================================== */
.m-iframe {
  padding-top: 56.25%;
  position: relative; }
  .m-iframe iframe {
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0; }

/* m-ul
   ========================================================================== */
.m-ul li {
  line-height: 2;
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
  position: relative; }
  .m-ul li:before {
    content: "・"; }

/* m-ol
   ========================================================================== */
.m-ol > li {
  counter-increment: cnt;
  line-height: 1.9;
  padding-left: 2.5em;
  text-indent: -2.5em;
  text-align: left;
  position: relative; }
  .m-ol > li:before {
    content: "（" counter(cnt) "）";
    font-size: 1em;
    padding: 0; }

/* m-news
   ========================================================================== */
.m-news > ul > li {
  background-color: #222;
  font-size: 1.5em;
  line-height: 1.65;
  text-align: left; }
  .m-news > ul > li:nth-child(even) {
    background-color: #191919; }
  .m-news > ul > li > a {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    border: 1px solid transparent;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 15px 20px 14px;
    text-decoration: none;
    -webkit-transition: all .7s ease;
    transition: all .7s ease; }
    .m-news > ul > li > a .m-news_date {
      color: #999;
      width: 110px; }
    .m-news > ul > li > a .m-news_title {
      width: -webkit-calc(100% - 110px);
      width: calc(100% - 110px); }
    @media screen and (min-width: 768px) {
      .m-news > ul > li > a:hover {
        border: 1px solid #f0c003;
        -webkit-box-shadow: 0 0 10px rgba(240, 192, 3, 0.5) inset;
                box-shadow: 0 0 10px rgba(240, 192, 3, 0.5) inset; } }

@media screen and (max-width: 767px) {
  .m-news > ul > li {
    font-size: 1.5em; }
    .m-news > ul > li > a {
      display: block;
      padding: 15px; }
      .m-news > ul > li > a .m-news_date {
        font-size: 1rem;
        margin-bottom: 2px;
        width: auto; }
      .m-news > ul > li > a .m-news_title {
        font-size: 1.3rem;
        width: auto; } }

/* m-media
   ========================================================================== */
.m-media:after {
  clear: both;
  content: "";
  display: block;
  overflow: hidden; }

.m-media:not(:last-child) {
  margin-bottom: 80px; }

.m-media .m-media_img {
  float: left;
  margin-right: 40px;
  max-width: 470px; }

.m-media .m-media_box {
  text-align: left;
  width: 100%; }
  .m-media .m-media_box > ol:not(:first-child),
  .m-media .m-media_box > ul:not(:first-child),
  .m-media .m-media_box > p:not(:first-child) {
    margin-top: 40px; }

.m-media.theme-reverse .m-media_img {
  float: right;
  margin-left: 40px;
  margin-right: 0; }

.m-media.theme-center .m-media_img {
  float: none;
  margin-bottom: 40px;
  margin-left: 0;
  margin-right: 0;
  max-width: 100%;
  text-align: center; }

.m-media.theme-3column {
  margin-right: -28px; }
  .m-media.theme-3column .m-media_box {
    margin-bottom: 50px;
    margin-right: 28px;
    width: 340px; }
  @media (min-width: 981px) {
    .m-media.theme-3column.opt-left {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }
  @media screen and (max-width: 767px) {
    .m-media.theme-3column {
      display: block;
      margin-right: 0; }
      .m-media.theme-3column .m-media_box {
        margin-bottom: 50px;
        margin-right: 0;
        width: auto; }
        .m-media.theme-3column .m-media_box .lesson-box_img img {
          width: 100%; } }

.m-media.theme-4column {
  margin-right: -28px; }
  .m-media.theme-4column .m-media_box {
    margin-bottom: 28px;
    margin-right: 28px;
    width: 224px; }
    .m-media.theme-4column .m-media_box p:not(:first-child) {
      margin-top: 20px; }
    .m-media.theme-4column .m-media_box.opt-long {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 476px; }
      @media screen and (max-width: 767px) {
        .m-media.theme-4column .m-media_box.opt-long {
          display: block;
          width: 100%; } }
  @media screen and (max-width: 767px) {
    .m-media.theme-4column {
      margin-bottom: auto;
      margin-right: 0; }
      .m-media.theme-4column .m-media_box {
        margin-bottom: 15px;
        margin-right: 0;
        width: 48%; }
        .m-media.theme-4column .m-media_box:nth-child(2n) {
          margin-left: auto; }
        .m-media.theme-4column .m-media_box:nth-child(4n) {
          margin-right: 0; } }

/* m-gallery
   ========================================================================== */
.m-gallery:not(:last-child) {
  margin-bottom: 80px; }

.m-gallery > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -2%; }
  .m-gallery > ul > li {
    margin-right: 2%;
    margin-top: 2%;
    text-align: left;
    width: 23%; }
    .m-gallery > ul > li:nth-child(-n + 4) {
      margin-top: 0; }
    .m-gallery > ul > li a {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      text-decoration: none; }
      .m-gallery > ul > li a figure {
        border-radius: 50%;
        overflow: hidden;
        height: 150px;
        width: 150px; }
      .m-gallery > ul > li a .m-voice_inner {
        padding-left: 25px;
        width: -webkit-calc(100% - 150px);
        width: calc(100% - 150px); }
      .m-gallery > ul > li a h3 {
        color: #a76d44;
        font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
        font-size: 1.18em;
        font-weight: bold;
        line-height: 1.3;
        margin-bottom: 15px; }

/* m-lead
   ========================================================================== */
.m-lead {
  text-align: center; }
  .m-lead > div > table > tbody > tr > td,
  .m-lead > div > table > tbody > tr > th,
  .m-lead > div > table > thead > tr > td,
  .m-lead > div > table > thead > tr > th,
  .m-lead > dl > dd,
  .m-lead > dl > dt,
  .m-lead > ol > li,
  .m-lead > ul > li,
  .m-lead > p {
    font-size: 2em;
    font-weight: 500; }
  .m-lead:not(:last-child) {
    margin-bottom: 80px; }

/* m-bnr-img
   ========================================================================== */
.m-bnr-img a {
  background: url(../img/bnr_img.png) no-repeat 0 0/800px auto;
  display: block;
  height: 100px;
  margin: 0 auto;
  overflow: hidden;
  text-align: left;
  text-decoration: none;
  text-indent: -200%;
  width: 800px; }
  @media screen and (min-width: 768px) {
    .m-bnr-img a:hover {
      background-position: 0 -100px; } }

@media screen and (max-width: 767px) {
  .m-bnr-img {
    margin-left: 15px;
    margin-right: 15px; }
    .m-bnr-img a {
      background: url(../img/bnr_img-sp.png) no-repeat 0 0/cover;
      height: auto;
      font-size: 0;
      line-height: 0;
      padding-top: 28.9%;
      width: 100%; } }

/* m-faq
   ========================================================================== */
.m-faq {
  text-align: left; }
  .m-faq li + li {
    margin-top: 35px; }
  .m-faq .m-faq_q {
    border-bottom: 1px solid #e4dbd5;
    border-top: 2px solid #8a5a38;
    color: #502a0f;
    font-size: 1.2em;
    line-height: 1.1;
    padding: 20px 20px 20px 50px;
    position: relative; }
    .m-faq .m-faq_q:before {
      color: #a76d44;
      content: "Q";
      font-size: 1.9em;
      margin-right: 10px;
      position: absolute;
      left: 9px;
      top: 8px; }
  .m-faq .m-faq_a {
    margin-left: 50px;
    padding: 25px 20px 0 45px;
    position: relative; }
    .m-faq .m-faq_a:before {
      color: #75a25a;
      content: "A";
      font-size: 2.3em;
      position: absolute;
      left: 0;
      top: 20px; }
  @media screen and (max-width: 767px) {
    .m-faq {
      margin-left: 15px;
      margin-right: 15px; }
      .m-faq li + li {
        margin-top: 35px; }
      .m-faq .m-faq_q {
        font-size: 1.07em;
        padding: 20px 10px 20px 35px;
        position: relative; }
        .m-faq .m-faq_q:before {
          left: 5px; }
      .m-faq .m-faq_a {
        margin-left: 30px;
        padding: 20px 10px 0 30px; }
        .m-faq .m-faq_a:before {
          font-size: 2.3em;
          top: 15px; } }

.m-backlink a {
  background: #fff;
  border: 1px solid #e3e0de;
  display: inline-block;
  font-size: 1.4em;
  padding: 15px 0 15px 30px;
  text-decoration: none;
  width: 190px;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s; }
  .m-backlink a:before {
    background: url(../img/icon-back_bg.png) no-repeat 0 50%;
    content: "";
    height: 100%;
    width: 24px;
    position: absolute;
    left: 35px;
    top: 0; }
  @media screen and (min-width: 768px) {
    .m-backlink a:hover {
      border-color: #553016; } }

/* m-prevnext
   ========================================================================== */
.m-prevnext {
  margin: 60px 0;
  position: relative; }
  .m-prevnext .m-prevnext_list {
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  .m-prevnext .m-prevnext_next,
  .m-prevnext .m-prevnext_prev {
    display: inline-block;
    margin: 0 15px;
    width: 120px; }
  .m-prevnext .m-prevnext_next a {
    background-position: 75% 50%;
    padding-right: 30px; }
  .m-prevnext .m-prevnext_prev a {
    background-image: url(../img/icon-arw-left_bg01.png);
    background-position: 25% 50%;
    padding-left: 30px; }
    @media screen and (min-width: 768px) {
      .m-prevnext .m-prevnext_prev a:hover {
        background-image: url(../img/icon-arw-left-white_bg01.png); } }
  @media screen and (max-width: 767px) {
    .m-prevnext {
      margin: 40px 0; }
      .m-prevnext .m-prevnext_list {
        margin-top: 25px;
        position: static;
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0); }
        .m-prevnext .m-prevnext_list a {
          font-size: 1.3em;
          display: inline-block;
          padding: 12px 0 12px 30px;
          width: 155px; }
          .m-prevnext .m-prevnext_list a:before {
            left: 25px; }
      .m-prevnext .m-prevnext_next,
      .m-prevnext .m-prevnext_prev {
        margin: 0 12px;
        width: 125px; }
        .m-prevnext .m-prevnext_next a,
        .m-prevnext .m-prevnext_prev a {
          font-size: 1.8em; } }

/* m-table
   ========================================================================== */
.m-table th,
.m-table td {
  line-height: 1.5;
  vertical-align: top; }
  .m-table th th,
  .m-table th td,
  .m-table td th,
  .m-table td td {
    padding: 0; }

.m-table th {
  font-weight: bold;
  padding-top: 15px;
  width: 200px; }

.m-table td {
  padding-bottom: 30px; }

@media screen and (max-width: 767px) {
  .m-table th,
  .m-table td {
    display: block; }
    .m-table th th,
    .m-table th td,
    .m-table td th,
    .m-table td td {
      display: table-cell;
      padding: 0; }
  .m-table th {
    padding: 20px 5px 15px;
    width: 100%; }
  .m-table td {
    border-bottom: 1px solid #e3e0de;
    padding: 0 5px 20px; } }

/* m-select
   ========================================================================== */
.m-select {
  border: 1px solid #e3e0de;
  overflow: hidden;
  width: 240px;
  position: relative; }
  .m-select select {
    background: #fff;
    border: 0;
    outline: none;
    padding: 15px 40px 15px 20px;
    width: -webkit-calc(100% + 20px);
    width: calc(100% + 20px); }
  .m-select:before {
    border-bottom: 1px solid #4f4f4f;
    border-right: 1px solid #4f4f4f;
    content: "";
    height: 6px;
    margin-top: -3px;
    width: 6px;
    position: absolute;
    right: 18px;
    top: 50%;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg); }

/* m-dl
   ========================================================================== */
.m-dl dl {
  border-top: 1px dotted #dfdad6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .m-dl dl dt,
  .m-dl dl dd {
    border-bottom: 1px dotted #dfdad6;
    line-height: 1.5;
    padding: 15px 2px; }
    .m-dl dl dt dt,
    .m-dl dl dt dd,
    .m-dl dl dd dt,
    .m-dl dl dd dd {
      padding: 0; }
  .m-dl dl dt {
    font-weight: normal;
    width: 80px;
    position: relative; }
    .m-dl dl dt:after {
      content: ":";
      position: absolute;
      right: 0; }
  .m-dl dl dd {
    padding-left: 10px;
    padding-right: 10px;
    width: -webkit-calc(100% - 80px);
    width: calc(100% - 80px); }

@media screen and (max-width: 767px) {
  .m-dl dl dt,
  .m-dl dl dd {
    padding-bottom: 10px;
    padding-top: 10px; }
    .m-dl dl dt dt,
    .m-dl dl dt dd,
    .m-dl dl dd dt,
    .m-dl dl dd dd {
      padding: 0; } }

/* m-table
   ========================================================================== */
.m-link {
  background: no-repeat 0 50%;
  padding: 5px 0 5px 26px; }
  .m-link + .m-link {
    margin-top: 20px; }
  .m-link.theme-website {
    background-image: url(../img/icon-website_bg.png); }
  .m-link.theme-insta {
    background-image: url(../img/icon-insta_bg.png); }
  @media screen and (max-width: 767px) {
    .m-link + .m-link {
      margin-top: 10px; } }

/* m-under-main-box
   ========================================================================== */
.m-under-main-box {
  background: no-repeat 50% 50% / cover;
  height: 340px;
  position: relative; }
  .m-under-main-box h1 {
    color: #fafaf8;
    font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 2.3em;
    text-align: center;
    width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
    .m-under-main-box h1 span {
      display: inline-block;
      font-size: 2.6em; }
      .m-under-main-box h1 span:after {
        content: "／";
        font-size: .7em;
        padding: 0 15px; }
  @media screen and (max-width: 767px) {
    .m-under-main-box {
      height: 150px; }
      .m-under-main-box h1 {
        font-size: 1.4em; }
        .m-under-main-box h1 span:after {
          padding: 0 10px; } }

/* m-local-nav
   ========================================================================== */
.m-local-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 80px; }
  .m-local-nav ul li {
    border-right: 1px dotted #bfbfbf; }
    .m-local-nav ul li:first-child {
      border-left: 1px dotted #bfbfbf; }
    @media screen and (min-width: 768px) {
      .m-local-nav ul li {
        width: 260px; } }
    .m-local-nav ul li a {
      color: #333;
      display: block;
      font-weight: bold;
      padding: 20px 0 33px;
      text-decoration: none;
      position: relative; }
      .m-local-nav ul li a:before {
        border-bottom: 1px solid #679141;
        border-right: 1px solid #679141;
        content: "";
        height: 5px;
        width: 5px;
        position: absolute;
        bottom: 14px;
        left: 50%;
        -webkit-transform: rotate(45deg) translateX(-50%);
            -ms-transform: rotate(45deg) translateX(-50%);
                transform: rotate(45deg) translateX(-50%);
        -webkit-transition: .1s ease-in;
        transition: .1s ease-in; }
      @media screen and (min-width: 768px) {
        .m-local-nav ul li a:hover:before {
          bottom: 10px; } }

@media screen and (max-width: 767px) {
  .m-local-nav ul {
    margin-bottom: 30px; }
    .m-local-nav ul li {
      line-height: 1.5;
      width: 33.3333%; }
      .m-local-nav ul li:first-child {
        border-left: 0; }
      .m-local-nav ul li:last-child {
        border-right: 0; }
      .m-local-nav ul li a {
        padding: 10px 0 25px; }
        .m-local-nav ul li a:before {
          height: 5px;
          width: 5px;
          bottom: 10px; } }

/* m-pagination
   ========================================================================== */
.m-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 50px 0;
  position: relative; }
  .m-pagination span,
  .m-pagination a {
    background: no-repeat 50% 50% #502a0f;
    background-color: #502a0f;
    color: #fff;
    display: block;
    font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 2em;
    line-height: 50px;
    margin: 0 5px;
    overflow: hidden;
    text-align: center;
    text-decoration: none;
    -webkit-transition: .3s ease-out;
    transition: .3s ease-out; }
  .m-pagination .m-pagination_pager {
    width: 50px; }
  .m-pagination a:hover,
  .m-pagination .is-active {
    background-color: #a76d44; }
  .m-pagination a.m-pagination_next,
  .m-pagination a.m-pagination_prev {
    text-align: left;
    text-indent: -9999px; }
  .m-pagination a.m-pagination_prev {
    background-image: url(../img/icon-prev_bg.png); }
  .m-pagination a.m-pagination_next {
    background-image: url(../img/icon-next_bg.png); }
  .m-pagination .m-pagination_last,
  .m-pagination .m-pagination_first,
  .m-pagination span.m-pagination_page_num {
    display: none; }
  @media screen and (max-width: 767px) {
    .m-pagination {
      position: relative; }
      .m-pagination span,
      .m-pagination a {
        font-size: 1.6em;
        line-height: 40px; }
      .m-pagination .m-pagination_pager {
        width: 40px; }
      .m-pagination a.m-pagination_next,
      .m-pagination a.m-pagination_prev {
        background-size: 7px; } }

/* m-lesson-bnr
   ========================================================================== */
.m-lesson-bnr {
  margin: 60px 0; }
  .m-lesson-bnr a {
    background: url(../img/lesson-bnr_bg.jpg) no-repeat 0 0/800px auto;
    display: block;
    height: 100px;
    margin: 0 auto;
    overflow: hidden;
    text-align: left;
    text-indent: -200%;
    width: 800px; }
    @media screen and (min-width: 768px) {
      .m-lesson-bnr a:hover {
        background-position: 0 -100px; } }
  @media screen and (max-width: 767px) {
    .m-lesson-bnr {
      margin: 35px 15px; }
      .m-lesson-bnr a {
        background: url(../img/lesson-bnr_bg-sp.jpg) no-repeat 0 0/cover;
        font-size: 0;
        height: auto;
        line-height: 0;
        padding-top: 23%;
        width: 100%; } }

/* m-howto_box
   ========================================================================== */
.m-howto_box .m-howto_list {
  position: relative; }

.m-howto_box .m-howto_step {
  top: 215px; }

.m-howto_box .m-howto_text_title {
  color: #679141;
  font-weight: bold;
  margin-bottom: 5px; }

.m-howto_box .m-howto_img {
  font-size: 0;
  line-height: 0; }

@media screen and (max-width: 767px) {
  .m-howto_box.theme-3column {
    display: block;
    margin-left: 15px;
    margin-right: 15px; }
    .m-howto_box.theme-3column .m-howto_list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin-right: 0;
      width: 100%; }
      .m-howto_box.theme-3column .m-howto_list .m-howto_text,
      .m-howto_box.theme-3column .m-howto_list .m-howto_img {
        width: 50%; }
      .m-howto_box.theme-3column .m-howto_list .m-howto_img {
        position: relative; }
        .m-howto_box.theme-3column .m-howto_list .m-howto_img img {
          width: 100%; }
      .m-howto_box.theme-3column .m-howto_list + .m-howto_list {
        margin-top: 45px; }
  .m-howto_box .m-howto_step {
    top: -30px; }
  .m-howto_box .m-howto_text_title {
    color: #679141;
    font-weight: bold;
    margin-bottom: 5px; }
    .m-howto_box .m-howto_text_title:last-child {
      margin-bottom: 0; } }

.m-howto_text {
  border: 1px solid #e5e5e5;
  border-top: 0;
  min-height: 150px;
  padding: 50px 0 0;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .m-howto_text {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border: 1px solid #e5e5e5;
      border-left: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      min-height: 0;
      padding: 0 20px;
      text-align: left; } }

.m-howto_step {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  border: 1px solid #679141;
  border-radius: 50%;
  color: #679141;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 70px;
  padding-top: 5px;
  text-align: center;
  width: 70px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
  .m-howto_step p {
    line-height: 1; }
    .m-howto_step p span {
      display: block;
      font-size: 2em; }
  @media screen and (max-width: 767px) {
    .m-howto_step {
      height: 50px;
      width: 50px; }
      .m-howto_step p {
        font-size: 1em; }
        .m-howto_step p span {
          font-size: 2em; } }

/* m-crumb
   ========================================================================== */
.m-crumb {
  color: #a2a2a2;
  font-family: "Roboto", sans-serif;
  font-size: 1.5em;
  font-weight: 500;
  margin-bottom: 35px;
  text-align: right; }
  .m-crumb > span {
    color: #333; }
  @media screen and (max-width: 767px) {
    .m-crumb {
      font-size: 1.1em;
      margin-bottom: 15px; } }

/* modal-gallery
   ========================================================================== */
.modal-gallery {
  cursor: pointer; }

/* m-member
   ========================================================================== */
.m-member ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .m-member ul li {
    margin-bottom: 55px;
    text-align: left;
    width: 470px; }
    .m-member ul li:nth-child(2n) {
      margin-left: auto; }
    .m-member ul li .m-member_inner {
      background: #fff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 20px;
      position: relative; }
      .m-member ul li .m-member_inner:before {
        background: no-repeat 0 0;
        background-size: 100%;
        content: "";
        position: absolute; }
      .m-member ul li .m-member_inner figure {
        width: 170px; }
      .m-member ul li .m-member_inner .m-member_text {
        padding: 20px 20px 0;
        width: -webkit-calc(100% - 170px);
        width: calc(100% - 170px); }
        .m-member ul li .m-member_inner .m-member_text dl {
          line-height: 1.9;
          overflow: hidden; }
          .m-member ul li .m-member_inner .m-member_text dl dt {
            float: left;
            font-weight: bold; }
            .m-member ul li .m-member_inner .m-member_text dl dt:after {
              content: "："; }
          .m-member ul li .m-member_inner .m-member_text dl dd {
            overflow: hidden; }
    @media screen and (max-width: 767px) {
      .m-member ul li {
        margin-bottom: 50px;
        width: 100%; }
        .m-member ul li .m-member_inner figure {
          width: 135px; }
        .m-member ul li .m-member_inner .m-member_text {
          padding: 15px 15px 0;
          width: -webkit-calc(100% - 135px);
          width: calc(100% - 135px); }
          .m-member ul li .m-member_inner .m-member_text dl {
            line-height: 1.7; } }
    .m-member ul li.woman .m-member_inner:before {
      background-image: url(../img/icon-woman_text.png);
      height: 45px;
      width: 118px;
      right: 5px;
      top: 13px; }
    .m-member ul li.woman .m-member_inner .m-member_text dl dt {
      color: #d2718c; }
    .m-member ul li.man .m-member_inner:before {
      background-image: url(../img/icon-man_text.png);
      height: 40px;
      width: 80px;
      right: 10px;
      top: 17px; }
    .m-member ul li.man .m-member_inner .m-member_text dl dt {
      color: #5fabc7; }
    @media screen and (max-width: 767px) {
      .m-member ul li.woman .m-member_inner:before {
        height: 31px;
        width: 80px;
        right: 7px;
        top: 7px; }
      .m-member ul li.man .m-member_inner:before {
        height: 27px;
        width: 60px;
        right: 6px;
        top: 10px; } }

/* way-in
   ========================================================================== */
.fade-up {
  opacity: 0;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
      transform: translateY(50px); }

.fade-left {
  opacity: 0;
  -webkit-transform: translateX(-20%);
  -ms-transform: translateX(-20%);
      transform: translateX(-20%); }

.fade-right {
  opacity: 0;
  -webkit-transform: translateX(20%);
  -ms-transform: translateX(20%);
      transform: translateX(20%); }

.way-in {
  opacity: 1 !important;
  -webkit-transform: translate(0) !important;
  -ms-transform: translate(0) !important;
      transform: translate(0) !important;
  -webkit-transition: opacity 0.6s ease-out 0.6s, -webkit-transform 0.6s ease-out 0.6s;
  transition: opacity 0.6s ease-out 0.6s, -webkit-transform 0.6s ease-out 0.6s;
  transition: opacity 0.6s ease-out 0.6s, transform 0.6s ease-out 0.6s;
  transition: opacity 0.6s ease-out 0.6s, transform 0.6s ease-out 0.6s, -webkit-transform 0.6s ease-out 0.6s; }

.mb0 {
  margin-bottom: 0 !important; }

.ml0 {
  margin-left: 0 !important; }

.mr0 {
  margin-right: 0 !important; }

.mt0 {
  margin-top: 0 !important; }

.pb0 {
  padding-bottom: 0 !important; }

.pl0 {
  padding-left: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.pt0 {
  padding-top: 0 !important; }

/* ==========================================================================
   Layout
   ========================================================================== */
/* header
   ========================================================================== */
.layout-header {
  background-color: #fff;
  -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
  padding: 30px 0; }
  .layout-header .logo {
    font-size: 3em;
    font-weight: 100;
    line-height: 1.1; }
    .layout-header .logo > a {
      text-decoration: none; }

/* global-nav
   ========================================================================== */
/* menu
   ========================================================================== */
.menu {
  display: none;
  height: 14px;
  width: 20px;
  position: absolute;
  right: 15px;
  top: 15px;
  z-index: 10002; }
  @media screen and (max-width: 767px) {
    .menu {
      display: block; } }
  .menu span {
    background-color: #fff;
    height: 1px;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transition: all .3s;
    transition: all .3s; }
    .menu span:nth-child(2) {
      left: -3px;
      top: 3px; }
    .menu span:nth-child(3) {
      left: -6px;
      top: 6px; }
  .menu:after, .menu:before {
    background-color: #000;
    content: "";
    height: 1px;
    position: absolute;
    top: 3px;
    -webkit-transition: .3s ease-in;
    transition: .3s ease-in; }
  .menu:before {
    width: 15px;
    left: 0;
    -webkit-transform: rotate(24deg) translate(-webkit-calc(-60px * 2), 0);
        -ms-transform: rotate(24deg) translate(calc(-60px * 2), 0);
            transform: rotate(24deg) translate(calc(-60px * 2), 0);
    -webkit-transition-delay: .7s;
            transition-delay: .7s; }
  .menu:after {
    width: 25px;
    left: -5px;
    -webkit-transform: rotate(-14deg) translate(-webkit-calc(50px * 3), 0);
        -ms-transform: rotate(-14deg) translate(calc(50px * 3), 0);
            transform: rotate(-14deg) translate(calc(50px * 3), 0);
    -webkit-transition-delay: .5s;
            transition-delay: .5s; }
  .menu.is-active span {
    opacity: 0;
    left: -10px; }
    .menu.is-active span:nth-child(2) {
      left: -10px;
      -webkit-transition-delay: .1s;
              transition-delay: .1s; }
    .menu.is-active span:nth-child(3) {
      left: -10px;
      -webkit-transition-delay: .2s;
              transition-delay: .2s; }
  .menu.is-active:before {
    -webkit-transform: rotate(24deg) translate(0, 0);
        -ms-transform: rotate(24deg) translate(0, 0);
            transform: rotate(24deg) translate(0, 0); }
  .menu.is-active:after {
    -webkit-transform: rotate(-14deg) translate(0, 0);
        -ms-transform: rotate(-14deg) translate(0, 0);
            transform: rotate(-14deg) translate(0, 0); }

/* layout-container
   ========================================================================== */
.layout-content {
  padding-bottom: 1000px;
  position: relative; }
  .layout-content > .layout-content_link {
    background: url(../img/logo.png) no-repeat 50% 0;
    display: block;
    height: 331px;
    margin: 0 auto;
    max-width: 732px;
    overflow: hidden;
    text-align: left;
    text-indent: -200%;
    width: 100%;
    position: fixed;
    left: 50%;
    top: 150px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    -webkit-transition: all .5s;
    transition: all .5s;
    z-index: -1; }
  .layout-content.is-active > .layout-content_link {
    top: 45%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 0; }

.page-title {
  background-color: rgba(255, 255, 255, 0.85);
  padding: 80px 0;
  text-align: center; }
  .page-title > h1 {
    background-color: #fff;
    display: inline-block;
    font-size: 4.8em;
    font-weight: 900;
    line-height: 1.25;
    padding: .3em 1em .5em;
    text-align: center;
    position: relative; }
    .page-title > h1:before {
      background: -webkit-linear-gradient(225deg, #30c4db 25%, #34D2EA 25%, #34D2EA 50%, #83e2f7 50%, #83e2f7 75%, #7ad2e6 75%);
      background: linear-gradient(-135deg, #30c4db 25%, #34D2EA 25%, #34D2EA 50%, #83e2f7 50%, #83e2f7 75%, #7ad2e6 75%);
      content: "";
      height: 7px;
      position: absolute;
      bottom: .3em;
      left: .8em;
      right: .8em; }

/* section
   ========================================================================== */
.section {
  background: rgba(255, 255, 255, 0.85);
  padding: 50px 20px; }
  .section:not(:last-child) {
    margin-bottom: 108px; }
  @media screen and (max-width: 767px) {
    .section {
      margin-bottom: 54px; } }

.section-title {
  margin-bottom: 40px;
  text-align: left;
  position: relative; }
  .section-title:before {
    background: -webkit-linear-gradient(95deg, #30c4db 25%, #34D2EA 25%, #34D2EA 50%, #83e2f7 50%, #83e2f7 75%, #7ad2e6 75%);
    background: linear-gradient(-5deg, #30c4db 25%, #34D2EA 25%, #34D2EA 50%, #83e2f7 50%, #83e2f7 75%, #7ad2e6 75%);
    content: "";
    height: 100%;
    width: 10px;
    position: absolute;
    left: 0;
    top: 0; }
  .section-title h2 {
    color: #111;
    display: inline-block;
    font-size: 3.6em;
    font-weight: 900;
    line-height: 1.25;
    padding: .15em .7em; }

/* content
   ========================================================================== */
.content {
  margin-bottom: 80px;
  padding-left: 10px;
  padding-right: 10px; }
  @media screen and (max-width: 767px) {
    .content {
      margin-bottom: 40px; } }

.content-title {
  margin-bottom: 25px;
  text-align: left;
  position: relative; }
  .content-title:before {
    background: -webkit-gradient(linear, right top, left top, color-stop(25%, #30c4db), color-stop(25%, #34D2EA), color-stop(50%, #34D2EA), color-stop(50%, #83e2f7), color-stop(75%, #83e2f7), color-stop(75%, #7ad2e6));
    background: -webkit-linear-gradient(right, #30c4db 25%, #34D2EA 25%, #34D2EA 50%, #83e2f7 50%, #83e2f7 75%, #7ad2e6 75%);
    background: linear-gradient(-90deg, #30c4db 25%, #34D2EA 25%, #34D2EA 50%, #83e2f7 50%, #83e2f7 75%, #7ad2e6 75%);
    content: "";
    height: 5px;
    width: 30px;
    position: absolute;
    left: 0;
    top: 50%; }
  .content-title h3,
  .content-title h2 {
    background-color: #fff;
    -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.03);
            box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.03);
    font-size: 2.4em;
    font-weight: 700;
    line-height: 1.25;
    padding: 0.5em 1.8em; }

/* local-title
   ========================================================================== */
.local-title {
  margin: 55px 0 20px; }
  .local-title h4 {
    color: #a76d44;
    font-size: 2em;
    font-weight: bold; }
  @media screen and (max-width: 767px) {
    .local-title {
      margin: 45px 0 15px; }
      .local-title h4 {
        font-size: 1.6em; } }

/* footer-banner
   ========================================================================== */
.footer-banner {
  background-color: #191919;
  padding: 50px 0;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .footer-banner {
      padding: 0; } }

/* layout-footer
   ========================================================================== */
.layout-footer {
  background-color: #111; }
  .layout-footer .layout-footer_box {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 50px 0 40px; }
    .layout-footer .layout-footer_box .layout-footer_box_logo {
      line-height: 1;
      width: 210px; }
    .layout-footer .layout-footer_box > ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin-top: -18px;
      width: -webkit-calc(100% - 210px - 115px);
      width: calc(100% - 210px - 115px); }
      .layout-footer .layout-footer_box > ul > li {
        font-size: 1.2em;
        margin-right: 3em;
        margin-top: 18px; }
        .layout-footer .layout-footer_box > ul > li > a {
          color: #fff;
          font-weight: 700; }
    .layout-footer .layout-footer_box .layout-footer_box_informed-choice {
      width: 115px; }
  .layout-footer .copy {
    border-top: 1px solid #1c1c1c;
    color: #fff;
    display: block;
    font-size: 1.2em;
    line-height: 1.1;
    padding: 23px 0; }
  @media screen and (max-width: 767px) {
    .layout-footer {
      position: relative; }
      .layout-footer .layout-footer_box {
        display: block;
        padding: 50px 0;
        position: static; }
        .layout-footer .layout-footer_box .layout-footer_box_logo {
          width: auto; }
          .layout-footer .layout-footer_box .layout-footer_box_logo img {
            width: 70px; }
        .layout-footer .layout-footer_box > ul {
          margin: 25px auto 0;
          width: 81%; }
          .layout-footer .layout-footer_box > ul > li {
            margin-right: 0;
            margin-top: 18px;
            text-align: left;
            width: 49%; }
            .layout-footer .layout-footer_box > ul > li:nth-child(2n) {
              margin-left: auto; }
            .layout-footer .layout-footer_box > ul > li > a {
              color: #fff;
              font-weight: 700; }
        .layout-footer .layout-footer_box .layout-footer_box_informed-choice {
          width: 100px;
          position: absolute;
          right: 25px;
          bottom: 15px; }
      .layout-footer .copy {
        font-size: 1em;
        padding: 32px 25px;
        text-align: left; } }

        .m-post {
          text-align: left;
        }
        .m-post h2 {
          font-size: 24px;
          font-weight: 700;
          margin-bottom: 1em;
          margin-top: 3em;
        }
        .m-post h2:first-child {
          margin-top: 0;
        }
        .m-post p {
          font-size: 16px;
          line-height: 1.75;
          margin-bottom: 1em;
        }
        .m-post p:last-child {
          margin-bottom: 0;
        }