@charset "UTF-8";
/*
Theme Name:OriginalStyle - 1/2 column
Version:1.4
*/

/*==========================
	投稿（ブログ、新着情報）
==========================*/

.entry-block {
    /* 一投稿を囲むブロック */
    padding-bottom: 1.5em;
    margin-bottom: 2em;
    border-bottom: 1px solid #ddd;
}

.entry-block .dateBlock {
    /* 日時 */
    color: #999;
    font-size: 13px;
    padding-bottom: 0.5em;
    padding-top: 0.5em;
}

/* ブログページのカテゴリーリスト --------------------*/

#aside .menu-blog {
    padding: 10px 10px 20px;
    box-sizing: border-box;
    margin-top: 1em;
    background: #f1f1f1;
}

#aside .menu-blog h3 {
    border-bottom: 1px solid #ddd;
    color: #121212;
    font-size: 18px;
    padding: 0.6em 0 0.7em;
    text-align: center;
    margin-bottom: 0.8em;
    letter-spacing: 0.12em;
}

#aside .menu-blog li {
    font-size: 11px;
}

#aside .menu-blog li a {
    position: relative;
    padding-left: 1em;
    font-size: 14px;
    color: #121212;
    text-decoration: none;
}

#aside .menu-blog li a:hover {
    color: #92c647;
    text-decoration: none;
}

#aside .menu-blog li a::after {
    position: absolute;
    content: "";
    top: 0.5em;
    left: 0.3em;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #92c647;
}

/*-- ページネーション ------------*/

.pager {
    font-size: 88%;
    /*14px*/
    margin-bottom: 3em;
}

.pager span.current,
.pager a {
    display: inline-block;
    margin-right: 5px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    background: #ddd;
    text-decoration: none;
    color: #121212;
    text-align: center;
}

.pager a:hover {
    background: #121212;
    color: #fff;
    opacity: .7;
}

.pager span.current {
    /* 今のページ */
    background: #121212;
    color: #fff;
}

/*==========================
	画像
==========================*/

img {
    height: auto;
    vertical-align: bottom;
    max-width: 100%;
}

.mainblock img {
    max-width: 100%;
}

/* 真ん中寄せ */
.aligncenter {
    display: block;
    margin: 0 auto;
}

/* 小さい画像に対応 */
.img_size img,
img.img_size {
    width: auto !important;
}

/*==========================
	見出し
==========================*/
.post-type-page h3,
.under h3,
.entry-block h3,
.mce-content-body h4,
.under h4,
.entry-block h4,
.mce-content-body h5,
.under h5,
.entry-block h5,
.post-type-page h6,
.under h6,
.title p {}

/*-- H3 --*/

.post-type-page h3,
.under h3 {
    font-size: 30px;
    position: relative;
    text-align: left;
    margin-bottom: 1em;
    margin-top: 1.8em;
    color: #8faadc;
    letter-spacing: 0.2em;
    background: #f1f4fa;
    border-radius: 50px;
    padding: 25px 25px 25px 80px;
    line-height: 1.2;
}

@media (max-width: 767px) {
  .post-type-page h3,.under h3 {
    padding: 15px 15px 15px 40px;
  }
}

.post-type-page h3::before,
.under h3::before,
.post-type-page h3::after,
.under h3::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.post-type-page h3::before,
.under h3::before {
    right: auto;
    left: 40px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #8faadc;
    top: 31px;
    bottom: auto;
}
@media (max-width: 767px) {
  .post-type-page h3::before,.under h3::before {
        width: 15px;
    height: 15px;
    left: 17px;
    top: 20px;
    bottom: auto;
  }
}

.post-type-page h3::after,
.under h3::after {}

.mainblock>h3:first-child,
.mainblock>div:first-child h3,
.mainblock>h3:first-of-type {
    margin-top: 0;
}

.post-type-page .h3_bg h3 {}

/*-- H4 投稿タイトル --*/

.entry-block h3,
.mce-content-body h4,
.under h4 {
    padding: 0.2em 0 0.6em;
    background-size: 1.4em;
    font-size: 24px;
    letter-spacing: 0.06em;
    position: relative;
    line-height: 1.4em;
    margin-bottom: 1.2em;
    margin-top: 1.8em;
    color: #8faadc;
    letter-spacing: 0.2em;
    /* border-radius: 50px; */
    padding: 20px 20px 20px 30px;
    border-bottom: solid 2px #8faadc;
}

@media (max-width: 767px) {
  .entry-block h3,.mce-content-body h4,.under h4 {
    padding: 10px 10px 10px 35px;
  }
}

.entry-block h3 .subtitle,
.mce-content-body h4 .subtitle,
.under h4 .subtitle {
    color: #999;
    font-size: 14px;
    padding-left: 0.6em;
}

.entry-block h3::before,
.mce-content-body h4::before,
.under h4::before,
.entry-block h3::after,
.mce-content-body h4::after,
.under h4::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.entry-block h3::before,
.mce-content-body h4::before,
.under h4::before {
    right: auto;
    left: 9px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #8faadc;
    top: 32px;
    bottom: auto;
}

@media (max-width: 767px) {
  .entry-block h3::before,.mce-content-body h4::before,.under h4::before {
    left: 15px;
    width: 10px;
    height: 10px;
    top: 18px;
    bottom: auto;
  }
}

.entry-block h3::after,
.mce-content-body h4::after,
.under h4::after {

}

.mce-content-body div.h3+h4,
div.h3+h4 {
    margin-top: 0;
}

.mce-content-body .top01 h4 {
    border: inherit;
    text-align: inherit;
}

/* 投稿タイトルのみ */
.entry-block h3 {
    font-size: 18px;
    margin-top: 0;
}

.entry-block h3 a {
    color: #121212;
    text-decoration: none;
}

.entry-block h3 a:hover {
    color: #92c647;
}

/*-- H5 ------------*/

.mce-content-body h5,
.under h5 {
    font-size: 22px;
    display: table;
    color: #fff;
    position: relative;
    line-height: 1.4em;
    margin-bottom: 1em;
    margin-top: 1.2em;
    color: #8faadc;
    letter-spacing: 0.2em;
    /* background: #f1f4fa; */
    border-radius: 50px;
    padding: 5px 20px;
    border: solid 2px #8faadc;
}

/*.mce-content-body h5::before,
.under h5::before {
	position:absolute;
	content:"";
	height:80%;
	top:10%;
	width:5px;
	border-radius:2px;
	background:#999;
	left:0;
}*/
.under h4+h5,
.under div.h4+h5 {
    margin-top: 0 !important;
}

/*-- H6 ------------*/

