@charset "UTF-8";
/*
    Theme Name: SWELL
    Theme URI: https://swell-theme.com/
    Description: シンプルなのに高機能。ブロックエディターの使い心地にこだわった国内最高峰のWordPressテーマ
    Version: 2.7.5.1
    Requires at least: 5.6
    Requires PHP: 7.3.0
    Author: LOOS,Inc.
    Author URI: https://loos.co.jp/
    Text Domain: swell
    Domain Path: /languages
    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
* {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  padding: 0;
  margin: 0;
}

html {
  font-size: 62.5%;
  scroll-behavior: auto;
}

* {
  scroll-behavior: auto !important;
}

a {
  text-decoration: none;
  cursor: pointer;
}

body {
  font-family: "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.8;
  font-size: 1.4rem;
  color: #2b3f4c;
  background: #fff;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
  }
}

.wrap {
  min-height: 800px;
}

.container {
  width: 100%;
  max-width: 1160px;
  padding: 0 15px;
  margin: auto;
}
@media screen and (min-width: 992px) {
  .container2 {
    padding: 0 15px;
  }
}

/*2カラム*/
.separate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 992px) {
  .separate {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.separate__main {
  width: 100%;
  margin: 0 0 3rem;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (min-width: 992px) {
  .separate__main {
    padding: 0;
    width: calc(100% - 32rem);
  }
}

.separate__sub {
  width: 100%;
  padding: 3rem 0 0;
  margin: 0 0 3rem;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
@media screen and (min-width: 992px) {
  .separate__sub {
    padding: 0;
    margin: 0 0rem 3rem 6rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    max-width: 32rem;
  }
}

/*404*/
.sectionError {
  padding: 0 0 50px;
}
@media screen and (min-width: 768px) {
  .sectionError {
    padding: 50px 0 90px;
  }
}

/*reCAPTCHA*/
.grecaptcha-badge {
  visibility: hidden;
}

/* 文字飛ばし */
.cleartxt {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .row {
    --bs-gutter-x: 3rem;
    --bs-gutter-y: 0;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
  }
}
@media screen and (min-width: 768px) {
  .row > * {
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
}

.pagelink {
  padding-top: 10rem;
  margin-top: -10rem;
}
@media screen and (min-width: 768px) {
  .pagelink {
    padding-top: 15rem;
    margin-top: -15rem;
  }
}

/*====================================
  Basic Modal Styles
====================================*/
.modalOverlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2rem;
}

.modalContainer {
  background: #fff;
  padding: 5rem 1.5rem 1.5rem;
  width: 100%;
  max-width: 1920px;
  max-height: 90vh;
  border-radius: 0;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #2B3F4C;
  position: relative;
  border-radius: 8px;
}
@media screen and (min-width: 768px) {
  .modalContainer {
    padding: 5rem 2.5rem 2.5rem;
  }
}
.modalContainer .img {
  margin: 0 auto 5px;
}
.modalContainer .text {
  text-align: center;
  margin: 0 0 15px;
}

.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #CCC;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.modal__header .modal__close:before {
  content: "✕";
}

.modalBtn {
  cursor: pointer;
  line-height: 1;
  margin: 0;
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 25;
  background: transparent;
  border: 0;
  background: url(../images/icon_close.svg) no-repeat center center/100% auto;
  width: 20px;
  height: 20px;
  position: absolute;
}

/*====================================
  Demo Animation Style
====================================*/
@-webkit-keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes mmslideIn {
  from {
    -webkit-transform: scale(-0.5, -0.5);
            transform: scale(-0.5, -0.5);
  }
  to {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@keyframes mmslideIn {
  from {
    -webkit-transform: scale(-0.5, -0.5);
            transform: scale(-0.5, -0.5);
  }
  to {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
}
@-webkit-keyframes mmslideOut {
  from {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  to {
    -webkit-transform: scale(0, 0);
            transform: scale(0, 0);
  }
}
@keyframes mmslideOut {
  from {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  to {
    -webkit-transform: scale(0, 0);
            transform: scale(0, 0);
  }
}
.micromodal-slide {
  display: none;
  position: relative;
  z-index: 100;
}
.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden=false] .modalOverlay {
  -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modalContainer {
  -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modalOverlay {
  -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modalContainer {
  -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modalContainer,
.micromodal-slide .modalOverlay {
  will-change: transform;
}

/*================================
ページタイトル
================================*/
.neck {
  height: 220px;
  text-align: center;
  margin-top: 67px;
  position: relative;
}
@media screen and (min-width: 601px) {
  .neck {
    height: 345px;
  }
}
@media screen and (min-width: 768px) {
  .neck {
    margin-top: 108px;
    height: 414px;
  }
}
.neck .neckTitle {
  text-align: center;
  font-size: 2.6rem;
  position: absolute;
  font-weight: 600;
  right: 0;
  left: 0;
  margin: auto;
  bottom: 0;
  width: 100%;
  max-width: 95%;
  background: #fff;
  line-height: 1.4;
  padding: 30px 20px 10px;
  border-radius: 30px 30px 0 0;
}
@media screen and (min-width: 601px) {
  .neck .neckTitle {
    font-size: 3rem;
    max-width: 90%;
  }
}
@media screen and (min-width: 768px) {
  .neck .neckTitle {
    padding: 70px 20px 30px;
    font-size: 3.6rem;
    max-width: 960px;
  }
}
.neck--correction {
  background: url(./images/neck_img01_sp.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .neck--correction {
    padding: 0;
    background: url(./images/neck_img01.jpg) no-repeat;
    background-position: center;
    background-size: cover;
  }
}
.neck--implant {
  background: url(./images/neck_img02_sp.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .neck--implant {
    padding: 0;
    background: url(./images/neck_img02.jpg) no-repeat;
    background-position: center;
    background-size: cover;
  }
}
.neck--under {
  padding: 1rem;
  margin-top: 67px;
  margin-bottom: 1.5rem;
  height: auto;
}
@media screen and (min-width: 768px) {
  .neck--under {
    margin-top: 108px;
    margin-bottom: 2rem;
    height: auto;
  }
}
.neck--under .neckInner {
  position: relative;
  overflow: hidden;
  padding: 3rem 0;
  border-radius: 1rem;
  background-image: url(./images/neck_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
}
@media screen and (min-width: 768px) {
  .neck--under .neckInner {
    padding: 4.5rem 0;
  }
}
@media screen and (min-width: 1200px) {
  .neck--under .neckInner {
    padding: 8.5rem 0;
  }
}
.neck--under .neckInner::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(255, 255, 255);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.2)), color-stop(50%, rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 50%);
}
.neck--under .neckInner .neckTitle {
  padding: 0;
  margin: 0;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
  max-width: 100%;
  width: 100%;
  position: static;
  border-radius: 0;
  background: none;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .neck--under .neckInner .neckTitle {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .neck--under .neckInner .neckTitle {
    font-size: 4rem;
  }
}
.neck--under .neckInner .neckTitle .el_text .el_text01 {
  display: block;
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .neck--under .neckInner .neckTitle .el_text .el_text01 {
    font-size: 3rem;
  }
}
.neck--under .neckInner .neckTitle .el_text .el_tex02 {
  display: block;
  letter-spacing: 2px;
}

.buttonfloat {
  position: absolute;
  background: #fff;
  width: 100%;
  max-width: 1400px;
  right: 0;
  left: 0;
  margin: auto;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .buttonfloat {
    position: relative;
    z-index: 3;
    right: auto;
    left: auto;
    bottom: auto;
    margin-top: 50px;
  }
}
.buttonfloat .categoryrow2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 80px;
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .buttonfloat .categoryrow2 {
    display: block;
    margin-top: 40px;
    margin-bottom: 10px;
  }
}
.buttonfloat .categoryrow2 .button {
  width: 100%;
  max-width: 328px;
  margin-right: auto;
  margin-left: auto;
  font-size: 12px;
}
@media screen and (max-width: 600px) {
  .buttonfloat .categoryrow2 .button {
    margin-top: 13px;
  }
}
.buttonfloat .categoryrow2 .button a {
  font-weight: 700;
  font-size: 16px;
  border-radius: 30px;
  background-color: #1b252e;
  width: 100%;
  border: 1px solid;
  border: 1px solid #1b252e;
  display: block;
  max-width: 506px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  text-align: center;
  line-height: 1;
  color: #fff;
  padding: 20px 0;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .buttonfloat .categoryrow2 .button a {
    padding: 14px 0;
    max-width: 240px;
  }
}
.buttonfloat .categoryrow2 .button a:hover {
  color: #1b252e;
  background-color: #fff;
}
.buttonfloat .categoryrow2 .button a i {
  font-size: 9px;
  position: absolute;
  top: 25px;
  right: 25px;
}
@media screen and (max-width: 767px) {
  .buttonfloat .categoryrow2 .button a i {
    top: 18px;
  }
}

/*================================
breadcrumbs
================================*/
.jumpdiv {
  padding-top: 110px;
  margin-top: -110px;
  position: relative;
  z-index: -5;
}

.jumpdiv2 {
  padding-top: 50px;
  margin-top: -50px;
}

.crumbbox {
  position: relative;
}

#breadcrumb,
.breadcrumbs {
  font-size: 1.3rem;
  padding: 10px 15px 30px 30px;
  margin: 0 auto;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  line-height: 1;
  text-align: right;
  max-width: 116rem;
}
@media screen and (max-width: 767px) {
  #breadcrumb,
  .breadcrumbs {
    padding: 15px 15px 15px 0;
  }
}
#breadcrumb .p-breadcrumb__list,
.breadcrumbs .p-breadcrumb__list {
  margin: 0;
  padding: 0;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#breadcrumb li,
.breadcrumbs li {
  margin: 0 0 1rem;
}
#breadcrumb span,
.breadcrumbs span {
  display: inline-block;
  position: relative;
  color: #2B3F4C;
  padding-bottom: 0;
}
#breadcrumb span a,
.breadcrumbs span a {
  display: inline-block;
  color: inherit;
  min-height: 12px;
  text-decoration: none;
  margin: 0 5px 0 0;
  color: #a0a0a0;
  text-decoration: underline;
}
#breadcrumb span a:hover,
.breadcrumbs span a:hover {
  color: #2F94CF;
}
#breadcrumb span a .hometitle,
.breadcrumbs span a .hometitle {
  color: #f29c9f;
}
#breadcrumb span.breadcrumbs__home a,
.breadcrumbs span.breadcrumbs__home a {
  padding: 0;
}
#breadcrumb span:last-child::after,
.breadcrumbs span:last-child::after {
  display: none;
}

/*================================
ページ下部コンテンツ
================================*/
.neckBottom {
  padding: 4rem 0 0;
}
@media screen and (min-width: 768px) {
  .neckBottom {
    padding: 0;
  }
}
.neckBottom .container {
  max-width: 152rem;
}
.neckBottom .neckBottomWrap {
  position: relative;
  z-index: 1;
  background-color: #fff;
  margin: 0;
  padding: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .neckBottom .neckBottomWrap {
    margin: -28.5rem 0 0;
    padding: 9rem 3rem 7rem;
  }
}
.neckBottom .neckBottomWrap .neckBottomWrapInner {
  max-width: 104rem;
  margin: 0 auto;
}
.neckBottom .neckBottomWrap .neckBottomWrapInner .neckBottomHead {
  padding: 0 0 2rem;
}
@media screen and (min-width: 992px) {
  .neckBottom .neckBottomWrap .neckBottomWrapInner .neckBottomHead {
    padding: 0 0 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.neckBottom .neckBottomWrap .neckBottomWrapInner .neckBottomHead .neckBottomHead__left {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .neckBottom .neckBottomWrap .neckBottomWrapInner .neckBottomHead .neckBottomHead__left {
    max-width: 45rem;
  }
}
.neckBottom .neckBottomWrap .neckBottomWrapInner .neckBottomHead .neckBottomHead__right {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .neckBottom .neckBottomWrap .neckBottomWrapInner .neckBottomHead .neckBottomHead__right {
    max-width: 50.5rem;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .neckBottom .neckBottomWrap--ver02 {
    margin: -19.5rem 0 0;
  }
}

/*==========================================================
大見出し1
==========================================================*/
.largeHeadline01 {
  margin-bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.largeHeadline01 .main_text {
  line-height: 1;
  color: #4e5356;
  font-size: 23px;
  color: #0390d7;
  font-weight: 600;
  position: relative;
}
@media screen and (min-width: 768px) {
  .largeHeadline01 .main_text {
    font-size: 27px;
  }
}
.largeHeadline01 .main_text::before {
  content: "";
  display: block;
  width: 40px;
  height: 2px;
  background-color: #0390d7;
  margin: 0 0 2.5rem;
}
.largeHeadline01 .sub_text {
  color: #b6a7a7;
  font-size: 16px;
  font-family: "Crimson Text", serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
}

/*==========================================================
大見出し2
==========================================================*/
.largeHeadline02 {
  margin: 0 0 3rem;
  line-height: 1.4;
}
.largeHeadline02 .main_text {
  display: block;
  font-weight: 600;
  font-size: 2.4rem;
  margin: 0 0 1.5rem;
  color: #0390d7;
}
@media screen and (min-width: 768px) {
  .largeHeadline02 .main_text {
    font-size: 3.2rem;
  }
}
.largeHeadline02 .el_small {
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline02 .el_small {
    font-size: 2.7rem;
  }
}
.largeHeadline02 .sub_text {
  display: block;
  font-size: 1.6rem;
  font-family: "Crimson Text", serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
  color: #4e5356;
  margin: 0 0 1.5rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline02 .sub_text {
    font-size: 2.2rem;
    margin: 0 0 3rem;
  }
}
.largeHeadline02 .sub_text span {
  display: inline-block;
  padding: 0 0 0.2rem;
  border-bottom: 1px solid #4e5356;
}
.largeHeadline02 .main_textan {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .largeHeadline02 .main_text3 {
    font-size: 2.8rem;
  }
}

/*==========================================================
大見出し3
==========================================================*/
.largeHeadline03 {
  margin: 0 0 3rem;
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .largeHeadline03 {
    margin: 0 0 4rem;
  }
}
.largeHeadline03 .main_text {
  display: block;
  font-weight: 700;
  font-size: 2.6rem;
  margin: 0 0 1.5rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline03 .main_text {
    font-size: 3.4rem;
  }
}
.largeHeadline03 .main_text::before {
  content: "";
  display: block;
  width: 50px;
  border-radius: 10px;
  height: 6px;
  background-color: #29a3d3;
  margin: 0 auto 3rem;
}
.largeHeadline03 .main_text2 {
  font-weight: 700;
  font-size: 2.4rem !important;
  color: #0390d7;
}
@media screen and (min-width: 601px) {
  .largeHeadline03 .main_text2 {
    font-size: 2.8rem !important;
  }
}
@media screen and (min-width: 768px) {
  .largeHeadline03 .main_text2 {
    font-size: 3.4rem !important;
  }
}
.largeHeadline03 .main_text2::before {
  display: none;
}
.largeHeadline03 .sub_text {
  display: block;
  font-size: 1.4rem;
  font-family: "Oswald", serif;
  font-weight: 400;
  color: #0390d7;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline03 .sub_text {
    font-size: 1.8rem;
  }
}
.largeHeadline03 .sub_text span {
  display: inline-block;
  padding: 0 0 0.2rem;
  border-bottom: 1px solid #4e5356;
}
.largeHeadline03_2 {
  margin: 0 0 4rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline03_2 {
    margin: 0 0 5rem;
  }
}
.largeHeadline03_2 .sub_text2 {
  margin-top: 40px;
  font-size: 14px;
  display: block;
}
@media screen and (min-width: 768px) {
  .largeHeadline03_2 .sub_text2 {
    font-size: 20px;
  }
}

/*==========================================================
大見出し4
==========================================================*/
.largeHeadline04 {
  margin: 0 0 1.5rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .largeHeadline04 {
    margin: 0 0 3rem;
  }
}
.largeHeadline04 .el_text {
  display: block;
  color: #0390D7;
  font-size: 2.3rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .largeHeadline04 .el_text {
    font-size: 3rem;
  }
}

@media screen and (min-width: 768px) {
  .largeHeadline04b {
    margin: 0 0 4rem;
  }
}

/*==========================================================
大見出し5
==========================================================*/
.largeHeadline05 {
  text-align: center;
  padding: 0;
  margin: 0 0 1.5rem;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .largeHeadline05 {
    margin: 0 0 3rem;
  }
}
.largeHeadline05 .el_text {
  display: block;
  color: #0390D7;
  font-size: 2.3rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .largeHeadline05 .el_text {
    font-size: 3rem;
  }
}

/*==========================================================
中見出し1
==========================================================*/
.mediumHeadline01 {
  margin: 0 0 1.5rem;
  padding: 0 0 0.2rem 1rem;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  color: #2B3F4C;
  border-left: 4px solid #0390D7;
}
@media screen and (min-width: 768px) {
  .mediumHeadline01 {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1200px) {
  .mediumHeadline01.--big {
    font-size: 2.2rem;
  }
}

/*==========================================================
中見出し2
==========================================================*/
.mediumHeadline02 {
  margin: 0 0 1.5rem;
  padding: 0 0 0.2rem 1rem;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  color: #2B3F4C;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .mediumHeadline02 {
    font-size: 1.8rem;
  }
}

/*==========================================================
中見出し3
==========================================================*/
.mediumHeadline03 {
  font-size: 1.9rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .mediumHeadline03 {
    font-size: 2.6rem;
    margin-bottom: 3rem;
  }
}
.mediumHeadline03 .el_text {
  border-bottom: 1px solid;
}

/*==========================================================
中見出し4
==========================================================*/
.mediumHeadline04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .mediumHeadline04 {
    font-size: 2.6rem;
    margin-bottom: 3rem;
  }
}
.mediumHeadline04 .el_img {
  margin: 0 1rem 0 0;
  width: 100%;
  max-width: 6.4rem;
}
.mediumHeadline04 .el_text {
  color: #0390D7;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .mediumHeadline04 .el_text {
    font-size: 2.4rem;
  }
}

/*==========================================================
中見出し5
==========================================================*/
.mediumHeadline05 {
  text-align: center;
  padding: 0;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 768px) {
  .mediumHeadline05 {
    margin-bottom: 3rem;
  }
}
.mediumHeadline05 .el_text {
  display: inline-block;
  color: #fff;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.4;
  border-radius: 10rem;
  background-color: #0390D7;
  padding: 1rem 2rem;
  min-width: 100%;
}

/*==========================================================
中見出し6
==========================================================*/
.mediumHeadline06 {
  text-align: center;
  padding: 0;
  margin-bottom: 1.5rem;
}
@media screen and (min-width: 768px) {
  .mediumHeadline06 {
    margin-bottom: 3rem;
  }
}
.mediumHeadline06 .el_text {
  display: inline-block;
  font-size: 1.9rem;
  font-weight: bold;
  line-height: 1.4;
}

/*==========================================================
小見出し1
==========================================================*/
.smallHeadline01 {
  margin: 0 0 1.5rem;
  padding: 0 0 0.5rem;
  border-bottom: 1px solid #CCC;
  font-size: 1.5rem;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .smallHeadline01 {
    font-size: 1.8rem;
  }
}
.smallHeadline01 .el_small {
  font-size: 1.3rem;
}
@media screen and (min-width: 768px) {
  .smallHeadline01 .el_small {
    font-size: 1.6rem;
  }
}

/*==========================================================
小見出し2
==========================================================*/
.smallHeadline02 {
  margin: 0 0 1.5rem;
  line-height: 1.4;
  font-weight: bold;
}
.smallHeadline02 .el_text {
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .smallHeadline02 .el_text {
    font-size: 1.8rem;
  }
}

/*==========================================================
小見出し3
==========================================================*/
.smallHeadline03 {
  list-style: none;
  padding: 0 0 0 2rem;
  margin: 0 0 0.5rem;
  text-indent: -2rem;
  font-weight: bold;
}
.smallHeadline03::before {
  content: "●";
  text-indent: 0;
  color: #0390D7;
  margin: 0 0.5rem 0 0;
}

/*====================================
 本文
====================================*/
.text {
  margin: 0 0 3rem;
}
.text .underline {
  text-decoration: underline;
}
.text p {
  margin: 0 0 3rem;
}
.text p:last-child {
  margin: 0;
}

.c_pink {
  color: #f29c9f;
}

.f_bold {
  font-weight: bold;
}

/*====================================
 テキストリンク
====================================*/
.textLink {
  text-decoration: underline;
  color: #ec3590;
}
.textLink:hover {
  color: #2B3F4C;
}

/*====================================
リスト01
====================================*/
.list01 {
  border-radius: 1rem;
  background-color: #ECF1F5;
  padding: 1.5rem 1.5rem 1rem;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .list01 {
    padding: 3rem 3rem 2.5rem;
  }
}
.list01 li {
  list-style: none;
  padding: 0 0 0 2rem;
  margin: 0 0 0.5rem;
  text-indent: -2rem;
}
.list01 li::before {
  content: "●";
  text-indent: 0;
  color: #0390D7;
  margin: 0 0.5rem 0 0;
}

/*====================================
リスト02
====================================*/
.list02 {
  padding: 0;
  margin: 0 0 3rem;
}
.list02 li {
  list-style: none;
  padding: 0 0 0 2rem;
  margin: 0 0 0.5rem;
  text-indent: -2rem;
  text-align: left;
}
.list02 li::before {
  content: "●";
  text-indent: 0;
  color: #0390D7;
  margin: 0 0.5rem 0 0;
}

/*====================================
リスト03
====================================*/
.list03 {
  padding: 0;
  margin: 0 0 3rem;
}
.list03 li {
  list-style: none;
  padding: 0 0 0 2rem;
  margin: 0 0 0.5rem;
  text-indent: -2rem;
  text-align: left;
}
.list03 li::before {
  content: "・";
  text-indent: 0;
  color: #2B3F4C;
  margin: 0 0.2rem 0 0;
}

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}

.img {
  text-align: center;
  margin: 0 0 3rem;
  line-height: 1;
}

.map {
  width: 100%;
  margin: 0 0 40px;
}

.radius-1 {
  border-radius: 1rem;
}

@media screen and (min-width: 768px) {
  .radius-md-0 {
    border-radius: 0;
  }
}

.Btn {
  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;
  width: 74.6666666667vw;
  height: 14.6666666667vw;
  border-radius: 14.6666666667vw;
  color: #fff;
  margin: 0 auto;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
}
@media screen and (min-width: 768px) {
  .Btn {
    width: 260px;
    height: 54px;
    border-radius: 55px;
    font-size: 15px;
  }
}
.Btn .icon {
  display: inline-block;
  width: 8.2666666667vw;
  margin-right: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Btn .icon {
    width: 30px;
    margin-right: 10px;
  }
}
.Btn--arrow {
  position: relative;
}
.Btn--arrow::after {
  display: block;
  content: "";
  width: 6.6666666667vw;
  height: 2.6666666667vw;
  border-right: solid 1px #fff;
  border-bottom: solid 1px #fff;
  -webkit-transform: skew(40deg);
          transform: skew(40deg);
  margin-left: 1.3333333333vw;
  margin-top: -1.0666666667vw;
}
@media screen and (min-width: 768px) {
  .Btn--arrow::after {
    width: 30px;
    height: 6px;
    margin-top: -2px;
    margin-left: 10px;
  }
}
.Btn--arrow02 {
  position: relative;
  display: block;
  width: 13.3333333333vw;
  height: 13.3333333333vw;
  border: solid 1px #6bbeaa;
  color: #6bbeaa;
}
.Btn--arrow02 span {
  display: none;
}
.Btn--arrow02::after {
  display: block;
  content: "";
  width: 6.6666666667vw;
  height: 2.6666666667vw;
  border-right: solid 1px #6bbeaa;
  border-bottom: solid 1px #6bbeaa;
  -webkit-transform: translate(-50%, -50%) skew(40deg);
          transform: translate(-50%, -50%) skew(40deg);
  margin-left: -1.0666666667vw;
}
@media screen and (min-width: 768px) {
  .Btn--arrow02 {
    width: 210px;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .Btn--arrow02 span {
    display: inline-block;
  }
  .Btn--arrow02::after {
    position: inherit;
    top: inherit;
    left: inherit;
    -webkit-transform: skew(40deg);
            transform: skew(40deg);
    width: 25px;
    height: 6px;
    margin: 0 12px 0 8px;
    -webkit-transition: 0.5s all;
    transition: 0.5s all;
  }
}
.Btn--arrow02:hover {
  background-color: #2F94CF;
  border-color: #2F94CF;
  color: #fff;
}
.Btn--arrow02:hover::after {
  border-color: #fff;
}
.Btn__arrow__sp {
  display: block;
  width: 13.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .Btn__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .Btn__wrap .Btn {
    margin: 0;
  }
}
.Btn__wrap .Btn:not(:last-of-type) {
  margin-bottom: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Btn__wrap .Btn:not(:last-of-type) {
    margin: 0 40px 0 0;
  }
}
.Btn__area {
  background-color: #2F94CF;
  padding: 13.3333333333vw 0;
  margin-bottom: 26.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Btn__area {
    padding: 100px 0;
    margin-bottom: 300px;
  }
}
@media screen and (min-width: 768px) {
  .Btn__sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .Btn__pc {
    display: none;
  }
}
.Btn--bl {
  background-color: #2F94CF;
}
.Btn--bl:hover {
  opacity: 0.7;
}
.Btn--gr {
  background-color: #4DC764;
}
.Btn--gr:hover {
  opacity: 0.7;
}
.Btn--navy {
  border: solid 1px #2F94CF;
  color: #6bbeaa;
}
.Btn--navy::after {
  border-color: #6bbeaa;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.Btn--navy:hover {
  background-color: #2F94CF;
  color: #fff;
  border-color: #2F94CF;
}
.Btn--navy:hover::after {
  border-color: #fff;
}
.Btn--clear {
  border: solid 1px #6bbeaa;
  color: #6bbeaa;
  font-weight: 600;
}
.Btn--clear::after {
  border-right-color: #6bbeaa;
  border-bottom-color: #6bbeaa;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.Btn--clear:hover {
  background-color: #2F94CF;
  color: #fff;
  border-color: #2F94CF;
}
.Btn--clear:hover::after {
  border-color: #fff;
}
.Btn--under:after {
  display: inline-block;
  content: "";
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  border-right: solid 2px #6bbeaa;
  border-bottom: solid 2px #6bbeaa;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-left: 2.6666666667vw;
  margin-top: -1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Btn--under:after {
    position: absolute;
    top: 50%;
    right: 16px;
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
    width: 12px;
    height: 12px;
    margin-left: 0;
    margin-top: -2px;
  }
}

.anotherTab {
  position: relative;
}
.anotherTab::after {
  display: inline-block;
  content: "";
  width: 2.8vw;
  height: 2.4vw;
  margin-left: 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .anotherTab::after {
    width: 12px;
    height: 10px;
    margin-left: 4px;
  }
}
.btn {
  display: inline-block;
  width: 100%;
  max-width: 328px;
  text-align: center;
  border-radius: 100px;
  padding: 20px 10px 20px 10px;
  margin: 0 0 3rem;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  border: 1px solid;
  position: relative;
  color: #1b252e;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .btn {
    max-width: 294px;
    font-size: 13px;
    padding: 15px 20px 15px 10px;
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
  }
}
.btn:hover {
  color: #fff;
  background-color: #1b252e;
}
.btn i {
  position: absolute;
  top: 50%;
  right: 2rem;
  font-size: 1.2rem;
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
.btn i.fa-chevron-down {
  font-size: 1rem;
}
.btn.--yellow {
  background-color: #FEB73D;
  color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.btn.--yellow:hover {
  background-color: #FEB73D;
  border-color: #FEB73D;
  opacity: 0.7;
}

.footbtn {
  margin-left: 0;
}
.footbtn img {
  max-width: 15px;
  margin-right: 10px;
}
.footbtn:hover {
  color: #fff;
  background-color: #1b252e;
  opacity: 0.7;
}

.btnrow {
  width: 100%;
  max-width: 670px;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .btnrow {
    max-width: 420px;
  }
}
@media screen and (max-width: 420px) {
  .btnrow {
    max-width: 300px;
  }
}
.btnrow .btn {
  background-color: #1b252e;
  width: 328px;
  margin-right: 5px;
  margin-left: 5px;
  margin-bottom: 20px;
  padding: 15px 20px 15px 10px;
}
@media screen and (max-width: 767px) {
  .btnrow .btn {
    width: 190px;
  }
}
@media screen and (max-width: 420px) {
  .btnrow .btn {
    width: 140px;
    font-size: 14px;
  }
}
.btnrow .btn:hover {
  color: #1b252e;
  background-color: #fff;
}
.btnrow .btn i {
  font-size: 1rem;
}
@media screen and (max-width: 420px) {
  .btnrow .btn i {
    font-size: 6px;
    right: 15px;
  }
}

.btnrow2_2 {
  margin-bottom: 40px;
}

.btnrow3 {
  max-width: 670px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.btnrow4 .btn {
  background-color: #f29c9f;
  margin-bottom: 45px;
}
.btnrow4 .btn:hover {
  color: #fff;
  background-color: #f29c9f;
  opacity: 0.7;
}
.btnrow4 .btn i {
  font-size: 1rem;
}
.btnrow4 .btn--blue {
  background-color: #86b3e0;
}
.btnrow4 .btn--blue:hover {
  background-color: #86b3e0;
}

.artbtn {
  max-width: 41.4rem;
}

.linebutton {
  background-color: #00b900;
}

.btn_c1 {
  margin-bottom: 0;
  margin-top: 30px;
}

.btn01 {
  display: inline-block;
  width: 100%;
  max-width: 125px;
  color: #fff;
  text-align: center;
  border-radius: 30px;
  padding: 7px 10px;
  margin: 0 0 3rem;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
  border: 1px solid;
  position: relative;
  background-color: #1b252e;
}
.btn01:hover {
  color: #1b252e;
  background-color: #fff;
}
.btn01 .el_text {
  display: inline-block;
  padding: 0.3rem 0 0.3rem 2.5rem;
  background-size: 1.4rem auto;
  background-repeat: no-repeat;
  background-position: center left;
  background-image: url(./images/icon_access.png);
}

.btnblock2 .btnrow2_an {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 2rem);
  margin: 0 0 3rem -1rem;
}
.btnblock2 .btnrow2_an .btnrow2_an_item {
  width: 100%;
  max-width: calc(50% - 2rem);
  margin: 0 1rem;
}
@media screen and (min-width: 768px) {
  .btnblock2 .btnrow2_an .btnrow2_an_item {
    max-width: calc(50% - 2rem);
    margin: 0 1rem 1rem;
  }
  .btnblock2 .btnrow2_an .btnrow2_an_item:hover {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0.7;
  }
}
@media screen and (min-width: 1200px) {
  .btnblock2 .btnrow2_an .btnrow2_an_item {
    max-width: calc(33.3333333333% - 2rem);
  }
}
.btnblock2 .btnrow2_an .btnrow2_an_item .btnb {
  text-align: left;
  padding: 10px 0;
  font-weight: bold;
  line-height: 1.2;
  position: relative;
  font-size: 1.3rem;
  display: block;
  color: #434343;
  border: none;
  margin-bottom: 0;
  border-bottom: 1px solid #434343;
  width: 100%;
  max-width: 70rem;
}
@media screen and (min-width: 768px) {
  .btnblock2 .btnrow2_an .btnrow2_an_item .btnb {
    padding: 10px 0;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 992px) {
  .btnblock2 .btnrow2_an .btnrow2_an_item .btnb {
    font-size: 1.6rem;
  }
}
.btnblock2 .btnrow2_an .btnrow2_an_item .btnb .text-small {
  font-size: 80%;
}
.btnblock2 .btnrow2_an .btnrow2_an_item .btnb i {
  position: absolute;
  top: 50%;
  right: 0;
  font-size: 0.6rem;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
}
@media screen and (max-width: 767px) {
  .btnblock2 .btnrow2_an .btnrow2_an_item .btnb.btn9 {
    padding: 18px 0;
  }
}

/*==========================================================
汎用　表組
==========================================================*/
.table01 {
  text-align: center;
  background-color: #fff;
  border-top: 1px solid #CCC;
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 40px;
}
.table01 thead.hidden {
  height: 0;
  overflow: hidden;
  opacity: 0;
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w20,
  .table01 thead tr td.w20 {
    width: 20%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w25,
  .table01 thead tr td.w25 {
    width: 25%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w30,
  .table01 thead tr td.w30 {
    width: 30%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w40,
  .table01 thead tr td.w40 {
    width: 40%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w50,
  .table01 thead tr td.w50 {
    width: 50%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w60,
  .table01 thead tr td.w60 {
    width: 60%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w70,
  .table01 thead tr td.w70 {
    width: 70%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w80,
  .table01 thead tr td.w80 {
    width: 80%;
  }
}
@media screen and (min-width: 768px) {
  .table01 thead tr th.w90,
  .table01 thead tr td.w90 {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w20,
  .table01 thead tr td.sp_w20 {
    width: 20%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w25,
  .table01 thead tr td.sp_w25 {
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w30,
  .table01 thead tr td.sp_w30 {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w40,
  .table01 thead tr td.sp_w40 {
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w50,
  .table01 thead tr td.sp_w50 {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w60,
  .table01 thead tr td.sp_w60 {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w70,
  .table01 thead tr td.sp_w70 {
    width: 70%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w80,
  .table01 thead tr td.sp_w80 {
    width: 80%;
  }
}
@media screen and (max-width: 767px) {
  .table01 thead tr th.sp_w90,
  .table01 thead tr td.sp_w90 {
    width: 90%;
  }
}
.table01 tbody tr th {
  text-align: left;
  border-bottom: 1px solid #CCC;
  font-weight: normal;
  padding: 15px 10px 15px 0;
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .table01 tbody tr th {
    font-size: 1.6rem;
  }
}
.table01 tbody tr th .el_small {
  font-size: 1.2rem;
}
.table01 tbody tr th label {
  display: block;
  margin: 0;
  padding: 0 20px 0 0;
  position: relative;
}
.table01 tbody tr th label .el_required {
  font-size: 1.3rem;
  background: #fff;
  color: #2F94CF;
  border: 1px solid #2F94CF;
  padding: 3px 6px;
  display: inline-block;
  line-height: 1;
  border-radius: 3px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
}
.table01 tbody tr th.el_head {
  text-align: left;
  background-color: #b6a7a7;
  color: #fff;
  padding-left: 1.5rem;
}
.table01 tbody tr th.th_center {
  text-align: center;
}
.table01 tbody tr th .boldt {
  font-weight: 700;
  color: #f29c9f;
}
.table01 tbody tr th .boldt_2 {
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .table01 tbody tr .sp_right {
    text-align: right;
  }
}
.table01 tbody tr .th_long {
  line-height: 1.3;
}
.table01 tbody tr td {
  text-align: left;
  border-bottom: 1px solid #CCC;
  padding: 15px 8px;
  letter-spacing: 1px;
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .table01 tbody tr td {
    font-size: 1.6rem;
    padding: 15px 15px;
  }
}
.table01 tbody tr td .pink {
  color: #f29c9f;
  font-weight: 700;
}
.table01 tbody tr td p {
  margin: 4px 0 0;
  font-size: 1.4rem;
  line-height: 1.4;
}
.table01 tbody tr td a:hover {
  color: #2F94CF;
}
.table01 tbody tr td.td_signature {
  padding: 3px 30px 1px 0;
  font-size: 1.2rem;
  background: #CCC;
  color: #fff;
}
.table01 tbody tr td.td_center {
  text-align: center;
}
.table01 tbody tr td.td_right {
  text-align: right;
}
@media screen and (min-width: 768px) {
  .table01 tbody tr td.td_xs_right {
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  .table01 tbody tr .th_longplus {
    padding: 15px 4px;
    font-size: 1.4rem;
  }
}
.table01 tbody tr:last-child th,
.table01 tbody tr:last-child td {
  border-bottom: 1px solid #CCC;
}
.table01 tbody tr:last-child .th_100 {
  border-bottom: none;
}
@media screen and (max-width: 767px) {
  .table01.xs_block {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .table01.xs_block thead {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .table01.xs_block tbody {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .table01.xs_block tbody tr {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .table01.xs_block tbody tr th {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .table01.xs_block tbody tr td {
    display: block;
    width: 100%;
    text-align: left;
    padding-left: 0;
  }
}

/*==========================================================
汎用　表組2
==========================================================*/
.table02 {
  text-align: center;
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 1rem;
}
.table02 thead tr th {
  border-bottom: 2px solid #2F94CF;
  font-weight: bold;
  padding: 2rem 0rem 2rem 0;
  text-align: left;
  color: #2F94CF;
  font-size: 1.8rem;
}
.table02 tbody tr th {
  border-bottom: 1px solid #CCC;
  font-weight: 500;
  padding: 2rem 0rem 2rem 0;
  text-align: left;
  color: #2B3F4C;
  width: 25%;
  vertical-align: top;
}
.table02 tbody tr td {
  text-align: left;
  border-bottom: 1px solid #CCC;
  padding: 2rem 0rem 2rem 0;
  width: 75%;
  vertical-align: top;
}
.table02 tbody tr:last-child th,
.table02 tbody tr:last-child td {
  border-bottom: none;
}

/*====================================
スクロールヒント
=====================================*/
.scroll-hint {
  margin: 0 auto 3rem;
}

.js-scrollable,
.js-scrollable-shadow {
  margin: 0;
}
.js-scrollable table,
.js-scrollable-shadow table {
  margin-bottom: 0 !important;
}
.js-scrollable-shadow table {
  background-color: transparent;
}

.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon-wrap.is-active {
  background-color: rgba(0, 0, 0, 0.3);
}

.scroll-hint-icon {
  top: calc(50% - 45px);
}

/*===========================
archive.php ページネーション
===========================*/
.pagination {
  text-align: center;
  padding: 15px 0 0;
  margin: 2rem auto 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagination h2 {
  display: none;
}
.pagination a {
  display: block;
  padding: 5px 13px;
  margin: 0 0.25rem;
  color: #2F94CF;
  font-size: 1.4rem;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #2F94CF;
  text-decoration: none;
  text-align: center;
}
.pagination a:hover {
  opacity: 1;
  color: #fff;
  background-color: #2F94CF;
}
.pagination span {
  display: block;
  padding: 5px 13px;
  margin: 0 0.25rem;
  color: #2F94CF;
  font-size: 1.4rem;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #fff;
  text-decoration: none;
  text-align: center;
}
.pagination span.current {
  font-weight: normal;
  background-color: #2F94CF;
  color: #fff;
}
.pagination span.pages {
  background: none;
  background-color: #fff;
  color: #2F94CF;
}

/*===========================
single.php ページネーション
===========================*/
.paginate__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto 3rem;
}
.paginate__wrap a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem 1rem;
  color: #2F94CF;
  font-size: 1.3rem;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #2F94CF;
  text-decoration: none;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .paginate__wrap a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .paginate__wrap a:hover {
    color: #fff;
    background: #2F94CF;
  }
}
.paginate__wrap .paginate__block--next {
  min-width: 8rem;
}
@media screen and (min-width: 768px) {
  .paginate__wrap .paginate__block--next a .fas {
    margin: 0 1rem 0 0;
  }
}
@media screen and (min-width: 768px) {
  .paginate__wrap .paginate__block--list a .fa {
    margin: 0 1rem 0 0;
  }
}
.paginate__wrap .paginate__block--prev {
  min-width: 8rem;
}
@media screen and (min-width: 768px) {
  .paginate__wrap .paginate__block--prev a .fas {
    margin: 0 0 0 1rem;
  }
}

/*========= ナビゲーションのためのCSS ===============*/
#g-nav {
  position: fixed;
  z-index: 30;
  top: 0;
  right: -120%;
  width: 100%;
  max-width: 100%;
  height: 100vh;
  background-color: #fff;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  /*アクティブクラスがついたら位置を0に*/
}
@media screen and (min-width: 768px) {
  #g-nav {
    background-color: inherit;
  }
}
#g-nav #g-nav-list .g-nav-listInner {
  position: relative;
  padding: 9.8rem 0;
  max-width: 84.7rem;
  margin: 0 0 0 auto;
}
@media screen and (min-width: 768px) {
  #g-nav #g-nav-list .g-nav-listInner {
    min-height: 100vh;
    padding: 13.8rem 6rem;
    background-color: #fff;
  }
}
#g-nav .openbtn-sp {
  position: absolute;
  top: 0;
  right: 0;
}
#g-nav .logo {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 19rem;
  margin: 1rem 0 0 1rem;
}
@media screen and (min-width: 768px) {
  #g-nav .logo {
    max-width: 22.3rem;
    margin: 3rem 0 0 3rem;
  }
}
#g-nav .logo a {
  display: block;
}
#g-nav .container {
  padding: 0 1.5rem;
  margin: 0;
  max-width: 767px;
}
@media screen and (min-width: 768px) {
  #g-nav .container {
    padding: 0 1.5rem;
  }
}
#g-nav .inner {
  width: 100%;
  margin: 0 auto;
  max-width: 36rem;
}
@media screen and (min-width: 768px) {
  #g-nav .inner {
    max-width: 100%;
  }
}
#g-nav .inner .sns {
  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-bottom: 8vw;
}
#g-nav .inner .sns li {
  width: 10.6666666667vw;
}
#g-nav .inner .sns li:not(:last-child) {
  margin-right: 5.3333333333vw;
}
#g-nav .inner .sns li a {
  display: block;
}
#g-nav .inner .spmenu {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0 auto 5rem;
  }
}
#g-nav .inner .spmenu .spmenuItem {
  width: 100%;
  margin: 0 0 4rem;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu .spmenuItem {
    margin: 0 1.5rem 0 0;
    width: auto;
  }
}
@media screen and (min-width: 992px) {
  #g-nav .inner .spmenu .spmenuItem {
    margin: 0 4rem 0 0;
  }
}
#g-nav .inner .spmenu .spmenuItem a {
  text-decoration: none;
}
#g-nav .inner .spmenu .spmenuItem > ul {
  padding: 0;
  margin: 0;
}
#g-nav .inner .spmenu .spmenuItem > ul > li {
  padding: 0;
  margin: 0 0 0.7rem;
  list-style: none;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu .spmenuItem > ul > li {
    margin: 0;
  }
}
#g-nav .inner .spmenu .spmenuItem > ul > li > a {
  display: inline-block;
  color: #2B3F4C;
  position: relative;
  margin: 0 0 0.5rem;
  font-weight: bold;
  font-size: 1.6rem;
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu .spmenuItem > ul > li > a {
    margin: 0 0 1.1rem;
  }
}
#g-nav .inner .spmenu .spmenuItem > ul > li > ul {
  padding: 0;
  margin: 0;
}
#g-nav .inner .spmenu .spmenuItem > ul > li > ul > li {
  padding: 0 0 0 1.5rem;
  margin: 0 1rem 0.5rem 0;
  display: block;
  vertical-align: top;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu .spmenuItem > ul > li > ul > li {
    margin: 0 0 0.5rem;
  }
}
#g-nav .inner .spmenu .spmenuItem > ul > li > ul > li > a {
  display: inline-block;
  color: #2B3F4C;
  font-size: 1.4rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  #g-nav .inner .spmenu .spmenuItem > ul > li > ul > li > a br {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu .spmenuItem.spmenuItem--wide > ul > li > a {
    margin: 0 0 3rem;
  }
}
@media screen and (min-width: 768px) {
  #g-nav .inner .spmenu .spmenuItem:last-child {
    margin: 0;
  }
}
@media screen and (min-width: 768px) {
  #g-nav .inner .reservationbutton {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
#g-nav .inner .reservationbutton .mail,
#g-nav .inner .reservationbutton .line {
  margin: 1rem 0;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .reservationbutton .mail,
  #g-nav .inner .reservationbutton .line {
    width: 100%;
    max-width: calc(50% - 1.5rem);
  }
}
#g-nav .inner .reservationbutton .mail .Btn,
#g-nav .inner .reservationbutton .line .Btn {
  text-decoration: none;
  padding: 1rem;
  height: auto;
  width: auto;
  max-width: 100%;
}
#g-nav .inner .reservationbutton .mail .Btn .el_icon,
#g-nav .inner .reservationbutton .line .Btn .el_icon {
  margin: 0;
  width: 4rem;
  min-width: 4rem;
  min-height: 4rem;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .reservationbutton .mail .Btn .el_icon,
  #g-nav .inner .reservationbutton .line .Btn .el_icon {
    width: 6rem;
    min-width: 6rem;
    min-height: 6rem;
  }
}
#g-nav .inner .reservationbutton .mail .Btn .el_icon img,
#g-nav .inner .reservationbutton .line .Btn .el_icon img {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
#g-nav .inner .reservationbutton .mail .Btn .el_text,
#g-nav .inner .reservationbutton .line .Btn .el_text {
  margin: 0 3rem 0 0;
  font-size: 1.9rem;
  font-weight: bold;
  text-align: center;
  width: 100%;
  max-width: calc(100% - 6rem);
}
@media screen and (min-width: 768px) {
  #g-nav .inner .reservationbutton .mail .Btn .el_text,
  #g-nav .inner .reservationbutton .line .Btn .el_text {
    font-size: 2.2rem;
  }
}
#g-nav .inner .notes {
  width: 100%;
  max-width: 27rem;
  margin: 0 auto 4rem;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .notes {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 100%;
    margin: 0 auto 2rem;
  }
}
#g-nav .inner .notes .notesImg {
  text-align: left;
  margin: 0 0 1em;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .notes .notesImg {
    margin: 0 2rem 0 0;
  }
}
#g-nav .inner .notes .notesText {
  font-size: 1.2rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  #g-nav .inner .notes .notesText {
    margin: 0;
  }
}
#g-nav.panelactive {
  right: 0;
  /*ナビゲーションの縦スクロール*/
}
#g-nav.panelactive #g-nav-list {
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.g-nav-bg {
  display: none;
}
.g-nav-bg.is-active {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

/*========= ボタンのためのCSS ===============*/
.openbtn {
  position: relative;
  top: 0;
  right: 0;
  z-index: 10;
  cursor: pointer;
  background: rgb(93, 172, 218);
  background: -webkit-gradient(linear, left top, right top, from(rgb(93, 172, 218)), to(rgb(26, 135, 201)));
  background: linear-gradient(90deg, rgb(93, 172, 218) 0%, rgb(26, 135, 201) 100%);
  width: 6.8rem;
  height: 6.8rem;
  border-radius: 0 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .openbtn {
    width: 10.8rem;
    height: 10.8rem;
  }
}
.openbtn span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  position: absolute;
  top: auto;
  height: 2px;
  border-radius: 5px;
  background: #fff;
  width: 1.8rem;
  left: 50%;
  bottom: auto;
  transform: translate(-50%, 0%);
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  /*×に変化*/
}
@media screen and (min-width: 768px) {
  .openbtn span {
    width: 3.5rem;
    height: 0.3rem;
  }
}
.openbtn span:nth-of-type(1) {
  top: calc(40% - 7px);
}
@media screen and (min-width: 768px) {
  .openbtn span:nth-of-type(1) {
    top: calc(38% - 12px);
  }
}
.openbtn span:nth-of-type(2) {
  top: calc(40% - 1px);
}
@media screen and (min-width: 768px) {
  .openbtn span:nth-of-type(2) {
    top: calc(38% - 1px);
  }
}
.openbtn span:nth-of-type(3) {
  top: calc(40% + 5px);
}
@media screen and (min-width: 768px) {
  .openbtn span:nth-of-type(3) {
    top: calc(38% + 10px);
  }
}
.openbtn p {
  color: #fff;
  font-family: "Oswald", sans-serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", serif;
  margin: 4rem auto 0;
  line-height: 1;
  font-size: 1.1rem;
}
@media screen and (min-width: 768px) {
  .openbtn p {
    margin: 6.5rem auto 0;
    font-size: 1.6rem;
  }
}
.openbtn.is-active span {
  background-color: #2F94CF;
  /*activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更*/
}
.openbtn.is-active span:nth-of-type(1) {
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
  background-color: #fff !important;
}
.openbtn.is-active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn.is-active span:nth-of-type(3) {
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  background-color: #fff !important;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.05);
          box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.05);
}
@media screen and (min-width: 768px) {
  .header {
    padding: 0;
  }
}
.header .container {
  width: 100%;
  padding: 0 0 0 1.5rem;
}
@media screen and (min-width: 768px) {
  .header .container {
    max-width: 100%;
  }
}
.header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.header__logo {
  width: 19rem;
}
@media screen and (min-width: 768px) {
  .header__logo {
    width: 100%;
    max-width: 22.3rem;
  }
}
.header__nav {
  width: 100%;
  display: none;
}
@media screen and (min-width: 768px) {
  .header__nav {
    max-width: 52.7rem;
    margin: 0 3rem 0 auto;
    display: block;
  }
}
.header__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__contents .notes {
  text-align: center;
  margin-right: 20px;
}
.header__contents .notes dt {
  font-size: 14px;
  border-bottom: 1px solid #2F94CF;
}
.header__contents .notes dd {
  padding-top: 5px;
}
.header__contents .notes dd .txt {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 12px;
  letter-spacing: -0.05em;
  line-height: 1.2;
}
.header__contents .tel {
  width: 100%;
  max-width: 25.6rem;
  min-width: 25.6rem;
  margin-right: 15px;
  display: none;
}
@media screen and (min-width: 768px) {
  .header__contents .tel {
    display: block;
  }
}
.header__contents .tel > img {
  display: inline-block;
  max-width: 22.6rem;
  margin: 0 0 1rem;
}
.header__contents .tel p {
  font-size: 1.2rem;
  line-height: 1.4;
  margin: auto;
}
.header__contents .mail {
  margin-right: 1.1rem;
  display: none;
}
@media screen and (min-width: 768px) {
  .header__contents .mail {
    display: block;
  }
}
.header__contents .line {
  margin-right: 1.1rem;
  display: none;
}
@media screen and (min-width: 768px) {
  .header__contents .line {
    display: block;
  }
}
.header__contents .Btn {
  width: 6.8rem;
  height: 6.8rem;
}
.header__contents .Btn .icon {
  margin: auto;
  width: 100%;
  max-width: 100%;
  text-align: center;
}
.header .NavPc {
  width: 100%;
  max-width: 52.7rem;
  margin: 0 auto;
  position: relative;
  display: none;
}
@media screen and (min-width: 1200px) {
  .header .NavPc {
    display: block;
  }
}
.header .NavPc .lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0;
}
.header .NavPc .lists > li {
  padding-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .header .NavPc .lists > li {
    padding-bottom: 0;
    margin-left: 3rem;
    width: 25%;
  }
}
@media screen and (min-width: 1400px) {
  .header .NavPc .lists > li {
    width: auto;
  }
}
.header .NavPc .lists > li > a {
  display: block;
  color: #2B3F4C;
  font-weight: bold;
  text-align: center;
  font-size: 1.5rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-decoration: none;
}
.header .NavPc .lists > li > a:hover {
  color: #2F94CF;
}
.header .NavPc .lists > li.has-child .menu {
  position: absolute;
  bottom: -226px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 10;
  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;
  background: #2F94CF;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 100vw;
  padding: 50px 0;
}
.header .NavPc .lists > li.has-child .menu__inner {
  width: 960px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.header .NavPc .lists > li.has-child .menu__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header .NavPc .lists > li.has-child .menu__lists li {
  width: 140px;
}
.header .NavPc .lists > li.has-child .menu__lists li:not(:last-child) {
  margin-right: 25px;
}
.header .NavPc .lists > li.has-child .menu__lists li a {
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.header .NavPc .lists > li.has-child .menu__lists li a figure figcaption {
  font-size: 15px;
  text-align: center;
  color: #2F94CF;
  margin-top: 10px;
}
.header .NavPc .lists > li.has-child .menu__lists li a:hover {
  opacity: 0.8;
}
.header .NavPc .lists > li.has-child .menu dt {
  font-size: 20px;
  font-weight: 600;
}
.header .NavPc .lists > li.has-child:hover .menu {
  visibility: visible;
  opacity: 1;
}
.header .HeightMin__icons {
  display: none;
}
.header.HeightMin {
  position: fixed;
  z-index: 10000;
  -webkit-animation: DownAnime 0.5s forwards;
          animation: DownAnime 0.5s forwards;
  background-color: #fff;
  width: 100%;
  padding-bottom: 20px;
}
@-webkit-keyframes DownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-170px);
            transform: translateY(-170px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes DownAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(-170px);
            transform: translateY(-170px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.header.HeightMin .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header.HeightMin .header__inner {
  margin-bottom: 0;
}
.header.HeightMin .header__logo {
  width: 200px;
}
.header.HeightMin .NavPc {
  width: 800px;
  margin: 0;
  position: inherit;
}
.header.HeightMin .NavPc .lists > li {
  padding-top: 20px;
}
.header.HeightMin .NavPc .lists > li.has-child .menu {
  bottom: -210px;
}
.header.HeightMin .HeightMin__icons {
  display: block;
}
.header.HeightMin .HeightMin__icons .header__icons {
  padding: 0;
}
.header.HeightMin .HeightMin__icons .header__icons li {
  width: 60px;
}
.header.HeightMin .HeightMin__icons .header__icons li:not(:last-child) {
  margin-right: 10px;
}
.header.HeightMin .HeightMin__icons .header__icons li a {
  display: block;
  width: 60px;
}
.header__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .header__lists {
    display: none;
  }
}
.header__lists > li a {
  display: block;
}
.header__icons {
  display: none;
  padding: 0;
}
.header__icons li {
  width: 8vw;
}
.header__icons li:not(:last-child) {
  margin-right: 2.6666666667vw;
}
.header.is-active .header__nav,
.header.is-active .tel,
.header.is-active .mail,
.header.is-active .line {
  display: none;
}

.fixbanner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  display: none;
  z-index: 10;
  padding: 20px 0px;
  -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.05);
          box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 767px) {
  .fixbanner {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .fixbanner {
    padding: 15px 0;
  }
}
.fixbanner .flexb {
  width: 100%;
  max-width: 480px;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb {
    max-width: 306px;
  }
}
.fixbanner .flexb .buttonicon {
  max-width: 50px;
  margin-right: 10px;
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb .buttonicon {
    max-width: 36px;
    margin-right: 5px;
  }
}
.fixbanner .flexb .tel {
  width: 66%;
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb .tel {
    width: 60%;
  }
}
.fixbanner .flexb .tel .linkb {
  width: 100%;
  max-width: 160px;
  line-height: 1;
  display: block;
  margin-bottom: 10px;
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb .tel .linkb {
    margin-bottom: 0;
  }
}
.fixbanner .flexb .tel .textone {
  font-size: 13px;
  line-height: 1.4;
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb .tel .textone {
    text-align: center;
    margin-bottom: 10px;
    display: none;
  }
}
.fixbanner .flexb .icons {
  width: 34%;
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb .icons {
    width: 40%;
  }
}
@media screen and (max-width: 600px) {
  .fixbanner .flexb .icons .flexb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 135px;
    margin: auto;
  }
}
.fixbanner .textone2 {
  font-size: 13px;
  line-height: 1.4;
  display: none;
}
@media screen and (max-width: 600px) {
  .fixbanner .textone2 {
    text-align: center;
    margin-top: 10px;
    display: block;
  }
}

