/*
Theme Name: Wellness-MA
Text Domain: Wellness-MA
Author: ADLIV
Author URI: https://www.adliv.co.jp
Description: Full-Custom Wordpress Theme
Version: 1.0
Requires at least: 5.0
Tested up to: 5.5.1
Requires PHP: 5.6
*/
/*******************************************
*** Header & Footer
********************************************/
.header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    padding: 0;
    z-index: 10000
}

.header .first_line {
    position: fixed;
    width: 100%;
    background: #fff;
    padding: 0 1rem;
	transition: transform 0.3s ease;
    z-index: 9999;
    top: 0;
}

.header .first_line .inner_wrap {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: .85rem 0
}

.header__logo {
    display: block;
    max-width: 316px;
    transition: opacity .3s
}

@media(hover: hover) {
    .header__logo:hover {
        opacity: .8;
    }
}
.header_btn_wrap{
	display: flex;
	align-items: center;
	gap: 1rem;
}
:is(.header__news, .header__company, .header__recruit){
	font-size: .75rem;
	font-weight: 700;
	padding: .15rem;
	border-bottom: 1px solid #fff;
}
:is(.header__news, .header__company, .header__recruit) span{
	font-size: .6rem;
	color: #04549f;
	margin-right: .5rem;
}
:is(.header__news, .header__company, .header__recruit):hover{
	border-bottom: 1px solid #000;
}
a.header__contact {
    display: block;
	border-radius: 8px;
    color: #fff;
	padding: 1rem;
    line-height: 0;
}
a.header__contact:after{
	border-radius: 8px;
}
a.header__contact img{
	max-width: 122px;
	margin: 0 auto;
}

.header__gNav {
    background: #001C58;
	position: fixed;
    width: 100%;
    transition: top 0.3s ease;
    z-index: 9998;
}

.header__gNav ul {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto
}

.header__gNav ul li {
    position: relative;
    width: 20%;
    padding: 1.7741935484vw 0;
    line-height: 1;
    text-align: center
}

.header__gNav ul li+li:before {
    content: "";
    display: block;
    max-width: 1px;
    width: 0.0806451613vw;
    max-height: 40px;
    height: 3.2258064516vw;
    position: absolute;
    top: 50%;
    left: -0.0403225806vw;
    background: #fff;
    transform: translateY(-50%)
}
@media(hover: hover) {
    .header__gNav ul li:hover {
        opacity:.7
    }
}

.header__gNav ul li a {
    color: #fff;
    font-weight: 700
}

.header__gNav_trigger {
    display: none
}

.header__gNav_sp {
    display: none
}