.post-type-page h6,
.under h6 {
    color: #8faadc;
    font-size: 20px;
    display: table;
    background: linear-gradient(transparent 60%, #f1f4fa 60%);
    padding: 0 10px;
}

/*-- 数字付きの見出し ------------*/
.number_title {
    background: transparent !important;
    border-radius: 0;
    margin-bottom: 0;
}

.number_title .step {
    font-size: 110%;
    font-style: italic;
    margin-right: 0.7em;
}

.number_title .number {
    color: #fff;
    background: #8faadc;
    display: inline-block;
    text-align: center;
    padding: 0.2em 0.5em;
    border-radius: 10px;
    margin-right: 0.7em;
}

.mce-content-body h4.number_title,
.under h4.number_title {
    padding: 0;
border:none;
}

.mce-content-body h4.number_title:before,
.under h4.number_title:before,
.mce-content-body h5.number_title:before,
.under h5.number_title:before {
    content: none;
}

/*-- title ------------*/

.title {
    font-size: 24px;
    font-weight: bold;
    color: #92c647;
}

.title p {
    font-size: 24px;
    font-weight: bold;
    text-decoration: underline;
    margin: 0 0 10px;
    color: #92c647;
}

/*==========================
	リスト
==========================*/

/*-- UL ------------*/

/* ul01 */
.ul01 {
    margin-bottom: 1em;
}

.ul01 li {
    position: relative;
    margin-bottom: 0.5em;
    padding-left: 1.5em;
    box-sizing: border-box;
}

.ul01 li::before {
    position: absolute;
    content: "";
    width: 0.5em;
    height: 0.5em;
    background: #92c647;
    border-radius: 50%;
    top: 0.7em;
    left: 0.35em;
}
.ul01.demerit li {
  padding-left: 2.2em;
}

.ul01.demerit li::before {
  content: "\e14c";
  font-size: 150%;
  font-weight: bold;
  top: -6px;
  background: none;
  color: #8897cd;
  font-family: 'Material Icons';
}
/* ul02 */
.ul02 {
  margin-bottom: 1em;
}

.ul02 li {
  position: relative;
  margin-bottom: 0.8em;
  padding-left: 1.7em;
  line-height: 1.8;
}

.ul02 li::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border: 3px solid #eb6d94;
  border-radius: 50%;
  top: 0.4em;
  left: 0.18em;
    box-sizing:unset;
}
/* ul_check チェックのリスト */

.ul_check,
.ul_arrow {
    margin-bottom: 1em;
}

.ul_check li {
    position: relative;
    margin-bottom: 0.5em;
    padding-left: 1.8em;
}

.ul_check li::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: auto;
    left: 0;
    margin: auto;
    width: 18px;
    height: 18px;
    background: url(img/check.png) no-repeat center center /cover;
}



/* ul_arrow 右向き三角のリスト */

.ul_arrow li {
    position: relative;
    margin-bottom: 0.5em;
    padding-left: 1.2em;
}

.ul_arrow li:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    top: 0.35em;
    left: 7px;
    margin: 0px 0 0 0;
    border: 6px solid transparent;
    border-top: 8px solid #92c647;
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.ul_arrow li a {
    text-decoration: none;
    color: #92c647;
}

.ul_arrow li a:hover {
    text-decoration: underline;
}

/* page-list */

.page-list {
    border-radius: 10px;
    padding: 3% 0;
}

.page-list li {
    position: relative;
    margin: 0.5em 0;
}


.page-list li a {
    text-decoration: none;
    color: #92c647;
    display: block;
    border: 1px solid #92c647;
    padding: 10px 30px 10px 20px;
    border-radius: 50px;
    position: relative;
    transition: .2s;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.page-list li a:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    left: auto;
    margin: auto;
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 6px solid #92c647;
    transition: .2s;
}

.page-list li a:hover {
    color: #fff;
    background: #92c647;
}

.page-list li a:hover:before {
    border-left: 6px solid #fff;
}

.page-list2 li {
    position: relative;
    margin: 0.5em 0;
}

.page-list2 li a {
    display: block;
    text-align: center;
    text-decoration: none;
    color: #92c647;
    border: 1px solid #92c647;
    background: #fff;
    border-radius: 6px;
    width: 100%;
    padding: 0.5em 1em;
    box-sizing: border-box;
    position: relative;
    transition: 200ms;
}

.page-list2 li a:after {
    content: '';
    position: absolute;
    top: 4px;
    right: 15px;
    bottom: 0;
    margin: auto;
    width: 6px;
    height: 6px;
    border-top: 1px solid #92c647;
    border-right: 1px solid #92c647;
    transform: rotate(45deg);
    transition: 200ms;
}

.page-list2 li a:hover {
    background: #92c647;
    color: #fff;
}

.page-list2 li a:hover:after {
    border-color: #fff;
    right: 10px;
}

@media screen and (min-width: 768px) {
    .page-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .page-list li {
        margin-right: 5%;
    }
}

@media screen and (max-width: 767px) {}

/*-- OL ------------*/

.ol01 {
    margin-bottom: 1.2em;
}

.ol01 li {
    position: relative;
    margin-bottom: 0.4em;
}

.ollist {
    margin-bottom: 1.2em;
}

.ollist li {
    margin-bottom: 0.5em;
    list-style-type: none;
    list-style-position: inside;
    counter-increment: ollist;
}

.ollist li:before {
    display: marker;
    content: "(" counter(ollist) ") ";
}

/* 数字のOLリスト */

.ol_decimal {
    margin-bottom: 1.2em;
}

.ol_decimal {
    counter-reset: li;
    list-style: none;
    padding-left: 0;
}

.ol_decimal>li {
    position: relative;
    margin-bottom: 0.5em;
    padding-left: 2.5em;
}

.ol_decimal>li:before {
    content: counter(li) "";
    counter-increment: li;
    position: absolute;
    left: 0;
    width: 1.8em;
    height: 1.8em;
    background: #eee;
    border-radius: 50px;
    color: #121212;
    line-height: 1.8;
    text-align: center;
}

/*-- 横並びリスト ------------*/

.float-list {
    overflow: hidden;
}

.float-list li {
    margin-bottom: 0.5em;
}

/*==========================
	テーブル
==========================*/

/*-- 診療時間表 ------------*/
.time-table {
    width: 100%;
    margin-bottom: 1.5em;
}

.time-table th,
.time-table td {
    border-bottom: 1px solid #ddd;
    font-weight: normal;
    padding: 12px 5px;
    text-align: center;
}

.time-table th {
    background: #ced8ea;
    color: #fff;
}

.time-table thead th {
    background: #ced8ea;
    color: #fff;
}
.time-table tbody th {
    background: transparent;
    color: #333;
}

.time-table td {}

/*-- 基本のテーブル ------------*/
.table01 {
    width: 100%;
    margin-bottom: 1.5em;
}

.table01 th,
.table01 td {
    padding: 15px 2px 10px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
}

.table01 th {
    border-top: 1px solid #8faadc;
    border-bottom: 1px solid #8faadc;
    padding-right: 10px;
    color: #8faadc;
}

/*-- ボーダーのついたテーブル ------------*/
.border-table {
    width: 100%;
    margin-bottom: 0.5em;
}

.border-table thead th {
    background: #8faadc;
    color: #fff;
    text-align: center;
}

.border-table th,
.border-table td {
    text-align: left;
    font-weight: normal;
    padding: 12px 8px;
    border: 1px solid #ddd;
}

.border-table tbody th {
    background: #f7faff;
    vertical-align: middle;
}

.border-table td {}

/*-- 料金表のテーブル(TDが右寄せ) ------------*/
.fee-table {
    width: 100%;
    margin-bottom: 0.5em;
}

.fee-table th,
.fee-table td {
    text-align: left;
    font-weight: normal;
    padding: 12px 8px;
    border: 1px solid #ddd;
}

.fee-table thead th {
    background: #ced8ea;
    color: #fff;
    text-align: center;
}
.fee-table.w50 tbody th{
width:50%;
}
.fee-table tbody th {
    background: #f7faff;
}

.fee-table tbody td {
    text-align: right;
vertical-align: middle;
}

/*-- インフォメーションテーブル（下線のみテーブル） ------------*/
.info-table {
    width: 100%;
    border-top: 1px solid #c3c3c3;
}