.notfix {
  margin-bottom: 50px;
  position: static;
  -webkit-box-shadow: 0px 0px 0 0;
          box-shadow: 0px 0px 0 0;
}

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

  ■フッター

=====================================*/
.footbox {
  width: 100%;
  max-width: 1180px;
  margin: auto;
}
@media screen and (max-width: 1199px) {
  .footbox {
    padding: 0 15px;
  }
}
.footbox img {
  margin-bottom: 60px;
  margin-right: auto;
  margin-left: auto;
  max-width: 223px;
}
@media screen and (min-width: 768px) {
  .footbox img {
    margin-bottom: 30px;
    margin-right: 0;
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .footbox .f_logo {
    text-align: center;
    display: block;
  }
}
.footbox a {
  color: #2b3f4c;
}
.footbox .inflex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
@media screen and (max-width: 767px) {
  .footbox .inflex {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .footbox .inflex {
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
  }
}
.footbox .inflex .side9 {
  width: 83%;
}
@media screen and (max-width: 1199px) {
  .footbox .inflex .side9 {
    margin-right: 30px;
  }
}
@media screen and (max-width: 600px) {
  .footbox .inflex .side9 {
    width: 100%;
  }
}
.footbox .inflex .side9 .side9_inflex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
@media screen and (max-width: 600px) {
  .footbox .inflex .side9 .side9_inflex {
    display: block;
  }
}
.footbox .inflex .side9 .sideblock {
  width: 42%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .footbox .inflex .side9 .sideblock {
    display: block;
    width: 100%;
  }
}
.footbox .inflex .side9 .sideblock .sideone {
  font-size: 15px;
  width: 30%;
  line-height: 1.4;
  margin-right: 3%;
  margin-bottom: 2rem;
}
@media screen and (max-width: 1199px) {
  .footbox .inflex .side9 .sideblock .sideone {
    margin-top: 2rem;
    margin-right: 0;
    margin-bottom: 0;
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .footbox .inflex .side9 .sideblock .sideone {
    width: 100%;
  }
}
.footbox .inflex .side9 .sideblock .sidetitle {
  width: 100%;
  margin-bottom: 2.3rem;
  line-height: 1;
  font-weight: 700;
  font-size: 1.5rem;
}
.footbox .inflex .side9 .sideblock .sidetitle span {
  border-bottom: 1px solid;
}
.footbox .inflex .side9 .sideblock.--full {
  width: 100%;
}
.footbox .inflex .side9 .sideblock1 {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.footbox .inflex .side9 .sideblock2 {
  width: 58%;
}
@media screen and (max-width: 1199px) {
  .footbox .inflex .side9 .sideblock2 {
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  .footbox .inflex .side9 .sideblock2 {
    margin-top: 40px;
  }
}
.footbox .inflex .side3 {
  width: 17%;
}
@media screen and (max-width: 1199px) {
  .footbox .inflex .side3 {
    width: 28%;
  }
}
@media screen and (max-width: 767px) {
  .footbox .inflex .side3 {
    width: 100%;
    margin-top: 40px;
  }
}
.footbox .inflex .side3 .sidetitle {
  line-height: 1.4;
  font-size: 1.5rem;
  display: block;
  font-weight: 700;
  margin-bottom: 2.3rem;
}
.footbox .inflex .side3 .sidetitle span {
  border-bottom: 1px solid;
}
.footbox .inflex .side3 .sidetitle_last {
  margin-bottom: 0;
}

.foot_contact {
  margin-top: 90px;
  position: relative;
  padding: 80px 0;
  border-radius: 80px;
  background: -webkit-gradient(linear, right top, left top, from(#5dacda), to(#1a87c9));
  background: linear-gradient(to left, #5dacda, #1a87c9);
}
@media screen and (max-width: 767px) {
  .foot_contact {
    margin-top: 70px;
    padding-top: 70px;
    border-radius: 40px;
  }
}
.foot_contact::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 100px;
  background: #f9fafc;
  z-index: -1;
}
.foot_contact .largeHeadline03 .main_text2 {
  color: #fff;
  position: relative;
}
.foot_contact .largeHeadline03 .main_text2::before {
  content: "";
  display: block;
  width: 50px;
  border-radius: 10px;
  height: 6px;
  background-color: #fff;
  margin: 0 auto 3rem;
}
.foot_contact .largeHeadline03 .sub_text {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .foot_contact .largeHeadline03 .sub_text {
    font-size: 14px;
  }
}
.foot_contact .centertext {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .foot_contact .centertext {
    font-size: 14px;
  }
}

.aboutus_sec .imgb {
  text-align: center;
  margin-bottom: -70px;
}
@media screen and (max-width: 767px) {
  .aboutus_sec .imgb {
    margin: 0;
  }
}
.aboutus_sec .imgb img {
  max-width: none;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .aboutus_sec .imgb img {
    max-width: 100%;
  }
}
.aboutus_sec .bordin {
  padding-top: 100px;
  border-radius: 80px 80px 0 0;
  background: #ebf1f5;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .aboutus_sec .bordin {
    padding-top: 60px;
    padding-bottom: 70px;
    border-radius: 0;
  }
}
.aboutus_sec .bordin .about_table {
  width: 100%;
  max-width: 800px;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .aboutus_sec .bordin .about_table {
    display: block;
  }
}
.aboutus_sec .bordin .about_table th {
  font-weight: 700;
  width: 25%;
  padding: 20px 10px 20px 0;
  border-bottom: 1px solid #a1aaaf;
}
@media screen and (max-width: 767px) {
  .aboutus_sec .bordin .about_table th {
    width: 100%;
    display: block;
    padding: 15px 10px 0px 0;
    font-size: 15px;
    border-bottom: none;
  }
}
.aboutus_sec .bordin .about_table td {
  width: 75%;
  border-bottom: 1px solid #a1aaaf;
  padding: 20px 10px 20px 0;
}
@media screen and (max-width: 767px) {
  .aboutus_sec .bordin .about_table td {
    width: 100%;
    display: block;
    font-size: 14px;
    padding: 15px 10px 15px 0;
  }
}
.aboutus_sec .bordin .about_table td img {
  margin: 20px 0;
}
.aboutus_sec .bordin .about_table td .text {
  margin-bottom: 0;
}
.aboutus_sec .bordin .about_table td .span1 {
  display: block;
  font-weight: 700;
  margin-top: 20px;
  margin-bottom: 15px;
}
.aboutus_sec .bordin .about_table td ul {
  padding: 0;
}
.aboutus_sec .bordin .about_table td ul li {
  padding-left: 15px;
  position: relative;
}
.aboutus_sec .bordin .about_table td ul li::before {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  background: #2b3f4c;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
}
.aboutus_sec .iconline {
  width: 100%;
  max-width: 244px;
  margin: 40px auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.c_b_line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1195px;
  margin: auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .c_b_line {
    display: block;
    text-align: center;
  }
}
.c_b_line a {
  display: block;
  margin-top: 40px;
  width: calc(33% - 20px);
}
@media screen and (max-width: 991px) {
  .c_b_line a {
    width: calc(33% - 10px);
  }
}
@media screen and (max-width: 767px) {
  .c_b_line a {
    width: 100%;
    margin-top: 20px;
  }
}
.c_b_line a span {
  display: block;
  width: 100%;
  color: #fff;
  max-width: 258px;
  font-size: 12px;
  margin: auto;
  margin-top: 15px;
}

.footer {
  background: #f9fafc;
  padding: 7rem 0 0rem;
}
@media screen and (min-width: 768px) {
  .footer {
    padding: 8rem 0 0rem;
  }
}

.fixed_banner {
  position: fixed;
  right: 0;
  top: 19%;
  z-index: 500;
  width: 100%;
  max-width: 6.6rem;
  display: none;
}
@media screen and (min-width: 992px) {
  .fixed_banner {
    display: block;
  }
}
.fixed_banner .f_banner {
  display: block;
  margin: 0 0 1.5rem;
}
.fixed_banner a:hover {
  opacity: 0.7;
}

.fixed_banner_box_f_wrap {
  position: fixed;
  right: 0;
  left: 0;
  bottom: 0;
  background: #f5f6f6;
  z-index: 1;
}
@media screen and (min-width: 992px) {
  .fixed_banner_box_f_wrap {
    display: none;
  }
}
.fixed_banner_box_f_wrap .fixed_banner_box_f {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 4;
}
.fixed_banner_box_f_wrap .fixed_banner_box_f .fixed_banner_f {
  width: 50%;
}
.fixed_banner_box_f_wrap .fixed_banner_box_f .fixed_banner_f a {
  background: #f29c9f;
  color: #fff;
  display: block;
  text-align: center;
  font-size: 13px;
  padding: 10px 0;
  line-height: 1.4;
}
.fixed_banner_box_f_wrap .fixed_banner_box_f .fixed_banner_f a:hover {
  opacity: 0.8;
}
.fixed_banner_box_f_wrap .fixed_banner_box_f .fixed_banner_f a img {
  max-width: 36px;
  margin-bottom: 10px;
}
.fixed_banner_box_f_wrap .fixed_banner_box_f .fixed_banner_f a span {
  display: block;
  font-size: 11px;
}
.fixed_banner_box_f_wrap .fixed_banner_box_f .fixed_banner_f2 a {
  background-color: #ec3590;
}
.fixed_banner_box_f_wrap .fixed_banner_f_under {
  font-size: 10px;
  color: #2B3F4C;
  text-align: center;
}

/*ページトップ*/
#page-top {
  position: relative;
}
#page-top a {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 10;
  width: 100%;
  max-width: 60px;
}
@media screen and (max-width: 991px) {
  #page-top a {
    bottom: 15px;
    right: 15px;
    max-width: 48px;
  }
}
@media screen and (max-width: 767px) {
  #page-top a {
    z-index: -1;
  }
}
#page-top a:hover {
  opacity: 0.8;
}

.footerWrap {
  padding: 0 0 20px;
}
@media screen and (min-width: 768px) {
  .footerWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.footerWrap .footerWrap__left {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__left {
    max-width: calc(50% - 0.5rem);
  }
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__left .footerLogo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.footerWrap .footerWrap__left .footerLogo .footerLogo__left {
  width: 100%;
  text-align: center;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__left .footerLogo .footerLogo__left {
    max-width: 20rem;
    margin: 0 3rem 0 0;
    text-align: left;
  }
}
.footerWrap .footerWrap__left .footerLogo .footerLogo__left img {
  max-width: 60%;
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__left .footerLogo .footerLogo__left img {
    max-width: 100%;
  }
}
.footerWrap .footerWrap__left .footerLogo .footerLogo__right {
  width: 100%;
  text-align: center;
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__left .footerLogo .footerLogo__right {
    max-width: 4rem;
    text-align: left;
    margin: 0;
  }
}
.footerWrap .footerWrap__left .footerLogo .footerLogo__right img {
  max-width: 4rem;
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__left .footerLogo .footerLogo__right img {
    max-width: 100%;
  }
}
.footerWrap .footerWrap__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footerWrap .footerWrap__right {
    max-width: calc(50% - 0.5rem);
  }
}
.footerWrap .footerWrap__right .text {
  color: #434343;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  .footerWrap .footerWrap__right .text {
    margin-bottom: 0;
  }
}

/*フッターメニュー*/
.footermenu {
  margin: 0 auto;
  text-align: center;
  padding: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .footermenu {
    padding: 0 0 4rem;
  }
}

.footermenu > li {
  display: inline-block;
  margin: 0 0 1rem;
}

.footermenu > li a {
  font-size: 1.4rem;
  display: inline-block;
  color: #3f3b3a;
}

.footermenu > li a::before {
  display: inline-block;
  margin: 0 1rem;
  content: "|";
}

.footermenu > .lastlist a::after {
  content: "|";
  margin: 0 1rem;
  display: inline-block;
}

/*コピーライト*/
.copyright {
  font-size: 16px;
  text-align: center;
  border-top: 1px solid #cccccc;
  padding: 40px 15px 60px;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .copyright {
    margin-top: 80px;
    font-size: 12px;
    padding: 40px 15px;
  }
}

/*ページトップに戻る*/
#pagetop {
  display: none !important;
}

