/*
Theme Name: Theme for Barbpack 3(Fork of Lightning)
Text Domain: lightning
Description: Theme for OAWeb
Version: 1.0
Requires at least: 5.3
Tested up to: 6.0.0
Requires PHP: 5.6.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html


Lightning WordPress theme, Copyright (C) 2015-2022 Vektor,Inc.
Lightning WordPress theme is licensed under the GPL.

Lightning WordPress Theme bundles the following third-party resources:

Font Awesome icon font, Copyright 2012 Fonticons, Inc.
its fonts are licensed under the terms of the SIL OFL License 1.1, and its code is licensed under the terms of the MIT license
Source: https://fontawesome.com/

Bootstrap framework, Copyright 2011 Bootstrap Authors and Twitter, Inc.
Bootstrap is licensed under the terms of the MIT license
Source: https://getbootstrap.com/

CSS Simple Tree Shaking
CSS Simple Tree Shaking is licensed under the terms of the GNU General Public License v2 license
Source: https://celtislab.net/
*/



/*==================================================
  全体共通
===================================================*/
body,
html,
--vk-font-family {
	font-family: Arial, "Noto Sans JP", "Yu Gothic Medium","游ゴシック Medium","游ゴシック体","YuGothic","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","Meiryo","メイリオ","ＭＳ ゴシック",sans-serif;
}


/*==================================================
  カスタムプロパティ
===================================================*/


:root {

	/*------  カルーセルスライダー  ------*/
	--carousel-slider-arrow: #fff;
	--carousel-slider-arrow-bg: rgba(170, 170, 170, 0.6);
	--carousel-slider-arrow-bg-hover: rgba(140, 140, 140, 0.6);
	--carousel-slider-navigation-size: 48px;

	/* カラー */
	--color-accent:#42a9e0;
	--color-primary:#006f3a;
	--color-primary-light:#40936b;
	--color-gradient:linear-gradient(160deg, rgba(114, 187, 237, 1) 0%,rgba(0, 127, 220, 1) 100%);
	--color-gradient-rev:linear-gradient(-160deg, rgba(114, 187, 237, 1) 0%,rgba(0, 127, 220, 1) 100%);
	--color-gradient-light:linear-gradient(to bottom,rgba(199, 232, 250, 0.2) 0%, rgba(196, 234, 255, 0.85) 100%);
}

.lightning_swiper-container {
	max-width: 1920px;
}

/*==================================================
  コンテンツ
===================================================*/
.entry-body>.alignfull {
	padding-left: 15px;
	padding-right: 15px;
}
.home .entry-body>*{
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 120px;
	padding-bottom: 120px;
}
@media (max-width: 639px){
	.home .entry-body>*{
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.home .entry-body>div:first-child{
		padding-top: 0;
	}
}
/*------  コンテンツの幅調整  ------*/
.entry-body > .alignfull,
.entry-body > .alignfull.vk_slider,
.entry-body > .alignfull.wp-block-cover,
.entry-body > .alignfull.wp-block-cover-image,
.entry-body > .alignfull.wp-block-image {
	padding-left: calc(15px + ( (100vw - 100%) / 5 ) ) !important;
	padding-right: calc(15px + ( (100vw - 100%) / 5 ) ) !important;
}
@media (min-width: 1200px) {
	:root {
		--vk-width-container: 1500px;
	}
}
@media (min-width: 1200px) {
	.container,.container-lg,.container-md,
	.container-sm,.container-xl {
		max-width: var(--vk-width-container);
	}
	body:not(.home) .container .entry-body,
	#breadcrumb .container,
	body:not(.home) .site-body
	 {
		max-width: 1140px;
		margin: 0 auto;
	}
	body:not(.home) .site-body .site-body-container{
		padding: 0;
	}
	#breadcrumb .container {
		padding-left: 0;
	}
}
@media (max-width: 991px) {
	.container {
		max-width: 770px;
	}
	.alignfull div[class*="__inner-container"] {
		max-width: 95%;
	}
}
@media (min-width: 782px) {
	.wp-block-column:not(:first-child) {
		margin-left: 2em;
	}
}
@media (max-width: 639px){
    .container p{
        font-size: 1rem;
    }
	.wp-block-columns{
		gap: initial !important;
	}
}

/*------　コンテンツのレイアウト案　------*/
.contents-pattern_01 {
	margin: 60px auto 0 auto;
	align-items: flex-start;
	gap: 2em;
}

home.contents-pattern_02 {
	margin: 120px 0;
}
.contents-pattern_03{
	margin: 60px auto 0 auto;
	gap: 2em;
}
/*
.contents-pattern_04{
	padding: 120px 0;
}

.contents-cover_01 {
	padding: 120px 0 120px 0;
}
*/
.contents-layout_01 {
	margin-top: 0;
	margin-bottom: 0;
	padding: 60px 0;
}
.contents-layout_01>.wp-block-group__inner-container,
.contents-cover_01>.wp-block-group__inner-container{
	max-width: 1140px !important;
	margin-left: auto;
	margin-right: auto;
}
.left-img {
	flex-basis: 790px;
}
.right-txt {
	flex-basis: 632px;
	margin-left: 2em;
}
.contents-column_mtb40-60{
	margin: 40px 0 60px;
}
@media (max-width: 991px) {
	.contents-pattern_01 .right-txt,
	.wp-block-column:not(:first-child) {
		margin-left: 0;
	}
}
@media (max-width: 639px) {
	.contents-pattern_01 {
		margin: 30px auto 60px auto;
		gap: 0 !important;
	}
	.contents-pattern_02 {
		margin: 60px 0;
	}
	.contents-pattern_03{
		margin: 30px auto 0 auto;
	}
	.contents-pattern_04{
		padding: 60px 0;
	}
	.contents-cover_01 {
		padding: 60px 0 60px 0;
		margin-top: 0;
		margin-bottom: 0;
	}
	.left-img figure{
		margin-bottom: 20px;
	}
}


/*==================================================
    ヘッダー
===================================================*/
.site-header-container {
    max-width: 1500px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
	gap:10px;
}
.header_scrolled .site-header-container {
    max-width: 1140px;
    margin: 0 auto;
}

.header_scrolled .site-header-logo{
	display: block;
}
@media (max-width: 639px) {
	.site-header-container {
		display: block;
		margin-top: 15px;
		padding: 0 5px;
		align-items: center;
		justify-content: space-between;
	}
}