.info-table tr {
    border-bottom: 1px solid #c3c3c3;
}

.info-table th {
    width: 100px;
    text-align: left;
    font-weight: bold;
    padding: 0.7em 0;
}

.info-table td {
    padding: 0.7em 0;
}

/*==========================
	DL
==========================*/

/*--  ------------*/
dl.dl01 {
    margin-bottom: 0.5em;
}

dl.dl01 dt {
    margin-bottom: 0.5em;
    padding: 0.4em 0.6em;
    position: relative;
    display: inline-block;
    line-height: 1.4em;
    color: #fff;
    background: #121212;
}

dl.dl01 dd {
    margin-bottom: 1.2em;
}

/*-- 数字つきdl ------------*/
dl.dl_number dt {
    font-size: 117%;
    color: #121212;
    font-weight: normal;
    position: relative;
}

dl.dl_number dd {
    padding-left: 2em;
    margin-bottom: 1.2em;
}

.dl_number .number {
    display: inline-block;
    vertical-align: baseline;
    font-size: 15px;
    padding: 0.2em 0.6em 0.1em;
    margin-right: 0.5em;
    background: #92c647;
    color: #fff;
    border-radius: 3px;
    margin-bottom: 0.2em;
    line-height: 1.4;
}

/*==========================
	ボックス
==========================*/

/*-- 基本のブロック ------------*/
.block {
    margin-bottom: 2em;
}

/*-- クリアフィックスブロック ------------*/
.block-inner {
    margin-bottom: 2em;
    /*padding:0 10px;*/
}

.block>.block-inner:last-child {
    margin-bottom: 0;
}

/*-- ボーダー付きブロック ------------*/
.border-block {
    box-sizing: border-box;
    padding: 50px 50px 30px;
    margin-bottom: 1.2em;
    border-radius: 30px;
    box-shadow: 0 0 12px 0 rgba(0,0,0,.1);
    margin: 0 6px 1.2em;
}

@media ( max-width : 767px ) {
  .border-block {
    padding: 25px 25px 15px;
  }
}

.border-block h4 {
    margin-top: 0;
}

/*-- 背景色付き ------------*/
.bg-block {
    box-sizing: border-box;
    padding: 50px 50px 30px;
    background: #f1f4fa;
    margin-bottom: 1.2em;
    overflow: hidden;
    border-radius: 6px;
    border-radius: 30px;
}
@media ( max-width : 767px ) {
  .bg-block {
    padding: 25px 25px 15px;
  }
}

.bg-block h4 {
    margin-top: 0;
    background: #fff;
}

.border-block h5:first-child,
.bg-block h5:first-child {
    margin-top: 0 !important;
}

.border-block ul:last-child {
    margin-bottom: 0 !important;
}


/*-- before after ------------*/
.ba-block {
    background: url(img/arrow_r.svg) no-repeat center 50%;
    background-size: 3%;
    margin-bottom: 10px;
    font-size: 92%;
}

.ba-block .before {
    float: left;
    width: 47%;
    position: relative;
}

.ba-block .after {
    float: right;
    width: 47%;
}

.ba-block img {
    display: block;
    margin: 0 auto 10px;
}

.batitle {
    text-align: center;
    font-size: 15px;
    color: #999;
    margin-bottom: 0.5em !important;
}

/*-- 流れ ------------*/
.flow-block {
    padding: 5px 6% 25px;
    position: relative;
    box-shadow: 0 0 12px 0 rgba(0,0,0,.1);
    margin: 0 6px 3em;
    border-radius: 30px;
}
@media ( max-width : 767px ) {
    .flow-block {
        padding: 30px 30px 10px;
    }
    .flow-block h4 {
        margin: 0;
        margin-bottom: 10px;
    }
}

.block-inner .flow-block {
    padding: 0 0 1em;
}

.flow-block::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    bottom: 0;
    right: 50%;
    margin: 0 -30px -60px 0;
    border: 30px solid transparent;
    border-top: 15px solid #afcce6;
}

.block>.flow-block:last-child::after,
.flow-block:last-child::after {
    display: none;
}

/*-- Q&A ------------*/
.qa-block {
    padding-bottom: 1em;
    padding-top: 1em;
    border-bottom: 1px solid #b0b0b0;
    margin-bottom: 0;
}

.mce-content-body .qa-block h4,
.qa-block h4 {
    margin-bottom: 10px;
    padding: 0 40px 0 55px !important;
    border-bottom: none;
    padding-bottom: 0;
    font-size: 20px;
    color: #333;
    background: transparent;
    border-radius: 0;
    position: relative;
    margin-top:1em;
}
.qa-block h4:hover {
    cursor:pointer;
}
.mce-content-body .qa-block h4 span:after,
.qa-block h4 span:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: auto;
    left: 0;
    margin: auto;
    width: 40px;
    height: 40px;
    background: url(img/question.png) no-repeat center center /cover;
}

.qa-block .answer {
    position: relative;
    padding: 35px 55px;
    display: none;
}

.qa-block .answer p {
    margin: 0;

}

.qa-block .answer:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: auto;
    left: 0;
    margin: auto;
    width: 40px;
    height: 40px;
    background: url(img/answer.png) no-repeat center center /cover;
}

.mce-content-body .qa-block h4::before,
.qa-block h4::before {
    content: none;
}


.box_faq .question::before, .box_faq .question::after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    right: 25px;
    left: auto;
    margin: auto;
    background: #92c647;
    border-radius: 1px;
    width: 15px;
    height: 3px;
}

.box_faq .question::after {
    transform: rotate(90deg);
    transition: 0.3s;
}

.box_faq .question.open::after {
  transform: rotate(0);
}

/*==========================
	お問い合わせページ (Contact Form 7)
==========================*/
.wpcf7 dl {
    width: 100%;
    margin: 0 auto 20px;
    overflow: hidden;
    border-top: 1px solid #ddd;
}

.wpcf7 dl dt,
.wpcf7 dl dd {
    padding: 15px 5px;
}

.wpcf7 dl dt {
    clear: both;
    float: left;
}

.wpcf7 dl dd {
    padding-left: 14em;
    border-bottom: 1px solid #ddd;
}

.wpcf7 .mf {
    font-size: 80%;
    color: #cc0000;
    padding-left: 3px;
}

.wpcf7 .ex,
.wpcf7 .subtxt {
    font-size: 13px;
    color: #666;
    line-height: 1.4em;
    display: inline-block;
}

.wpcf7 dl dt .requisite,
.wpcf7 dl .attention {
    font-size: 12px;
    color: #cc0000;
}

.wpcf7 .wpcf7-not-valid-tip {
    font-size: 12px;
    color: #cc0000;
}

.wpcf7 dl dd input[type="text"],
.wpcf7 dl dd input[type="email"],
.wpcf7 dl dd input[type="tel"],
.wpcf7 dl dd input[type="url"] {
    max-width: 90%;
    width: 500px;
}

.wpcf7 dl dd .radio input,
.wpcf7 dl dd .heckbox input {
    width: auto;
}

.wpcf7 dl dd .radio01 span.wpcf7-list-item,
.wpcf7 dl dd .sexes span.wpcf7-list-item,
.wpcf7 dl dd .correspondence span.wpcf7-list-item,
.wpcf7 dl dd .course span.wpcf7-list-item,
.wpcf7 dl dd .health-insurance span.wpcf7-list-item {
    display: block;
}