@media screen and (min-width: 1240px) {
    .header .first_line {
        padding:0 20px
    }

    .header .first_line .inner_wrap {
        padding: 10px 0
    }

    .header__contact {
        box-shadow: 0 4px 4px 0 rgba(0,0,0,.1)
    }

    .header__gNav ul li {
        padding: 22px 0
    }

    .header__gNav ul li+li:before {
        left: -0.5px
    }
}
.sp_float a{
	display: none;
}
@media screen and (max-width: 767px) {
    .header {
        width:100vw
    }

    .header.is-current .icon {
        display: flex
    }

    .header .first_line {
        padding: 0 3.5294117647vw;
    }

    .header .first_line .inner_wrap {
        display: flex;
        flex-flow: row nowrap;
        justify-content: space-between;
        align-items: center;
        max-width: 1200px;
        width: 100%;
        margin: 0 auto;
        padding: 5vw 0
    }

    .header__logo {
        width: 70vw;
    }
    :is(.header__news, .header__company, .header__recruit, .header__contact){
		display: none;
	}
    .sp_float a{
		position: fixed;
		display:flex;
		z-index: 99999;
		justify-content: center;
		align-items: center;
        width: calc(100vw + 2px);
		height: 80px;
        left: -1px;
        bottom: -1px;
        box-shadow: none;
        border-radius: 0;
		background: linear-gradient( 45deg, #eb6100 0%, #f28e26 25%, #e60012 100%);
    }
	a.header__contact {
        display: none!important;
	}
    .header__gNav {
        display: none
    }

    .header__gNav_trigger {
        position: relative;
        display: block;
        width: 7.0588235294vw;
        height: 2.3529411765vw;
        border: none;
        background: rgba(0,0,0,0)
    }

    .header__gNav_trigger u {
        height: 0;
        font-size: 0;
        opacity: 0;
        overflow: hidden
    }

    .header__gNav_trigger span {
        position: absolute;
        left: 50%;
        display: block;
        width: 100%;
        height: 0.2352941176vw;
        background: #001C58;
        transform: translate(-50%, -50%);
        transition: transform .3s,top .3s,opacity .3s
    }

    .header__gNav_trigger span:first-of-type {
        top: 0
    }

    .header__gNav_trigger span:nth-of-type(2) {
        top: 50%
    }

    .header__gNav_trigger span:last-of-type {
        top: 100%
    }

    .header__gNav_trigger.active span {
        top: 50%
    }

    .header__gNav_trigger.active span:first-of-type {
        transform: translate(-50%, -50%) rotate(45deg)
    }

	.header__gNav_trigger.active span:nth-of-type(2) {
        opacity: 0
    }

    .header__gNav_trigger.active span:last-of-type {
        transform: translate(-50%, -50%) rotate(-45deg)
    }
    .header__gNav.active {
        position: fixed;
        top: 16.9788235294vw;
        right: 100vw;
        left: -100vw;
        display: block;
        padding: 0;
        overflow-y: scroll;
        background: rgba(1,37,67,.8);
        z-index: 10;
        transition: right .3s,left .3s
    }

    .header__gNav.active {
        right: 0;
        left: 0
    }

    .header__gNav.active > ul {
		flex-wrap: wrap;
        width: 100vw;
        color: #fff
    }

    .header__gNav > ul > li {
		width: 100%;
		padding: 2rem 0;
        border-top: 1px solid rgba(6,90,163,0.2);
		background: #001C58;
        box-sizing: border-box
    }

	.header__gNav > ul > li a{
		color: #fff;
	}
	.header__gNav ul li+li:before{
		content: none;
	}
}

.footer {
    color: #fff;
    background: -webkit-linear-gradient( -90deg, rgba(1,0,32,0.99608) 0%, rgb(0,73,134) 100%);
	padding: 4rem 0 0;
}
.footer a{
	color: #fff;
}
.footer .inner_wrap{
	flex: 1 1 500px;
}
.footer .inner_wrap > ul > li{
	margin-bottom: 1rem;
}
.footer .inner_wrap > ul > li > a{
	font-size: 1.125rem;
}
.footer .inner_wrap > ul > li > ul > li > a{
	font-size: 1rem;
}
.footer .inner_wrap > ul:last-of-type{
	text-align: right;
}
.footer p.address{
	padding-left: 5rem;
}
.footer small {
    display: block;
    width: 100%;
    padding: 2.6612903226vw 0;
    font-size: .875rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    background: #000
}

@media screen and (min-width: 1240px) {
    .footer .inner_wrap {
        padding:52px 20px 55px
    }
	
}

@media screen and (max-width: 767px) {
	.footer {
		padding-bottom: 80px;
	}
    .footer small {
        padding: 6.7941176471vw 0
    }
	.footer .inner_wrap > ul:last-of-type{
		text-align: left;
	}
	.footer .inner_wrap > ul > li{
		border-top: 1px solid #fff;
    	padding-top: 1rem;
	}
	.footer .inner_wrap > div {
		margin-bottom: 4rem;
	}
}

/*******************************************
*** Top Page
********************************************/
.inview {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px)
}
.top section.fv{
	line-height: 0;
}
.top section:is( .intro, .merit, .knowledge, .column, .company, .news ) {
	padding: 6rem 0;
}
.top section:is( .reason, .merit, .knowledge, .news ) {
	background: #f3f4f6;
}
.title {
	text-align: center;
	margin-bottom: 4rem;
}
.btn_wrap{
	margin-top: 2rem;
}
.btn_wrap .title{
	margin-bottom: 1rem;
}
.top section:is( .knowledge, .company ) p{
	margin-bottom: 2rem;
}
div.knowledge{
	padding-top: 4rem;
}
.top .intro {
	background: center / cover no-repeat url(./assets/img/home/intro_bg.webp);
}
.top .intro_problem{
	line-height: 0;
}
.top .intro .intro_box{
	background: #fff;
	border-radius: 2rem;
	padding: 2rem;
	text-align: center;
}
.top .intro_box .intro_catch{
	padding: 1rem 1rem;
    border-top: 2px solid var(--sub-color);
    border-bottom: 2px solid var(--sub-color);
    color: var(--sub-color);
    font-weight: 900;
    font-size: 2.4rem;
}
.top .intro_box .intro_catch span{
	background: linear-gradient(transparent 60%, #f0ff00 40%);
}
.top .intro .intro_box > h3{
	margin-bottom: 1rem;
}
.top .intro .text_block{
	background: #000;
	color: #fff;
	font-size: 1.2rem;
	padding: .6rem 1.2rem;
	margin-right: 1rem;
}
.top .intro .gradation{
	background: linear-gradient(0deg, #010020 0%, #004986 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	font-size: 2.4rem;
}
.top .intro .intro_box .lead{
	font-weight: 800;
	font-size: 1.2rem;
	margin-top: 1rem;
}
.top .knowledge .flex_wrap > div {
	margin-bottom: 2rem;
}
.merit_box{
	background: #fff;
	border-radius: 1rem;
	margin-bottom: 2rem;
	box-shadow: 0 0 .5rem rgba(0,0,0,.2);
}
.merit .title_wrap h3{
	position: relative;
	font-size: 1.5rem;
    padding: 1rem;
	padding-left: calc(120px + 5rem);
    border-radius: 1rem 1rem 0 0;
}
.merit .title_wrap h3 .icon{
	position: absolute;
    left: 0;
    top: 0;
	display: flex;
    align-items: center;
	width: calc(120px + 4rem);
    height: 100%;
    padding: 0 2rem;
    background: linear-gradient( 90deg, #010020 0%, #004986 100%);;
    border-radius: .5rem 0 0 0;
}
.merit_box_inner {
	padding: 2rem;
}
.merit_box_inner p{
	margin-top: 1rem;
}
.reason .title_wrap{
	padding: 8rem 0;
	background: center top / cover no-repeat url(./assets/img/home/reason_title_bg.webp)
}
.reason .title_wrap h2{
	margin: 0;
	color: #fff;
}
.reason{
	padding-bottom: 4rem;
}
.reason p.lead{
	margin: 4rem auto;
	text-align: center;
	font-size: 1.2rem;
}
.reason p.lead span{
	color: var(--sub-color);
	font-weight: 800;
	font-size: 2rem;
}
.reason .reason_box,
.service_box {
	padding: 2rem;
	background: #fff;
	border-radius: .5rem;
}
.service{
	background: center top / cover no-repeat url(./assets/img/home/service_bg.webp);
	padding: 6rem 0;
}
.service .title_wrap{
	line-height: 0;
}
.service .service_box > div {
	margin-bottom: 2rem;
}
@media screen and (max-width: 768px){
	.title{ margin-bottom: 2rem; }
	.top .intro .text_block{ font-size: 1rem; }
	.reason .reason_box > div { margin-bottom: 2rem; }
	.top .intro_box .intro_catch{ font-size: 1.7rem; }
	.intro_box .intro_catch { font-size: 1.7rem; }
	.merit .title_wrap h3{ padding-left: calc(120px + 3rem); }
	.merit .title_wrap h3 .icon{ width: calc(120px + 2rem); padding: 0 1rem; }
}

/*******************************************
*** Page
********************************************/
.message_box {
	width: 100%;
	text-align: center;
	font-size: 1.25rem;
	font-weight: 800;
	padding: 1rem;
	color: var(--sub-color);
	border: 1px solid var(--sub-color);
	border-radius: .5rem;
}
.lower .fv{
	padding: 8.5rem 0;
	background-color: rgba(0,0,0,.2);
	text-align: center;
}
.lower .fv h1{
	color: #fff;
}
.lower .page_contents{
	padding: 0 0 6rem;
}
.lower .page_contents .intro{
	padding-top: 6rem;
}

.lower h3 + p + a{
	margin: 2rem auto;
}

.lower article h2 + img + p {
	margin: 1rem auto 4rem;
}

.lower article h3 + p,
.lower article table + p,
.lower article ul + p,
.lower article div + p {
	margin-bottom: 3rem;
}

.lower .intro .title{
	color: #000;
}
.lower .intro .title span{
	color: #00479d;
}
#contact .page_contents{
	padding-top: 6rem;
}
#contact .form_wrap {
	background: #f3f4f6;
	padding: 1rem;
	border-radius: 1rem;
}
#contact .contact_flow {
	width: 100%;
	max-width: 800px;
	margin: 1rem auto 2rem;
}
#contact .form_wrap table {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
#contact .form_wrap table :is(th, td){
	display: block;
	width: 100%;
}
#contact .form_wrap table :is(th, td) :is(input, textarea){
	width: 100%;
	padding: 1rem;
	border-radius: .5rem;
	border: 1px solid #00479d;
}
#contact .form_wrap table th{
	position: relative;
	font-size: 1.125rem;
	color: #000;
	text-align: left;
	padding: 1rem 0;
}
#contact .form_wrap table th:before{
	content: "■";
	color: #002e73;
	margin-right: 1rem;
}
#contact .form_wrap table th.required:after {
	content: "必須";
	color: #fff;
	background: #e74750;
	padding: .25rem 1rem;
	font-size: .625rem;
	margin-left: 1rem;
	border-radius: 100vh;
}
#contact .confirm-btn {
	position: relative;
	display: block;
	width: 100%;
	max-width: 460px;
	margin: 2rem auto;
	padding: 1rem 2rem;
	background: linear-gradient( 45deg, #eb6100 0%, #f28e26 25%, #e60012 100%);
	transition: background 0.5s;
	border: none;
	font-size: 1.2rem;
	font-weight: 800;
	color: #fff;
	cursor: pointer;
	z-index: 1;
}
#contact .confirm-btn:hover{
	background: linear-gradient( -45deg, #eb6100 0%, #f28e26 25%, #e60012 100%);
}
#contact .back-btn {
	position: relative;
	display: block;
	width: 100%;
	max-width: 460px;
	margin: 2rem auto;
	padding: 1rem 2rem;
	background: #aaa;
	transition: all 0.5s;
	border: none;
	font-size: 1.2rem;
	font-weight: 800;
	color: #fff;
	cursor: pointer;
	z-index: 1;
}
#contact .back-btn:hover{
	opacity: .8;
}
#contact table ul{
	display: flex;
	gap: 1rem;
}
#contact input[type=radio] {
    position: absolute;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    visibility: hidden;
    width: 0;
    height: 0;
}
#contact label span {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    padding: .5rem 1rem;
    color: #000;
    font-weight: 700;
    border: 1px solid #00479d;
    border-radius: 1rem;
    background: #fff;
}
#contact input[type=radio]:checked + span {
    color: #fff;
    background: #00479d;
}
#contact tr.index-row td input {
    width: calc(100% - 2rem);
}
#contact tr.index-row td span {
	margin-left: .5rem;
	font-weight: bold;
}
#contact .thanks-text {
	width: 100%;
	max-width: 800px;
	margin: 0 auto 2rem;
}
#casestudy .casestudy {
	background: #f3f4f6;
	margin-top: 6rem;
	padding: 6rem 0;
}
#casestudy .casestudy_box{
	background: #fff;
	border-radius: 1rem;
	margin-bottom: 2rem;
	box-shadow: 0 0 .5rem rgba(0,0,0,.2);
}
#casestudy .casestudy .title_wrap h3{
	position: relative;
	font-size: 1.5rem;
    padding: 1rem;
	background: #e6e6e6;
	padding-left: calc(120px + 5rem);
    border-radius: 1rem;
	text-shadow:
		1px 1px 0 #FFF, -1px -1px 0 #FFF,
		-1px 1px 0 #FFF, 1px -1px 0 #FFF,
		0px 1px 0 #FFF,  0-1px 0 #FFF,
		-1px 0 0 #FFF, 1px 0 0 #FFF;
}
#casestudy .casestudy .title_wrap.active h3{
	border-radius: 1rem 1rem 0 0;
}
#casestudy .casestudy .title_wrap h3 .icon{
	position: absolute;
    left: 0;
    top: 0;
	display: flex;
    align-items: center;
	width: calc(120px + 4rem);
    height: 100%;
    padding: 0 2rem;
    background: linear-gradient( 90deg, #010020 0%, #004986 100%);;
    border-radius: 1rem 0 0 1rem;
}
#casestudy .casestudy .title_wrap.active h3 .icon{
	border-radius: 1rem 0 0 0;
}
#casestudy .casestudy_box_inner{
	opacity: 0;
}
#casestudy .casestudy_box_inner.active {
	opacity: 1;
	padding: 2rem;
}
#casestudy .casestudy_box_inner p{
	margin-top: 1rem;
}
#casestudy .casestudy_box_inner li{
	margin-bottom: 1rem;
}
#casestudy .casestudy_box_inner dt{
	display: block;
	background: #00479d;
	color: #fff;
	font-weight: 800;
	padding: .5rem 1rem;
	letter-spacing: 1px;
}
#casestudy .casestudy_box_inner dd{
	display: block;
	background: #e6e6e6;
	color: #00479d;
	font-size: 1.125rem;
	font-weight: 800;
	padding: 1rem;
}
.accordion-trigger {
    cursor: pointer;
    position: relative;
}