/*------  グローバルナビ  ------*/
#global-nav {
    min-width: 46%;
    order: 2;
    margin: 0;
	padding-top: 30px;
}
#global-nav .global-nav-list{/*safari*/
    width: 100% !important;
    flex-wrap: wrap;
	padding-left: 10px;
}
#global-nav .global-nav-list>li .global-nav-name {
	font-size: 16px;
	font-weight: normal;
}
#global-nav .global-nav-list>li:first-child,
#global-nav .global-nav-list>li {
	border: none;
}
#global-nav .global-nav-list>li {
	width: auto;
}
#global-nav .global-nav-list>li:before{
	display: none;
}
/*------  ロゴ調整  ------*/
.site-header-logo img{
	max-height: 80px;
	margin: 0;
}
@media (min-width: 992px) {
    .site-header-logo {
		margin: 0;
		padding: 0;}
	}
/*------  ウィジェット(右)調整´  ------*/
.site-header-sub {
    order: 3;
    min-width: 25%;
    display: block;
	padding-left: 0;
	flex-shrink: 0;
	flex-grow: 0;
}
.site-header-sub aside .wp-block-group__inner-container {
    display: flex;
    justify-content: end;
    align-items: center;
}
.site-header-sub aside .phone {
    font-size: 1.4rem;
    font-weight: bold;
    position: relative;
	text-align: center;
	margin-right: 5px;
}
.site-header-sub aside .phone a{
	margin-right: 10px;
	font-size: 24px;
	font-family: Arial, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
	font-weight: bold;
	margin-bottom: 0;
	padding-left: 23px;
	position: relative;
}
.site-header-sub aside .phone a:before {
	position: absolute;
	display: block;
	content: "";
	background: url(assets/image/ico_phone_01.png)no-repeat;
	background-size: contain;
	width: 22px;
	height: 22px;
	top: 0;
	left: -6px;
}
.site-header-sub .wp-block-group__inner-container p {
	margin-bottom: 0 !important;
}
.site-header-sub aside {
	margin-bottom: 10px;
}
.site-header-sub aside .header-buttons{
    margin: 0 auto;
}
.site-header-sub aside .header-buttons .wp-block-group__inner-container {
	gap: 10px;
}
.site-header-sub aside .reserve,
.site-header-sub aside .contact,
.site-header-sub aside .reserve .wp-block-button,
.site-header-sub aside .contact .wp-block-button {
	width: 100%;
}
.site-header-sub aside .reserve .wp-block-button{
	overflow: hidden;
	height: 45px;
	border-radius: unset;
	background: #fff !important;
	text-align: center;
	cursor: pointer;
	border: 1px solid var(--vk-color-primary-vivid);
}
.site-header-sub aside .reserve .wp-block-button__link{
	background: #fff;
    border-radius: unset;
}
.site-header-sub aside .contact .wp-block-button{
	overflow: hidden;
    /* width: 198px; */
    height: 45px;
    text-align: center;
    cursor: pointer;
}

.site-header-sub aside .contact .wp-block-button .wp-block-button__link {
	max-width: 12rem;
	border-radius: 5px;
}

.reserve .wp-block-button a,
.contact .wp-block-button a{
	width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    position: relative;
}
.reserve .wp-block-button a{
    color: var(--vk-color-primary-vivid)
}
.contact .wp-block-button a{
	color: #fff;
}
@media screen and (min-width:992px) and ( max-width:1400px) {
	.site-header{
		font-size: 14px;
	}
	.device-pc .global-nav-list>li>a{
		padding: 0 10px;
	}
	.site-header--layout--sub-active .site-header-logo {
		max-width: 30%;
	}
	.site-header-logo {
		order: 1;
	}
    .site-header-sub aside{
        margin-right: 0 !important;
        margin-bottom: 5px;
    }
    .site-header-sub {
        order: 3;
        margin: 0 0 0 20px;
        padding: 0;
        min-width: initial;
    }
    .site-header-sub aside .wp-block-group__inner-container{
        display: block;
    }
	.site-header-sub aside .wp-block-button .wp-block-button__link{
		font-size: 14px;
	}
	.site-header-sub aside .phone{
		font-size: 1.4rem;
	    margin-right: 0;
	}
	.site-header-sub aside .contact{
		margin-left: 0;
	}
	.reception-time{
		font-size: 14px;
	}
	.reserve .wp-block-button,
	.contact .wp-block-button{
		width: 180px !important;
		height: 35px !important;
	}
}
@media (max-width: 991px) {
	.site-header-sub{
		padding: 0;
	}
	.site-header-sub aside .wp-block-group__inner-container{
		justify-content: center;
	}
	.site-header-sub aside .phone{
		margin-right: 10px;
	}
}

@media (min-width: 640px) {
	.site-header-sub aside .contact .wp-block-button .wp-block-button__link {
		margin-left: auto;
		margin-right: 0;
		background:var(--color-gradient);
	}
}

@media (max-width: 639px) {
	.site-header-sub {
		width: 100%;
		margin: 20px auto;
		padding: 0;
		float: none;
	}
	.site-header-sub .header-shop-info {
		text-align: center;
	}
	.site-header-sub .header-shop-info .wp-block-group__inner-container{
		width: 90%;
		display: block;
		margin: 0 auto;
	}
	.site-header-sub .header-shop-info .wp-block-group__inner-container p:last-child{
		display: block;
    	width: 100%;
    	margin: 0 auto;
	}
	.site-header-sub .header-buttons {
		width: 85%;
	}
	.site-header-sub aside .header-buttons .wp-block-group__inner-container {
		gap: 1.5em;
	}

	.site-header-sub aside .phone{
		margin-right: 0;
	}
	.site-header-sub aside .phone a{
		font-size: 24px;
	}
	.site-header-sub aside .phone a:before{
		width: 18px;
		height: 18px;
		top: 10px;
		left: -6px;
	}
	.site-header-sub aside .reserve .wp-block-button {
		/* width: 150px;*/
		border-radius: 0;
		margin-right: 0;
		background: #fff;
		border: 1px solid var(--vk-color-primary-vivid);
		color: var(--vk-color-primary-vivid);
	}
	.site-header-sub aside .contact{
		margin-left: 0;
	}
	.site-header-sub aside .contact .wp-block-button{
		/* width: 150px; */
		border-radius: 0;
		margin-right: 0;
		color: #fff;
	}
	.site-header-sub aside .phone {
		display: flex;
		justify-content: center;
		color: #000;
		text-align: center;
		text-decoration: none;
		font-size: 1.7rem;
		white-space: nowrap;
		margin-left: 0;
		margin-right: 0;
		padding-left: 36px;
	}
	.site-header-sub aside .phone:before {
        width: 18px;
        height: 18px;
        top: 6%;
        left: 0;
	}
	.site-header-sub aside .contact .wp-block-button .wp-block-button__link {
		width: 15rem;
		max-width: 15rem;
		margin: 0 auto;
	}
}

/*==================================================
  グローバルメニュー
===================================================*/
/* グローバルメニューが複数行になる場合の対応 */
@media screen and (min-width: 992px) and (max-width: 1400px) {
	.device-pc .global-nav-list>li>a {
		padding: 14px 1.5em;
	}
}