.mainblock .wpcf7 dl dd p {
    margin-bottom: 0;
}

.wpcf7 dl dd textarea {
    max-width: 90%;
    width: 500px;
}

.wpcf7 dl dd .wpcf7-list-item {
    margin-right: 10px;
}

.wpcf7 .btn-style {
    text-align: center;
}

.wpcf7 .btn-style input {
    width: 120px;
    font-size: 16px;
    padding: 0.4em;
}

.btn-style input:hover {
    cursor: pointer;
    opacity: 0.6;
    -moz-opacity: 0.6;
    filter: alpha(opacity=60);
}

/*==========================
	サイトマップ
==========================*/
.menu_sitemap {
    padding: 0;
}

.menu_sitemap li {
    padding: 0.8em 0.2em 0.7em 1.1em;
    position: relative;
    border-bottom: 2px dotted #ddd;
    vertical-align: top;
}

.menu_sitemap li::after {
    display: block;
    content: "";
    position: absolute;
    width: 0.3em;
    height: 0.3em;
    top: 1.4em;
    left: 0.1em;
    border-top: solid 2px #ddd;
    border-right: solid 2px #ddd;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.menu_sitemap li ul li {
    border-bottom: none;
    padding-bottom: 0;
}

.menu_sitemap li a {
    text-decoration: none;
    color: #121212;
}

.menu_sitemap li a:hover {
    color: #92c647;
}

/*==========================
	画像のギャラリー
==========================*/
.gallery li {
    margin-bottom: 20px;
}

.gallery li img {
    margin-bottom: 5px;
}

/*==========================
	googlemap
==========================*/
.googlemap {
    position: relative;
    padding-bottom: 40%;
    /*縦横比*/
    height: 0;
    overflow: hidden;
}

.googlemap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/*==========================
	Youtube
==========================*/
.youtube-wrap {
    width: 600px;
    max-width: 100%;
    margin: 0 auto 20px;
}

.youtube {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/*==========================
	汎用
==========================*/

strong,
.strong {
    font-weight: bold;
}

.color01 {
    color: #8faadc;
}

.color02 {
    color: #92c647;
}

.attention {
    color: #cc0000;
}

.bgcolor01 {
    background-color: #f1f4fa;
    padding: 0 0.3em;
}

.font-big {
    font-size: 120%;
}

.font-small {
    font-size: 82%;
}

.fl {
    float: left !important;
}

.fr {
    float: right !important;
}

.tac {
    text-align: center;
}

.tal {
    text-align: left
}

.tar {
    text-align: right;
}

.mt10 {
    margin-top: 10px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mt60 {
    margin-top: 60px !important;
}

.mt70 {
    margin-top: 70px !important;
}

.mt80 {
    margin-top: 80px !important;
}

.mt90 {
    margin-top: 90px !important;
}

.mt100 {
    margin-top: 100px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.mb80 {
    margin-bottom: 80px !important;
}

.mb90 {
    margin-bottom: 90px !important;
}

.mb100 {
    margin-bottom: 100px !important;
}

/********************************
	Responsive
*********************************/

@media screen and (min-width: 768px) {
    /* タブレットまで */
    /*==========================
	画像
==========================*/
    /* img float */

    #tinymce img.alignright,
    #tinymce img.alignleft,
    .mainblock img.alignright,
    .mainblock img.alignleft {
        max-width: 34%;
    }

    .mainblock .alignright {
        float: right;
        margin: 0 0 10px 2%;
    }

    .mainblock .alignleft {
        float: left;
        margin: 0 2% 10px 0;
    }

    /*==========================
	リスト
==========================*/

    .float-list {
        overflow: hidden;
        display: flex;
flex-wrap: wrap;
justify-content: space-between;
    }

    .float-list li {
        /* float: left; */
        box-sizing: border-box;
        margin: 0 1.2em 0.5em 0;
        width:49%;
    }

    .float-list2 li {
        /* display: inline-block; */
        /* width: 50%; */
        margin: 0 0 0.5em 0;
    }

    .float-list2 li:nth-shild(2n) {
        padding-right: 0;
        padding-left: 0.8em;
    }

    .float-list3 li {
        display: inline-block;
        width: 33.3%;
        margin: 0 0 1.8em;
        padding-right: 1.8em;
    }

    .float-list3 li:nth-shild(3n) {
        padding-right: 0;
        padding-left: 0.8em;
    }

    .float-list3 li.no-float {
        float: none;
        margin: 0 0 0.5em;
        width: auto;
    }

    /*==========================
	ブロック
==========================*/

    /*-- 横ならびbox -----------*/

    .box2 {
        /* 横並び　X2 */
        display: inline-block;
        margin: 0 0.5%;
        width: 48%;
        box-sizing: border-box;
        vertical-align: top;
    }

    .box3 {
        /* 横並び　X3 */
        display: inline-block;
        margin: 0 0.5%;
        width: 31%;
        box-sizing: border-box;
        vertical-align: top;
    }

    .box4 {
        /* 横並び　X4 */
        float: left;
        margin: 0 1%;
        width: 23%;
        box-sizing: border-box;
        vertical-align: top;
    }

    .box5 {
        /* 横並び　X5 */
        float: left;
        margin: 0 1%;
        width: 18%;
        box-sizing: border-box;
        vertical-align: top;
    }

    /*==========================
	汎用
==========================*/

    #a01,
    #a02,
    #a03,
    #a04,
    #a05,
    #a06,
    #a07,
    #a08,
    #a09,
    #a10,
    #a11,
    #a12,
    #a13,
    #a14,
    #a15,
    #a16,
    #a17,
    #a18,
    #a19,
    #a20 {
    }

    br.pc {
        display: inline;
    }

    br.sp2 {
        display: none;
    }

    .con_l {
        float: left;
    }

    .con_c {
        float: left;
    }

    .con_r {
        float: right;
    }

    .w25 {
        width: 25%;
    }

    .w35 {
        width: 35%;
    }

    .w40 {
        width: 40%;
    }

    .w48 {
        width: 48%;
    }

    .w56 {
        width: 56%;
    }

    .w60 {
        width: 60%;
    }

    .w62 {
        width: 62%;
    }

    .mw500p {
        max-width: 500px !important;
    }

}

@media screen and (min-width: 768px) and (max-width: 768px) {

    /*sitemap*/
    #menu-sitemap li::after {
        top: 1.55em;
    }
}

@media screen and (max-width: 767px) {
    /* スマホ */

    /*==========================
	投稿（ブログ、新着情報）
==========================*/
    #aside .menu-blog {
        margin-bottom: 2em;
    }

    /*==========================
	画像
==========================*/
    .alignright,
    .alignleft {
        float: none;
        margin: 0 auto 20px;
        display: block;
    }

    /*==========================
	見出し
==========================*/
    .page-title {
        padding: 1.5em 0.5em;
    }

    .page-title h2 {
        font-size: 20px;
    }

    .post-type-page h3,
    .mainblock h3 {
        font-size: 20px;
    }

    .entry-block h3 {
        font-size: 16px;
    }

    .post-type-page h4,
    .mainblock h4 {
        font-size: 18px;
    }

    .post-type-page h5,
    .mainblock h5 {
        font-size: 16px;
    }
.post-type-page h6,
.under h6 {
        font-size: 16px;

}


    h3.number_title .number {
        font-size: 140%;
        margin-right: 0;
    }

    .catch_title {
        line-height: 1.4em;
        font-size: 18px;
        letter-spacing: 0.05em;
    }

    .title {
        font-size: 19px;
    }

    /*==========================
	ブロック
==========================*/

    /* 横ならびbox */
    .box2,
    .box3,
    .box4 {
        margin-bottom: 20px;
    }

    /*-- before after ------------*/
    .ba-block {
        background: none;
        margin-bottom: 10px;
        font-size: 92%;
    }

    .ba-block .before,
    .ba-block .after {
        float: none;
        width: 100%;
    }

    .ba-block .before {
        padding-bottom: 40px;
        background: url(img/arrow_b.svg) no-repeat center bottom;
        background-size: 50px auto;
        margin-bottom: 20px;
    }

    /*==========================
	お問い合わせ
==========================*/
    .wpcf7 dl dt {
        float: none;
        margin-bottom: 0em;
        padding-bottom: 2px;
    }

    .wpcf7 dl dd {
        padding-left: 5px;
        padding-top: 5px;
    }

    .wpcf7 dl dd input,
    .wpcf7 dl dd textarea {
        padding: 5px 2px;
        border: 1px solid #ccc;
        box-shadow: none;
        -webkit-appearance: none;
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }

    /*==========================
	サイトマップ
==========================*/
    #menu-sitemap li::after {
        top: 1.5em;
    }

    /*==========================
	googlemap
==========================*/
    .googlemap {
        padding-bottom: 60%;
        /*縦横比*/
    }

    /*==========================
	汎用
==========================*/

    .con_l {
        margin-bottom: 1em;
    }

}