.accordion-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    font-weight: bold;
    color: #666;
}

.accordion-trigger.active .accordion-icon {
    transform: translateY(-50%) rotate(45deg);
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease;
}

.accordion-content.active {
    max-height: 1000px;
}
#casestudy .closing{
	padding-top: 6rem;
}
#casestudy .closing p{
	text-align: center;
}
@media screen and (max-width: 768px){
	#casestudy .casestudy .title_wrap h3{ padding-left: calc(120px + 3rem); }
	#casestudy .casestudy .title_wrap h3 .icon{ width: calc(120px + 2rem); padding: 0 1rem; }
}

.index{
	padding: 4rem 0;
	background: #f3f4f6;
}
.index_box {
	position: relative;
	background: #fff;
	padding: 2rem;
	border-radius: 1rem;
	border: 1px solid #00479d;
}
.index h2{
	position: absolute;
    top: -2.325rem;
    left: 1.5rem;
    margin: 0;
}
.index h2 span{
	font-size: 1rem;
	color: #fff;
	background: #00479d;
	padding: .5rem 1rem;
	border-radius: 100vh;
}
.index_box ul{
	counter-reset: listnum;
	list-style: none;
}
.index_box ul li {
	margin-bottom: .75rem;
}
.index_box ul li a{
	font-size: 1.125rem;
	color: #001c58;
	font-weight: 800;
}
.index_box ul li a:before {
	counter-increment: listnum;
	content: "0"counter(listnum);
	color: #00479d;
	font-size: 1rem;
	margin-right: 1rem;
}
.index_box ul li:last-child{
	margin-bottom: 0;
}