/*==================================================
  メインスライダー
===================================================*/
.ltg-slide-text-set .mini-content-container-1 {
	float: right;
	display: inline-block;
	max-width: initial;
	width: auto;
	padding: 28px;
	background: rgba(255, 255, 255, 0.8);
}
.ltg-slide-inner .item-2 .ltg-slide-text-set {
	width: 30%;
	top: 30%;
	left: 13%;
	transform: initial;
}

/*------  スライダー内　ボタン調整  ------*/
.mini-content-container-1 .btn,
.mini-content-container-2 .btn,
.mini-content-container-3 .btn{
	border-radius: 0;
}
@media (min-width: 1200px) {
	.ltg-slide-text-title {
		font-size: 30px;
	}
	.ltg-slide-text-caption {
		font-size: 1.0rem;
	}
	.ltg-slide-text-set {
		width: 30%;
		top: 55%;
		right: 15%;
		left: initial;
		transform: initial;
	}
	body .site-body {
		padding-bottom: 0;
	}
}
@media (max-width: 991px) {
	.ltg-slide-text-set {
		left: initial;
		right: -10%;
		width: initial;
	}
}
@media (max-width: 639px) {
	.metaslider.nav-hidden .flexslider{
		margin-top: 70px;
	}
	.ltg-slide-text-set {
		right: -20%;
	}
	.ltg-slide-text-set .mini-content-container-1 {
		padding: 14px;
	}
	.ltg-slide-inner .item-2 .ltg-slide-text-set {
		width: 80%;
		left: 5%;
	}
	.site-body {
		/* padding: 0; */
		/* margin-top: -20px; */
	}
}


/*==================================================
  カルーセルスライダー
===================================================*/

.carousel-slider {
	position: relative;
}
.carousel-slider .wp-block-group__inner-container {
	position: relative;
}
.carousel-slider .swiper-wrapper {
	flex-wrap: nowrap !important;
	margin-bottom: 0;
	gap: 2em;
}
.carousel-slider .wp-block-column {
	margin-right: 0 !important;
	margin-left: 0 !important;
	width: 470px;
	min-width: 470px;
	flex-basis: auto;
}
.carousel-slider .wp-block-column .wp-block-image {
	margin-bottom: 0;
}


.carousel-slider .swiper-button-next,
.carousel-slider .swiper-button-prev {
	position: absolute;
	top: 50%;
	margin-top: calc(0px - (var(--carousel-slider-navigation-size)/ 2));
	z-index: 10;
	cursor: pointer;
	align-items: center;
	justify-content: center;
	width: calc( var(--carousel-slider-navigation-size) / 2 );
	height: calc( var(--carousel-slider-navigation-size) / 2 );
	display: grid;
	place-content: center;
}

.carousel-slider .swiper-button-next {
	right: 10px;
	left: auto;
}

.carousel-slider .swiper-button-prev {
	right: auto;
	left: 10px;
}

.carousel-slider .swiper-button-next:before,
.carousel-slider .swiper-button-prev:before {
	background-color: var(--carousel-slider-arrow-bg);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	border-radius: 50%;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;

}

.carousel-slider .swiper-button-next:after,
.carousel-slider .swiper-button-prev:after {
	border-color: #fff;
	width: 8px;
	height: 8px;
	content: "";
	border: solid var(--carousel-slider-arrow);
	border-width: 2px 2px 0 0;
}