@media screen and (max-width: 480px) {

    .post-type-page h3,
    .mainblock h3 {
        background-size: 60px;
    }

    /* 時間表 --------------------*/
    .time-table th,
    .time-table td {
        font-size: 75%;
        padding: 5px 2px;
    }

    /* googlemap --------------------*/
    .googlemap {
        padding-bottom: 60%
    }

}

@media screen and (max-width: 320px) {}

/* scrollhint */
.js-scrollable,
.js-scrollable_pc {
    margin-top: 2.4rem;
}

.js-scrollable table:first-child,
.js-scrollable_pc table:first-child {
    margin-top: 0;
}

@media only screen and (max-width: 767px) {
    .js-scrollable table {
        width: auto;
        min-width: 135%;
    }
}

.js-scrollable_pc table {
    width: auto;
    min-width: 135%;
}

@media only screen and (max-width: 767px) {
    .js-scrollable_pc table {
        min-width: 170%;
    }
}

/*20220729*/

/*共通*/
@media (min-width: 768px) {
    .d-flex {
        display: flex;
    }

    .align-items-center {
        align-items: center;
    }
}

.fs12 {
    font-size: 12px;
}

@media (max-width: 767px) {
    .sp-fs12 {
        font-size: 12px !important;
    }
}

.fs13 {
    font-size: 13px;
}

@media (max-width: 767px) {
    .sp-fs13 {
        font-size: 13px !important;
    }
}

.fs14 {
    font-size: 14px;
}

@media (max-width: 767px) {
    .sp-fs14 {
        font-size: 14px !important;
    }
}

.fs15 {
    font-size: 15px;
}

@media (max-width: 767px) {
    .sp-fs15 {
        font-size: 15px !important;
    }
}

.fs16 {
    font-size: 16px;
}

@media (max-width: 767px) {
    .sp-fs16 {
        font-size: 16px !important;
    }
}

.fs17 {
    font-size: 17px;
}

@media (max-width: 767px) {
    .sp-fs17 {
        font-size: 17px !important;
    }
}

.fs18 {
    font-size: 18px;
}

@media (max-width: 767px) {
    .sp-fs18 {
        font-size: 18px !important;
    }
}

.fs19 {
    font-size: 19px;
}

@media (max-width: 767px) {
    .sp-fs19 {
        font-size: 19px !important;
    }
}

.fs20 {
    font-size: 20px;
}

@media (max-width: 767px) {
    .sp-fs20 {
        font-size: 20px !important;
    }
}

.fs21 {
    font-size: 21px;
}

@media (max-width: 767px) {
    .sp-fs21 {
        font-size: 21px !important;
    }
}

.fs22 {
    font-size: 22px;
}

@media (max-width: 767px) {
    .sp-fs22 {
        font-size: 22px !important;
    }
}

.fs23 {
    font-size: 23px;
}

@media (max-width: 767px) {
    .sp-fs23 {
        font-size: 23px !important;
    }
}

.fs24 {
    font-size: 24px;
}

@media (max-width: 767px) {
    .sp-fs24 {
        font-size: 24px !important;
    }
}

.fs25 {
    font-size: 25px;
}

@media (max-width: 767px) {
    .sp-fs25 {
        font-size: 25px !important;
    }
}

.fs26 {
    font-size: 26px;
}

@media (max-width: 767px) {
    .sp-fs26 {
        font-size: 26px !important;
    }
}

.fs27 {
    font-size: 27px;
}

@media (max-width: 767px) {
    .sp-fs27 {
        font-size: 27px !important;
    }
}

.fs28 {
    font-size: 28px;
}

@media (max-width: 767px) {
    .sp-fs28 {
        font-size: 28px !important;
    }
}

.fs29 {
    font-size: 29px;
}

@media (max-width: 767px) {
    .sp-fs29 {
        font-size: 29px !important;
    }
}

.fs30 {
    font-size: 30px;
}

@media (max-width: 767px) {
    .sp-fs30 {
        font-size: 30px !important;
    }
}

.fs31 {
    font-size: 31px;
}

@media (max-width: 767px) {
    .sp-fs31 {
        font-size: 31px !important;
    }
}

.fs32 {
    font-size: 32px;
}

@media (max-width: 767px) {
    .sp-fs32 {
        font-size: 32px !important;
    }
}

.fs33 {
    font-size: 33px;
}

@media (max-width: 767px) {
    .sp-fs33 {
        font-size: 33px !important;
    }
}

.fs34 {
    font-size: 34px;
}

@media (max-width: 767px) {
    .sp-fs34 {
        font-size: 34px !important;
    }
}

.fs35 {
    font-size: 35px;
}

@media (max-width: 767px) {
    .sp-fs35 {
        font-size: 35px !important;
    }
}

.fs36 {
    font-size: 36px;
}

@media (max-width: 767px) {
    .sp-fs36 {
        font-size: 36px !important;
    }
}

.fs37 {
    font-size: 37px;
}

@media (max-width: 767px) {
    .sp-fs37 {
        font-size: 37px !important;
    }
}

.fs38 {
    font-size: 38px;
}

@media (max-width: 767px) {
    .sp-fs38 {
        font-size: 38px !important;
    }
}

.fs39 {
    font-size: 39px;
}

@media (max-width: 767px) {
    .sp-fs39 {
        font-size: 39px !important;
    }
}

.fs40 {
    font-size: 40px;
}

@media (max-width: 767px) {
    .sp-fs40 {
        font-size: 40px !important;
    }
}

.mt-1 {
    margin-top: 1em;
}

.mt-2 {
    margin-top: 2em;
}

.mt-3 {
    margin-top: 3em;
}

.mt-4 {
    margin-top: 4em;
}

.mt-5 {
    margin-top: 5em;
}

.text_white {
    color: #fff;
}

.text-center {
    text-align: center;
}

@media (min-width: 768px) {
    .pc-text-center {
        text-align: center;
    }
}

@media (max-width: 767px) {
    .sp-text-center {
        text-align: center;
    }
}