.article_wrap > h2{
	position: relative;
	text-align: center;
	margin-bottom: 3rem;
}
.article_wrap > h2:before{
	position: absolute;
	left: calc(50%);
	bottom: -0.5rem;
	content: "";
	width: 3rem;
	height: 6px;
	background: var(--main-color);
}
.article_wrap > h2:after{
	position: absolute;
	left: calc(50% - 3rem);
	bottom: -0.5rem;
	content: "";
	width: 3rem;
	height: 6px;
	background:#00479d;
}
.article_wrap > h3{
	background: #fff;
	color: #00479d;
	border: 1px solid #00479d;
	padding: 1rem;
	border-radius: .5rem;
	margin: 1rem 0;
}
.article_wrap h4 {
	padding: .25rem 0;
	color: #00479d;
	border-bottom: 1px solid #00479d;
}
span.source{
	display: block;
    font-size: .825rem;
    color: #666;
    background: #f2f2f2;
    padding: .5rem;
    margin: .5rem auto;
}
.article_wrap .main-btn{
	margin-top: 4rem;
}
.article_wrap .flow_list {
	margin: 1rem auto;
}
.article_wrap .flow_list li{
	position: relative;
	background: #00479d;
	width: 100%;
	padding: 1rem;
	text-align: center;
	font-weight: 700;
	color: #fff;
	border-radius: .5rem;
	margin: 0 auto 3rem;
}
.article_wrap .flow_list li:not(:last-child):after {
	position: absolute;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	content: "\f0d7";
	color: #00479d;
	left: 50%;
	bottom: -2.5rem;
}
.article_wrap .flow_list li:last-child {
	margin: 0 auto;
}
.article_wrap .matome{
	position: relative;
	color: #333;
	font-weight: 600;
	padding: 1rem;
	background: #f2f2f2;
	border-radius: 1rem;
	margin: 4rem auto 4rem;
}
.article_wrap .matome:before{
	content: "CHECK POINT!!";
    position: absolute;
    left: 1rem;
    top: -1rem;
    background: #fff;
    border: 1px solid var(--sub-color);
    color: var(--sub-color);
    font-size: .825rem;
    font-weight: 800;
    padding: 0 1rem;
    border-radius: 100vh;
}
.article_wrap table{
	width: 100%;
	table-layout: fixed;
	margin: 1rem auto 4rem;
}
.article_wrap table :is(th, td){
	border: 1px solid #ccdaeb;
	padding: 1rem;
}
.article_wrap table th {
	background: var(--sub-color);
	color: #fff;
}
.article_wrap table tr:nth-child(odd) td{
	background: #ebf2fa;
}
.article_wrap ul.list li{
	padding: .5rem 1rem;
	font-weight: 700;
	margin: .5rem auto;
	border: 1px solid #00479d;
    color: var(--sub-color);
	border-radius: .5rem;
	background: #f2f2f2;
}
.article_wrap ul.list_positive,
.article_wrap ul.list_negative {
	counter-reset: listnum;
}
.article_wrap ul.list_positive li,
.article_wrap ul.list_negative li {
	position: relative;
	color: #333;
	border: none;
	background: #e5ecf5;
}
.article_wrap ul.list_positive li:before,
.article_wrap ul.list_negative li:before{
	counter-increment: listnum;
	content: counter(listnum)".";
	margin-right: 1rem;
}
.article_wrap ul.list_positive li:before {
	color: #8fc31f;
}
.article_wrap ul.list_negative li:before {
	color: #f19149;
}
.article_wrap .faq_wrap {
	border: 1px solid var(--main-color);
	border-radius: 1rem;
	margin: 1rem auto;
	overflow: hidden;
}
.article_wrap .faq_wrap .question {
	font-size: 1.2rem;
	font-weight: 800;
	color: #fff;
    background: var(--sub-color);
	padding: 1rem;
	border-bottom: 1px solid var(--main-color);
}
.article_wrap .faq_wrap .question:before{
	content: "Q.";
	margin-right: 1rem;
}
.article_wrap .faq_wrap .answer{
	padding: 1rem;
	background: #f2f2f2;
}
.formula{
	display: block;
	text-align: center;
	border-radius: 100vh;
	font-size: 1.5rem;
	font-weight: bold;
	color: var(--sub-color);
	background: #ccdaeb;
	margin: 1rem auto 0;
	padding: .5rem 1rem;
}
.article_wrap h3 + p,
.article_wrap h4 + p,
.article_wrap img + p,
.article_wrap ul + p:not(.matome){
	margin-bottom: 4rem;
}
.article_wrap p + table{
	margin: -3rem auto 4rem;
}
.article_wrap .mb-1{
	margin-bottom: 1rem!important;
}
.article_wrap ul + h3{
	margin-top: 4rem;
}