.carousel-slider .swiper-button-next:after {
	margin-right: 0.2rem;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.carousel-slider .swiper-button-prev:after {
	margin-left: 0.2rem;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.carousel-slider .swiper-button-next:hover:before,
.carousel-slider .swiper-button-prev:hover:before {
	background-color: var(--carousel-slider-arrow-bg-hover);
}

@media (max-width: 640px) {
	.carousel-slider .swiper-wrapper {
		gap: 0;
	}
	.carousel-slider .swiper-slide {
		width: 100% !important;
		min-width: 100% !important;
		padding: 0 10px 0 10px;
	}
}


/*==================================================
  見出し
===================================================*/
h1,h2,h3,h4,h5,h6 {
	margin-top: 0;
	margin-bottom: var(--vk-margin-headding-bottom);
	line-height: var(--vk-line-height-low);
}
h2 {
	color: #000;
	font-size: 2rem;
	text-align: center;
	border: 0;
}
@media (max-width: 639px) {
	h2 {
		font-size: 1.7rem;
	}
	h3 {
		font-size: 18px;
	}
}

/*------  見出し（装飾）　h2  ------*/
/*---  下線（ストライプ線） ---*/
.ttl_stripe_01{
	position: relative;
	padding: 0 1rem 1.5rem 0;
}
.ttl_stripe_01:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 10px;
	content: '';
	background-image: -webkit-repeating-linear-gradient(135deg, var(--vk-color-primary), var(--vk-color-primary) 1px, transparent 2px, transparent 5px);
	background-image: repeating-linear-gradient(-45deg, var(--vk-color-primary), var(--vk-color-primary) 1px, transparent 2px, transparent 5px);
	background-size: 7px 7px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
  }
/*---  両サイドに線  ---*/
.home h2.top-section-title {
  padding: 0;
  text-align: center;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.5em;
}

.home h2.top-section-title:before,
.home h2.top-section-title:after {
  position: relative;
  top: calc(50% - 1px);
  height: 2px;
  content: "";
  background: var(--vk-color-primary);
  width: 5em;
  display: inline-block;
  flex-grow: 1;
  background-clip: content-box;
}

.home h2.top-section-title:before {
  margin-right: 1em;
  padding-left: 25%;
}

.home h2.top-section-title:after {
  margin-left: 1em;
  padding-right: 25%;
}

@media (max-width: 639px) {
  .home h2.top-section-title {
    padding: 0 35px;
  }

  .home h2.top-section-title:before {
    left: 0;
    width: 100%;
  }
}

.ttl_both-sides_01{
    padding: 0;
    text-align: center;
	/*overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;*/
	display: block;
	position: relative;
	width: fit-content;
    margin: 0 auto 1.5em;
}
.ttl_both-sides_01:before,
.ttl_both-sides_01:after {
	/*position: relative;*/
	position: absolute;
    top: calc(50% - 1px);
    height: 2px;
    content: '';
    background: var(--vk-color-primary);
    width: clamp(2em, calc((100vw - 100%) / 2 - 1em), 5em);
	display: inline-block;
	/*flex-grow: 1;
	background-clip: content-box;*/
  }
  .ttl_both-sides_01:before{
	margin-right: 1em;
	/*padding-left: 25%;*/
	  right: 100%;
  }
.ttl_both-sides_01:after{
	margin-left: 1em;
	/*padding-right: 25%;*/
	left: 100%;
}
@media (max-width: 639px){
    .ttl_both-sides_01 {
        padding: 0 35px;
    }
	/*
    .ttl_both-sides_01:before {
        left: 0;
        width: 100%;
    }

	 */
}

@media (max-width: 991px) {
	/*
  .ttl_both-sides_01:before,
  .ttl_both-sides_01:after {
    width: unset;
  }

	 */
  .ttl_both-sides_01:before {
    padding-left: 15%;
  }
  .ttl_both-sides_01:after {
    padding-right: 15%;
  }
}

@media (max-width: 639px) {
  .top-section-title:before,
  .top-section-title:after,
  .ttl_both-sides_01:before,
  .ttl_both-sides_01:after {
    background-clip: inherit !important;
    max-width: 5rem;
  }
  .ttl_both-sides_01 {
    text-indent: 0.05em;
    padding:0;
  }
  .ttl_both-sides_01:before {
    margin-right: 0.5em;
	padding-left: 10%;
  }
  .ttl_both-sides_01:after {
    margin-left: 0.5em;
	padding-right: 10%;
  }
    .top-section-title span,
  .ttl_both-sides_01 span:not(.smaller-txt) {
    flex-shrink: 0;
  }

   .ttl_both-sides_01 span.smaller-txt{
    font-size: 0.875em;
   }
  h2 {
    font-size: 1.4rem;
  }
}

/*------  見出し（装飾）　h3  ------*/
/*---  下線にアクセントを入れたデザイン ---*/
.ttl_bdr-gray_01 {
	position: relative;
    padding-bottom: 15px;
	margin-bottom: 30px;
	border-bottom: 2px solid var(--vk-color-border);
}
.ttl_bdr-gray_01:after {
	content: ".";
	line-height: 0;
	display: block;
	overflow: hidden;
	position: absolute;
	bottom: -2px;
	width: 30%;
	border-bottom: 2px solid var(--vk-color-primary);
}
@media (max-width: 639px){
	.ttl_bdr-gray_01 {
		padding-bottom: 10px;
		margin-bottom: 15px;
	}
}

/*------  見出し（装飾）　h4  ------*/
/*--- 背景色・左２重線を入れたデザイン ---*/
h4.double-line_01{
	padding: 0.75rem 1.5rem;
    border-left: 6px double var(--vk-color-primary);
    background: #f7f7f7;
  }

/*------  見出し（装飾）　h5〜h6  ------*/
/*---  下線  ---*/
.ttl_bdr-org_01 {
	border-bottom: 1px solid var(--vk-color-primary);
	padding-bottom: 10px;
	margin-bottom: 15px;
}
/*---  左線  ---*/
.ttl_bdr-org_02 {
	border-left: 4px solid var(--vk-color-primary);
    padding-left: 15px;
}


/*==================================================
  TOP　コンテンツ
===================================================*/
/*==========  施術内容について  ==========*/
.teatment-content {
	gap: initial !important;
	flex-wrap: wrap !important;
	/* justify-content: space-between; */
}
.teatment-content .wp-block-column {
	background: #FBFAF5;
	padding-bottom: 50px;
	flex-grow: 0 !important;
	flex-basis: 31% !important;
	margin-left: 0;
	margin-bottom: 50px;
}

.teatment-content .wp-block-column figure {
	position: relative;
	background-color: #000;
	display: inline-block;
}
.teatment-content .wp-block-column img {
	opacity: 0.6;
	display: block;
}
.teatment-content .wp-block-column figcaption {
	position: absolute;
	top: 42.5%;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	color: #fff;
	font-size: 1.6rem;
}
.teatment-content .wp-block-column p {
	padding: 9px 35px 35px;
	margin-bottom: 0;
	text-align: justify;
}
@media (min-width: 992px) {
	.teatment-content .wp-block-column:nth-child(3n+2),
	.teatment-content .wp-block-column:nth-child(3n+3){
		margin-left: 3.5%;
	}
}
@media (max-width: 991px) {
	.teatment-content {
		flex-wrap: wrap !important;
		justify-content: space-between;
	}
	.teatment-content .wp-block-column{
		flex-basis: initial !important;
		flex-basis: 46% !important;
	}
	.teatment-content .wp-block-column:nth-of-type(n+3){
		margin-top: 30px;
	}
}
@media (max-width: 639px) {
	.teatment-content {
		display: block;
	}
	.teatment-content .wp-block-column {
		flex-basis: initial !important;
		width: 100%;
		margin-bottom: 15px;
		padding-bottom: 25px;
	}
	.teatment-content .wp-block-column p {
		padding: 0 15px 20px;
	}
	.teatment-content .wp-block-column:nth-of-type(1),
	.teatment-content .wp-block-column:nth-of-type(2),
	.teatment-content .wp-block-column:nth-of-type(3)  {
    	width: 100%;
    	margin-right: 0;
		margin-left: 0;
	}
    .teatment-content .wp-block-column figcaption{
        font-size: 18px;
    }
}

/*==========  TOPICS  ==========*/
.topics-content li {
	display: flex;
}
.topics-content li a {
	order: 2;
	margin-bottom: 0;
}
.topics-content li time {
	order: 1;
	margin-right: 35px;
	color: var(--vk-color-primary);
	font-weight: bold;
	width: 17%;
}
@media (max-width: 991px) {
	.topics-content li time {
		width: 25%;
		white-space: nowrap;
	}
	.topics-content li a {
		width: 60%;
	}
}


/*==========  スタッフブログ  ==========*/
.staff-blog{
	margin-top: 60px;
}
.staff-blog ul {
	margin-bottom: 20px;
	justify-content: space-between;
}
.staff-blog ul li {
	max-width: 342px;
	border: 1px solid #DBDBDB;
	background: #fff;
}
.staff-blog ul li h2 {
	font-size: 1rem;
	text-align: left;
	padding-left: 20px;
	padding-bottom: 0;
	margin-bottom: 12px;
}
.staff-blog ul li .wp-block-post-date {
	padding: 25px 20px 5px;
	color: #666666;
}
.staff-blog ul li .wp-block-post-excerpt {
	padding: 0 20px;
}
.staff-blog ul li .wp-block-post-excerpt__excerpt {
	font-size: 14px;
}
@media (max-width: 991px) {
	.staff-blog ul {
		flex-wrap: wrap !important;
		justify-content: space-around;
	}
	.staff-blog ul li {
		width: 48% !important;
	}
}
@media (max-width: 639px) {
	.staff-blog {
        margin-top: 30px;
    }
	.staff-blog ul{
		display: block;
	}
	.staff-blog ul li{
		width: 100% !important;
		max-width: 100%;
		margin-bottom: 15px !important;
	}
}

/*==========  こんなお悩み「解決」します  ==========*/
.solution-content {
	max-width: 1140px;
	margin: 0 auto 54px auto;
}
.solution-content .wp-block-columns {
	gap: initial !important;
}
.solution-content .wp-block-column figure {
	position: relative;
	display: inline-block;
}
.solution-content .wp-block-column figure img {
	max-width: 248px;
	max-height: 248px;
	height: auto;
	width: auto;
}
.solution-content .wp-block-column figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 20px;
	margin: 0 auto;
	text-align: center;
	color: #000;
	font-size: 1rem;
}
.solution-content .wp-block-columns {
	flex-wrap: wrap !important;
}
.solution-content .wp-block-column {
	display: flex;
	justify-content: center;
	flex-basis: 25% !important;
	flex-grow: 0 !important;
	margin-left: 0;
	margin-bottom: 1.75em;
}
@media (max-width: 991px) {
	.solution-content .wp-block-column {
		flex-basis: 33.3% !important;
	}
	/*
	.solution-content .wp-block-column:nth-of-type(even) figure {
		margin-left: 8px;
	}
	.solution-content .wp-block-column:nth-of-type(odd) figure {
		margin-left: 0;
		margin-right: 8px;
	}*/
	.solution-content .wp-block-column figure img {
		max-width: 100%;
	}
	.solution-content .wp-block-column figure {
		max-width: 100%;
		margin-left: 15px;
	}
	.solution-content .wp-block-column:not(:first-child),
	.solution-content .wp-block-column:nth-of-type(5) {
		margin-left: 0;
	}
	.solution-content .wp-block-columns:first-child {
		margin-bottom: 0;
	}
	.solution-content .wp-block-columns {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
	}
	.solution-content .wp-block-column figcaption {
		bottom: 20px;
	}
	/*
	.solution-content .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: 50%!important;
	}
	*/
}
@media (max-width: 639px){
    .solution-content .alignfull div[class*="__inner-container"] {
        max-width: 97%;
    }
	.solution-content .wp-block-group__inner-container .wp-block-column {
		flex-basis: 50% !important;
	}
    .solution-content .wp-block-column figcaption {
        font-size: 12px;
        bottom: 10px;
    }
}