.text-left {
    text-align: left;
}

@media (min-width: 768px) {
    .pc-text-left {
        text-align: left;
    }
}

@media (min-width: 1181px) {
    .tablet-only {
        display: none;
    }
}

@media (max-width: 767px) {
    .tablet-only {
        display: none;
    }
}

@media (min-width: 768px) {
    .box_col2 {
        display: flex;
        justify-content: space-between;
        gap: 0 1%;
    }

    .box_col2 .col {
        width: 49%;
    }
}

@media (min-width: 768px) {
    .menu-header-nav_item > a {
        position: relative;
    }

    .menu-header-nav_item > a:before {
        content: "";
        position: absolute;
        top: 8px;
        bottom: auto;
        right: 0;
        left: 0;
        margin: auto;
        width: 29px;
        height: 27px;
        background: url(img/nav_icon001.png) no-repeat center center/cover;
        pointer-events: none;
    }

    .menu-header-nav_item.nav02 > a:before {
        background: url(img/nav_icon002.png) no-repeat center center/cover;
    }

    .menu-header-nav_item.nav03 > a:before {
        background: url(img/nav_icon003.png) no-repeat center center/cover;
    }

    .menu-header-nav_item.nav04 > a:before {
        background: url(img/nav_icon004.png) no-repeat center center/cover;
    }

    .menu-header-nav_item.nav05 > a:before {
        background: url(img/nav_icon005.png) no-repeat center center/cover;
    }

    .menu-header-nav_item.nav06 > a:before {
        background: url(img/nav_icon006.png) no-repeat center center/cover;
    }
}

.table-schedule {
    width: 100%;
    margin-bottom: 5px;
}

.table-schedule th,
.table-schedule td {
    text-align: center;
    padding: 5px;
    line-height: 2;
    border-bottom: 1px solid #ccc;
}

.table-schedule th:first-child {
    width: 30%;
    min-width: 100px;
}

.bg_white {
    background: #fff;
    padding: 6%;
    border-radius: 30px;
}

.copy_right {
    text-align: center;
    width: 100%;
    padding-top: 6em;
}

@media (max-width: 767px) {
    .copy_right {
        padding-top: 3em;
    }
}

/*******************top************************/
.home h2 {
    font-size: 68px;
    font-weight: 500;
    letter-spacing: 0.15em;
}

@media (max-width: 767px) {
    .home h2 span {
        font-size: 50px !important;
    }
}

.home h3 {
    color: #333;
    font-size: 16px;
    letter-spacing: 0.1em;
    margin-bottom: 10px;
}

.home h3 span {
    font-size: 30px;
    color: #8faadc;
    margin-right: 15px;
}

.sec_info h2 {
    text-align: center;
    margin-bottom: 40px;
}

.sec_info h3 {
    font-weight: bold;
}

.sec_info h3+p {
    margin-bottom: 0;
}

.sec_info .tel {
    margin-bottom: 10px;
}

.sec_info .tel a {
    font-size: 36px;
    color: #8faadc;
    font-weight: bold;
    position: relative;
    padding-left: 35px;
}

@media (min-width: 768px) {
    .sec_info .tel a {
        pointer-events: none;
    }
}

.sec_info .tel a:after {
    content: "";
    position: absolute;
    top: 18px;
    bottom: 0;
    right: auto;
    left: 0;
    width: 25px;
    height: 25px;
    background: url(img/tel01.png) no-repeat center center/cover;
}

@media (max-width: 1050px) {
    .sec_info .box_col2 {
        display: block;
        gap: 0;
    }

    .sec_info .box_col2 .col {
        width: 100%;
    }
}

.sec_news {
    padding: 160px 0 100px;
    background: url(img/bg_img001.jpg) no-repeat top center/cover;
}

@media (max-width: 767px) {
    .sec_news {
        padding: 80px 0 60px;
    }
    .sec_info h2 {
         margin-bottom: 15px;
    }
}

.sec_news .tit_news {
    margin: 60px 0 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (max-width: 767px) {
    .sec_news .tit_news {
        display: block;
    }
}

.sec_news .tit_news h3 span {
    margin-right: 0;
    font-weight: 900;
    letter-spacing: 0.1em;
}

.sec_news .tit_news h3 span.c01 {
    color: #5866ae;
}

.sec_news .tit_news h3 span.c02 {
    color: #f3b337;
}

.sec_news .tit_news h3 span.c03 {
    color: #92c647;
}

.sec_news .tit_news h3 span:last-child {
    margin-right: 15px;
}

@media (max-width: 767px) {
    .sec_news .tit_news .btn-style {
        text-align: right;
    }
}

.sec_news .tit_news .btn-style a {
    max-width: 140px;
    font-size: 14px;
    padding: 0.6em 0;
}

.sec_news .tit_news .btn-style a:after {
    right: 15px;
    width: 8px;
    height: 3px;
}

.sec_news .bg_white dl dt,
.sec_news .bg_white dl dd {
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.sec_news .bg_white dl dt:last-child,
.sec_news .bg_white dl dd:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}

.sec_news .bg_white dl dt {
    float: left;
    clear: left;
}

.sec_news .bg_white dl dd {
    padding-left: 100px;
    border-bottom: 1px solid #ccc;
}

.sec_news .bg_white dl dd a {
    color: #333;
}

.sec_news .bg_white dl dd a:hover {
    color: #92c647;
}

.sec_news .bg_white dl dd:last-child {
    border: 0;
}

.sec_message {
    padding: 160px 0 100px;
    background: url(img/bg_img002.jpg) no-repeat top center/cover;
}

.sec_message figure {
  text-align: center;
  margin-bottom: 20px;
}

.sec_message .btn-style {
  margin-bottom: 60px;
}

@media screen and  ( min-width : 768px ) {
  .sec_message .mb-3 {
    margin-bottom: 3em;
  }
}

@media (max-width: 767px) {
    .sec_message {
        padding: 80px 0 50px;
    }
    .sec_message figure {
      margin-top: 40px;
    }
    .sec_message .btn-style {
      margin-bottom: 30px;
    }
}

.sec_message h2 {
    color: #fff;
}

.sec_message .bg_white {
    padding: 6% 8%;
}

@media (max-width: 767px) {
    .sec_message .bg_white {
        margin-bottom: 20px;
    }
}

.sec_message h3 {
    font-size: 24px;
    color: #8faadc;
    font-weight: bold;
    position: relative;
}

.sec_message h3:after {
    content: "";
    position: absolute;
    z-index: 9;
    top: 0;
    bottom: 0;
    right: 0;
    left: auto;
    margin: auto;
    width: 100%;
    height: 1px;
    background: #8faadc;
}

.sec_message h3 span {
    font-size: 24px;
    position: relative;
    z-index: 999;
    background: #fff;
    padding-right: 10px;
}

@media (max-width: 767px) {
    .sec_message h3 span {
        font-size: 20px;
    }
}

.sec_message .mt-custom {
    margin-top: 80px;
    align-items: end;
}

@media (max-width: 767px) {
    .sec_message .mt-custom {
        margin-top: 40px;
    }
}

.sec_message .mt-custom .col:first-child {
    margin: 0 0 auto;
}

@media (min-width: 768px) {
    .sec_message .mt-custom .col:last-child {
        margin-bottom: 20px;
    }
}

.sec_feature {
    padding: 120px 0 160px;
    background: url(img/bg_img003.jpg) no-repeat top center/cover;
}

@media (max-width: 767px) {
    .sec_feature {
        padding: 60px 0 140px;
    }
}

.sec_feature .columns:not(:last-child) {
    margin-bottom: 90px;
}

.sec_feature h2 {
    font-size: 20px;
    line-height: 2;
    letter-spacing: 0.2em;
    margin-bottom: 65px;
}

@media (max-width: 767px) {
    .sec_feature h2 {
        font-size: 16px;
    }
}

.sec_feature h2 span {
    font-size: 68px;
    line-height: 0.8;
}

.sec_feature .bg_white {
    height: 100%;
    position: relative;
}

@media (max-width: 767px) {
    .sec_feature .bg_white {
        padding: 10% 6% 6%;
        margin-bottom: 60px;
    }
}

.sec_feature .bg_white:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 118px;
    height: 118px;
    background: url(img/num01.png) no-repeat center center/cover;
    transform: translate(-40px, -40px);
}