.article_wrap:not(:first-child),
#market .article_wrap{
	padding-top: 4rem;
}

#market .article_wrap > h2{
	position: relative;
	margin-bottom: 2rem;
	padding-left: 7rem;
}
#market .article_wrap > h2 span {
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 2.4rem;
	font-weight: 900;
	font-style: italic;
	text-align: right;
	line-height: 1.2;
	letter-spacing: -1px;
	color: #fff;
	width: 6rem;
	padding: 0 1rem .5rem;
	background: linear-gradient( 90deg, #010020 0%, #004986 100%);
}
#market #content01 h3{
	position: relative;
	background: #fff;
	color: #00479d;
	border: 1px solid #00479d;
	padding: 1rem 1rem .5rem;
	border-radius: .5rem;
	margin: 4rem 0 1rem;
}
#market #content01 h3:before{
	position: absolute;
	top: -1rem;
	left: .5rem;
	content: "接骨院・整体院M&Aが注目される背景と業界動向";
	font-family: "Noto Sans JP", sans-serif;
	font-size: .725rem;
	background: #00479d;
	color: #fff;
	padding: .25rem 1rem;
	border-radius: 100vh;
}
#market :is( #content02, #content07 ) h3 {
	color: #00479d;
	margin-bottom: 1rem;
}
#market :is( #content02, #content07 ) h3 span{
	background: #00479d;
	color: #fff;
	padding: .5rem 2rem;
	border-radius: 100vh;
	margin-right: 1rem;
}
#market :is( #content03, #content04, #content06 ) > h3 {
	margin: 2rem auto;
	font-size: 1.5rem;
	text-align: center;
	color: #fff;
	background: #050e30;
	padding: .5rem 0;
}
#market #content05 > h3{
	font-size: 1.5rem;
	background: #00479d;
	color: #fff;
	padding: .5rem 1rem;
	border-radius: .5rem;
	margin-bottom: 1rem;
}
#market #content05 h3 + p {
	margin-bottom: 4rem;
}
#market #content05 div + p {
	margin-top: 1rem;
}
#market #content05 ul {
	margin-bottom: 1rem;
}
#market #content05 ul.flex_wrap li {
	padding: .25rem .5rem;
	border: 1px solid #00479d;
	font-weight: 800;
	color: var(--sub-color);
	border-radius: .25rem;
}
#market #content05 table{
	width: 100%;
	border-collapse: separate;
	margin-bottom: 3rem;
}
#market #content05 :is(th, td){
	padding: 1rem;
	border: 1px solid var(--sub-color);
}
#market #content05 th:first-child {
	background: #828697;
	color: #fff;
	font-size: 1.25rem;
}
#market #content05 tr:first-child th:first-child{
	border-radius: 1rem 0 0 0;
	border-right: none;
	border-bottom: none;
}
#market #content05 th:last-child {
	background: #c0c2cb;
	color: var(--sub-color);
	font-size: 1.25rem;
}
#market #content05 tr:first-child th:last-child{
	border-radius: 0 1rem 0 0;
	border-bottom: none;
}
#market #content05 tr:not(:last-child) td:first-child{
	border-right: none;
	border-bottom: none;
	font-weight: 800;
}
#market #content05 tr:last-child td:first-child{
	border-right: none;
	border-radius: 0 0 0 1rem;
	font-weight: 800;
}
#market #content05 tr:not(:last-child) td:nth-child(2){
	border-right: none;
	border-bottom: none;
	font-weight: 800;
}
#market #content05 tr:last-child td:nth-child(2){
	border-right: none;
	font-weight: 800;
}
#market #content05 tr:not(:last-child) td:last-child{
	border-bottom: none;
}
#market #content05 tr:last-child td:last-child{
	border-radius: 0 0 1rem 0;
}
#market .casestudy_box{
	margin: 2rem auto;
}
#market .title_wrap h3{
	position: relative;
	background: #e6e6e6;
	padding: 1rem 0;
	padding-left: 8rem;
	margin-bottom: 1rem;
}
#market .title_wrap h3 > span{
	position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 7rem;
    height: 100%;
    background: #00479d;
    text-align: center;
    color: #fff;
    padding: 1rem;
}
#market .title_wrap h3 > span > span {
	font-style: italic;
}