/*==========  診療時間  ==========*/
.consultation-hour {
    margin: 60px auto 100px auto;
}
.consultation-hour table {
	text-align: center;
}
.consultation-hour table tr:first-of-type {
	background: var(--barb-color-primary-pale-dark);
	color: #fff;
}
.consultation-hour table tr {
	background: #fff;
}
.consultation-hour table tr td:first-of-type {
	font-weight: bold;
}
@media (max-width: 639px){
	.consultation-hour {
        margin: 30px auto 60px auto;
    }
	.consultation-hour table tr td{
		padding: 5px;
	}
}


/*==========  予約・受付  ==========*/
.reception-appoint{
	margin: 60px auto 40px auto;
}
.reception-appoint .address {
	background: #FBFAF5;
	padding: 15px 0 5px;
}
.reception-appoint .address .wp-block-group__inner-container {
	width: 63%;
	margin: 0 auto;
}
.reception-appoint .address .logo {
	font-size: 30px;
	margin: 0 0 5px;
}
.reception-appoint .address .location {
	margin-bottom: 10px;
}
.reception-appoint .address .phone {
	font-size: 42px;
	margin: 0;
	border-top: 1px dashed #C9AD8C;
}
.reception-appoint .address .note {
	border: 1px solid var(--barb-color-primary-pale-dark);
}
@media (max-width: 991px) {
	.reception-appoint .wp-block-image img {
		height: 450px;
		object-fit: cover;
	}
	.reception-appoint ul {
		width: 100%;
		padding: 10px 10px 10px 40px;
	}
	.reception-appoint .address {
		padding: 15px 0 20px;
	}
	.reception-appoint .address .wp-block-group__inner-container {
		width: 85%;
	}
	.reception-appoint .address .logo {
		font-size: 20px;
		margin: 0 0 5px;
	}
	.reception-appoint .address .phone {
		font-size: 24px;
	}
	.reception-appoint .notes_01{
		width: 100%;
	}
}
@media (max-width: 639px){
    .reception-appoint {
        margin: 30px auto 40px auto;
    }
	.reception-appoint .address {
        padding: 10px 0 1px;
    }
}

/*------  定休日  ------*/
.regular-holiday {
	align-items: baseline;
}
.regular-holiday .wp-block-column:last-of-type{
	margin-left: 0.5em;
}
.regular-holiday p {
	font-weight: bold;
	position: relative;
	padding-left: 20px;
}
.regular-holiday ul{
	margin: 0;
}
@media (max-width: 639px) {
	.regular-holiday .wp-block-column:last-of-type{
		margin-left: 0;
	}
	.regular-holiday .wp-block-column p {
		margin-bottom: 0;
	}
	.regular-holiday ul {
		display: block;
		border-top: 1px solid #d1d1d1;
		border-left: none;
		padding-left: 0;
		margin-top: 10px;
	}
}


/*==========  アクセス  ==========*/
.access-area .wp-block-column {
	flex-basis: 35%;
	border-left: 4px solid var(--barb-color-primary-pale-dark);
	padding-left: 15px;
}
.access-area .wp-block-column .sttl {
	color: #333333;
	font-size: 18px;
	margin-bottom: 10px;
}
@media (max-width: 991px) {
	.contents-layout_01 .wp-block-group__inner-container iframe {
		height: 400px;
	}
	.access-area {
		width: 100%;
		float: none;
	}
}
@media (max-width: 639px) {
	.contents-layout_01 .wp-block-group__inner-container iframe {
		height: 320px;
	}
	.access-area {
		display: block;
	}
	.access-area .wp-block-column:first-child {
		margin-bottom: 20px;
	}
}

/*==========  採用情報  ==========*/
.employment-info-content {
	padding: 120px 0;
}
.employment-info_area {
	max-width: 60%;
	margin: 0 auto;
	background: rgba(255, 255, 255, 0.8);
	padding: 50px;
	box-shadow: 3px 4px 4px #d1d1d1;
}
.employment-info_area table tr td {
	padding: 15px;
	font-size: 1rem;
}
@media (max-width: 991px){
	.employment-info_area {
		max-width: 100%;
		padding: 25px;
	}
}


/*==================================================
  パンくず
===================================================*/
#breadcrumb {
	border: none;
}
#breadcrumb .breadcrumb-list li:after {
	content: '>';
}
@media (max-width: 639px){
	#breadcrumb {
		margin-bottom: 50px;
	}
}