@media (max-width: 1300px) and (min-width: 768px) {
    .sec_feature .bg_white:before {
        width: 9vw;
        height: 9vw;
        transform: translate(-20px, -20px);
    }
}

@media (max-width: 767px) {
    .sec_feature .bg_white:before {
        width: 80px;
        height: 80px;
        transform: translate(-10px, -30px);
    }
}

.sec_feature .bg_white.box_feature02:before {
    background: url(img/num02.png) no-repeat center center/cover;
}

.sec_feature .bg_white.box_feature03:before {
    background: url(img/num03.png) no-repeat center center/cover;
}

.sec_feature .bg_white.box_feature04:before {
    background: url(img/num04.png) no-repeat center center/cover;
}

.sec_feature .bg_white.box_feature05:before {
    background: url(img/num05.png) no-repeat center center/cover;
}

.sec_feature .bg_white.box_feature06:before {
    background: url(img/num06.png) no-repeat center center/cover;
}

.sec_feature .bg_white h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and  ( max-width : 999px ) {
  .sec_feature .bg_white {
    margin-bottom: 80px;
    position: relative;
  }

}
@media screen and  ( max-width : 767px ) {
  .sec_feature .bg_white {
    margin-bottom: 60px;
  }


}

@media (max-width: 1240px) and (min-width: 768px) {
    .sec_feature .bg_white h3 {
        font-size: 1.8vw;
    }
}

@media (max-width: 767px) {
    .sec_feature .bg_white h3 {
        font-size: 18px;
        width: 100%;
    }
}

@media (min-width: 768px) {
    .sec_feature .bg_white .adjust {
        float: right;
        width: 1px;
        height: 120px;
        background: transparent;
    }
}

@media (max-width: 1100px) and (min-width: 901px) {
    .sec_feature .bg_white .adjust {
        height: 23vw;
    }
}

@media (max-width: 900px) and (min-width: 768px) {
    .sec_feature .bg_white .adjust {
        height: 38vw;
    }
}

@media screen and  ( min-width : 1000px ) {
  .sec_feature .bg_white {
    position: relative;
    padding: 7% 6%;
  }


}


/* .sec_feature .bg_white img {
    float: right;
    clear: both;
}

@media (min-width: 1201px) {
    .sec_feature .bg_white img {
        position: relative;
        top: 50px;
        left: 50px;
    }
}

@media (max-width: 1200px) and (min-width: 768px) {
    .sec_feature .bg_white img {
        position: relative;
        top: 50px;
        left: 25px;
    }
}

@media (max-width: 767px) {
    .sec_feature .bg_white img {
        padding: 0 5px;
    }
} */

.sec_menu {
    padding: 100px 0 0;
}

@media (max-width: 767px) {
    .sec_menu {
        padding: 0;
        transform: translateY(-60px);
    }
}

.sec_menu .bg_area {
    padding: 60px 0 160px;
    background: url(img/bg_img004.jpg) no-repeat bottom center/cover;
}

@media (max-width: 767px) {
    .sec_menu .bg_area {
        padding: 30px 0 80px;
    }

    .sec_menu .bg_area figure {
        text-align: center;
    }
}

.sec_menu .bg_area p {
    letter-spacing: 0.1em;
}

.sec_menu .bg_area figure {
    text-align: center;
}

.sec_menu .bg_area .col3 {
    padding: 0 20px;
}

.sec_menu h2 {
    font-size: 20px;
    line-height: 2;
    letter-spacing: 0.2em;
    margin-bottom: 65px;
}

.sec_menu h2 span {
    font-size: 68px;
    line-height: 0.8;
}

.sec_menu .list_bnr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 70px;
}

@media (max-width: 1300px) {
    .sec_menu .list_bnr {
        flex-wrap: wrap;
        gap: 1% 1%;
        max-width: 800px;
        margin: auto;
        margin-bottom: 70px;
    }
}
@media screen and  ( min-width : 1300px ) {
  .sec_menu .list_bnr {
    margin-bottom: 115px;
  }
}


.sec_menu .list_bnr li {
    width: 33.3333333333333333333%;
}

@media (max-width: 767px) {
    .sec_menu .list_bnr {
        gap: 0;
        margin-bottom: 50px;
    }

    .sec_menu h2 {
        margin-bottom: 30px;
    }
}

@media (max-width: 1300px) {
  .sec_menu .list_bnr {
      gap: 0;
  }
    .sec_menu .list_bnr li {
        width: 50%;
        margin-bottom: 0;
    }
}

@media (max-width: 767px) {
    .sec_menu .list_bnr li {
        width: 50%;
        margin-bottom: 0;
    }
}

.sec_menu .list_bnr li a {
    display: block;
}

.sec_menu .list_bnr li a img {
    display: block;
    text-align: center;
    margin: 0 auto !important;
}

.sec_trouble {
    padding: 100px 0;
    background: url(img/bg_img005.png) no-repeat top center/cover;
    transform: translateY(-100px);
    margin-bottom: -100px;
}
.sec_trouble .sec_box {
  justify-content: center;
}
@media (max-width: 767px) {
    .sec_trouble {
        padding: 80px 0 50px;
        background: url(img/bg_img005.png) no-repeat top center/100%;
    }
}

.sec_trouble h2 {
    font-size: 20px;
    line-height: 2;
    letter-spacing: 0.2em;
    margin-bottom: 65px;
}

@media (max-width: 767px) {
    .sec_trouble h2 {
        font-size: 16px;
        margin-bottom: 40px;
    }
}

.sec_trouble h2 span {
    font-size: 68px;
    line-height: 0.8;
}

.sec_trouble .columns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px .5%;
    margin-bottom: 0;
}
@media (max-width: 767px) {
  .sec_trouble .columns {
    gap: 30px 2%;
  }
}

.sec_trouble .columns .column {
    width: 24.5%;
    flex-basis: 24.5%;
}

@media (max-width: 1000px) {
    .sec_trouble .columns .column {
        width: 32%;
        flex-basis: 32%;
    }
}

@media (max-width: 767px) {
    .sec_trouble .columns .column {
        width: 100%;
        flex-basis: 100%;
    }
}

@media (max-width: 767px) {
    .sec_trouble .columns .column figure {
        text-align: center;
    }
}

.sec_trouble .columns .column figure a {
    display: block;
}

.sec_info02 {
    padding: 100px 0 70px;
    background: url(img/bg_img006.jpg) no-repeat center center/cover;
}

@media (max-width: 767px) {
    .sec_info02 {
        padding: 50px 0 30px;
    }
}