.map {
  margin-bottom: 0;
}

.maptext {
  color: #2b3f4c;
  border-bottom: 1px solid;
}

/*====================================
サイド
====================================*/
.side {
  padding: 0;
}

.sideNavi {
  position: relative;
  margin-bottom: 2rem;
}
@media screen and (min-width: 992px) {
  .sideNavi {
    margin-bottom: 3rem;
  }
}
.sideNavi .sideNaviTitle {
  position: relative;
}
.sideNavi .sideNavHeadline {
  line-height: 1.4;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 0 1rem;
  padding: 0.5rem 1rem 0.6rem;
  position: relative;
  background-color: #2F94CF;
  color: #fff;
  border-radius: 0.5rem;
}
.sideNavi ul li {
  border-bottom: 1px dashed #CCC;
  padding: 0.6rem 0 0.5rem;
  line-height: 1.4;
}
.sideNavi ul li a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #2B3F4C;
}
.sideNavi ul li a:hover {
  color: #999999;
}

.sideNaviSingle {
  padding: 0;
  margin: 0;
}
.sideNaviSingle li {
  padding: 0;
  margin: 0;
}
.sideNaviSingle li a {
  display: block;
  font-size: 1.4rem;
}

.sideNaviPost {
  padding: 0;
  margin: 0;
}
.sideNaviPost li {
  padding: 0;
  margin: 0;
}
.sideNaviPost li a {
  display: block;
}

.sideNaviFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 1rem);
  padding: 0;
  margin: 0 0 0 -0.5rem;
}
.sideNaviFlex li {
  width: 100%;
  max-width: calc(50% - 1rem);
  margin: 0 0.5rem;
}
.sideNaviFlex li a {
  display: block;
  font-size: 1.4rem;
}

.navOac {
  padding: 0.5rem 0rem;
  margin: 0;
  cursor: pointer;
  position: absolute;
  top: 50%;
  left: 0;
  width: calc(100% - 1rem);
  -webkit-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
}
.navOac .navOacBtn {
  position: relative;
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  margin: 0 0 0 auto;
  cursor: pointer;
}
@media screen and (min-width: 992px) {
  .navOac .navOacBtn {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .navOac .navOacBtn:hover {
    opacity: 0.7;
  }
}
.navOac .navOacBtn span {
  display: inline-block;
  width: calc(100% - 1rem);
  height: 0.2rem;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.navOac .navOacBtn span:last-child {
  height: calc(100% - 1rem);
  width: 0.2rem;
  display: inline-block;
}
.navOac .navOacBtn.on span:last-child {
  display: none;
}

.top #content {
  padding: 0;
  margin: 0;
}

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

  ■メインビジュアル

=====================================*/
.mainvisualWrap {
  margin: 7rem 0 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .mainvisualWrap {
    margin: 11rem 0 0;
  }
}
.mainvisualWrap .mainvisualText {
  position: absolute;
  bottom: 20%;
  left: 50%;
  z-index: 2;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  width: 100%;
  text-align: center;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .mainvisualWrap .mainvisualText {
    text-align: left;
    top: auto;
    left: 3%;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
    width: auto;
    padding: 0;
  }
}
@media screen and (min-width: 1550px) {
  .mainvisualWrap .mainvisualText {
    top: 50%;
    left: 5%;
    -webkit-transform: translate(0%, -50%);
    transform: translate(0%, -50%);
  }
}
@media screen and (min-width: 1921px) {
  .mainvisualWrap .mainvisualText {
    left: 10%;
  }
}
.mainvisualWrap .mainvisualText .main_text {
  font-family: "Zen Old Mincho", serif;
  font-size: 7vw;
  display: block;
  color: #4e5356;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1rem;
}
@media screen and (min-width: 768px) {
  .mainvisualWrap .mainvisualText .main_text {
    font-size: 3.8vw;
    margin: 0;
  }
}
@media screen and (min-width: 1400px) {
  .mainvisualWrap .mainvisualText .main_text {
    font-size: 62px;
  }
}
.mainvisualWrap .mainvisualText .main_text .el_deco {
  color: #b8bdc2;
}
.mainvisualWrap .mainvisualText .sub_text {
  font-size: 4vw;
  color: #434343;
}
@media screen and (min-width: 768px) {
  .mainvisualWrap .mainvisualText .sub_text {
    font-size: 1.7vw;
  }
}
@media screen and (min-width: 1400px) {
  .mainvisualWrap .mainvisualText .sub_text {
    font-size: 21px;
  }
}

.mainvisualImg {
  text-align: right;
  overflow: hidden;
  position: relative;
  z-index: 1;
  margin: 0 auto 0rem;
}
@media screen and (min-width: 768px) {
  .mainvisualImg {
    margin: 0 auto 10rem;
  }
}
.mainvisualImg img {
  padding: 20px;
  padding-bottom: 0;
}
@media screen and (min-width: 768px) {
  .mainvisualImg img {
    padding: 40px;
    padding-bottom: 0;
  }
}
@media screen and (min-width: 1921px) {
  .mainvisualImg img {
    margin: 0;
  }
}

.icon_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

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

  ■ブログ

=====================================*/
.frontBlog {
  margin: 0 0 40px;
}
@media screen and (min-width: 768px) {
  .frontBlog {
    margin: 80px 0;
  }
}
.frontBlog .frontBlogWrap {
  display: block;
}
@media screen and (min-width: 992px) {
  .frontBlog .frontBlogWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width: 991px) {
  .frontBlog .frontBlogWrap .btn {
    margin-bottom: 0;
  }
}
.frontBlog .frontBlogWrap .frontBlogWrap__left {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .frontBlog .frontBlogWrap .frontBlogWrap__left {
    max-width: 19rem;
    margin: 0 5rem 0 0;
  }
}
@media screen and (min-width: 1200px) {
  .frontBlog .frontBlogWrap .frontBlogWrap__left {
    margin: 0 10rem 0 0;
  }
}
@media screen and (max-width: 767px) {
  .frontBlog .frontBlogWrap .frontBlogWrap__left .largeHeadline01 {
    margin-bottom: 34px;
  }
}
.frontBlog .frontBlogWrap .frontBlogWrap__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .frontBlog .frontBlogWrap .frontBlogWrap__right {
    margin: 0;
  }
}

.frontBlogArticle {
  margin: 0 0 30px;
}
@media screen and (min-width: 992px) {
  .frontBlogArticle {
    margin: 0;
  }
}
.frontBlogArticle .frontBlogArticleItem {
  background: #fff;
}
.frontBlogArticle .frontBlogArticleItem a,
.frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText {
  display: block;
  padding: 0 0 1.5rem;
  color: inherit;
}
@media screen and (min-width: 768px) {
  .frontBlogArticle .frontBlogArticleItem a,
  .frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .frontBlogArticle .frontBlogArticleItem a:hover,
  .frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText:hover {
    opacity: 0.7;
  }
}
.frontBlogArticle .frontBlogArticleItem a .el_date,
.frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText .el_date {
  width: 100%;
  font-family: "Roboto", serif;
  font-size: 13px;
  font-weight: 600;
  display: block;
  color: #a5a5a5;
}
.frontBlogArticle .frontBlogArticleItem a .el_text,
.frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText .el_text {
  width: 100%;
  font-size: 16px;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .frontBlogArticle .frontBlogArticleItem a .el_text,
  .frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText .el_text {
    font-size: 18px;
  }
}
.frontBlogArticle .frontBlogArticleItem a span,
.frontBlogArticle .frontBlogArticleItem .frontBlogArticleItemText span {
  display: block;
}
.post .frontBlogArticle .frontBlogArticleItem {
  padding: 0 0 1rem;
  margin: 0 0 2rem;
  border-bottom: 1px solid #CCC;
}

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

  ■ABOUT

=====================================*/
.frontAbout {
  background: #fff;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .frontAbout {
    padding: 0 0 0;
  }
}
.frontAbout .frontAboutWrap {
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .frontAbout .frontAboutWrap {
    margin-bottom: 250px;
  }
}
.frontAbout .frontAboutWrap .frontAboutWrap__left img {
  border-radius: 1rem;
}
@media screen and (min-width: 992px) {
  .frontAbout .frontAboutWrap .frontAboutWrap__left img {
    border-radius: 0;
  }
}
.frontAbout .frontAboutWrap .frontAboutWrap__right {
  width: 100%;
  position: relative;
  padding-block: -180px;
  text-align: center;
}
.frontAbout .frontAboutWrap .frontAboutWrap__right .text {
  position: static;
  width: 100%;
  max-width: 90%;
  border-radius: 30px;
  font-size: 16px;
  background: #fff;
  right: 0;
  left: 0;
  margin: auto;
  bottom: -175px;
  padding: 30px 20px;
  margin-top: -30px;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .frontAbout .frontAboutWrap .frontAboutWrap__right .text {
    max-width: 600px;
    padding: 60px 40px;
    bottom: -180px;
    position: absolute;
  }
}
.frontAbout .frontAboutWrap .frontAboutWrap__right .text span {
  font-weight: 700;
}
.frontAbout .frontAboutWrap .btn {
  margin-left: 0;
}

.frontAboutMessage_outer {
  padding: 0 15px;
}
@media screen and (max-width: 767px) {
  .frontAboutMessage_outer {
    padding: 0px;
  }
}