/*==================================================
  下層（固定）ページ
===================================================*/
/*------  下層（固定・投稿）ページ　ページヘッダー ------*/
.page-header {
	color: #fff;
	background: url(assets/image/under-page-header.jpg) no-repeat bottom;
	background-size: cover;
	background-position: center center;
	padding: 100px;
	margin-bottom: 30px;
	position: relative;
}
/* .page-header:after {
	content: '';
	background-color: rgba(0, 0, 0, .3);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
} */
@media (max-width: 639px){
	.page-header{
		padding: 100px 50px;
	}
}


/*==========  施術内容について  ==========*/
#treat-list {
	justify-content: space-between;
}
#treat-list .lr-image-text {
	flex-direction: row;
}
#treat-list .lr-image-text .treat-text {
	margin-left: 4em;
	margin-right: 0;
}
#treat-list .lr-text-image {
	flex-direction: row-reverse;
}
#treat-list .lr-text-image .treat-text {
	margin-left: 0;
	margin-right: 4em;
}

@media (max-width: 781px) {
	#treat-list .lr-text-image {
		flex-direction: row;
	}
	#treat-list .lr-image-text .treat-text {
		margin-left: 0;
		margin-right: 0;
	}
	#treat-list .lr-text-image .treat-text {
		margin-left: 0;
		margin-right: 0;
	}

}



/*==========  よくある質問  ==========*/
/*------  レイアウト　シンプル（01） ------*/
.faq-content_01{
    margin-bottom: 50px;
}
.faq-content_01 .q{
	border-bottom: 1px dashed #d1d1d1;
}
.faq-content_01 .a{
	border-bottom: 1px solid #c9c9c9;
}
.faq-content_01 .q .q-column,
.faq-content_01 .a .a-column
{
    flex-basis: content;
	margin-left: 2.5em;
}
.faq-content_01 .q p.mark{
    background: #21a68d;
    padding: 10px;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    color: #fff;
    text-align: center;
    font-weight: bold;
}
.faq-content_01 .a p.mark{
    background: #cf4545;
    padding: 10px;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    color: #fff;
    text-align: center;
    font-weight: bold;
}
@media (max-width: 781px) {
	.faq-content_01 .q,
	.faq-content_01 .a{
		display: block;
	}
	.faq-content_01 .q .q-column,
	.faq-content_01 .a .a-column{
		margin-left: 0;
	}
	.faq-content_01 .q p.mark,
	.faq-content_01 .a p.mark{
		margin: 0 auto 20px auto;
	}
}

/*------  レイアウト　吹き出し（01） ------*/
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	font-family: 'FontAwesome', sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa dt,.cp_qa dd {
	position: relative;
	padding: 10px 15px;
	border-radius: 0.3em;
}
.cp_qa dt {
    margin: 0 3em 1em 3em;
    background: #ffffff;
    border: 5px solid #f5f5f5;
}
.cp_qa dd {
	margin: 0 3em 3em 3em;
	background: #f5f5f5;
}
/* 吹き出し▶︎ */
.cp_qa dt::before,.cp_qa dd::before{
	position: absolute;
	z-index: 99;
	top: 0.5em;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
}
/* 質問吹き出し▶︎ */
.cp_qa dt::before {
	left: -20px;
    border-width: 5px 15px 5px 0;
    border-color: transparent #f5f5f5 transparent transparent;
}
/* 答え吹き出し▶︎ */
.cp_qa dd::before {
	right: -0.5em;
	border-width: 5px 0 5px 8.7px;
	border-color: transparent transparent transparent #f5f5f5;
}
/* ?!アイコン */
.cp_qa dt::after,.cp_qa dd::after {
	font-size: 1.5em;
	position: absolute;
	top: 0;
	color: #ffffff;
	border-radius: 50%;
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.2em;
}
/* ?アイコン */
.cp_qa dt::after {
	left: -2.5em;
    margin: 0 0.5em 0 0;
    padding: 6px 5px 5px 7px;
    background: #00a98c;
    content: 'Q';
}
/* !アイコン */
.cp_qa dd::after {
    right: -2.5em;
    margin: 0 0 0 0.5em;
    padding: 6px 5px 5px 9px;
    content: 'A';
    background: #e0353e;
}

/*==========  お問合せ  ==========*/
.wpcf7 input,
.wpcf7 textarea {
    font-family: "Arial", "Helvetica Neue", Helvetica, Arial, "Yu Gothic Medium", "游ゴシック Medium", "游ゴシック体", "YuGothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ ゴシック", sans-serif;
    max-width: 100%;
    margin-bottom: 0;
}
.wpcf7 .row {
    display: flex;
    width: 90%;
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #ccc;
    border-left: 0;
    border-right: 0;
    margin: 0 auto;
}
.wpcf7 .row:last-child {
    border-width: 1px;
}
.wpcf7 .row .column {
    padding: 20px 30px;
}
.wpcf7 .row .column:first-child {
    display: flex;
    align-items: center;
    flex-basis: 30%;
    background-color: rgba(240, 240, 240, .5);
}
.wpcf7 .row .column:last-child {
    flex-basis: 70%;
}
.wpcf7 .row .column .required:before,
.wpcf7 .row .column .optional:before {
    padding: 8px 12px;
    color: #fff;
    font-weight: normal;
    font-size: .7em;
    border-radius: 4px;
    margin-right: 20px;
}
.wpcf7 .row .column .optional:before {
    content: '任意';
    background-color: #666;
}
.wpcf7 .row .column .required:before {
    content: '必須';
    background-color: #ed5855;
}
.wpcf7-form .wpcf7-submit {
	background: var(--vk-color-primary);
    display: block;
    margin: 20px auto;
    transition: background .5s;
    border-radius: 0;
    border: 0;
    width: 30%;
    padding: 20px 0;
}
.wpcf7-form .wpcf7-submit:hover {
	background: var(--vk-color-primary-vivid);
}
@media screen and (max-width: 639px) {
    .wpcf7 .row {
        flex-wrap: wrap;
		width: 98%;;
    }
    .wpcf7 .row .column {
        max-width: 100%;
    }
    .wpcf7 .wpcf7-form .row .column {
        flex-basis: 100%;
    }
	.wpcf7-form .wpcf7-submit{
		width: 95%;
	}
}


/*==================================================
  下層（投稿）ページ
===================================================*/
/*==========  投稿記事（一覧）  ==========*/
/*------  TOPICS ------*/
/*
.post-entry{
	border-bottom: 1px solid #e6e6e6;
    margin-bottom: 60px;
}
.post-entry .vk_post_date{
	font-size: 0.8rem;
    margin-bottom: 5px !important;
    color: #666;
}
*/

.post-list.vk_posts .vk_post_title {
	margin-bottom: var(--vk-margin-headding-bottom);
}
.vk_post .vk_post_date {
	font-size: .8em;
}