.sec_info02 h3 {
    color: #333;
    font-size: 16px;
    letter-spacing: 0.1em;
    margin-bottom: 10px;
}

.sec_info02 h3 span {
    font-size: 30px;
    color: #8faadc;
    margin-right: 15px;
}

.sec_info02 figure {
    margin-bottom: 60px;
}

@media (max-width: 767px) {
    .sec_info02 figure {
        margin-bottom: 40px;
    }
}

.sec_info02 h3 {
    font-weight: bold;
}

.sec_info02 .foot {
    padding-left: 60px;
    position: relative;
    min-height: 58px;
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    .sec_info02 .foot {
        margin-bottom: 10px;
    }
}

.sec_info02 .foot:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: auto;
    left: 0;
    margin: auto;
    width: 50px;
    height: 50px;
    background: url(img/icon_access.png) no-repeat center center/cover;
}

/*fixedbnr一旦非表示*/
/* .inq_item {
    display: none !important;
} */

@media (max-width: 767px) {
    .totop .totop_item {
      width: 100%;
          height: 16vw !important;
max-height:100px;
        background: url(img/top.png) no-repeat center center /cover;
    }
}

/*# sourceMappingURL=main.css.map */



@media screen and (max-width: 767px) {
  .sec_box:not(:first-of-type) {
    margin-top: 5%;
  }
  .sec_box:first-of-type {
    margin-top: 0;
  }
  .sec_box .colbox_2:not(:first-of-type), .sec_box .colbox_3:not(:first-of-type), .sec_box .colbox_4:not(:first-of-type), .sec_box .colbox_5:not(:first-of-type) {
    margin-top: 6%;
  }
  .sec_box.sp_colbox_2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .sec_box.sp_colbox_2 .colbox_2, .sec_box.sp_colbox_2 .colbox_3, .sec_box.sp_colbox_2 .colbox_4, .sec_box.sp_colbox_2 .colbox_5 {
    width: 48%;
    margin-right: 4%;
  }
  .sec_box.sp_colbox_2 .colbox_2:not(:first-child), .sec_box.sp_colbox_2 .colbox_3:not(:first-child), .sec_box.sp_colbox_2 .colbox_4:not(:first-child), .sec_box.sp_colbox_2 .colbox_5:not(:first-child) {
    margin-top: 0;
  }
  .sec_box.sp_colbox_2 .colbox_2:nth-child(2n), .sec_box.sp_colbox_2 .colbox_3:nth-child(2n), .sec_box.sp_colbox_2 .colbox_4:nth-child(2n), .sec_box.sp_colbox_2 .colbox_5:nth-child(2n) {
    margin-right: 0;
  }
  .sec_box.sp_colbox_2 .colbox_2:nth-child(n+3), .sec_box.sp_colbox_2 .colbox_3:nth-child(n+3), .sec_box.sp_colbox_2 .colbox_4:nth-child(n+3), .sec_box.sp_colbox_2 .colbox_5:nth-child(n+3) {
    margin-top: 2%;
  }
  .sec_box.sp_colbox_3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .sec_box.sp_colbox_3 .colbox_2, .sec_box.sp_colbox_3 .colbox_3, .sec_box.sp_colbox_3 .colbox_4, .sec_box.sp_colbox_3 .colbox_5 {
    width: 32%;
    margin-right: 2%;
  }
  .sec_box.sp_colbox_3 .colbox_2:not(:first-child), .sec_box.sp_colbox_3 .colbox_3:not(:first-child), .sec_box.sp_colbox_3 .colbox_4:not(:first-child), .sec_box.sp_colbox_3 .colbox_5:not(:first-child) {
    margin-top: 0;
  }
  .sec_box.sp_colbox_3 .colbox_2:nth-child(3n), .sec_box.sp_colbox_3 .colbox_3:nth-child(3n), .sec_box.sp_colbox_3 .colbox_4:nth-child(3n), .sec_box.sp_colbox_3 .colbox_5:nth-child(3n) {
    margin-right: 0;
  }
  .sec_box.sp_colbox_3 .colbox_2:nth-child(n+4), .sec_box.sp_colbox_3 .colbox_3:nth-child(n+4), .sec_box.sp_colbox_3 .colbox_4:nth-child(n+4), .sec_box.sp_colbox_3 .colbox_5:nth-child(n+4) {
    margin-top: 2%;
  }
}
@media screen and (min-width: 768px) {
  .sec_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .sec_box .colbox_2 {
    width: 48%;
    margin-right: 4%;
  }
  .sec_box .colbox_2:nth-child(2n) {
    margin-right: 0;
  }
  .sec_box .colbox_2:nth-child(n+3) {
    margin-top: 4%;
  }
  .sec_box .colbox_3 {
    width: 32%;
    margin-right: 2%;
  }
  .sec_box .colbox_3:nth-child(3n) {
    margin-right: 0;
  }
  .sec_box .colbox_3:nth-child(n+4) {
    margin-top: 2%;
  }
  .sec_box .colbox_4 {
    width: 23.5%;
    margin-right: 2%;
  }
  .sec_box .colbox_4:nth-child(4n) {
    margin-right: 0;
  }
  .sec_box .colbox_4:nth-child(n+5) {
    margin-top: 2%;
  }
  .sec_box .colbox_5 {
    width: 18.4%;
    margin-right: 2%;
  }
  .sec_box .colbox_5:nth-child(5n) {
    margin-right: 0;
  }
  .sec_box .colbox_5:nth-child(n+6) {
    margin-top: 2%;
  }
  .sec_box.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .sec_box.reverse .colbox_2 {
    width: 48%;
    margin-right: 4%;
  }
  .sec_box.reverse .colbox_2:first-child {
    margin-right: 0;
  }
}
#footer .footer_sitemap {
  text-align: center;
  margin: 14px 0;
  font-size: 16px;
}
#footer .footer_sitemap a {
  color: #333;
  text-decoration: none
}
#footer .footer_sitemap a:hover {
  text-decoration: underline;
}
@media (max-width: 767px) {
.scroll{
      overflow-x: auto;
      margin-bottom:1rem;
}
.scroll::-webkit-scrollbar{
 height:5px;
}
.scroll::-webkit-scrollbar-track{
 background: #b0b0b0;
}
.scroll::-webkit-scrollbar-thumb {
 background: #92c647;
}
.scroll table{
      width: 130%;
}
}
/* ---------------------下層ページ */
.page-name-cavity .t01 thead th{
    width:33%;
}
.page-name-cavity .t01 tbody th{
    text-align:center;
}
.page-name-cavity .t01 img{
    width:150px;
}
@media (max-width: 767px) {
    .page-name-cavity .t01 img{
    width:100px;
}
}
.page-name-denture .border-table thead th:nth-child(1){
    width:30%;
}
.page-name-denture .border-table thead th:nth-child(2),
.page-name-denture .border-table thead th:nth-child(3){
    width:35%;
}
.page-name-denture .border-block{
  padding:30px 20px;
}
.page-name-denture .fee-table tbody th{
  width:60%;
}
.page-name-ceramic .fee-table tbody th{
  width:60%;
}
.page-name-whitening .fee-table tbody th{
  width:60%;
}
.page-name-mouthpiece .fee-table tbody th{
  width:60%;
}
.page-name-fee .fee-table tbody th{
  width:60%;
}
@media (max-width: 1239px) {
.page-name-clinic #main .pc{
display:none;
}
.page-name-mouthpiece #main .pc{
display:none;
}
}