#market .casestudy_box_inner p{
	margin-bottom: 1rem;
}

#market .casestudy_box_inner :is(dt, dd){
	display: inline-block;
}

#market .casestudy_box_inner dt{
	background: #00479d;
	color: #fff;
	padding: .5rem 1rem;
	width: 7rem;
	text-align: center;
	font-weight: 800;
	font-size: .875rem;
	margin-bottom: .25rem;
}
#market .casestudy_box_inner dd {
	padding-left: 1rem;
}
#market #content07 .full{
	text-align: center;
	background: #00479d;
	color: #fff;
	padding: .5rem 1rem;
	border-radius: 100vh;
}
#market #content08 p.answer span{
	font-weight: 700;
	display: block;
}
#market #content08 h3.question{
	margin-bottom: 1rem;
	padding-bottom: .5rem;
	border-bottom: 1px solid var(--sub-color);
}
#market .box{
	padding: 1rem;
	border: 1px solid #050e30;
	border-radius: 1rem;
	margin: 0 0 1rem;
}
#market .box h3{
	position: relative;
	padding-left: 4.5rem;
	color: #00479d;
}
#market .box h3 span{
	position: absolute;
	left: 0;
	top: .35rem;
	font-size: .825rem;
	color: #050e30;
}
#market .box p{
	margin-bottom: 0;
}
@media screen and (max-width: 768px){
	.index h2 span{ font-size: .65rem; }
}
#company .company_philosophy{
	padding-top: 4rem;
}
#company .company_philosophy p{
    margin-top: 2rem;
}
#company .compny_detail{
    margin: 4rem 0;
    padding: 4rem 0;
    background: #f3f4f6;
}
#company table{
    width: 100%;
	max-width: 860px;
	margin: 0 auto;
}
#company table :is(th, td){
	padding: 1rem;
}
#company table th{
	width: 40%;
	color: var(--sub-color);
	font-weight: 800;
	font-size: 1.125rem;
}
#company table td{
	width: 60%;
	border-bottom: 1px solid var(--sub-color);
}
#company .google-map_wrap{
    border-radius: 2rem;
    overflow: hidden;
	margin-bottom: 2rem;
}
#company .google-map{
	aspect-ratio: 8 / 3;
}
@media screen and (max-width: 768px){
	#company table :is(th, td){ display: block; padding: 1rem 0; }
	#company table th{ width: 100%; text-align: left; }
	#company table td{ width: 100%; padding-top: 0; }
	#company .google-map{ aspect-ratio: 4 / 3; }
}
#consult .point .title_wrap .inner_wrap{
    background: center top / cover no-repeat url(./assets/img/common/title_wrap_bg.webp);
	padding-bottom: 4rem;
}
#consult .point .title_wrap h2 {
    color: #fff;
}
#consult .point .title_wrap h2 span{
	padding-bottom: .5rem;
	border-bottom: 1px solid #fff;
}
#consult .point .title_wrap p {
    color: #fff;
	margin-top: 1rem;
}
#consult .reason .reason_box, .point_box {
    padding: 2rem;
    background: #fff;
    border-radius: .5rem;
}
#consult .point .point_box > div {
    margin-bottom: 2rem;
}
#dispose .merit,
#purchase .merit,
#consult .point {
    background: center top / cover no-repeat url(./assets/img/common/merit_bg.webp);
    padding: 6rem 0;
}