.entry-body>.vk_posts>.vk_post-col-lg-12 .vk_post_excerpt,
.main-section>.vk_posts>.vk_post-col-lg-12 .vk_post_excerpt {
	font-size: 16px;
}
@media (min-width: 992px) {
	.entry-body>.vk_posts>.media.vk_post-col-lg-12,
	.main-section>.vk_posts>.media.vk_post-col-lg-12 {
		padding-bottom: 0;
	}
}
@media (min-width: 576px) {
	.entry-body>.post-list.vk_posts>.media.vk_post-col-sm-12:first-child,
	.main-section>.post-list.vk_posts>.media.vk_post-col-sm-12:first-child {
		border-top: 0;
	}
	.entry-body>.post-list.vk_posts>.media.vk_post-col-sm-12,
	.main-section>.post-list.vk_posts>.media.vk_post-col-sm-12 {
		margin-bottom: 32px;
	}
}


/*==================================================
  フッター
===================================================*/
.site-footer {
	padding-top: 20px;
	border-top: 0;
	background: var(--color-gradient-light);
}
.site-footer .site-footer-content{
	margin-bottom: 80px;
}
.site-footer-copyright {
	width: 100%;
	background: #333;
	max-width: 100%;
}
.site-footer-copyright p,
.site-footer-copyright p a {
	color: #fff;
}
.site-footer .phone a:link{
	color: #333;
	text-decoration: none;
}
.site-footer .row {
	max-width: 1140px;
	margin: 0 auto;
	justify-content: space-between;
}
.site-footer .reserve .wp-block-button{
	border: none;
}
.site-footer .wp-block-button__link {
    background: var(--color-gradient-rev);
    border-radius: unset;
}
.site-footer .widget_nav_menu>div>ul {
	width: 340px;
    column-count: 2;
}
.site-footer .widget_nav_menu ul li a{
	font-size: 14px;
	background-color: unset !important;
	border-bottom: 1px solid #d1d1d1;
}
@media (min-width: 992px) {
	.col-lg-4 {
		max-width: 30%;
		flex: auto;
	}
	.col-lg-4:nth-of-type(1) {
		max-width: 25%;
		padding: 0;
	}
	.col-lg-4:nth-of-type(1) aside.widget{
		margin: 0 auto;
	}
	.col-lg-4:nth-of-type(1) .address{
		margin-bottom: 10px;
    	font-size: 16px;
	}
	.col-lg-4:nth-of-type(1) .btn_contact_02 {
		width: 100%;
		margin-top: 10px;
	}
	.col-lg-4:nth-of-type(1) .btn_contact_02 a{
		display: block;
		border-radius: 0;
		background: var(--vk-color-primary);
		padding: calc(0.667em + 2px) calc(1.333em + 2px);
	}
	.col-lg-4:nth-of-type(2) {
		max-width: 41%;
		font-size: 16px;
		padding: 0 15px;
	}
	.col-lg-4:nth-of-type(3) {
		padding: 0;
	}
}