/*メッセージ*/
.frontAboutMessage {
  padding: 6rem 2em;
  margin: 0 auto;
  border-radius: 1rem;
  background: #f3fcff;
  border-radius: 20px;
  width: 100%;
  max-width: 1200px;
}
@media screen and (min-width: 768px) {
  .frontAboutMessage {
    padding: 100px 30px;
  }
}
.frontAboutMessage h2 {
  font-size: 26px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .frontAboutMessage h2 {
    font-size: 34px;
  }
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__left {
  width: 100%;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__left .img {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__left .img {
    margin-bottom: 30px;
  }
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__left .img img {
  margin: 0 auto 0;
}
@media screen and (min-width: 768px) {
  .frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__left .img img {
    margin: auto;
  }
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right {
  width: 100%;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .titlein {
  font-weight: 600;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .titlein .minititle {
  display: block;
  font-size: 1.6rem;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .titlein .title {
  margin: 0 0 1.8rem;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .titlein .title span {
  display: inline-block;
  font-size: 2.5rem;
  margin: 0 0 0 1.5rem;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .subbox {
  padding: 0;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .subbox .subtitle {
  padding: 0.5rem 1.5rem;
  border-radius: 0.5rem;
  background: #f5f6f6;
  margin: 0 0 1rem;
  font-weight: 600;
}
.frontAboutMessage .frontAboutMessageFlex .frontAboutMessageFlex__right .subbox .text {
  padding: 0 1.5rem;
}

.comment {
  padding: 3rem 3rem;
  border-radius: 0.5rem;
  background: #f5f6f6;
  margin: 0 0 3rem;
}

.frontAboutMessageBtn {
  max-width: 800px;
  margin: 0 auto;
}
.frontAboutMessageBtn .frontrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 600px) {
  .frontAboutMessageBtn .frontrow {
    display: block;
  }
}
.frontAboutMessageBtn .blockone {
  width: calc(50% - 20px);
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .frontAboutMessageBtn .blockone {
    margin-top: 40px;
    width: calc(50% - 10px);
  }
}
@media screen and (max-width: 600px) {
  .frontAboutMessageBtn .blockone {
    margin-top: 30px;
    width: 100%;
  }
}
.frontAboutMessageBtn .blockone .titleone {
  font-size: 27px;
  line-height: 1.5;
  color: #0390d7;
  padding-top: 20px;
  position: relative;
  font-weight: 600;
  margin-bottom: 20px;
}
@media screen and (max-width: 991px) {
  .frontAboutMessageBtn .blockone .titleone {
    font-size: 23px;
  }
}
@media screen and (max-width: 767px) {
  .frontAboutMessageBtn .blockone .titleone {
    font-size: 20px;
  }
}
.frontAboutMessageBtn .blockone .titleone::before {
  top: 0px;
  position: absolute;
  height: 2px;
  width: 40px;
  background: #29a3d3;
  left: 0;
  content: "";
}
/*====================================

  ■診療内容

=====================================*/
.frontMenu {
  padding: 7rem 0;
}
@media screen and (min-width: 768px) {
  .frontMenu {
    padding: 9rem 0;
  }
}
.frontMenu .imgb {
  text-align: center;
}
.frontMenu .imgb img {
  margin: auto;
}
.frontMenu .txtb {
  max-width: 63.4rem;
  width: 100%;
  margin: 30px auto 20px;
}
@media screen and (min-width: 768px) {
  .frontMenu .txtb {
    margin: 40px auto;
  }
}
.frontMenu .container {
  max-width: 1320px;
}

.frontMenuWrap {
  margin-top: 70px;
}
.frontMenuWrap .neotitle {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .frontMenuWrap .neotitle {
    font-size: 26px;
  }
}
.frontMenuWrap .neotitle span {
  border-bottom: 1px solid;
}
.frontMenuWrap .textbox {
  padding: 60px 20px 50px;
  background: #ebf1f5;
  border-radius: 30px;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  position: relative;
  margin-top: 50px;
}
@media screen and (min-width: 768px) {
  .frontMenuWrap .textbox {
    padding: 55px 30px 45px;
    font-size: 20px;
  }
}
.frontMenuWrap .textbox::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #fff;
  right: 0;
  left: 0;
  margin: auto;
  top: 0;
}
.frontMenuWrap .textbox span {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #2b3f4c;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .frontMenuWrap .textbox span {
    font-size: 22px;
  }
}

.sortBlock {
  max-width: 1040px;
  margin: 0 auto 12px;
}
@media screen and (min-width: 768px) {
  .sortBlock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    margin: 0 auto 22px;
  }
}
.sortBlock .sort__btn {
  margin: 0 5px 10px;
  padding: 10px 0;
  text-align: center;
  background-color: #fff;
  font-weight: normal;
  font-size: 1.5rem;
  position: relative;
  min-height: 52px;
  border-radius: 0.5rem;
}
@media screen and (min-width: 768px) {
  .sortBlock .sort__btn {
    width: 100%;
    border-right: 1px solid #fff;
    font-size: 2.1rem;
    padding: 13px 5px;
    width: calc(50% - 10px);
    margin: 0 1px 10px;
    cursor: pointer;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    line-height: 1.4;
    min-height: 8rem;
  }
  .sortBlock .sort__btn:hover {
    background-color: #7d7d7d;
  }
  .sortBlock .sort__btn:hover span {
    color: #fff;
  }
  .sortBlock .sort__btn:hover::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    border-top: 8px solid #7d7d7d;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
  }
}
@media screen and (min-width: 1200px) {
  .sortBlock .sort__btn {
    font-size: 2.2rem;
  }
}
@media screen and (min-width: 1400px) {
  .sortBlock .sort__btn {
    font-size: 2.4rem;
  }
}
.sortBlock .sort__btn span {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 1;
  color: #7d7d7d;
  font-family: "Zen Old Mincho", serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  width: auto;
  max-width: 100%;
  padding: 0 0 0 5rem;
  text-align: center;
  background-repeat: no-repeat;
  background-position: center left;
  background-size: auto auto;
}
.sortBlock .sort__btn.on {
  background-color: #7d7d7d;
}
.sortBlock .sort__btn.on span {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .sortBlock .sort__btn01:hover span {
    background-image: url(./images/icon_onayami_on.png);
  }
}
.sortBlock .sort__btn01 span {
  background-size: 3.1rem auto;
  background-image: url(./images/icon_onayami.png);
}
.sortBlock .sort__btn01.on span {
  background-image: url(./images/icon_onayami_on.png);
}
@media screen and (min-width: 768px) {
  .sortBlock .sort__btn02:hover span {
    background-image: url(./images/icon_search_on.png);
  }
}
.sortBlock .sort__btn02 span {
  background-size: 3.8rem auto;
  background-image: url(./images/icon_search.png);
}
.sortBlock .sort__btn02.on span {
  background-image: url(./images/icon_search_on.png);
}

.sortContentsWrap {
  background: rgba(255, 255, 255, 0.5);
  border-radius: 0.5rem;
  margin: 0 auto 20px;
}
.sortContentsWrap .sortContents {
  display: none;
  padding: 1.5rem;
}
@media screen and (min-width: 1200px) {
  .sortContentsWrap .sortContents {
    padding: 8rem 8rem 5rem;
  }
}
.sortContentsWrap .sortContents.on {
  display: block;
}
.sortContentsWrap .row {
  margin-right: -5px;
  margin-left: -5px;
}
.sortContentsWrap .col-lg-1,
.sortContentsWrap .col-lg-2,
.sortContentsWrap .col-lg-3,
.sortContentsWrap .col-lg-4,
.sortContentsWrap .col-lg-5,
.sortContentsWrap .col-lg-6,
.sortContentsWrap .col-lg-7,
.sortContentsWrap .col-lg-8,
.sortContentsWrap .col-lg-9,
.sortContentsWrap .col-lg-10,
.sortContentsWrap .col-lg-11,
.sortContentsWrap .col-lg-12,
.sortContentsWrap .col-md-1,
.sortContentsWrap .col-md-2,
.sortContentsWrap .col-md-3,
.sortContentsWrap .col-md-4,
.sortContentsWrap .col-md-5,
.sortContentsWrap .col-md-6,
.sortContentsWrap .col-md-7,
.sortContentsWrap .col-md-8,
.sortContentsWrap .col-md-9,
.sortContentsWrap .col-md-10,
.sortContentsWrap .col-md-11,
.sortContentsWrap .col-md-12,
.sortContentsWrap .col-sm-1,
.sortContentsWrap .col-sm-2,
.sortContentsWrap .col-sm-3,
.sortContentsWrap .col-sm-4,
.sortContentsWrap .col-sm-5,
.sortContentsWrap .col-sm-6,
.sortContentsWrap .col-sm-7,
.sortContentsWrap .col-sm-8,
.sortContentsWrap .col-sm-9,
.sortContentsWrap .col-sm-10,
.sortContentsWrap .col-sm-11,
.sortContentsWrap .col-sm-12,
.sortContentsWrap .col-xs-1,
.sortContentsWrap .col-xs-2,
.sortContentsWrap .col-xs-3,
.sortContentsWrap .col-xs-4,
.sortContentsWrap .col-xs-5,
.sortContentsWrap .col-xs-6,
.sortContentsWrap .col-xs-7,
.sortContentsWrap .col-xs-8,
.sortContentsWrap .col-xs-9,
.sortContentsWrap .col-xs-10,
.sortContentsWrap .col-xs-11,
.sortContentsWrap .col-xs-12 {
  padding: 0 5px;
}

.linkList {
  display: block;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .linkList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.linkList .inblock {
  display: block;
  position: relative;
  width: 100%;
  margin: 30px auto 0px;
  max-width: 294px;
}
@media screen and (min-width: 768px) {
  .linkList .inblock {
    width: calc(50% - 20px);
    margin: 40px 20px 0px;
    max-width: 373px;
  }
}
@media screen and (min-width: 992px) {
  .linkList .inblock {
    width: calc(33% - 20px);
  }
}
.linkList .inblock .titleone {
  line-height: 1;
  font-size: 20px;
  font-weight: 700;
  color: #2b3f4c;
  margin: 20px 0;
}
@media screen and (max-width: 767px) {
  .linkList .inblock .titleone {
    font-size: 16px;
  }
}
.linkList .inblock .el_inner {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 1.5rem;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .linkList .inblock .el_inner {
    left: 2rem;
  }
}
.linkList .inblock .el_small {
  font-size: 1.1rem;
}
@media screen and (min-width: 768px) {
  .linkList .inblock .el_small {
    font-size: 1.3rem;
  }
}
.linkList .inblock i {
  display: inline-block;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
  color: #b8b8b8;
  font-size: 1rem;
}
.linkList .inblock .txt {
  font-size: 1.6rem;
  color: #2b3f4c;
}
@media screen and (max-width: 767px) {
  .linkList .inblock .txt {
    font-size: 1.4rem;
  }
}
.linkList a.inblock:hover {
  opacity: 0.8;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.linkList .link_ng {
  border: none;
  pointer-events: none;
  cursor: auto;
}

.linkList2 {
  width: calc(100% + 3rem);
  padding: 0;
  margin: 0 0 0 -1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 1200px) {
  .linkList2 {
    max-width: 85.5rem;
    margin: 0 auto;
  }
}
.linkList2 a {
  display: block;
  width: calc(50% - 3rem);
  text-align: center;
  margin: 0 1.5rem 2.4rem;
}
@media screen and (min-width: 768px) {
  .linkList2 a {
    width: calc(33.3333333333% - 3rem);
    margin: 0 1.5rem 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .linkList2 a {
    margin: 0 1.5rem 4rem;
  }
}
.linkList2 a .el_inner {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 14px;
  color: #2b3f4c;
  margin-top: 13px;
}
@media screen and (min-width: 601px) {
  .linkList2 a .el_inner {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) {
  .linkList2 a .el_inner {
    font-size: 20px;
    margin-top: 20px;
  }
}
.linkList2 a:hover {
  opacity: 0.8;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}

.flowsection {
  background: #fff;
  padding: 60px 0;
}
@media screen and (min-width: 768px) {
  .flowsection {
    padding: 100px 0;
  }
}
.flowsection .imgb {
  text-align: center;
}
.flowsection .txtb {
  width: 100%;
  max-width: 62.4rem;
  margin: 4rem auto;
}
.flowsection .btn {
  margin-bottom: 0;
}

.section2 {
  margin-top: 60px;
  background: #f9f9f9;
}
@media screen and (min-width: 768px) {
  .section2 {
    margin-top: 100px;
  }
}

.onayami {
  padding: 60px 0;
  background: #f9f9f9;
  border-radius: 40px 40px 0 0;
}
@media screen and (min-width: 768px) {
  .onayami {
    padding: 100px 0;
    border-radius: 80px 80px 0 0;
  }
}

.linkList0b {
  padding: 0;
  margin-bottom: 0;
}

.centertext {
  text-align: center;
}

.waycontent {
  margin-top: 60px;
}
@media screen and (min-width: 768px) {
  .waycontent {
    margin-top: 100px;
  }
}
.waycontent .flexblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.waycontent .flexblock .inblock {
  width: 100%;
  border-radius: 20px;
  background: #f9f9f9;
  padding: 30px 20px;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .waycontent .flexblock .inblock {
    width: calc(50% - 10px);
    margin-top: 20px;
  }
}
@media screen and (min-width: 992px) {
  .waycontent .flexblock .inblock {
    width: calc(50% - 20px);
    margin-top: 40px;
  }
}
.waycontent .flexblock .inblock .titleside {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px;
}
.waycontent .flexblock .inblock .btn {
  max-width: 294px;
  background: #1a87c9;
  border: none;
  color: #fff;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .waycontent .flexblock .inblock .btn {
    max-width: 210px;
  }
}
.waycontent .flexblock .inblock .btn i {
  right: 1.5rem;
}
.waycontent .flexblock a.inblock:hover {
  opacity: 0.8;
}
.waycontent .largeHeadline01 {
  margin-bottom: 0;
}

.outcontainer {
  margin-top: 40px;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .outcontainer {
    margin-top: 60px;
  }
}
.outcontainer .out_in {
  width: 100%;
  max-width: 1840px;
  margin: auto;
  background: #ebf1f5;
  padding: 40px 30px;
  border-radius: 20px;
}
@media screen and (min-width: 992px) {
  .outcontainer .out_in {
    padding: 50px 20px;
  }
}
.outcontainer .out_in .btn {
  max-width: 294px;
  background: #1a87c9;
  border: none;
  color: #fff;
  margin-right: auto;
  margin-left: auto;
  margin-top: 40px;
}
@media screen and (min-width: 992px) {
  .outcontainer .out_in .btn {
    margin-left: 0 !important;
    max-width: 210px;
  }
}
.outcontainer .out_in .btn:hover {
  opacity: 0.8;
}
.outcontainer .out_in .btn i {
  right: 1.5rem;
}
.outcontainer .out_in .inflex {
  width: 100%;
  max-width: 1144px;
  margin: auto;
}
@media screen and (min-width: 992px) {
  .outcontainer .out_in .inflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.outcontainer .out_in .inflex .leftside {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .outcontainer .out_in .inflex .leftside {
    width: 28%;
  }
}
.outcontainer .out_in .inflex .leftside .titleone {
  font-size: 20px;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .outcontainer .out_in .inflex .leftside .titleone {
    font-size: 20px;
    margin: 0;
  }
}
.outcontainer .out_in .inflex .rightside {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .outcontainer .out_in .inflex .rightside {
    width: 72%;
  }
}

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

  ■院内風景

=====================================*/
.frontGallery {
  background: #fff;
}
.frontGallery .frontGalleryWrap {
  position: relative;
}
.frontGallery .frontGalleryWrap > div {
  position: relative;
  z-index: 2;
}

.pricemain .maintitle {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .pricemain .maintitle {
    font-size: 22px;
  }
}
@media screen and (min-width: 992px) {
  .pricemain .maintitle {
    font-size: 26px;
  }
}
.pricemain .maintitle span {
  border-bottom: 1px solid;
}

.p_row {
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  background: #fff;
  padding: 40px 25px;
  border-radius: 15px;
  -webkit-box-shadow: 0px 5px 15px 0px rgba(43, 63, 76, 0.2);
          box-shadow: 0px 5px 15px 0px rgba(43, 63, 76, 0.2);
}
.p_row .side {
  width: 100%;
  margin-top: 40px;
  max-width: 373px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p_row .side {
    margin-right: 15px;
    margin-top: 50px;
  }
}
.p_row .side .shorttitle {
  width: 100%;
  margin: auto;
  max-width: 280px;
  text-align: center;
  color: #2f94cf;
  font-size: 20px;
  font-weight: 600;
  border: 3px solid;
  border-radius: 30px;
}
.p_row .side .price_t {
  text-align: center;
  font-weight: 700;
  font-size: 36px;
  font-family: "Oswald", sans-serif;
}
.p_row .side .price_t span {
  font-size: 24px;
  font-family: "Noto Sans JP", sans-serif;
}
.p_row .side .obi {
  font-size: 16px;
  color: #fff;
  padding: 5px;
  text-align: center;
  margin-bottom: 30px;
  background-color: #1b252e;
}
.p_row .side .obi span {
  font-size: 24px;
  font-weight: 700;
}
.p_row .side2 {
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p_row .side2 {
    margin-left: 15px;
  }
}
.p_row .btn {
  background: #1a87c9;
  border: none;
  max-width: 294px;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p_row .btn {
    max-width: 210px;
  }
}
.p_row .btn:hover {
  opacity: 0.8;
}
.p_row .btn i {
  right: 1.5rem;
}

.pricemain2 .p_row .side {
  margin-right: auto;
  margin-left: auto;
  margin-top: 0;
  max-width: 500px;
}

.frontGalleryHead {
  position: relative;
}
.frontGalleryHead .frontGalleryArrow {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  width: 6.2rem;
  height: 2.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 768px) {
  .frontGalleryHead .frontGalleryArrow {
    width: 13.8rem;
    height: 6.4rem;
  }
}
.frontGalleryHead .frontGalleryArrow .slick-arrow {
  width: 2.8rem;
  height: 2.8rem;
  display: block;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  position: static;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .frontGalleryHead .frontGalleryArrow .slick-arrow {
    width: 6.4rem;
    height: 6.4rem;
  }
  .frontGalleryHead .frontGalleryArrow .slick-arrow:hover {
    opacity: 0.5;
  }
}
.frontGalleryHead .frontGalleryArrow .slick-arrow::before {
  display: none;
}
.frontGallerySlide li {
  text-align: center;
}
.frontGallerySlide li .el_inner {
  display: block;
  max-width: calc(100% - 2rem);
  margin: 0 auto;
}
.frontGallerySlide li .el_inner img {
  width: 100%;
}
.frontGallerySlide li .el_inner .intitle {
  text-align: left;
  font-size: 16px;
  font-weight: 700;
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .frontGallerySlide li .el_inner .intitle {
    font-size: 20px;
    margin-top: 15px;
  }
}

.slick-slider {
  padding-left: 0 !important;
}
@media screen and (max-width: 600px) {
  .slick-slider {
    margin-left: -30px;
  }
}

@media screen and (min-width: 992px) {
  .businessLinkList {
    width: 100%;
    max-width: 930px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (min-width: 1400px) {
  .businessLinkList {
    width: 100%;
    max-width: 1400px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (min-width: 768px) {
  .businessLinkList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.businessLinkList .businessLinkListItem {
  width: 100%;
  text-align: center;
  position: relative;
  border-bottom: 1px solid #f5f6f6;
}
@media screen and (min-width: 768px) {
  .businessLinkList .businessLinkListItem {
    border-bottom: none;
    border-right: 1px solid #f5f6f6;
  }
}
.businessLinkList .businessLinkListItem a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 15px;
  background: none;
  background-position: center right 1.5rem;
  background-repeat: no-repeat;
  background-size: 4rem auto;
  background-image: url(./images/icon_next02.png);
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .businessLinkList .businessLinkListItem a {
    padding: 30px 50px 30px 20px;
    background-position: center right 3rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-left: 0;
    background-size: 5rem auto;
  }
}
@media screen and (min-width: 1400px) {
  .businessLinkList .businessLinkListItem a {
    background-position: center right 4rem;
    background-size: 10rem auto;
    padding: 60px 100px 60px 25px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 1921px) {
  .businessLinkList .businessLinkListItem a {
    background-position: center right 6rem;
  }
}
.businessLinkList .businessLinkListItem a .businessLinkListText {
  text-align: left;
}
.businessLinkList .businessLinkListItem a .businessLinkListText .main_text {
  font-weight: 600;
  line-height: 1.4;
  display: block;
  font-family: "Zen Old Mincho", serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 2.4rem;
  color: #4e5356;
  margin: 0 0 0.5rem;
}
@media screen and (min-width: 768px) {
  .businessLinkList .businessLinkListItem a .businessLinkListText .main_text {
    font-size: 2.5vw;
  }
}
@media screen and (min-width: 1200px) {
  .businessLinkList .businessLinkListItem a .businessLinkListText .main_text {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 1400px) {
  .businessLinkList .businessLinkListItem a .businessLinkListText .main_text {
    font-size: 3.4rem;
  }
}
.businessLinkList .businessLinkListItem a .businessLinkListText .sub_text {
  display: block;
  font-size: 1.5rem;
  color: #b6a7a7;
  font-weight: 600;
  font-family: "Crimson Text", serif;
}
@media screen and (min-width: 768px) {
  .businessLinkList .businessLinkListItem a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .businessLinkList .businessLinkListItem a:hover {
    opacity: 0.7;
  }
}
.businessLinkList .businessLinkListItem:last-child {
  border-right: none;
}

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

  ■クリニック情報

=====================================*/
.frontClinic {
  padding: 5rem 0 2rem;
  background: url(./images/clinic_bg.jpg) repeat top center;
}
@media screen and (min-width: 768px) {
  .frontClinic {
    padding: 9rem 0 6rem;
  }
}
.frontClinic .container {
  max-width: 1320px;
}
.frontClinic .frontClinicOuter {
  background: #fff;
  border-radius: 1rem;
  padding: 4rem 1.5rem 1.5rem;
}
@media screen and (min-width: 1200px) {
  .frontClinic .frontClinicOuter {
    padding: 8rem 8rem 5rem;
  }
}
.frontClinic .frontClinicWrap {
  margin: 0 auto 30px;
}
@media screen and (min-width: 768px) {
  .frontClinic .frontClinicWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.frontClinic .frontClinicWrap .frontClinicWrap__left {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .frontClinic .frontClinicWrap .frontClinicWrap__left {
    max-width: 59.7rem;
    margin: 0 4.5rem 0 0;
  }
}
.frontClinic .frontClinicWrap .frontClinicWrap__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .frontClinic .frontClinicWrap .frontClinicWrap__right {
    max-width: 39.7rem;
  }
}
.frontClinic .frontClinicWrap .frontClinicWrap__right .img {
  margin-bottom: 5px;
}
.frontClinic .frontClinicWrap02 {
  background: #f5f6f6;
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin: 0 auto 30px;
}
@media screen and (min-width: 768px) {
  .frontClinic .frontClinicWrap02 {
    padding: 4rem 4rem 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.frontClinic .frontClinicWrap02 .frontClinicWrap02__left {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .frontClinic .frontClinicWrap02 .frontClinicWrap02__left {
    max-width: 40rem;
    margin: 0 3rem 0 0;
  }
}
.frontClinic .frontClinicWrap02 .frontClinicWrap02__left dl {
  margin: 0 0 3rem;
}
.frontClinic .frontClinicWrap02 .frontClinicWrap02__left dl dt {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 1rem;
  padding: 0 0 0 1.5rem;
  line-height: 1;
  border-left: 3px solid #f29c9f;
}
.frontClinic .frontClinicWrap02 .frontClinicWrap02__left dl dd {
  font-size: 1.5rem;
}
.frontClinic .frontClinicWrap02 .frontClinicWrap02__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .frontClinic .frontClinicWrap02 .frontClinicWrap02__right {
    max-width: 49.2rem;
  }
}

@media screen and (max-width: 600px) {
  .hidden-xxs {
    display: none;
  }
}

.visible-xxs {
  display: none;
}
@media screen and (max-width: 600px) {
  .visible-xxs {
    display: block;
  }
}

.img-border-radius {
  border-radius: 1rem;
}

.text.--bg {
  background-color: #f9f9f9;
  padding: 1.5rem;
}

.page-id-145 .neck {
  display: none;
}
.page-id-145 #breadcrumb {
  display: none;
}

.page-stg {
  /*====================================

  ■メインビジュアル

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

  ■選ばれる理由

  =====================================*/
}
.page-stg .mainvisualImg {
  text-align: center;
}
.page-stg .fixbanner .flexb {
  max-width: 406px;
}
.page-stg .fixbanner .flexb .tel {
  margin: 0 1rem 0 0;
}
.page-stg .fixbanner .flexb .tel .textone {
  display: block;
  text-align: left;
  font-size: 1.1rem;
  margin: 1rem 0 0;
}
.page-stg .frontAboutMessageBtn {
  width: 100%;
  max-width: 108rem;
}

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

■キャンペーン

=====================================*/
.frontCampaign .frontCampaignWrap > .img img {
  display: inline-block;
  width: 100%;
  max-width: 60rem;
}

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

■相談

=====================================*/
.frontConsultation {
  padding: 5rem 0 2rem;
}
@media screen and (min-width: 768px) {
  .frontConsultation {
    padding: 8rem 0 5rem;
  }
}
@media screen and (min-width: 768px) {
  .frontConsultation .frontConsultationWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: calc(100% + 3rem);
    margin: 0 0 0 -1.5rem;
  }
}
.frontConsultation .frontConsultationWrap .frontConsultationItem {
  margin: 0 0 5rem;
}
@media screen and (min-width: 768px) {
  .frontConsultation .frontConsultationWrap .frontConsultationItem {
    width: 100%;
    max-width: calc(50% - 3rem);
    margin: 0 1.5rem 5rem;
    padding: 3rem 3rem 0;
    overflow: hidden;
    border: 1px solid #CCC;
    border-radius: 1.5rem;
  }
}
.frontConsultation .frontConsultationWrap .frontConsultationItem .img {
  margin: 0 auto 1.5rem;
  text-align: center;
}
.frontConsultation .frontConsultationWrap .frontConsultationItem .img img {
  display: inline-block;
  max-width: 30rem;
}
.frontConsultation .frontConsultationWrap .frontConsultationItem .frontConsultationPrice {
  font-weight: bold;
  font-size: 2rem;
  margin: 0 auto 1.5rem;
  text-align: center;
  line-height: 1.5;
}

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

■症例

=====================================*/
.frontCase {
  padding: 5rem 0 2rem;
}
@media screen and (min-width: 768px) {
  .frontCase {
    padding: 8rem 0 5rem;
  }
}
.frontCase .frontCaseWrap .frontCaseItem {
  padding: 0 0 2rem;
}
.frontCase .frontCaseWrap .frontCaseItem .el_status {
  display: block;
  font-weight: bold;
  font-size: 1.8rem;
  margin: 0 0 1rem;
  color: #0390D7;
  display: none;
}

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

■あいさつ

=====================================*/
.frontMessage {
  padding: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .frontMessage {
    padding: 0 0 5rem;
  }
}

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

  ■美容皮膚科

=====================================*/
.k_content1 {
  padding: 0 0 60px;
}
@media screen and (min-width: 768px) {
  .k_content1 {
    padding: 100px 0;
  }
}
.k_content1.--ver02 {
  padding-top: 60px;
}
@media screen and (min-width: 768px) {
  .k_content1.--ver02 {
    padding-top: 100px;
  }
}

.mainflex {
  display: block;
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .mainflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 80px;
  }
}
.mainflex .imgb {
  text-align: center;
  margin-bottom: 30px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mainflex .imgb {
    margin-bottom: 0;
    margin-right: 40px;
    width: 49%;
  }
}
.mainflex .textb {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .mainflex .textb {
    width: 51%;
  }
}
.mainflex .textb .maintitle {
  color: #29a3d3;
  font-weight: 700;
  margin-bottom: 20px;
  font-size: 26px;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .mainflex .textb .maintitle {
    font-size: 34px;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 992px) {
  .mainflex .textb .maintitle {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 767px) {
  .shortcontainer {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.btnflex_b .k_title {
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .btnflex_b .k_title {
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .btnflex_b .k_title {
    line-height: 1.4;
  }
}
.btnflex_b .k_title span {
  border-bottom: 1px solid;
}
.btnflex_b .btnflex {
  display: block;
  width: 100%;
  max-width: 1120px;
  margin: auto;
}
@media screen and (min-width: 601px) {
  .btnflex_b .btnflex {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.btnflex_b .btnflex .btnin {
  line-height: 1;
  display: block;
  width: 100%;
  margin-top: 15px;
  padding: 15px 5px 15px 5px;
  border-radius: 32px;
  text-align: center;
  font-size: 13px;
  border: 1px solid;
  position: relative;
  background-color: #fff;
  color: #2B3F4C;
}
@media screen and (min-width: 601px) {
  .btnflex_b .btnflex .btnin {
    width: calc(50% - 5px);
  }
}
@media screen and (min-width: 768px) {
  .btnflex_b .btnflex .btnin {
    font-size: 18px;
    width: calc(50% - 15px);
    margin-top: 30px;
    padding: 20px 10px 20px 10px;
  }
}
.btnflex_b .btnflex .btnin:hover {
  color: #fff;
  background-color: #2B3F4C;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.btnflex_b .btnflex .btnin i {
  font-size: 11px;
  height: 11px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 10px;
}
@media screen and (min-width: 768px) {
  .btnflex_b .btnflex .btnin i {
    font-size: 16px;
    height: 16px;
    right: 20px;
  }
}

.btnflex_b2 .btnflex .btnin i {
  font-size: 11px;
  height: 11px;
}

.reform_c {
  position: relative;
  padding: 70px 0;
}
@media screen and (max-width: 767px) {
  .reform_c {
    padding: 40px 0 20px;
  }
}
.reform_c::before {
  content: "";
  position: absolute;
  right: 0;
  width: 66%;
  height: 100%;
  background-color: #f9f9f9;
  border-radius: 14px 0 0 14px;
  top: 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .reform_c::before {
    width: 100%;
    border-radius: 0;
  }
}
.reform_c .btn2 {
  margin-bottom: 0 !important;
}
.reform_c .flexb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .reform_c .flexb {
    display: block;
  }
}
.reform_c .flexb .imgb {
  width: 100%;
  margin-right: 0px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .reform_c .flexb .imgb {
    width: 50%;
    margin-right: 30px;
    margin-bottom: 0;
  }
}
.reform_c .flexb .textb {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .reform_c .flexb .textb {
    width: 50%;
  }
}
.reform_c .flexb .textb .titlef {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.reform_c .flexb .textb .titlef img {
  margin-top: 10px;
  margin-right: 15px;
}
@media screen and (max-width: 767px) {
  .reform_c .flexb .textb .titlef img {
    max-width: 50px;
    margin-top: 5px;
  }
}
.reform_c .flexb .textb .titlef .intitle {
  color: #0390d7;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .reform_c .flexb .textb .titlef .intitle {
    font-size: 24px;
    line-height: 1.6;
  }
}
.reform_c .flexb .textb .center_f {
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
}
@media screen and (max-width: 767px) {
  .reform_c .flexb .textb .center_f {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
}
.reform_c .flexb .textb .btn {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .reform_c .flexb .textb .left {
    text-align: center;
  }
}

.reform_c2 {
  margin-top: 40px;
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  .reform_c2 {
    margin-top: 60px;
    margin-bottom: 100px;
  }
}
.reform_c2::before {
  content: "";
  position: absolute;
  right: auto;
  border-radius: 0 14px 14px 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .reform_c2::before {
    border-radius: 0;
  }
}
.reform_c2 .flexb .imgb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-left: 0;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .reform_c2 .flexb .imgb {
    width: 50%;
    margin-right: 0px;
    margin-left: 30px;
    margin-bottom: 0;
  }
}
.reform_c2 .flexb .textb {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media screen and (max-width: 767px) {
  .reform_c2 .flexb .textb .titlef2 {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .reform_c2 .flexb .textb .titlef2 img {
    margin-top: 8px;
  }
}

.reform_c2_b {
  margin-top: 40px;
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .reform_c2_b {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}

/*========================================
矯正治療のメリット
========================================*/
.correctionMeritSec {
  position: relative;
  padding: 0 0 5rem;
  margin: 0 0 5rem;
}
@media screen and (min-width: 768px) {
  .correctionMeritSec {
    padding: 0 0 8rem;
    margin: 0 0 10rem;
  }
}
@media screen and (min-width: 768px) {
  .correctionMeritSec::before {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: calc(100% - 5rem);
    height: 65.4rem;
    background-color: #F9F9F9;
    border-radius: 2rem 0 0 2rem;
  }
}
.correctionMeritSec .container {
  position: relative;
  z-index: 2;
}
.correctionMeritSec .correctionMeritFlex .flexin {
  padding: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .correctionMeritSec .correctionMeritFlex .flexin {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 0 0 5rem;
  }
}
.correctionMeritSec .correctionMeritFlex .flexin .imgside {
  width: 100%;
  margin: 0 0 3rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .correctionMeritSec .correctionMeritFlex .flexin .imgside {
    max-width: 56.7rem;
    margin: 0 5rem 3rem 0;
  }
}
.correctionMeritSec .correctionMeritFlex .flexin .textside {
  width: 100%;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .correctionMeritSec .correctionMeritFlex .flexin .textside {
    max-width: 56.2rem;
  }
}
.correctionMeritSec .correctionMeritFlex .textwhite {
  padding: 3rem 1.5rem 1rem;
  border-radius: 1rem;
  -webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.05);
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .correctionMeritSec .correctionMeritFlex .textwhite {
    padding: 4.5rem 1.5rem 2.5rem;
    border-radius: 2rem;
  }
}
.correctionMeritSec .correctionMeritFlex .textwhite .list03 {
  margin: 0 auto 3rem;
  max-width: 80rem;
}
@media screen and (max-width: 767px) {
  .correctionMeritSec .correctionMeritFlex .textwhite .list03 {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .correctionMeritSec .correctionMeritFlex .textwhite .list03 .col-6 {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .pt-5_neo {
    padding-top: 0 !important;
  }
}

.largeHeadline02_e {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .img_e img {
    margin-bottom: 0px;
  }
}

/*========================================
クリア歯科のマウスピース矯正・料金
========================================*/
@media screen and (max-width: 767px) {
  .Method__inner__ttl {
    margin-bottom: 0;
  }
}
.Method__contents {
  width: 100%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .Method__contents {
    max-width: 100%;
  }
}
.Method__head {
  margin-bottom: 21.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Method__head {
    width: 100%;
    margin-bottom: 100px;
  }
}
.Method__head__notes .logo {
  margin: 0 auto 8vw;
}
@media screen and (min-width: 768px) {
  .Method__head__notes .logo {
    margin-bottom: 40px;
  }
}
.Method__head__notes .logo01 {
  width: 51.2vw;
}
@media screen and (min-width: 768px) {
  .Method__head__notes .logo01 {
    width: 248px;
  }
}
.Method__head__notes .logo02 {
  width: 50.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Method__head__notes .logo02 {
    width: 230px;
  }
}
.Method__head__notes .txt {
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  .Method__head__notes .txt {
    width: 700px;
    margin: 0 auto 60px;
  }
}
.Method__head__block {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .Method__head__block {
    max-width: calc(50% - 1rem);
  }
}
@media screen and (min-width: 768px) {
  .Method__head__block__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.Method__head__block .img {
  margin-bottom: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Method__head__block .img {
    margin-bottom: 20px;
  }
}
.Method__head__block .ttl {
  font-size: 4.8vw;
  font-weight: 600;
  text-align: center;
  margin-bottom: 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Method__head__block .ttl {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
.Method__body {
  background: #ECF1F5;
  margin: 3rem auto 0;
}
.Method__body__block {
  width: 100%;
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  border-radius: 2rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .Method__body__block {
    max-width: calc(50% - 1.5rem);
  }
}
@media screen and (min-width: 768px) {
  .Method__body__block__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.Method__body__block__head, .Method__body__block__body, .Method__body__block__foot {
  padding: 5.3333333333vw;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .Method__body__block__head, .Method__body__block__body, .Method__body__block__foot {
    padding: 30px;
  }
}
.Method__body__block__head .txt, .Method__body__block__body .txt, .Method__body__block__foot .txt {
  margin-bottom: 0;
}
.Method__body__block__head {
  border-radius: 20px 20px 0 0;
  border-bottom: 1px solid #CCC;
}
.Method__body__block__head__ttl {
  background-color: #5dacda;
  text-align: center;
  font-weight: 600;
  color: #fff;
  font-size: 2rem;
  padding: 0.9rem 1rem;
  border-radius: 30px;
  margin: 0 0 1rem;
}
@media screen and (min-width: 768px) {
  .Method__body__block__head__ttl.adjust {
    margin-bottom: 4.2rem;
  }
}
.Method__body__block__head__subttl {
  font-weight: 600;
  text-align: center;
  color: #2F94CF;
  line-height: 1.4;
  font-size: 4.2666666667vw;
  margin-bottom: 4vw;
}
@media screen and (min-width: 768px) {
  .Method__body__block__head__subttl {
    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;
    font-size: 16px;
    margin-bottom: 10px;
  }
}
.Method__body__block__head__subttl small {
  color: #2B3F4C;
  font-size: 75%;
  display: inline-block;
  margin: 0 0 0 1rem;
}
.Method__body__block__head .img {
  margin-bottom: 4vw;
}
@media screen and (min-width: 768px) {
  .Method__body__block__head .img {
    margin-bottom: 20px;
  }
}
.Method__body__block__head .price {
  font-size: 4.8vw;
  text-align: center;
  font-weight: 600;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.4;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Method__body__block__head .price {
    font-size: 18px;
    margin-bottom: 10px;
  }
}
.Method__body__block__head .price .owd {
  font-family: "Oswald", sans-serif;
  font-size: 36px;
  font-weight: 700;
}
@media screen and (max-width: 991px) {
  .Method__body__block__head .price .owd {
    font-size: 23px;
  }
}
@media screen and (max-width: 767px) {
  .Method__body__block__head .price .owd {
    font-size: 24px;
  }
}
.Method__body__block__head .month {
  width: 100%;
  background-color: #2B3F4C;
  color: #fff;
  text-align: center;
  margin: 0 auto;
  line-height: 1.4;
  padding: 1rem;
}
.Method__body__block__head .month .owd {
  font-size: 150%;
  font-family: "Oswald", sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 991px) {
  .Method__body__block__head2 {
    padding: 30px 15px;
  }
}
@media screen and (max-width: 767px) {
  .Method__body__block__head2 {
    padding: 4.3333333333vw;
  }
}
.Method__body__block__head2 .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .Method__body__block__head2 .flex {
    display: block;
  }
}
.Method__body__block__head2 .flex .block1 {
  width: calc(50% - 6px);
}
@media screen and (max-width: 767px) {
  .Method__body__block__head2 .flex .block1 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .Method__body__block__head2 .flex .block2 {
    margin-top: 30px;
  }
}
.Method__body__block__head2 .flex .Method__body__block__foot {
  padding: 0;
  margin-top: 20px;
}
.Method__body__block__head2 .flex .Method__body__block__foot p {
  margin: 0;
}
.Method__body__block__head2 .flex2 {
  margin-top: 30px;
}
.Method__body__block__foot {
  text-align: center;
}
.Method__body__block__foot .txt {
  font-size: 2rem;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .Method__body__block__foot .txt {
    font-size: 2.2rem;
  }
}
.Method__body__block__foot .txt .owd {
  font-size: 150%;
}
@media screen and (max-width: 767px) {
  .Method__body__block:last-child {
    margin-top: 40px;
  }
}
.Method__body__foot {
  margin-top: 5rem;
}
.Method__body__foot__block:first-of-type {
  margin-bottom: 2rem;
}
.Method__body__foot__block__ttl {
  position: relative;
  z-index: 0;
  text-align: center;
  margin: 0;
}
.Method__body__foot__block__ttl:after {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #CCC;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -5;
}
.Method__body__foot__block__ttl span {
  font-size: 2rem;
  font-weight: 600;
  background-color: #ECF1F5;
  padding: 0 1.5rem;
}
.Method__body__foot__block .txt {
  text-align: center;
  margin-bottom: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Method__body__foot__block .txt {
    margin-bottom: 20px;
  }
}
.Method__body__foot__block__inner {
  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;
  padding: 0;
  width: calc(100% + 1rem);
  margin: 0 0 0 -0.5rem;
}
.Method__body__foot__block__inner li {
  width: 100%;
  max-width: calc(50% - 1rem);
  text-align: center;
  margin: 0 0.5rem 2rem;
}
@media screen and (min-width: 768px) {
  .Method__body__foot__block__inner li {
    max-width: calc(25% - 1rem);
  }
}
.Method__body__foot__block__inner li .img {
  margin-bottom: 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Method__body__foot__block__inner li .img {
    margin-bottom: 10px;
  }
}
.Method__body__foot__block__inner li .ttl {
  font-weight: 600;
  line-height: 1.4;
}
.Method__body__foot__block__inner li .ttl small {
  font-weight: 400;
}
.Method__body__foot__block__notes {
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Method__body__foot__block__notes {
    margin-top: 20px;
  }
}
.Method__body ul {
  padding: 0;
}
.Method__body ul li {
  padding-left: 10px;
  position: relative;
}
.Method__body ul li::before {
  content: "";
  position: absolute;
  background-color: #2b3f4c;
  width: 4px;
  height: 4px;
  top: 12px;
  border-radius: 50%;
  left: 0;
}
.Method__body .Method__body__block__foot_2 {
  padding: 0 !important;
  margin-top: 20px;
}

.Method__body__foot__block__inner li::before {
  display: none;
}

.Method__body_an {
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .Method__body_an {
    padding: 30px;
  }
}
.Method__body_an .exa_title {
  text-align: center;
  font-weight: 700;
  font-size: 20px;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .Method__body_an .exa_title {
    font-size: 24px;
  }
}

.Method__body__block__wrap_an {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.Method__body__block__wrap_an .Method__body__block {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .Method__body__block__wrap_an .Method__body__block {
    max-width: calc(50% - 1.2rem);
  }
}
@media screen and (max-width: 767px) {
  .Method__body__block__wrap_an .Method__body__block:last-child {
    margin-top: 0;
  }
}
.Method__body__block__wrap_an .Method__body__block__head {
  border-bottom: none;
}
.Method__body__block__wrap_an .Method__body__block__head p .colortxt {
  color: #5dacda;
}

@media screen and (min-width: 768px) {
  .Price__table_d .Price__table__contents__head {
    max-width: 15rem;
  }
}

/*========================================
矯正治療の流れ
========================================*/
.correctionFloewSec {
  position: relative;
  background-color: #EBF1F5;
  padding: 5rem 0 2rem;
  margin: 0 0 4rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .correctionFloewSec {
    padding: 8.4rem 0;
  }
}
.correctionFloewSec::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #fff;
  right: 0;
  left: 0;
  margin: auto;
  top: 0;
}
.correctionFloewSec:first-child::before {
  display: none;
}
.correctionFloewSec .titlef {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .correctionFloewSec .titlef {
    margin-bottom: 4rem;
  }
}
.correctionFloewSec .titlef img {
  margin-right: 1rem;
  width: 100%;
  max-width: 5rem;
}
.correctionFloewSec .titlef .intitle {
  color: #0390D7;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .correctionFloewSec .titlef .intitle {
    font-size: 2.4rem;
  }
}
.correctionFloewSec .correctionFloewSecItemLoop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 3rem);
  margin: 0 0 0 -1.5rem;
}
.correctionFloewSec .correctionFloewSecItemLoop dl {
  width: 100%;
  max-width: calc(100% - 3rem);
  margin: 0 1.5rem 3rem;
  padding: 1.5rem;
  background-color: #fff;
  border-radius: 1rem;
}
@media screen and (min-width: 768px) {
  .correctionFloewSec .correctionFloewSecItemLoop dl {
    max-width: calc(50% - 3rem);
    padding: 3rem;
  }
}
.correctionFloewSec .correctionFloewSecItemLoop dl dt {
  font-weight: bold;
  font-size: 1.6rem;
  margin: 0 0 1rem;
}
@media screen and (min-width: 768px) {
  .correctionFloewSec .correctionFloewSecItemLoop dl dt {
    font-size: 2rem;
  }
}
.correctionFloewSec .correctionFloewSecItemLoop dl dd {
  padding: 0;
  margin: 0;
}
.correctionFloewSec .correctionFloewSecItemLoop dl.full {
  max-width: calc(100% - 3rem);
}

/*========================================
小児矯正について
========================================*/
.flowbox .flowline {
  display: block;
  margin-top: 40px;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .flowbox .flowline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.flowbox .flowline .imgside {
  width: 100%;
  margin-right: 0;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .flowbox .flowline .imgside {
    width: 34%;
    margin-bottom: 0;
    margin-right: 20px;
  }
}
.flowbox .flowline .textside {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .flowbox .flowline .textside {
    width: 66%;
  }
}
.flowbox .flowline .textside .f_title {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .flowbox .flowline .textside .f_title {
    font-size: 24px;
    line-height: 1.4;
  }
}
.flowbox .flowline .textside .f_title span {
  font-size: 32px;
  margin-right: 15px;
  color: #29a3d3;
}
@media screen and (min-width: 768px) {
  .flowbox .flowline .textside .f_title span {
    font-size: 40px;
  }
}

.textin_attention {
  margin-bottom: 30px;
}

.textin_attention2 {
  margin-bottom: 0px;
  margin-top: 30px;
}

.frontMenu2 {
  padding: 0 0 70px;
}
@media screen and (min-width: 768px) {
  .frontMenu2 {
    padding: 0 0 90px;
  }
}

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

.linkList_k .inblock .titleone {
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .linkList2_k2 {
    width: calc(100% + 4rem);
    margin: 0 0 0 -2rem;
  }
}
.linkList2_k2 .inblock {
  max-width: none;
  margin: 0 auto 30px;
}
@media screen and (min-width: 768px) {
  .linkList2_k2 .inblock {
    width: calc(33.3333333333% - 4rem);
    margin: 0 2rem 4rem;
  }
}
.linkList2_k2 .inblock .imgb {
  text-align: center;
}
.linkList2_k2 .inblock .imgb img {
  border-radius: 1.5rem;
  width: 100%;
  max-width: 294px;
}
@media screen and (min-width: 768px) {
  .linkList2_k2 .inblock .imgb img {
    max-width: 100%;
  }
}

.linkList2_k3 {
  max-width: 82rem;
  margin: auto;
}
.linkList2_k3 .inblock {
  margin: 0 auto 3rem;
}
@media screen and (min-width: 768px) {
  .linkList2_k3 .inblock {
    width: calc(50% - 4rem);
    margin: 0 auto 4rem;
  }
}
.linkList2_k3 .inblock .imgb img {
  border-radius: 1.5rem;
}

.centertext_mb2 {
  margin-bottom: 30px;
}

.k_centerbox2 {
  margin-top: 40px;
}

.catchSec2 {
  padding: 50px 0;
}

.osusume {
  margin-top: 60px;
}

.pricepoint {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 840px;
  margin-right: auto;
  margin-left: auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 40px;
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .pricepoint {
    margin-top: 40px;
    margin-bottom: 0;
  }
}
.pricepoint .pointone {
  width: calc(50% - 5px);
  padding: 20px;
  padding-top: 30px;
  border: solid 1px #2b3f4c;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .pricepoint .pointone {
    width: calc(33% - 10px);
    margin-bottom: 40px;
  }
}
.pricepoint .pointone .mark1 {
  text-align: center;
  line-height: 1.2;
  margin-bottom: 20px;
}
.pricepoint .pointone .mark1 span {
  padding: 5px 10px;
  background-color: #2b3f4c;
  color: #fff;
}
.pricepoint .pointone .maintitle {
  text-align: center;
  line-height: 1.5;
}
.pricepoint .pointone .maintitle span {
  font-size: 18px;
  font-weight: 700;
  display: block;
}
@media screen and (min-width: 768px) {
  .pricepoint .pointone .maintitle span {
    font-size: 22px;
  }
}

.faq_block {
  margin-top: 60px;
}

.radius-15 {
  border-radius: 15px;
}

.list01_2 {
  background-color: #f9f9f9;
}

@media screen and (max-width: 767px) {
  .xs_mt50 {
    margin-top: 50px;
  }
}

/*========================================
インプラント TOP
========================================*/
.flowsection2 {
  padding-top: 0 !important;
}
@media screen and (max-width: 767px) {
  .flowsection2 .btn {
    margin-bottom: 0;
  }
}

.roundimg img {
  border-radius: 30px;
}

.section3 {
  border-radius: 40px 40px 0 0;
  background: #f9f9f9;
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  .section3 {
    border-radius: 80px 80px 0 0;
    margin-bottom: 90px;
  }
}

.reform_c3 {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .reform_c3 {
    margin-top: 70px;
  }
}

.inplanttextbox {
  padding: 60px 20px 50px;
  background: #ebf1f5;
  border-radius: 30px;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  position: relative;
  margin-top: 50px;
}
@media screen and (min-width: 768px) {
  .inplanttextbox {
    padding: 55px 30px 45px;
    font-size: 20px;
  }
}
.inplanttextbox::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #F9F9F9;
  right: 0;
  left: 0;
  margin: auto;
  top: 0;
}
.inplanttextbox span {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #2b3f4c;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .inplanttextbox span {
    font-size: 22px;
  }
}

.second_b {
  width: 100%;
  max-width: 800px;
  margin: auto;
}
.second_b .blockone {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .second_b .blockone {
    margin-top: 40px;
  }
}
.second_b .blockone .titleone {
  font-size: 27px;
  line-height: 1.2;
  color: #0390d7;
  padding-top: 20px;
  position: relative;
  font-weight: 600;
  margin-bottom: 20px;
}
@media screen and (max-width: 991px) {
  .second_b .blockone .titleone {
    font-size: 23px;
  }
}
@media screen and (max-width: 767px) {
  .second_b .blockone .titleone {
    font-size: 20px;
  }
}
.second_b .blockone .titleone::before {
  top: 0px;
  position: absolute;
  height: 2px;
  width: 40px;
  background: #29a3d3;
  left: 0;
  content: "";
}
.second_b .img_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .second_b .img_flex {
    display: block;
  }
}
.second_b .img_flex .blockimg {
  width: 100%;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .second_b .img_flex .blockimg {
    margin-bottom: 50px;
    width: calc(50% - 27px);
  }
}
.second_b .img_flex .blockimg .titleoneb {
  font-size: 20px;
  font-weight: 700;
  margin-top: 20px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .second_b .img_flex .blockimg .titleoneb {
    font-size: 17px;
  }
}

/*========================================
インプラント 下層
========================================*/
.catchSec {
  position: relative;
  padding: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .catchSec {
    padding: 0 0 7rem;
  }
}
.catchSec.bgGray {
  background-color: #ECF1F5;
  padding-top: 5rem;
  margin-bottom: 4rem;
}
@media screen and (min-width: 768px) {
  .catchSec.bgGray {
    padding-top: 10rem;
    margin-bottom: 9rem;
  }
}
.catchSec .catchSecInner {
  position: relative;
  max-width: 100%;
  margin: 0 auto 3rem;
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecInner {
    margin: 0 auto 3rem;
  }
}
.catchSec .catchSecImg {
  text-align: center;
  margin: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecImg {
    margin: 0;
  }
}
.catchSec .catchSecImg img {
  display: inline-block;
  width: 100%;
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecImg img {
    max-width: calc(100% - 3rem);
    margin-left: auto;
  }
}
.catchSec .catchSecHeadline {
  line-height: 1.4;
  font-weight: 600;
  bottom: -1rem;
  left: 0;
  padding: 0;
  margin: 0;
  background: none;
  border-radius: 0;
  border-radius: 0.5rem;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecHeadline {
    font-weight: 600;
    bottom: 3rem;
  }
}
.catchSec .catchSecHeadline .el_text {
  color: #0390D7;
  font-size: 2.1rem;
  -webkit-box-shadow: 0 0 3px 6px rgba(0, 0, 0, 0.02);
          box-shadow: 0 0 3px 6px rgba(0, 0, 0, 0.02);
  padding: 0.5rem 1rem;
  background-color: #fff;
  margin-bottom: 2px;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecHeadline .el_text {
    -webkit-box-shadow: 0 0 3px 6px rgba(0, 0, 0, 0.04);
            box-shadow: 0 0 3px 6px rgba(0, 0, 0, 0.04);
    margin: 0.5rem 0;
    font-size: 3rem;
  }
}
.catchSec .catchSecHeadline2 {
  position: static;
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecHeadline2 {
    bottom: 3rem;
    position: absolute;
  }
}
.catchSec .catchSecHeadline2 .el_text {
  -webkit-box-shadow: 0 0 3px 4px rgba(0, 0, 0, 0.03);
          box-shadow: 0 0 3px 4px rgba(0, 0, 0, 0.03);
}
@media screen and (min-width: 768px) {
  .catchSec .catchSecHeadline2 .el_text {
    -webkit-box-shadow: 0 0 3px 6px rgba(0, 0, 0, 0.04);
            box-shadow: 0 0 3px 6px rgba(0, 0, 0, 0.04);
    margin: 0.5rem 0;
  }
}
.catchSec .list01 {
  border-radius: 20px;
  background-color: #f9f9f9;
}
.catchSec .text_last {
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .catchSec .text_last {
    margin-bottom: 70px;
  }
}

.list01 {
  padding: 25px;
}
@media screen and (min-width: 768px) {
  .list01 {
    padding: 40px;
  }
}
.list01 .mediumHeadline01 {
  text-align: center;
  border: none;
}
.list01 ul {
  padding: 0;
}
.list01 .textbox {
  max-width: 100%;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .list01 .textbox {
    max-width: 80%;
  }
}
@media screen and (min-width: 992px) {
  .list01 .textbox {
    max-width: 60%;
  }
}
.list01 .textbox .inner {
  padding-left: 10px;
  position: relative;
}
.list01 .textbox .inner::before {
  content: "";
  border-radius: 50%;
  width: 4px;
  height: 4px;
  position: absolute;
  top: 10px;
  bottom: auto;
  margin: auto;
  left: 0;
  background-color: #2b3f4c;
}
@media screen and (min-width: 768px) {
  .list01 .textbox .inner::before {
    top: 0;
    bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .allonlast {
    margin-bottom: 40px;
  }
}

.list01_c {
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .list01_c {
    margin-bottom: 40px;
  }
}

/*========================================
共通セクション
========================================*/
.commonSec {
  padding: 0 0 2rem;
}
@media screen and (min-width: 768px) {
  .commonSec {
    padding: 0 0 7rem;
  }
}
.commonSec.bgGray {
  background-color: #ECF1F5;
  padding-top: 5rem;
  margin-bottom: 4rem;
}
@media screen and (min-width: 768px) {
  .commonSec.bgGray {
    padding-top: 10rem;
    margin-bottom: 9rem;
  }
}
.commonSec.bgGray2 {
  background-color: #f9f9f9;
}
.commonSec.--pb {
  padding-bottom: 5rem;
}
@media screen and (min-width: 768px) {
  .commonSec.--pb {
    padding-bottom: 10rem;
  }
}
@media screen and (min-width: 768px) {
  .commonSec.--pb02 {
    padding-top: 9rem;
  }
}
.commonSec .list01 {
  background-color: #f9f9f9;
}

.commonSec2 {
  padding: 5rem 0 2rem;
  background-color: #f9f9f9;
}
@media screen and (min-width: 768px) {
  .commonSec2 {
    padding: 10rem 0 7rem;
  }
}

.commonSec3 {
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  .commonSec3 {
    margin-bottom: 100px;
  }
}
.commonSec3 .list01 {
  background-color: #f9f9f9;
}

.commonSec4 {
  padding: 5rem 0 2rem;
  margin: 0 0 5rem;
  background-color: #f9f9f9;
}
@media screen and (min-width: 768px) {
  .commonSec4 {
    padding: 10rem 0 7rem;
    margin: 0 0 10rem;
  }
}

/*========================================
悩みテーブル
========================================*/
.tableWorries {
  width: 100%;
  min-width: 90rem;
  border-collapse: collapse;
  background-color: #ECF1F5;
}
@media screen and (min-width: 768px) {
  .tableWorries .w-md-16 {
    width: 16.3333%;
  }
}
.tableWorries tbody tr th {
  border-bottom: 1px solid #4E7B95;
  padding: 2rem 1rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .tableWorries tbody tr th {
    white-space: nowrap;
    padding: 2rem 1rem;
  }
}
.tableWorries tbody tr td {
  background-color: #fff;
  border-bottom: 1px solid #4E7B95;
  padding: 2rem 1rem;
  text-align: center;
  vertical-align: text-top;
}
@media screen and (min-width: 768px) {
  .tableWorries tbody tr td {
    padding: 2rem 1rem;
  }
}
.tableWorries tbody tr td .text {
  text-align: left;
  margin-bottom: 0;
}
.tableWorries tbody tr td:nth-child(2) {
  border-right: 1px solid #ebf1f5;
}
.tableWorries tbody tr td.colspan {
  border-right: none;
}
.tableWorries tbody tr td.ptn_blue {
  background-color: #5DACDA;
  color: #fff;
}
.tableWorries tbody tr td.ptn_blue path {
  fill: #fff;
}
.tableWorries tbody tr td.ptn_blue .method_header .method_label > span {
  background-color: #fff;
  color: #5DACDA;
}
.tableWorries tbody tr td.ptn_blue .list02 li {
  color: #fff;
}
.tableWorries tbody tr td.ptn_blue .list02 li::before {
  color: #fff;
}
.tableWorries tbody tr .method_header {
  text-align: center;
}
.tableWorries tbody tr .method_header .method_label {
  text-align: center;
  display: block;
  margin: 0 0 1rem;
  position: relative;
}
.tableWorries tbody tr .method_header .method_label > span,
.tableWorries tbody tr .method_header .method_label .el_text {
  display: inline-block;
  border-radius: 3rem;
  background-color: #5DACDA;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 500;
  width: 100%;
  max-width: 18.5rem;
  line-height: 1.2;
  padding: 0.4rem 0.5rem;
}
.tableWorries tbody tr .method_header .method_label.--height2 > span,
.tableWorries tbody tr .method_header .method_label.--height2 .el_text {
  width: 100%;
  max-width: 20rem;
  min-height: 4.5rem;
  position: relative;
}
.tableWorries tbody tr .method_header .method_label.--height2 > span span,
.tableWorries tbody tr .method_header .method_label.--height2 .el_text span {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
}
.tableWorries tbody tr:last-child th,
.tableWorries tbody tr:last-child td {
  border-bottom: none;
}

.bluebg {
  background-color: #f3fcff;
  border-radius: 20px;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .bluebg {
    padding: 40px;
  }
}
@media screen and (min-width: 992px) {
  .bluebg {
    padding: 60px;
  }
}
.bluebg .mediumHeadline01 {
  color: #0390d7;
  text-align: center;
  line-height: 1.4;
  border: none;
  font-weight: 700;
  font-size: 20px;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .bluebg .mediumHeadline01 {
    font-size: 24px;
    margin-bottom: 30px;
  }
}
.bluebg .text {
  margin: 0;
}

/*========================================
料金表
========================================*/
.Plan__contents {
  background-color: #0390D7;
}
@media screen and (min-width: 768px) {
  .Plan__contents {
    padding: 100px;
    margin: 0 auto 100px;
    width: 1160px;
  }
}
.Plan__contents__block {
  margin: 0 0 5rem;
  padding: 1rem 1.5rem;
  border-radius: 20px;
  background-color: #ECF1F5;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 6rem;
  }
}
.Plan__contents__block > .head {
  text-align: center;
  padding: 1rem 0;
}
.Plan__contents__block > .head .ttl {
  font-size: 2.1rem;
  line-height: 1.2;
  font-weight: bold;
  color: #038FD6;
}
.Plan__contents__block__head {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head {
    max-width: 33rem;
    padding: 2rem 1rem 0 1px;
    margin-bottom: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (min-width: 1200px) {
  .Plan__contents__block__head {
    margin-right: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .Plan__contents__block__head__inner {
    max-width: 28rem;
    margin: 0 auto;
  }
}
.Plan__contents__block__head .head {
  text-align: center;
  border-bottom: 1px solid #4E7B95;
  padding-bottom: 1rem;
}
.Plan__contents__block__head .head .ttl {
  font-size: 5.3333333333vw;
  line-height: 1.2;
  font-weight: bold;
  color: #038FD6;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .head .ttl {
    font-size: 24px;
  }
}
@media screen and (min-width: 1200px) {
  .Plan__contents__block__head .head .ttl {
    font-size: 30px;
  }
}
.Plan__contents__block__head .head .ttl small {
  font-size: 4vw;
  font-weight: normal;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .head .ttl small {
    font-size: 16px;
  }
}
.Plan__contents__block__head .body .price {
  font-weight: bold;
  font-size: 8vw;
  text-align: center;
  line-height: 1;
  margin: 1rem 0 2rem;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .body .price {
    font-size: 34px;
  }
}
.Plan__contents__block__head .body .price small {
  font-size: 16px;
}
.Plan__contents__block__head .body .label {
  width: 100%;
  background-color: #fff;
  color: #2F94CF;
  text-align: center;
  color: #2B3F4C;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin: 0 auto 1rem;
  padding: 0.3rem 1rem;
  border-radius: 3rem;
}
.Plan__contents__block__head .body .label .owd {
  font-size: 140%;
  font-weight: bold;
  display: inline-block;
  margin: 0 0.5rem;
}
.Plan__contents__block__head .body .period {
  width: 100%;
  background-color: #5DACDA;
  color: #fff;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin: 0 auto 1rem;
  padding: 0.3rem 1rem;
  border-radius: 3rem;
}
.Plan__contents__block__head .body .txt {
  font-size: 1.3rem;
  text-align: center;
  margin: 0 auto 1rem;
}
.Plan__contents__block__head .body .txt small {
  display: block;
  font-size: 3.4666666667vw;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .body .txt small {
    line-height: 1.2;
    font-size: 13px;
    margin-bottom: 10px;
  }
}
.Plan__contents__block__head .body .num {
  text-align: center;
  margin-bottom: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .body .num {
    margin-bottom: 10px;
  }
}
.Plan__contents__block__head .body .num dt {
  position: relative;
  font-size: 4.5333333333vw;
  font-weight: bold;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .body .num dt {
    font-size: 17px;
    margin-bottom: 10px;
  }
}
.Plan__contents__block__head .body .num dt::after {
  position: absolute;
  bottom: -1.0666666667vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block;
  content: "";
  width: 42.6666666667vw;
  height: 1px;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .body .num dt::after {
    bottom: -4px;
    width: 180px;
  }
}
.Plan__contents__block__head .body .num dd {
  font-weight: bold;
}
.Plan__contents__block__head .txt {
  font-size: 1.3rem;
  text-align: center;
  margin: 0 auto 1rem;
}
.Plan__contents__block__head .txt small {
  display: block;
  font-size: 3.4666666667vw;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__head .txt small {
    line-height: 1.2;
    font-size: 13px;
    margin-bottom: 10px;
  }
}
.Plan__contents__block__body {
  width: 100%;
  margin: 0 auto 1.5rem;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body {
    background-color: #fff;
    margin: 0;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.Plan__contents__block__body .head {
  font-size: 1.4rem;
  font-weight: bold;
  background-color: #2F94CF;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .head {
    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;
    font-size: 1.8rem;
    height: 46px;
  }
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .head span {
    font-size: 140%;
  }
}
.Plan__contents__block__body .head span.owd {
  margin: 0 1.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .head span.owd {
    margin: -5px 10px 0;
    line-height: 1;
  }
}
.Plan__contents__block__body .body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #fff;
  padding: 1rem 0 1rem;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body {
    padding: 2.5rem 0 1rem;
  }
}
.Plan__contents__block__body .body .block {
  width: 100%;
  max-width: 50%;
}
.Plan__contents__block__body .body .block .subttl {
  width: 100%;
  max-width: calc(100% - 3rem);
  border: solid 1px #2F94CF;
  color: #2F94CF;
  text-align: center;
  font-weight: bold;
  margin: auto;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .subttl {
    margin-bottom: 10px;
  }
}
.Plan__contents__block__body .body .block .img {
  position: relative;
  margin: 0 auto 2.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .img {
    max-width: 24rem;
    margin-bottom: 16px;
  }
}
.Plan__contents__block__body .body .block .img img {
  display: inline-block;
  max-width: 9rem;
  margin-bottom: 10px;
}
.Plan__contents__block__body .body .block .img .name {
  display: inline;
  position: absolute;
  right: 0;
  bottom: 0;
  left: auto;
  font-weight: bold;
  font-size: 1.3rem;
  text-align: left;
  width: auto;
  max-width: none;
  white-space: nowrap;
}
@media screen and (max-width: 991px) {
  .Plan__contents__block__body .body .block .img .name {
    position: static;
    margin-top: -11px;
    text-align: right;
    display: block;
  }
}
.Plan__contents__block__body .body .block .price {
  text-align: center;
  font-size: 4vw;
  line-height: 1.2;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .price {
    font-size: 15px;
    margin-bottom: 10px;
  }
}
.Plan__contents__block__body .body .block .price .name {
  font-weight: bold;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .price .name {
    font-size: 1.5rem;
  }
}
.Plan__contents__block__body .body .block .price .owd {
  font-family: "Oswald", sans-serif;
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .price .owd {
    font-size: 3.2rem;
  }
}
.Plan__contents__block__body .body .block .price.adjust {
  margin-top: 6.9333333333vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .price.adjust {
    margin-top: 16px;
  }
}
.Plan__contents__block__body .body .block .price.adjust02 {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .price.adjust02 {
    margin-top: 34px;
  }
}
.Plan__contents__block__body .body .block .txt {
  font-size: 1.3rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .block .txt {
    padding: 0 1rem;
  }
}
.Plan__contents__block__body .body .logo {
  width: 100%;
  margin-top: 2.6666666667vw;
  padding-top: 1rem;
  border-top: 2px solid #ECF1F5;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .logo {
    margin-top: 10px;
  }
}
.Plan__contents__block__body .body .logo img {
  display: block;
  width: 35.4666666667vw;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .logo img {
    width: 146px;
  }
}
.Plan__contents__block__body .body .logo.adjust img {
  width: 56vw;
}
@media screen and (min-width: 768px) {
  .Plan__contents__block__body .body .logo.adjust img {
    width: 210px;
  }
}

.Plan__contents__other {
  margin: 0 0 5rem;
  border-radius: 20px;
  padding: 1rem;
  background-color: #f9f9f9;
}
@media screen and (min-width: 768px) {
  .Plan__contents__other {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 6rem;
  }
}
.Plan__contents__other .Plan__contents__other__inner {
  background-color: #fff;
  padding: 1.5rem 1.5rem 0;
}
@media screen and (min-width: 768px) {
  .Plan__contents__other .Plan__contents__other__inner {
    padding: 3rem 3rem 0;
  }
}

.Price {
  margin-bottom: 26.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Price {
    margin-bottom: 100px;
  }
}
.Price__block {
  background-color: #ECF1F5;
  padding: 3rem 1.5rem;
  margin: 0 auto;
  border-radius: 20px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .Price__block {
    padding: 3rem 5rem;
  }
}
.Price__block:not(:last-of-type) {
  position: relative;
  margin-bottom: 21.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Price__block:not(:last-of-type) {
    margin-bottom: 80px;
  }
}
.Price__block:not(:last-of-type)::after {
  position: absolute;
  bottom: -14.6666666667vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: block;
  content: "";
  width: 9.8666666667vw;
  height: 9.8666666667vw;
  background-image: url(./images/icon_plus.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
}
@media screen and (min-width: 768px) {
  .Price__block:not(:last-of-type)::after {
    bottom: -56px;
    width: 36px;
    height: 36px;
  }
}
.Price__block__wrap {
  margin: 0 auto 3rem;
}
.Price__block .Price__block__inner {
  max-width: 72rem;
  margin: 0 auto;
}
.Price__block__ttl {
  position: relative;
  z-index: 0;
  text-align: center;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .Price__block__ttl {
    margin-bottom: 10px;
  }
}
.Price__block__ttl:after {
  display: block;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #CCC;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -5;
}
.Price__block__ttl span {
  font-size: 4.8vw;
  font-weight: 600;
  background-color: #ECF1F5;
  padding: 0 4vw;
}
@media screen and (min-width: 768px) {
  .Price__block__ttl span {
    font-size: 18px;
    padding: 0 20px;
  }
}
.Price__block .price {
  font-size: 1.8rem;
  margin-bottom: 3rem;
  display: block;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .Price__block .price {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
}
.Price__block .price .owd {
  font-size: 150%;
  font-family: "Oswald", sans-serif;
}
.Price__block .txt {
  text-align: center;
  margin: 0;
}
.Price__block .txt.adjust {
  text-align: left;
}
.Price__block .box {
  padding: 5.3333333333vw;
  background-color: #fff;
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .Price__block .box {
    padding: 30px 40px;
    margin-top: 40px;
  }
}
.Price__block .box dt {
  font-size: 4.2666666667vw;
  font-weight: 600;
  margin-bottom: 2.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .Price__block .box dt {
    font-size: 16px;
    margin-bottom: 10px;
  }
}
.Price__table {
  border-radius: 1rem;
  padding: 2.5rem 1.5rem 1.5rem;
  margin: 0 auto 5rem;
  background-color: #ECF1F5;
}
@media screen and (min-width: 768px) {
  .Price__table {
    padding: 6rem;
  }
}
.Price__table.--bgnone {
  background: none;
  padding: 0;
}
.Price__table.--bgnone .Price__table__contents {
  background: none;
}
.Price__table.--bgnone .Price__table__contents__head {
  color: #2B3F4C;
  padding-left: 0;
}
.Price__table__ttl {
  background-color: #2F94CF;
  text-align: center;
  font-weight: 600;
  font-size: 4.5333333333vw;
  color: #fff;
  border-radius: 8vw;
  margin-bottom: 8vw;
  padding: 2.6666666667vw 0;
}
@media screen and (min-width: 768px) {
  .Price__table__ttl {
    width: 100%;
    max-width: 35rem;
    font-size: 18px;
    border-radius: 60px;
    padding: 10px;
    margin: 0 auto 30px;
  }
}
.Price__table__contents {
  margin: 0;
  background-color: #5DACDA;
}
@media screen and (min-width: 768px) {
  .Price__table__contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: solid 1px #ECF1F5;
  }
}
.Price__table__contents__head {
  font-size: 1.4rem;
  font-weight: 600;
  margin: 0;
  line-height: 1.4;
  color: #fff;
  padding: 1rem;
}
@media screen and (min-width: 768px) {
  .Price__table__contents__head {
    width: 100%;
    max-width: 35rem;
    font-size: 1.6rem;
    padding: 1rem 1.5rem;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
}
.Price__table__contents__body {
  background-color: #fff;
  padding: 1rem;
  margin: 0;
  border-bottom: solid 1px #ECF1F5;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .Price__table__contents__body {
    padding: 1.6rem;
    max-width: 100%;
    margin: 0;
    border: none;
  }
}
.Price__table__contents__body.adjust {
  padding: 0;
  margin: 0;
}
.Price__table__contents__body.adjust .Price__table__contents__child {
  padding: 1rem;
  margin: 0;
}
.Price__table__contents__child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  padding: 0;
  margin: 0;
}
.Price__table__contents__child.adjust {
  background-color: #f5f6f6;
}
.Price__table__contents__child__head {
  font-size: 1.4rem;
  font-weight: normal;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .Price__table__contents__child__head {
    font-size: 1.6rem;
  }
}
.Price__table__contents__child__body {
  font-size: 1.4rem;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .Price__table__contents__child__body {
    font-size: 1.6rem;
  }
}
.Price__table__contents__child__body .owd {
  font-size: 120%;
}
.Price__table__contents__child__body .owd.adjust {
  font-family: inherit;
  font-weight: 600;
}

/*========================================
流れ
========================================*/
.flowSec .flowSecItem {
  position: relative;
  padding: 4rem 0 4rem;
  margin: 0 0 3rem;
  background-color: #ecf1f5;
}
@media screen and (min-width: 768px) {
  .flowSec .flowSecItem {
    padding: 8rem 0 10rem;
    margin: 0 0 4rem;
  }
}
.flowSec .flowSecItem .flowSecArrow {
  display: inline-block;
  position: absolute;
  bottom: -48px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 4rem solid transparent;
  border-right: 4rem solid transparent;
  border-top: 2rem solid #fff;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .flowSec .flowSecItem .flowSecArrow {
    bottom: -78px;
    border-left: 8rem solid transparent;
    border-right: 8rem solid transparent;
    border-top: 4rem solid #fff;
  }
}
.flowSec .flowSecItem:last-child {
  margin: 0;
}

.aboutSec .aboutSecInner {
  overflow: hidden;
  background-color: #f3fcff;
  padding: 2.5rem 1.5rem 0;
  margin: 0 auto 3rem;
  border-radius: 20px;
}
@media screen and (min-width: 768px) {
  .aboutSec .aboutSecInner {
    padding: 6rem 6rem 3rem;
  }
}
.aboutSec .aboutSecInner .ttl {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  color: #0390d7;
  text-align: center;
  margin: 0 auto 3rem;
}
@media screen and (min-width: 768px) {
  .aboutSec .aboutSecInner .ttl {
    font-size: 2.1rem;
  }
}
@media screen and (min-width: 1200px) {
  .aboutSec .aboutSecInner .ttl {
    font-size: 2.4rem;
  }
}
.aboutSec .aboutSecInner .inner {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .aboutSec .aboutSecInner .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.aboutSec .aboutSecInner .inner .subttl {
  line-height: 1.4;
  border: 1px solid #2f94cf;
  padding: 0.2rem 1rem 0.5rem;
  font-size: 1.6rem;
  text-align: center;
  color: #2f94cf;
  font-weight: 700;
  margin-bottom: 15px;
}
.aboutSec .aboutSecInner .inner .illust .img {
  text-align: center;
  padding: 1.5rem 1.5rem 0;
  margin: 0 0 1.5rem;
  background-color: #fff;
  border-radius: 1rem;
}
.aboutSec .aboutSecInner .inner .illust .img img {
  display: inline-block;
  max-width: 75%;
}
@media screen and (min-width: 768px) {
  .aboutSec .aboutSecInner .inner .illust .img img {
    max-width: 75%;
  }
}
.d-block .list01 span {
  font-weight: 700;
}

/*======================================
よくあるご質問
======================================*/
.faqList {
  padding: 0;
  margin: 0;
}
.faqList .faqListItem {
  margin: 0 0 2rem;
  position: relative;
  background: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.05);
  border-radius: 1rem;
}

.faqListBtn {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  cursor: pointer;
}
.faqListBtn span {
  /*
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  display: inline-block;
  width: 100%;
  height: 3px;
  background-color: variable.$color-blue02;
  border-radius: 5px;
  &:last-child {
    display: inline-block;
    width: 3px;
    height: 100%;
  }
  */
}
.faqListBtn span:first-child {
  background-image: url(./images/icon_underarrow_blue.svg);
  background-repeat: no-repeat;
  background-size: 1.5rem auto;
  background-position: center center;
  display: inline-block;
  width: 2rem;
  height: 2rem;
}

.faqListQuestion {
  padding: 1.4rem 5rem 1.4rem 5rem;
  cursor: pointer;
  background-color: #fff;
  position: relative;
  border-radius: 1rem;
}
.faqListQuestion .faqListQuestionText {
  position: relative;
  padding: 0;
  margin: 0;
  font-size: 1.6rem;
  font-weight: bold;
  color: #2B3F4C;
}
.faqListQuestion .faqListQuestionText::before {
  font-family: "Noto Sans JP", sans-serif;
  content: "Q";
  position: absolute;
  top: 0rem;
  left: -4rem;
  display: inline-block;
  font-size: 2rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  border-radius: 100%;
  background-color: #0390D7;
  width: 3rem;
  height: 3rem;
  text-align: center;
  padding: 0.3rem 0 0;
}
.faqListQuestion .faqListQuestionText p {
  margin: 0;
}
.faqListQuestion.on {
  border-radius: 1rem 1rem 0 0;
}
.faqListQuestion.on .faqListBtn span:first-child {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.faqListQuestion.on .faqListBtn span:last-child {
  /*
  display: none;
  */
}
.faqListQuestion:hover {
  opacity: 0.7;
}

.faqListAnswer {
  display: none;
  padding: 2rem 2rem 2rem 5rem;
  border-radius: 0 0 1rem 1rem;
  background-color: #ECF1F5;
  position: relative;
}
@media screen and (min-width: 768px) {
  .faqListAnswer {
    padding: 1.4rem 1.4rem 1.4rem 5rem;
  }
}
.faqListAnswer::before {
  content: "A";
  position: absolute;
  top: 2rem;
  left: 1rem;
  display: inline-block;
  font-size: 2rem;
  color: #0390D7;
  font-weight: 500;
  line-height: 1;
  border-radius: 100%;
  background-color: #fff;
  border: 1px solid #0390D7;
  width: 3rem;
  height: 3rem;
  text-align: center;
  padding: 0.3rem 0 0;
}
@media screen and (min-width: 768px) {
  .faqListAnswer::before {
    top: 1.4rem;
  }
}
.faqListAnswer .faqListAnswerText {
  position: relative;
  padding: 0;
  margin: 0 0 1rem;
  font-size: 1.5rem;
  color: #2B3F4C;
}
.faqListAnswer .faqListAnswerText a {
  text-decoration: underline;
  color: #2B3F4C;
  font-weight: bold;
}
.faqListAnswer .faqListAnswerText a:hover {
  color: #0390D7;
}
.faqListAnswer .list02 span {
  font-weight: 700;
}

/*======================================
ドクター紹介
======================================*/
.doctorSec .doctorSecItem {
  margin: 0 0 7rem;
  padding: 0 0 5rem;
  border-bottom: 2px dashed #CCC;
}
.doctorSec .doctorSecItem:last-child {
  padding: 0;
  margin: 0 0 3rem;
  border: none;
}
.doctorSec .Contents__inner {
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.doctorSec .Contents__inner__photo {
  width: 100%;
  margin: 0 auto 8vw;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__inner__photo {
    max-width: 40rem;
    margin: 0 4rem 0 0;
  }
}
.doctorSec .Contents__inner__notes {
  width: 100%;
}
.doctorSec .Contents__inner__notes .pos {
  text-align: center;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__inner__notes .pos {
    text-align: left;
  }
}
.doctorSec .Contents__inner__notes .name {
  font-size: 5.6vw;
  font-weight: bold;
  text-align: center;
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__inner__notes .name {
    font-size: 30px;
    text-align: left;
    margin-bottom: 50px;
  }
}
.doctorSec .Contents__inner__notes .comment {
  background: none;
  padding: 0;
  margin: 0 0 3rem;
}
.doctorSec .Contents__inner__notes .comment h3 {
  font-weight: bold;
  font-size: 1.8rem;
  margin: 0 0 3rem;
  line-height: 1.4;
  color: #0390D7;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__inner__notes .comment h3 {
    font-size: 2.1rem;
  }
}
.doctorSec .Contents__inner__notes .comment p {
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__inner__notes .comment p {
    margin-bottom: 30px;
  }
}
.doctorSec .Contents__info {
  margin: 0 auto 3rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__info {
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.doctorSec .Contents__info dt {
  font-weight: bold;
  width: 100%;
  border-bottom: 1px solid #2B3F4C;
  padding: 0 0 0.5rem;
  margin: 0 0 1rem;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__info dt {
    max-width: 40rem;
    position: relative;
    text-align: left;
    border-bottom: none;
    border-right: 1px solid #2B3F4C;
    margin: 0 4rem 0 0;
  }
}
.doctorSec .Contents__info dd {
  width: 100%;
}
.doctorSec .Contents__info dd p {
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__info dd p {
    margin-bottom: 20px;
  }
}
.doctorSec .Contents__info dd ul {
  list-style-type: disc;
  padding-left: 5.3333333333vw;
  margin-bottom: 4vw;
}
@media screen and (min-width: 768px) {
  .doctorSec .Contents__info dd ul {
    padding-left: 20px;
    margin-bottom: 30px;
  }
}
.doctorSec .Contents__info dd ul li a {
  color: #2B3F4C;
  text-decoration: underline;
}
.doctorSec .clinic dd .lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 1rem);
  padding: 0;
  margin: 0 0 0 -0.5rem;
}
.doctorSec .clinic dd .lists li {
  list-style: none;
  width: calc(50% - 1rem);
  background-color: #0390D7;
  color: #ECF1F5;
  font-weight: 600;
  text-align: center;
  padding: 1rem 1rem;
  margin: 0 0.5rem 1rem;
  border-radius: 1rem;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media screen and (min-width: 1200px) {
  .doctorSec .clinic dd .lists li {
    width: calc(25% - 1rem);
  }
}

/*======================================
プライバシーポリシー
======================================*/
.Contents__notes .Contents__notes__head {
  font-weight: bold;
  font-size: 1.8rem;
  padding: 0 0 1rem;
  border-bottom: 1px solid #2B3F4C;
  margin: 0 0 1rem;
}
.Contents__notes .Contents__notes__body .text {
  margin: 0 0 3rem;
}

.tablePrivacy {
  text-align: center;
  background-color: #fff;
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 40px;
}
.tablePrivacy thead.hidden {
  height: 0;
  overflow: hidden;
  opacity: 0;
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w20,
  .tablePrivacy thead tr td.w20 {
    width: 20%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w25,
  .tablePrivacy thead tr td.w25 {
    width: 25%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w30,
  .tablePrivacy thead tr td.w30 {
    width: 30%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w40,
  .tablePrivacy thead tr td.w40 {
    width: 40%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w50,
  .tablePrivacy thead tr td.w50 {
    width: 50%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w60,
  .tablePrivacy thead tr td.w60 {
    width: 60%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w70,
  .tablePrivacy thead tr td.w70 {
    width: 70%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w80,
  .tablePrivacy thead tr td.w80 {
    width: 80%;
  }
}
@media screen and (min-width: 768px) {
  .tablePrivacy thead tr th.w90,
  .tablePrivacy thead tr td.w90 {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w20,
  .tablePrivacy thead tr td.sp_w20 {
    width: 20%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w25,
  .tablePrivacy thead tr td.sp_w25 {
    width: 25%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w30,
  .tablePrivacy thead tr td.sp_w30 {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w40,
  .tablePrivacy thead tr td.sp_w40 {
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w50,
  .tablePrivacy thead tr td.sp_w50 {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w60,
  .tablePrivacy thead tr td.sp_w60 {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w70,
  .tablePrivacy thead tr td.sp_w70 {
    width: 70%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w80,
  .tablePrivacy thead tr td.sp_w80 {
    width: 80%;
  }
}
@media screen and (max-width: 767px) {
  .tablePrivacy thead tr th.sp_w90,
  .tablePrivacy thead tr td.sp_w90 {
    width: 90%;
  }
}
.tablePrivacy tbody tr th {
  text-align: left;
  background-color: #f5f6f6;
  border-bottom: 1px solid #CCC;
  font-weight: bold;
  padding: 15px 10px 15px 0;
  text-align: center;
}
.tablePrivacy tbody tr td {
  text-align: left;
  border-bottom: 1px solid #CCC;
  padding: 15px 8px;
  letter-spacing: 1px;
}
@media screen and (min-width: 768px) {
  .tablePrivacy tbody tr td {
    padding: 15px 15px;
  }
}
.tablePrivacy tbody tr:last-child th,
.tablePrivacy tbody tr:last-child td {
  border-bottom: none;
}

/*======================================
求人情報
======================================*/
.recruitSec {
  padding: 0 0 5rem;
}
@media screen and (min-width: 768px) {
  .recruitSec {
    padding: 0 0 7rem;
  }
}
.recruitSec .foot_contact {
  border-radius: 1.5rem;
  padding: 4rem 0;
  max-width: 80rem;
  margin: 0 auto 3rem;
}
@media screen and (min-width: 768px) {
  .recruitSec .foot_contact .largeHeadline03 .main_text2 {
    font-size: 3rem !important;
  }
}
.recruitSec .foot_contact .largeHeadline03 .main_text2::before {
  margin: 0 auto 2rem;
}
.recruitSec .foot_contact .largeHeadline03 .sub_text {
  display: none;
}
.recruitSec .foot_contact .centertext a {
  text-decoration: underline;
  font-weight: bold;
  color: #fff;
}

/*====================================
お知らせ一覧
=====================================*/
.infoArticle {
  margin: 0 0 30px;
}
@media screen and (min-width: 992px) {
  .infoArticle {
    margin: 0;
  }
}
.infoArticle .infoArticleItem {
  background: #fff;
  padding: 0 0 1rem;
  margin: 0 0 2rem;
  border-bottom: 1px solid #CCC;
}
.infoArticle .infoArticleItem a,
.infoArticle .infoArticleItem .infoArticleItemText {
  display: block;
  padding: 0 0 1.5rem;
  color: inherit;
}
@media screen and (min-width: 768px) {
  .infoArticle .infoArticleItem a,
  .infoArticle .infoArticleItem .infoArticleItemText {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .infoArticle .infoArticleItem a:hover,
  .infoArticle .infoArticleItem .infoArticleItemText:hover {
    opacity: 0.7;
  }
}
.infoArticle .infoArticleItem a .el_date,
.infoArticle .infoArticleItem .infoArticleItemText .el_date {
  width: 100%;
  font-family: "Roboto", serif;
  font-size: 13px;
  font-weight: 600;
  display: block;
  color: #a5a5a5;
}
.infoArticle .infoArticleItem a .el_text,
.infoArticle .infoArticleItem .infoArticleItemText .el_text {
  width: 100%;
  font-size: 16px;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .infoArticle .infoArticleItem a .el_text,
  .infoArticle .infoArticleItem .infoArticleItemText .el_text {
    font-size: 18px;
  }
}
.infoArticle .infoArticleItem a span,
.infoArticle .infoArticleItem .infoArticleItemText span {
  display: block;
}
/*====================================
 ブログ一覧
=====================================*/
.blogArticle {
  margin: 0 0 30px;
}
@media screen and (min-width: 992px) {
  .blogArticle {
    margin: 0 0 0 -1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: calc(100% + 3rem);
  }
}
.blogArticle .blogArticleItem {
  margin: 0 0 3rem;
}
@media screen and (min-width: 992px) {
  .blogArticle .blogArticleItem {
    width: calc(50% - 3rem);
    margin: 0 1.5rem 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .blogArticle .blogArticleItem {
    width: calc(33.3333333333% - 3rem);
  }
}
.blogArticle .blogArticleItem a {
  display: block;
  color: inherit;
}
@media screen and (min-width: 768px) {
  .blogArticle .blogArticleItem a {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .blogArticle .blogArticleItem a:hover {
    opacity: 0.7;
  }
}
.blogArticle .blogArticleItem a .blog-thumbnail {
  margin: 0 0 1.5rem;
  text-align: center;
}
.blogArticle .blogArticleItem a .blog-thumbnail img {
  display: inline-block;
  width: 100%;
}
.blogArticle .blogArticleItem a .el_date {
  width: 100%;
  font-family: "Roboto", serif;
  font-size: 13px;
  font-weight: 600;
  display: block;
  color: #a5a5a5;
}
.blogArticle .blogArticleItem a .el_text {
  width: 100%;
  font-size: 16px;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .blogArticle .blogArticleItem a .el_text {
    font-size: 18px;
  }
}
.blogArticle .blogArticleItem a span {
  display: block;
}
/*====================================
記事一覧
=====================================*/
.post {
  padding: 0 0 2rem;
}
@media screen and (max-width: 600px) {
  .post {
    padding: 0;
  }
}
.post .postWrap {
  padding: 5rem 0 0;
}
@media screen and (min-width: 992px) {
  .post .postWrap {
    padding: 0;
  }
}
.post .postWrap .postItem {
  margin: 0 0 5rem;
}
.post .postWrap .postItem .postTitle {
  margin: 0 0 2rem;
  padding: 0 0 1rem;
  border-bottom: 1px solid #CCC;
}
.post .postWrap .postItem .postTitle .permalink {
  display: block;
  color: inherit;
}
@media screen and (min-width: 768px) {
  .post .postWrap .postItem .postTitle .permalink {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .post .postWrap .postItem .postTitle .permalink:hover {
    opacity: 0.7;
  }
}
.post .postWrap .postItem .postTitle .permalink .title {
  display: inline-block;
  font-size: 2.5rem;
  line-height: 1.4;
}

.postAuthor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin: 0 0 2rem;
}
.postAuthor .author-img {
  width: 100%;
  max-width: 10rem;
  margin: 0 3rem 0 0;
  overflow: hidden;
  border-radius: 100%;
}
.postAuthor .author-img img {
  display: inline-block;
  border-radius: 100%;
}
.postAuthor .author-tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.postAuthor .author-tag .author-tag-name {
  font-size: 1.7rem;
  font-weight: bold;
}
.postAuthor .author-tag .author-tag-time {
  width: auto;
  font-family: Roboto, serif;
  font-size: 13px;
  font-weight: 600;
  display: block;
  color: #a5a5a5;
  margin: 0 1rem 0 0;
}
.postAuthor .author-tag .postHead {
  padding: 0.5rem 0 0;
}
.postAuthor .author-tag .postHead .el_category {
  display: inline-block;
  margin: 0 1rem 1rem 0;
  padding: 0.3rem 1rem;
  font-size: 1.4rem;
  background-color: #dadedf;
  border-radius: 2rem;
}

/*====================================
カテゴリーから見る
=====================================*/
.blogHead {
  background-color: #f5f6f6;
  margin-top: -1.2rem;
  padding: 3rem 0 1rem;
}
@media screen and (min-width: 768px) {
  .blogHead {
    margin-bottom: 5rem;
    padding: 5rem 0 2rem;
  }
}
.blogHead .largeHeadline03_2 {
  margin: 0 0 3rem;
}
.blogHead .largeHeadline03_2 .main_text {
  font-family: "Crimson Text", serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0 auto;
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .blogHead .largeHeadline03_2 .main_text {
    font-size: 3.2rem;
  }
}
.blogHead .largeHeadline03_2 .main_text::before {
  display: none;
}
.blogHead .largeHeadline03_2 .sub_text {
  display: block;
  font-family: "Zen Old Mincho", serif, "Noto Sans JP", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.1rem;
}
@media screen and (min-width: 768px) {
  .blogHead .largeHeadline03_2 .sub_text {
    font-size: 1.4rem;
  }
}
.blogHead .blogCategory {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 1rem);
  padding: 0;
  margin: 0 0 3rem -0.5rem;
}
.blogHead .blogCategory .blogCategoryItem {
  width: 100%;
  max-width: calc(50% - 1rem);
  margin: 0 0.5rem 1rem;
  padding: 0;
  border: none;
  list-style: none;
}
@media screen and (min-width: 768px) {
  .blogHead .blogCategory .blogCategoryItem {
    max-width: calc(50% - 1rem);
    margin: 0 0.5rem 1rem;
  }
}
@media screen and (min-width: 1200px) {
  .blogHead .blogCategory .blogCategoryItem {
    max-width: calc(33.3333333333% - 1rem);
  }
}
.blogHead .blogCategory .blogCategoryItem .btnb {
  display: inline-block;
  width: 100%;
  max-width: 100%;
  color: #b6a7a7;
  text-align: center;
  border-radius: 3rem;
  padding: 0.6rem 0.3rem;
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  border: 1px solid;
  position: relative;
  background-color: #fff;
  border: 1px solid #b6a7a7;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .blogHead .blogCategory .blogCategoryItem .btnb {
    padding: 1.3rem 1rem;
  }
}
@media screen and (min-width: 1200px) {
  .blogHead .blogCategory .blogCategoryItem .btnb {
    font-size: 1.5rem;
  }
}
.blogHead .blogCategory .blogCategoryItem .btnb .text-small {
  font-size: 80%;
}
.blogHead .blogCategory .blogCategoryItem .btnb i,
.blogHead .blogCategory .blogCategoryItem .btnb img {
  position: absolute;
  top: 50%;
  right: 1rem;
  font-size: 1.2rem;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
}
.blogHead .blogCategory .blogCategoryItem .btnb:hover {
  color: #fff;
  background-color: #b6a7a7;
  opacity: 1;
}
.blogHead .blogCategory .blogCategoryItem.--long {
  max-width: calc(100% - 1rem);
}
@media screen and (min-width: 1200px) {
  .blogHead .blogCategory .blogCategoryItem.--long {
    max-width: calc(66.6666% - 1rem);
  }
}

/*==============================
Gutenberg
==============================*/
body .postContent {
  /*グループ*/
}
body .postContent .is-layout-flex {
  display: block;
}
@media screen and (min-width: 992px) {
  body .postContent .is-layout-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 50px 0 0;
  }
}
@media screen and (min-width: 992px) {
  body .postContent .wp-block-column > *:first-child {
    margin-top: 0;
  }
}
@media screen and (min-width: 992px) {
  body .postContent .wp-block-column > *:last-child {
    margin-bottom: 0;
  }
}
body .postContent .wp-block-column > *:last-child figure {
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  body .postContent .wp-block-column > *:last-child figure {
    margin-bottom: 0;
    float: none;
  }
}
@media screen and (max-width: 991px) {
  body .postContent .wp-block-image .alignright {
    text-align: center;
    margin: 30px auto;
  }
}
@media screen and (max-width: 991px) {
  body .postContent .wp-block-image .alignright figure {
    margin-bottom: 0;
    float: none;
  }
}

.postContent {
  padding: 0 0 30px;
  /*===============
    段落
    ===============*/
  /*===============
    太字タグ
    ===============*/
  /*===============
    iタグ
    ===============*/
  /*===============
    リンクタグ
    ===============*/
  /*===============
    リストタグ
    ===============*/
  /*===============
    番号付きリストタグ
    ===============*/
  /*===============
    引用タグ単語
    ===============*/
  /*===============
    引用タグ長文
    ===============*/
  /*===============
    見出しタグ
    ===============*/
  /*===============
    強調タグ
    ===============*/
  /*===============
    テーブルタグ
    ===============*/
  /*===============
    imgタグ
    ===============*/
}
.postContent .clearfix > *:first-child {
  margin-top: 0;
}
.postContent p.has-background {
  margin: 1rem 0;
}
.postContent strong {
  font-weight: bold;
}
.postContent b {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(75%, #ff8c8c));
  background: linear-gradient(transparent 75%, #ff8c8c 75%);
}
.postContent i {
  font-style: italic;
  font-weight: bold;
  background: #ffe8e8;
  color: #2B3F4C;
}
.postContent a:not(.wp-block-button__link) {
  display: inline;
  border-radius: 5px;
  color: #2F94CF;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.postContent a:not(.wp-block-button__link):hover {
  opacity: 0.7;
}
.postContent .wp-block-button__link {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  word-break: break-word;
  border-radius: 9999px;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-decoration: none;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  font-size: 1.125em;
  margin: 0 0 3rem;
}
.postContent ul a,
.postContent ol a,
.postContent table a,
.postContent h1 a,
.postContent h2 a,
.postContent h3 a,
.postContent h4 a,
.postContent h5 a,
.postContent h6 a {
  display: inline;
  margin: 0;
  padding: 0;
  background: none;
  text-decoration: underline;
}
.postContent ul a:hover,
.postContent ol a:hover,
.postContent table a:hover,
.postContent h1 a:hover,
.postContent h2 a:hover,
.postContent h3 a:hover,
.postContent h4 a:hover,
.postContent h5 a:hover,
.postContent h6 a:hover {
  text-decoration: none;
  opacity: 1;
}
.postContent ul {
  padding: 0;
  margin: 15px 0 30px;
}
.postContent ul li {
  list-style: none;
  padding: 0 0 0 15px;
  margin: 0 0 5px;
  position: relative;
}
.postContent ul li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background: #2F94CF;
  position: absolute;
  top: 50%;
  left: 0;
  bottom: auto;
  transform: translate(0%, -50%);
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
}
.postContent ol {
  padding: 0 0 0 18px;
  margin: 15px 0 30px;
}
.postContent ol li {
  padding: 0;
  margin: 0 0 5px;
  position: relative;
}
.postContent q {
  padding: 0px 15px;
  margin: 15px 0;
  position: relative;
  display: inline;
  border-radius: 5px;
}
.postContent q::before {
  content: "”";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 0;
  font-weight: bold;
  font-size: 2rem;
  color: #CCC;
}
.postContent q::after {
  content: "”";
  display: inline-block;
  position: absolute;
  bottom: -2px;
  right: 0;
  line-height: 0;
  font-weight: bold;
  font-size: 2rem;
  color: #CCC;
}
.postContent blockquote {
  padding: 15px 35px;
  margin: 15px 0;
  background: #CCC;
  position: relative;
  display: block;
  border-radius: 5px;
}
.postContent blockquote p {
  margin: 0;
}
.postContent blockquote::before {
  content: "”";
  display: inline-block;
  position: absolute;
  top: 9px;
  left: 15px;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  color: #CCC;
}
.postContent blockquote::after {
  content: "”";
  display: inline-block;
  position: absolute;
  bottom: 2px;
  right: 15px;
  line-height: 1;
  font-weight: bold;
  font-size: 2rem;
  color: #CCC;
}
.postContent h1 {
  margin: 15px 0;
  font-size: 2.5rem;
  padding: 1rem 1.5rem;
  color: #2F94CF;
  border-top: solid 2px #2F94CF;
  border-bottom: solid 2px #2F94CF;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .postContent h1 {
    font-size: 2.4rem;
    padding: 2.4rem 0;
  }
}
.postContent h2 {
  margin: 15px 0;
  font-weight: normal;
  padding: 5px 15px;
  letter-spacing: 2px;
  position: relative;
  background: #f5f6f6;
  display: block;
  font-size: 1.6rem;
  color: #2F94CF;
}
@media screen and (min-width: 768px) {
  .postContent h2 {
    font-size: 2rem;
  }
}
.postContent h2::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: calc(100% - 22px);
  background: #2F94CF;
  position: absolute;
  top: 11px;
  left: 0;
  z-index: 1;
}
.postContent h3 {
  margin: 3rem 0 0.5rem;
  font-size: 1.8rem;
  padding: 0 1.5rem;
  color: #2B3F4C;
  background: none;
  position: relative;
}
@media screen and (max-width: 767px) {
  .postContent h3 {
    font-size: 2rem;
  }
}
.postContent h3::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #2F94CF;
  border-radius: 5px;
}
.postContent h4 {
  display: inline-block;
  margin: 0 0 5px;
  font-size: 1.5rem;
  padding: 0rem 2rem;
  background: #2F94CF;
  color: #fff;
  position: relative;
}
.postContent h5 {
  margin: 15px 0;
  padding: 0 0 0.5rem;
  font-size: 1.7rem;
  border-bottom: 1px dashed #2B3F4C;
}
.postContent h5 + h6 {
  margin-top: 0;
}
.postContent h6 {
  margin: 15px 0;
  padding: 0 0 0.5rem;
  font-size: 1.4rem;
  display: inline-block;
  border-bottom: 1px solid #2B3F4C;
}
.postContent em {
  font-family: "Times New Roman", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "ＭＳ Ｐゴシック", serif;
  font-style: italic;
  font-size: 1.5rem;
  color: #2B3F4C;
}
.postContent p em {
  font-size: 1.5rem;
  color: #2B3F4C;
}
.postContent table {
  border-collapse: collapse;
  width: 100%;
  border: #2B3F4C;
}
@media screen and (max-width: 767px) {
  .postContent table:not(.horizontal) {
    display: block;
    border-top: none;
    border-left: none;
  }
  .postContent table:not(.horizontal) tbody {
    display: block;
  }
  .postContent table:not(.horizontal) tr {
    border-left: 1px solid #2B3F4C;
    display: block;
    width: 100%;
  }
  .postContent table:not(.horizontal) tr:first-child {
    border-top: 1px solid #2B3F4C;
  }
  .postContent table:not(.horizontal) th {
    width: 100%;
    display: block;
    text-align: left;
  }
  .postContent table:not(.horizontal) td {
    width: 100%;
    display: block;
    text-align: left;
  }
  .postContent table:not(.horizontal) caption {
    display: block;
  }
}
.postContent table th {
  border-right: 1px solid #2B3F4C;
  border-bottom: 1px solid #2B3F4C;
  background: #2B3F4C;
  color: #2B3F4C;
  padding: 10px;
  width: 33%;
  font-weight: bold;
}
.postContent table td {
  border-right: 1px solid #2B3F4C;
  border-bottom: 1px solid #2B3F4C;
  padding: 10px;
  text-align: left;
}
.postContent table caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
  width: 100%;
}
.postContent .has-text-align-center {
  text-align: center;
}
.postContent figure {
  text-align: center;
  margin: 30px 0;
}
.postContent figure img {
  display: inline-block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 500px;
}
.postContent figcaption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
  text-align: center;
}

/*投稿が何もなかった時の表示用*/
.null__block {
  width: 100%;
  text-align: center;
  padding: 40px 15px;
  background: #f5f6f6;
  border-radius: 5px;
  margin: 0 auto 30px;
}
.null__block p {
  margin: 0;
}

/*左寄せ*/
.alignleft {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .alignleft {
    float: left;
    margin-right: 20px;
    margin-bottom: 20px;
  }
}

/*右寄せ*/
.alignright {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .alignright {
    float: right;
    margin-left: 20px;
    margin-bottom: 20px;
  }
}

.left {
  text-align: left;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .xs_left {
    text-align: left;
  }
  .xs_center {
    text-align: center;
  }
  .xs_right {
    text-align: right;
  }
}
@media screen and (max-width: 991px) {
  .sm_left {
    text-align: left;
  }
  .sm_center {
    text-align: center;
  }
  .sm_right {
    text-align: right;
  }
}
@media screen and (max-width: 1199px) {
  .md_left {
    text-align: left;
  }
  .md_center {
    text-align: center;
  }
  .md_right {
    text-align: right;
  }
}
.xxxs_visible {
  display: block;
}
@media screen and (min-width: 421px) {
  .xxxs_visible {
    display: none;
  }
}

.xxxs_hidden {
  display: none;
}
@media screen and (min-width: 421px) {
  .xxxs_hidden {
    display: block;
  }
}

.xxs_visible {
  display: block;
}
@media screen and (min-width: 601px) {
  .xxs_visible {
    display: none;
  }
}

.xxs_hidden {
  display: none;
}
@media screen and (min-width: 601px) {
  .xxs_hidden {
    display: block;
  }
}

.xs_visible {
  display: block !important;
}
@media screen and (min-width: 768px) {
  .xs_visible {
    display: none !important;
  }
}

.xs_hidden {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .xs_hidden {
    display: block !important;
  }
}

.sm_visible {
  display: block;
}
@media screen and (min-width: 992px) {
  .sm_visible {
    display: none;
  }
}

.sm_hidden {
  display: none;
}
@media screen and (min-width: 992px) {
  .sm_hidden {
    display: block;
  }
}

.md_visible {
  display: block;
}
@media screen and (min-width: 1200px) {
  .md_visible {
    display: none;
  }
}

.md_hidden {
  display: none;
}
@media screen and (min-width: 1200px) {
  .md_hidden {
    display: block;
  }
}

.md2_visible {
  display: block;
}
@media screen and (min-width: 1400px) {
  .md2_visible {
    display: none;
  }
}

.md2_hidden {
  display: none;
}
@media screen and (min-width: 1400px) {
  .md2_hidden {
    display: block;
  }
}

.lg_visible {
  display: block;
}
@media screen and (min-width: 1921px) {
  .lg_visible {
    display: none;
  }
}

.lg_hidden {
  display: none;
}
@media screen and (min-width: 1921px) {
  .lg_hidden {
    display: block;
  }
}

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

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

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

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

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

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}
/*# sourceMappingURL=style.css.map */
.wpcf7-spinner {
  display: none !important;
}

.contact {
  padding: 100px 0;
}
.contact .container {
  max-width: 760px;
}
.contact input[type="text"] {
  width: 100%;
}
.contact input[type="email"] {
  width: 100%;
}
.contact input[type="submit"] {
  width: 260px;
  height: 54px;
  border-radius: 55px;
  font-size: 15px;
  background: #0390d7;
  color: #fff;
}
.wpcf7-list-item  {
  margin-left: 0 !important;
}
.Btn__wrap {
  text-align: center;
}

.wpcf7-list-item label {
  margin-left: 0;
}
.contact select {
  width: 100%;
}
.contact textarea {
  width: 100%;
  height: 200px;
  resize: none;
}
.contact .Mail__notes{
    margin-bottom: 80px;
}
.contact dd{
  margin-bottom: 20px;
}
.contact .Check p{
  text-align: center;
}
.contact .Check a{
  color: #0390d7;
}
.contact dt .label{
  border: 1px solid #0390d7;
  margin-left: 10px;
  font-size: 14px;
  color: #0390d7;
  padding: 3px 10px;
}

@media screen and (max-width: 767px) {
  .contact .Mail__notes{
      margin-bottom: 50px;
  }
  .contact {
    padding: 50px 0;
  }

}