#consult :is( .intro, .point, .merit ) {
	padding-bottom: 6rem;
}
#consult :is( .strength, .merit ) {
	padding-top: 6rem;
}
#consult .merit {
    background: #f3f4f6;
}
#consult .merit_wrap {
    padding: 0 2rem;
}
#consult .merit_item > div {
    background: #fff;
    margin: 2rem 0 3rem;
    padding: 2rem 1.5rem 1.5rem;
    border-radius: .5rem;
    position: relative;
}
#consult .merit_item > div span  {
    position: absolute;
    top: -1rem;
    color: #fff;
    font-weight: 700;
    background: #00479d;
    padding: .25rem 1rem;
}
@media screen and (max-width: 768px) {
    #consult .merit_wrap {
        padding: 0;
    }
}
:is(#purchase, #dispose) .merit .title_wrap .inner_wrap{
	background: center top / cover no-repeat url(./assets/img/common/title_wrap_bg.webp);
	padding-bottom: 4rem;
}
:is(#purchase, #dispose) .merit .title_wrap h2 {
    color: #fff;
}
:is(#purchase, #dispose) .merit .title_wrap h2 span{
	padding-bottom: .5rem;
	border-bottom: 1px solid #fff;
}
:is(#purchase, #dispose) .merit .title_wrap p {
    color: #fff;
	margin-top: 1rem;
}
:is(#purchase, #dispose) .strength{
	padding-top: 4rem;
}
.emphasis{
	font-size: 1.5rem;
	font-weight: 800;
	color: #f0ff00;
}
:is(#purchase, #dispose) .merit_box {
    padding: 2rem;
    background: #fff;
    border-radius: .5rem;
}
:is(#purchase, #dispose) .merit .merit_box > div {
    margin-bottom: 2rem;
}
:is(#purchase, #dispose) :is( .intro ) {
	padding-bottom: 6rem;
}
:is(#purchase, #dispose) :is( .intro, .strength )) {
	padding-top: 6rem;
}
/*******************************************
*** Contents Page
********************************************/
ul.contents_list {
    margin: 0 auto 4rem;
}
.contents_list li a{
	position: relative;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 2rem;
	background: #fff;
	padding: 1rem;
	padding-right: 2rem;
	border-radius: .5rem;
	margin: .5rem auto;
}
.contents_list li a:after{
	content: "〉";
	position: absolute;
	right: 1rem;
}
:is(#news, #column) .page_contents{
	background: #f3f4f6;
	padding-top: 6rem;
}
.article_title{
	font-weight: 700;
}
.category {
	width: 8rem;
	text-align: center;
	background: var(--main-color);
	color: #fff;
	padding: .25rem .5rem;
	font-weight: 600;
	font-size: .825rem;
}
#column .category{
	width: 10rem;
}
.category.news{
	background: var(--main-color);
}
.category.media{
	background: #601986;
}
.date {
	font-weight: 800;
	font-size: .825rem;
	color: var(--sub-color);
}
.pagenation {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .8em;
}
span.page-numbers.current {
    font-weight: 600;
    color: #012543;
}
.post_contents{
	background: #f3f4f6;
	padding: 6rem 0;
}
.post_contents .post_wrap{
	background: #fff;
	padding: 3em;
	border-radius: .5rem;
	box-shadow: 0 0 1em rgba(0,0,0,.2);
	line-height: 2;
}
@media screen and (max-width: 768px){
	.post_contents .post_wrap{
		padding: 3em 1rem;
	}
}
.post_contents h1{
	font-size: 2rem;
	font-weight: 600;
	border-bottom: 1px solid #012543;
	color: var(--sub-color);
	padding-bottom: .5rem;
}
.list_back{
	margin-top: 2rem;
}
.post_info{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 1rem auto 3rem;
}
/*******************************************
*** Template Parts Style
********************************************/
:is(.template_simulator, .template_contact) {
	padding: 6rem 0;
}
.template_simulator{
	background: center / cover no-repeat url(./assets/img/common/bg_template_simulator.webp);
}
.template_simulator h2{
	font-size: 3rem;
	line-height: 1.2;
	color: #fff;
}
.template_simulator p.text{
	color: #fff;
	margin: 1rem 0;
    max-width: 420px;
}
.template_simulator .flex_wrap > div{
	width: 50%;
}
@media screen and (max-width: 920px){
	.template_simulator .flex_wrap{
		flex-wrap: wrap;
	}
	.template_simulator .flex_wrap > div{
		width: 100%;
	}
	.template_simulator h2 {
		font-size: 2.75rem;
		text-align: center;
	}
	.template_simulator p.text {
        text-align: center;
        margin: 1rem auto;
    }
}
.template_contact{
	background: center / cover no-repeat url(./assets/img/common/bg_template_contact.webp);
	text-align: center;
}
.template_contact h2{
	color: #fff;
}
.template_contact p.text{
	color: #fff;
	margin: 4rem auto;
}
@media screen and (max-width: 768px){
	.template_contact{ background: center right / cover no-repeat url(./assets/img/common/bg_template_contact.webp); }
}

.aioseo-breadcrumbs{
	border-bottom: 1px solid #dadada;
	color: #595959;
	padding: .5rem 0;
	font-size: 14px;
}
.aioseo-breadcrumbs > span:first-child:before{
	position: relative;
    top: -1px;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 12px;
	content: "\f015"
}
.aioseo-breadcrumbs .aioseo-breadcrumb-separator{
	margin: 0 .5rem;
}
.aioseo-breadcrumbs a{
	font-weight: 600; 
	color: #595959;
}
.aioseo-breadcrumbs a:hover{
	color: var(--sub-color);
}