.site-footer .col-lg-4:nth-of-type(1) .phone a {
	width: 236px;
	border-radius: 0;
}
.site-footer .col-lg-4:nth-of-type(2) aside {
	margin-bottom: 10px
}
.site-footer .col-lg-4:nth-of-type(2) aside p {
	margin-bottom: 0;
}
.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container {
	display: flex;
	align-items: center;
}
.site-footer .phone a{
	margin-right: 20px;
    font-size: 24px;
	font-family: Arial, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    font-weight: bold;
    margin-bottom: 0;
    padding-left: 33px;
    position: relative;
}
.site-footer .phone a:before{
	position: absolute;
    display: block;
    content: "";
    background: url(assets/image/ico_phone_01.png) no-repeat;
    background-size: contain;
    width: 22px;
    height: 22px;
    top: 0;
    left: 0;
}
.site-footer .col-lg-4:nth-of-type(1) .wp-block-buttons,
.site-footer .col-lg-4:nth-of-type(1) .wp-block-buttons>.wp-block-button,
.site-footer .col-lg-4:nth-of-type(2) .wp-block-buttons,
.site-footer .col-lg-4:nth-of-type(2) .wp-block-buttons>.wp-block-button{
	display: block;
}
.site-footer .col-lg-4:nth-of-type(2) .wp-block-buttons{
	width: 48%;
}
.site-footer .col-lg-4:nth-of-type(1) .wp-block-buttons .wp-block-button a,
.site-footer .col-lg-4:nth-of-type(2) .wp-block-buttons .wp-block-button a {
	width: 100%;
	padding: 12px;
	border-radius: 5px;
}
@media (max-width: 991px) {
	.site-footer .container {
		max-width: 100%;
	}
	.site-footer .row {
		max-width: 100%;
		justify-content: space-between;
	}
	.col-md-6 {
		max-width: 33%;
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container{
		display: block;
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container .phone {
		font-size: 20px;
		margin-bottom: 10px;
		text-align: center;
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-buttons {
		width: 100%;
	}
	.site-footer .widget_nav_menu>div>ul {
		display: block;
		column-count: initial;
		width: initial;
	}
	.site-footer .widget_nav_menu>div>ul li {
		width: 100%;
	}
}
@media (max-width: 639px) {
	.site-footer .site-footer-content p{
        font-size: 14px;
    }
	.site-footer .row {
		display: block;
		max-width: 100%;
	}
	.site-footer aside .wp-block-buttons,
	.site-footer aside .wp-block-buttons>.wp-block-button{
		display: block;
	}
	.site-footer .col-lg-4 .wp-block-button a{
		display: block;
		width: 100%;
		padding: 12px;
		border-radius: 0;
	}
	.col-md-6,
	.col-lg-4:nth-of-type(3) {
		max-width: 100%;
	}
	.site-footer .col-lg-4:nth-of-type(1) img {
		max-width: 80%;
		margin: 0 auto;
	}
	.site-footer .col-lg-4:nth-of-type(1) aside.widget_text {
		margin: 0 auto;
		text-align: center;
	}
	.site-footer .col-lg-4 .phone .wp-block-button,
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-button {
		width: 100%;
	}
	.site-footer .col-lg-4:nth-of-type(1) .phone a {
		width: 100%;
		padding: 20px 0;
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container .wp-block-button a {
		width: 100%;
		padding: 12px;
		border-radius: 0;
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container {
		display: block;
		text-align: center;
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container .phone a{
		font-size: 24px;
		margin-bottom: 10px;
		color: #333;
		text-decoration: none;
		padding-left: 23px
	}
	.site-footer .col-lg-4:nth-of-type(2) .wp-block-group__inner-container .phone a::before {
		width: 18px;
		height: 18px;
		top: 3px;
		left: -8px;
	}
	.col-md-6, .col-lg-4:nth-of-type(3) {
        max-width: 100%;
    }
	.site-footer .widget_nav_menu>div>ul {
        display: block;
        margin-left: 0;
        column-count: initial;
        width: 100%;
    }
    .site-footer .widget_nav_menu>div>ul li {
        font-size: 14px;
        width: 100%;
    }
	.site-footer .col-lg-4:nth-of-type(2) aside p {
		text-align: center;
	}
}


/*==================================================
  リンク・ボタン等
===================================================*/
/*------  リンク色の設定  ------*/
a:link,a:visited{
	color: #333;
	text-decoration: none;
}
a:hover{
	color: var(--vk-color-primary-vivid);
}

/*------  「詳細を見る」ボタン（01）  ------*/
.more-link_01 {
	text-align: right;
	margin-top: 40px;
	margin-right: 25px;
}
.more-link_01 a {
	text-decoration: none;
	color: var(--vk-color-primary);
	font-weight: bold;
	position: relative;
}
.more-link_01 a:before {
	position: absolute;
	display: block;
	font-family: "Font Awesome 5 Free";
	content: "\f178";
	font-weight: 900;
	right: -25px;
}

/*------  「詳細を見る」ボタン（02）  ------*/
.more-link_02{
	text-align: right;
}
.more-link_02 a{
    background: #ff5200;
    padding: 10px 20px;
    color: #fff;
    font-size: 0.8rem;
    text-decoration: none;
}

/*------  リンクボタン  ------*/
.wp-block-buttons .wp-block-button__link {
	border-radius: 0;
}
.wp-block-buttons.is-content-justification-center,
.wp-block-buttons.is-content-justification-right {
	display: flex;
}
.btn_layout {
	width: 100%;
	display: flex;
	gap: 0.5em;
	flex-wrap: wrap;
	align-items: center;
}
.btn_layout a {
	width: 16em;
	background: var(--vk-color-primary);
	color: #fff;
}
/*------  リンクボタン（01）  ------*/

.btn_layout_01 {
	justify-content: right;
}

@media (max-width: 639px){
	.btn_layout_01 {
		justify-content: center;
	}
}

/*------  リンクボタン（02）  ------*/
.btn_layout_02 {
	justify-content: center;
}

.btn_layout_01.center-button a {
	width: 16em;
	background: var(--vk-color-primary);
	color: #fff;
	border-radius: 0 !important;
}

/*------  コンタクトボタン（01）  ------*/
.btn_contact_01 a {
	border-radius: 0 !important;
	padding: calc(.75em + 2px) calc(5.78em + 2px);
}

/*==================================================
  定義リスト
===================================================*/
/*------  リスト(01)  ------*/
ul.notes_01 {
    width: 60%;
    margin: 0 auto;
    border: solid 4px #eee;
    border-radius: 10px;
    padding: 20px 20px 20px 45px;
    list-style: none;
    margin-bottom: 30px;
}
ul.notes_01 li{
	position: relative;
}
ul.notes_01 li:before {
    position: absolute;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background: var(--vk-color-primary);
    border-radius: 50%;
    top: 8px;
    left: -20px;
}
@media (max-width: 991px){
    ul.notes_01 {
        width: 100%;
    }
    ul.notes_01 li:before{
        width: 8px;
        height: 8px;
    }
}

/*------  リスト(02)  ------*/
ul.notes_02{
	display: flex;
    flex-wrap: wrap;
}
ul.notes_02 li{
    color: #333;
    margin-right: 30px;
    position: relative;
    list-style: none;
    padding-left: 20px;
}
ul.notes_02 li:before{
	content: "";
    display: block;
    position: absolute;
    width: 10px;
    height: 10px;
    background: var(--vk-color-primary-dark);
    border-radius: 50%;
    left: 0;
    top: 8px;
}


/*==================================================
  文字装飾・囲い枠等
===================================================*/
/*------  赤字に（円形（赤））アイコン  ------*/
.sub-ttl{
	color: var(--vk-color-primary-dark) !important;
    font-weight: bold;
    position: relative;
    padding-left: 20px;
}
.sub-ttl:before {
	position: absolute;
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border: solid var(--vk-color-primary-dark) 3px;
	border-radius: 50%;
	top: 8px;
	left: 0;
}

/*------  （下向き三角（青））アイコン  ------*/
.sub-ttl_blue-tri_01{
    position: relative;
	padding-left: 20px;
}
.sub-ttl_blue-tri_01:before{
	content: "";
    position: absolute;
    border-top: 10px solid #2b6cb2;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    top: 8px;
    left: 0;
}

/*------  灰色（線）囲い枠（01）  ------*/
.bdr-gray_01{
	border-bottom: 1px solid #eee;
}

/*------  灰色（線）囲い枠（02）  ------*/
.bdr-gray_02{
    padding: 20px 15px;
    margin-bottom: 20px;
    border: 6px solid #f5f5f5;
}

/*------  灰色（背景）囲い枠（01）  ------*/
.bak-gray_01{
    padding: 20px;
    margin-bottom: 20px;
    background-color: #f7f7f7;
}

/*==================================================
  テーブルレイアウト
===================================================*/
/*------ レスポンシブ（無）  ------*/
.tdl-layout_01{
	margin-bottom: 0;
}
.tdl-layout_01 table tr td{
	white-space: nowrap;
}
.tdl-layout_01 table tr td:first-child{
	background: #f5f5f5;
	text-align: center;
	padding: 10px;
}

/*------ レスポンシブ（有）  ------*/
.tbl-rwd_01{
	margin-bottom: 0;
}
.tbl-rwd_01 table tr td:nth-child(odd){
	background: #f5f5f5;
	text-align: center;
	padding: 10px;
}
@media (max-width: 639px){
	.tbl-rwd_01 table tr td{
		display: block;
	}
}


/*==================================================
  お問合せ
===================================================*/
#faq {
    padding: 1.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin-bottom: 2rem;
}

#faq p {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

#faq p:nth-of-type(odd) {
	margin-bottom: 0;
}

input[type="text"] {
	width: auto;
}
/*==================================================
  会社概要
===================================================*/
#about-table td {
	font-size: 1em;
}

@media (min-width: 782px) {
	.our-philosophy .wp-block-column:has(figure) {
		max-width: 33.3%;
	}

	.our-philosophy .wp-block-column p {
		font-size: 20px;
	}


}

@media (max-width: 781px) {
	#about-table td {
		display: block;
	}

	#about-table td:first-child {
		text-align: center;
		font-weight: bold;
		background: #f5f5f5;
	}

	.sp-reverse {
		flex-direction: column-reverse;
	}
}

.page-header-title {
text-shadow: -3px 3px 6px rgba(31, 71, 81, 0.75), 3px -3px 6px rgba(31, 71, 81, 0.75), -3px -3px 6px rgba(31, 71, 81, 0.75), 3px 3px 6px rgba(31, 71, 81, 0.75);
}
