@charset "utf-8";

/***************************************************************
Home
****************************************************************/
html, body {
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

/* header */
.header__h1 {
	padding: 12px 0;
	font-size: 16rem;
	text-align: center;
	font-weight: bold;
}
/* home-common */
section:has(.fadeInFromSide) {
	overflow-x: hidden;
}

.hover_contraction:hover {
    transform: scale(0.95, 0.95);
}
.home {
	margin: 0 2.5vw;
	display: block;
}
.home .widget:nth-child(odd) {
	background-color: var(--home-odd-section-background-color);
}
.home .widget:nth-child(even) {
	background-color: var(--home-even-section-background-color);
}
.widget_home--full,
.widget_block,
.home--post .widget_home {
	margin: 0 -2.5vw;
}
.widget_block {
	padding-top: 40px;
	padding-bottom: 40px;
}
.home--post .widget_home:not(.widget_home_main_visual) {
	padding: 0 2.5% 40px;
}
.home__title {
	position: relative;
	padding: 0 2.5vw 5px;
	display: inline-block;
	font-size: 24rem;
	font-weight: bold;
}
.home__title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%);
	display: inline-block;
	width: 40px;
	height: 4px;
}
.home__text {
	max-width: 90vw;
	text-align: center;
	line-height: 1.7;
	color: #111;
	font-size: 16rem;
}
.home__button {
	position: relative;
	margin: 40px auto 0;
	line-height: 3;
	display: block;
	border: solid 1px #d9d9d9;
	background-color: #f3f2ec;
	width: 100%;
	max-width: 360px;
	text-align: center;
	font-size: 16rem;
	font-weight: bold;
	color: #6f6f6f;
}
.home__button::after {
	position: absolute;
	top: calc(50% + 1px);
	transform: translateY(-50%);
	font-size: 14rem;
	margin-left: 16px;
}
.home__button:hover {
	opacity: 0.7 !important;
}
.home__button.button-A.button-A--three-dimensional-theme {
	box-shadow: 0 3px 0 0 var(--theme-dark-color);
}
.home__button.button-A.button-A--three-dimensional-sub {
	box-shadow: 0 3px 0 0 var(--sub-dark-color);
}
.home__button.button-A.button-A--three-dimensional-accent {
	box-shadow: 0 3px 0 0 var(--accent-dark-color);
}

/* home_banner */
.home_banner__img {
	vertical-align: top;
	max-width: 100%;
}

/* home-top-cta */
.home-top-cta {
	background-color: var(--sub-color);
}
.home-top-cta-content {
	padding: 20px 2.5vw 2.5vw;
}
.home-top-cta__top {
	text-align: center;
}
.home-top-cta__yellow-title {
	font-size: 18rem;
	font-weight: bold;
	line-height: 1.33;
	letter-spacing: 0.72px;
}
.home-top-cta-yellow-title--notice {
	position: relative;
	left: -1em;
	font-size: 10rem;
	vertical-align: top;
}
.home-top-cta__yellow-text {
	margin-top: 8px;
	font-size: 10rem;
}
.home-top-cta__tel-section {
	display: block;
	margin-top: 8px;
	padding: 20px 6px 0;
	border-radius: 4px;
	color: #0d0d0d;
}
.home-top-cta__tel-button {
	display: flex;
	margin: 0 auto;
	align-items: center;
	border-radius: 4px;
	width: var(--modile-375-320-width);
	max-width: 320px;
	box-sizing: border-box;
	box-shadow: 1px 3px 0 0 #a5a5a5;
}
.home-top-cta__tel-text {
	overflow-x: visible;
	flex-basis: 25%;
	height: 64px;
	padding: 8px 2.3%;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	box-sizing: border-box;
	font-size: 16rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: left;
	color: #fff;
}
.home-top-cta__tel-num {
	display: block;
	margin-left: 8px;
	letter-spacing: -0.2px;
	text-align: center;
	font-family: helvetica;
	font-size: 28rem;
	font-weight: bold;
	color: #0d0d0d;
}
.home-top-cta__tel-num::before {
	content: '';
	background: url('/wp-content/themes/uehara-keiji-office-lp/img/icon-phone_2x.png') no-repeat center / contain;
	position: relative;
	top: 5px;
	display: inline-block;
	margin-right: 6px;
	width: 32rem;
	height: 32rem;
}
.home-top-cta__tel-time {
	margin-top: 2px;
	display: block;
	text-align: center;
	font-size: 14rem;
}
.home-top-cta__notice {
	display: block;
	margin-top: 16px;
	text-align: center;
	/* font-size: 14rem; */
	font-size: 12rem;
	font-weight: bold;
}
.home-top-cta__main {
	padding-bottom: 20px;
}
.home-top-cta__pc-right {
	text-align: center;
}
.home-top-cta__mail {
	margin: 3vw auto 0;
	padding: 22px 0 22px 10%;
	max-width: 320px;
	width: var(--modile-375-320-width);
	text-align: center;
	font-size: 20rem;
	font-weight: bold;
	box-shadow: 1px 3px 0 0 #a5a5a5;
}
.home-top-cta__mail::before {
	font-size: 24rem;
	vertical-align: text-bottom;
	margin-right: 8px;
}
.home-top-cta__mail.linedup::before {
	position: absolute;
	top: 17px;
	left: 11%;
	content: '';
	width: 32rem;
	height: 32rem;
	background: url('/wp-content/themes/uehara-keiji-office-lp/img/icon-mail_2x.png') no-repeat center / contain;
}
.home-top-cta__mail::after {
	position: absolute;
	top: 39%;
	right: 2vw;
	font-size: 16rem;
}
.home-top-cta__line {
	position: relative;
	margin: 12px auto 0;
	padding: 17px 0 17px 10%;
	max-width: 320px;
	width: var(--modile-375-320-width);
	text-align: center;
	font-size: 20rem;
	font-weight: bold;
	color: #0d0d0d;
	background-color: #06c755 !important;
	box-shadow: 1px 3px 0 0 #009d0c;
}
.home-top-cta__line-img {
	position: absolute;
	left: 11%;
	width: 32rem;
}
.home-top-cta__line::after {
	position: absolute;
	top: 39%;
	right: 2vw;
	font-size: 16rem;
}
.home-top-cta__bottom-text {
	margin-top: 16px;
	text-align: center;
	font-size: 14rem;
	font-weight: bold;
}

/* home-full-power */
.home_full_power {
	position: relative;
	height: auto;
	overflow: hidden;
}
.home_full_power::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 36px 28px 0 28px;
    border-color: var(--body-color) transparent transparent transparent;
	z-index: 10;
}
.home_parallax-img-div {
    position: absolute;
    width: 100vw;
    height: 100%;
    overflow: hidden;
    /* z-index: -1; */
    margin-top: 1px;
    margin-bottom: 1px;
}
.home_full_power__bg {
	width: 100%;
	transition: 1.2s;
}
.home_full_power__front {
	position: relative;
	display: block;
	margin: 40px auto;
	max-width: var(--mobile-card-max-width);
	height: auto;
}

/* home-action */
.home_action {
	padding: 35px 2.5vw 60px;
}
.home-action-card {
	width: 100%;
	max-width: var(--mobile-card-max-width);
	margin: 20px auto 0;
	padding: 24px 20px 40px 20px;
	border: solid 5px #dcd9c6;
	box-sizing: border-box;
}
.home-action-card__title {
	margin-bottom: 8px;
	position: relative;
	font-size: 24rem;
	font-weight: bold;
	padding-left: 2em;
}
.home-action-card__title::before {
	content: '';
	position: absolute;
	left: 0;
	display: block;
	width: 36rem;
	height: 36rem;
	background: url('/wp-content/themes/uehara-keiji-office-lp/img/ic-check-box_2x.png') no-repeat center / contain;
}
.home-action-card__image {
	margin-top: 8px;
	width: 100%;
	max-width: 302px;
	height: 188px;
	margin: 0 auto 16px auto;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}
.home-action-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.home-action-card__text {
	font-size: 16rem;
	line-height: 1.75;
	margin-top: 16px;
}

/* home-support */
.home_support__title {
	margin: 40px -3.5vw 0;
}
.home-support-card {
	width: 100%;
	max-width: var(--mobile-card-max-width);
	margin: 20px auto 0;
	padding: 0 0 20px 0;
	box-sizing: border-box;
	border-style: solid;
	border-width: 5px;
}
.home-support-card__title {
	padding: 11px 0 16px;
	color: #fff;
	font-size: 32rem;
	font-weight: bold;
}
.home-support-card__subtitle {
	margin: 16px 16px 0 16px;
	color: #302b2b;
	text-align: left;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.33;
}
.home-support-card__text {
	margin: 8px 16px 0;
	text-align: left;
	line-height: 1.75;
	letter-spacing: 0.64px;
	color: #302b2b;
}
.home-support-card__merit {
	margin: 16px 8px 0;
	padding: 16px 16px 22px;
	background-color: var(--theme-light-color);
}
.home-support-card__merit-title {
	display: block;
	color: #675700;
	font-size: 18rem;
	font-weight: bold;
	line-height: 1.56;
	letter-spacing: 0.72px;
}
.home-support-card__merit-bottom {
	margin-top: 8px;
	display: flex;
	column-gap: 24px;
}
.home-support-card__merit-text {
	font-size: 16rem;
	line-height: 1.75;
	letter-spacing: 0.64px;
	text-align: left;
	color: #302b2b;
}
.home-support-card__merit-icon {
	margin: 5px auto 0;
}

/* home-service */
.home_service {
	padding: 35px 2.5vw 60px;
}
.home_service__subtitle {
	margin-top: 8px;
	font-size: 20rem;
}
.home_service-main {
	margin-top: 24px;
	display: flex;
	flex-direction: column;
	row-gap: 8px;
}
.home_service-card {
	display: flex;
	column-gap: 24px;
	align-items: center;
	padding: 8px 12px;
	box-sizing: border-box;
}
.home_service-card__title {
	font-size: 20rem;
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: 0.8px;
	text-align: left;
}

/* home-result */
.home_result {
	padding: 40px 2.5vw;
}
.home_result-card {
	position: relative;
	margin-top: 24px;
	padding: 24px 14px;
	box-sizing: border-box;
}
.home_result-card__result {
	position: absolute;
	top: 39px;
	right: 1%;
	background-color: #fff;
	padding: 0px 28px;
	font-size: 28rem;
	font-weight: bold;
	border-radius: 8px;
	border-style: solid;
	border-width: 3px;
	box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.16);
	rotate: 35deg;
}
.home_result-card__result--4 {
	padding: 0px 24px;
	top: 45px;
	right: 0%;
}
.home_result-card__result--5 {
	padding: 0px 14px;
	letter-spacing: -0.2px;
	top: 37px;
	right: -3%;
}
.home_result-card__result--6 {
	padding: 0px 12px;
	font-size: 27rem;
	letter-spacing: -0.4px;
	top: 43px;
	right: -3%;
}
.home_result-card__result--long {
	padding: 0px 8px;
	letter-spacing: -0.6px;
	font-size: 26rem;
	top: 45px;
	right: -4%;
}
.home_result-card__icon {
	margin-left: 10px;
}
.home_result-card__category {
	margin-top: 18px;
	font-size: 24rem;
	font-weight: bold;
	line-height: normal;
}
.home_result-card__title {
	display: block;
	margin-top: 16px;
	font-size: 22rem;
	font-weight: bold;
	line-height: normal;
}
.home_result-card__text {
	margin-top: 16px;
	font-size: 16rem;
	line-height: 1.75;
	letter-spacing: 0.64px;
	color: #302b2b;
}

/* home-access */
.home_access {
	padding: 35px 2.5vw 60px;
}
.home_access-top {
	margin-top: 40px;
	text-align: left;
	font-weight: bold;
	font-size: 18rem;
}
.home_access-map {
	margin-top: 16px;
}
/* GoogleMap */
.home_access-map > iframe {
	width: 95vw;
}
.home_access-main {
	padding: 0 2.5vw;
}
.home_access-top + .home_access-main {
	margin-top: 8px;
}
.home_access-main-left__addr_title {
	margin-top: 20px;
	color: #444;
	font-size: 14rem;
	font-weight: bold;
}
.home_access-main-left__addr {
	line-height: 1.7;
	color: #444;
	font-size: 14rem;
}
.home_access-main-left__google_map_button {
	position: relative;
	margin-top: 14px;
	margin-left: 0;
	padding: 8px calc(10px + 1em) 8px 10px;
	width: 45%;
	background-color: #fff;
	font-size: 12rem;
}
.home_access-main-left__google_map_button::after {
	position: absolute;
	right: 2vw;
}

/* home-fee */
.home_fee {
	padding: 60px 0 55px;
}

/* home-lawyers */
.home_lawyers {
	padding: 24px 0;
}
.home_lawyers__title {
	color: #fff;
	font-size: 20rem;
}
.home-lawyers-content {
	display: flex;
	align-items: center;
	width: fit-content;
    margin: 20px auto 0;
}
.home_lawyers__list-arrow {
	background-color: transparent;
	height: fit-content;
	font-size: 18rem;
	color: #fff;
	cursor: pointer;
}
.home_lawyers__list-arrow--left {
	transform: rotate(180deg);
}
.home_lawyers__list-wrapper {
	overflow: hidden;
	/* width: 84.27vw; */
	flex-basis: 84.27vw;
}
.home_lawyers__list {
	display: flex;
	column-gap: 20px;
	transition: transform 0.4s;
	width: max-content;
}
.lawyer-info {
	text-align: center;
	color: #fff;
}
.lawyer-info__image {
	/* width: 149px; */
	width: 39.736vw;
}
.lawyer-info__affiliation {
	font-size: 10rem;
}
.lawyer-info__name {
	font-size: 14rem;
}
.lawyer-info__freetext {
	font-size: 14rem;
}

/* home-flow */
.home_flow {
	padding: 40px 0 0;
}
.home_flow__title-bottom-text {
	margin: 12px auto 0;
	max-width: 90vw;
	text-align: center;
	line-height: 1.7;
	color: #3b4043;
	font-size: 16rem;
}
.home_flow-main {
	margin-top: 36px;
	padding: 0 5vw;
}
.home_flow-main-item {
	position: relative;
	margin: 0 auto 39.4px auto;
	max-width: var(--mobile-card-max-width);
	text-align: center;
	font-size: 0;
	background: var(--theme-light-color);
	border-radius: 0;
	padding: 12px 14px 20px 14px;
	box-sizing: border-box;
}

.home_flow-step-label {
	flex-basis: 40px;
	width: 40px;
	height: 40px;
}
.home_flow-main-item:not(:first-child) {
	margin-top: 55px;
}
.home_flow-main-item:not(:last-child)::before {
	content: '';
	position: absolute;
	bottom: -46px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 24px 0 24px;
	border-color: var(--sub-color) transparent transparent transparent;
}
.home_flow-main-item:last-child {
	border: solid 4px var(--theme-color);
	background-color: #fff5c1;
}
.home_flow-main-item__image {
	max-width: 100%;
}
.home_flow-main-item__title {
	margin-top: 4px;
	padding: 0;
	box-sizing: border-box;
	letter-spacing: .9px;
	font-size: 40rem;
	font-weight: bold;
	text-align: center;
}
.home_flow-main-item__text {
	margin-top: 10px;
	padding: 0;
	box-sizing: border-box;
	line-height: 1.4;
	color: #111;
	text-align: center;
	font-size: 16rem;
}

/* home-chars */
.home_chars {
	position: relative;
	box-sizing: border-box;
	padding: 40px 2.5vw;
	overflow: hidden;
}
.home_chars__title {
	margin: 0 auto;
	display: block;
	padding-left: 0;
	padding-right: 0;
	max-width: 90vw;
	border: none;
	text-align: center;
}
.home-char__title--small {
	font-size: 20rem;
}
.home-char__title--middle {
	font-size: 32rem;
}
.home-char__title--large {
	font-size: 48rem;
	line-height: 1;
}
.home_chars__text {
	margin: 24px auto 0;
	max-width: 75vw;
	line-height: 1.5;
	color: #111;
	text-align: center;
	font-size: 16rem;
}
.home_chars-main {
	position: relative;
	margin: 34px auto 0;
	text-align: center;
}
.home_chars-main-div {
	margin: 0 auto;
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 26px;
	width: var(--modile-375-320-width);
	max-width: var(--mobile-card-max-width);
}
.home_chars-main-div:not(:last-child) {
	margin-bottom: 36px;
	padding-bottom: 16px;
	border-bottom: dotted #675700 2px;
}
.home_chars-main-div__char {
	font-size: 20rem;
	font-weight: bold;
}
.home_chars-main-div__number {
	font-size: 80rem;
	font-weight: bold;
	font-style: italic;
	font-family: HelveticaNeue, Helvetica, Arial, sans-serif;
	line-height: 1;
}
.home_chars-main-div__title {
	line-height: 1.25;
	text-align: left;
	font-size: 20rem;
	font-weight: bold;
}
.home_chars-main-div__text {
	margin: 8px auto 0;
	line-height: 1.75;
	text-align: left;
	font-size: 16rem;
}
.home_chars-main-div__text a {
	color: #004272;
	font-weight: bold;
}
.home_chars__link {
	margin-top: 24px;
}
.home_chars__link::after {
	right: 20px;
	font-size: 14rem;
}

/* home-why, home-if, home-fee */
.home_why,
.home_if {
	padding: 40px 2.5vw;
}
.home_fee {
	padding-left: 2.5vw;
	padding-right: 2.5vw;
}
.home_why__img,
.home_if__img,
.home_fee__img {
	width: 100%;
	height: auto;
	margin: 0 auto;
	display: block;
}
.home_why__img--1.sp-only-no-tablet {
	width: 83%;
}
.home_why__img--3.sp-only-no-tablet {
	width: 70%;
	position: relative;
	left: 4%;
}
.home_why__img--6.sp-only-no-tablet {
	width: 69.4%;
}

/* home-voice */
.home_voice4 {
	padding: 40px 2.5vw 40px;
}
.home_voice4-main {
	margin-top: 36px;
	width: 100%;
}
.home_voice4-main-item {
	padding: 40px;
	background-color: var(--theme-transparency-color);
}
.home_voice4-main-item:nth-of-type(n+2) {
	margin-top: 16px;
}
.home_voice4-main-item__image {
	border-radius: 50%;
	width: 40px;
	height: 40px;
	vertical-align: middle;
}
.home_voice4-main-item-top {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	font-weight: bold;
}
.home_voice4-main-item-label__age {
	margin-left: 16px;
	display: inline-block;
	font-size: 24px;
	font-weight: bold;
	vertical-align: middle;
}
.home_voice4-main-item-label__gender {
	margin-top: 12px;
	font-weight: bold;
	font-size: 26rem;
}
.home_voice4-main-item__text {
	margin-top: 16px;
	line-height: 1.75;
	font-size: 16rem;
}

/* home_qa */
.home_qa {
	padding: 40px 2.5vw 30px;
}
.home_qa-ul {
	padding: 40px 0 24px;
}
.home_qa-li__q {
	position: relative;
	padding: 30px calc(5.68vw + 20rem) 30px 4vw;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border: 1px solid #d9d9d9;
}
.home_qa-li:nth-child(n+2) {
	margin-top: 16px;
}
.home_qa-li__q:hover {
	cursor: pointer;
}
.home_qa-li__q::after {
	position: absolute;
	right: 4vw;
	font-size: 20rem;
	transform: rotate(90deg);
	transition: .5s;
}
.home_qa-li__q.active::after {
	transform: rotate(-90deg);
}
.home_qa-li__q-right {
	line-height: 1.5;
	font-weight: bold;
	font-size: 16rem;
}
.home_qa-li__q-left {
	margin-right: 4vw;
	min-width: 20.559vw;
	text-align: center;
}
.home--post .home_qa-li__q-left {
	min-width: 0;
}
.home_qa-li__q-left-icon {
	font-family: Helvetica;
	line-height: 1;
	font-size: 32rem;
	font-weight: bold;
}
.home_qa-li__q-left-num {
	margin-top: 6px;
	font-size: 14rem;
}
.home_qa-li__q-right {
	flex: 1;
}
.home_qa-li__a {
	display: none;
	padding: 16px 5vw 20px;
	border: 1px solid #d9d9d9;
	border-top: none;
	background-color: #fefbef;
	line-height: 1.5;
	font-size: 16rem;
}
.home_qa-li__q.active + .home_qa-li__a {
	display: block;
}
.home_qa-li__a ul {
	list-style-type: none;
	margin: 20px 0;
	padding-left: 26px;
}
.home_qa-li__a ul > li {
	position: relative;
	padding-top: 0;
	line-height: 1.7;
}
.home_qa-li__a ul > li::before {
	display: inline-block;
	content: "";
	width: 8px;
	height: 8px;
	background-color: #d8d8d8;
	border-radius: 50%;
	position: absolute;
	left: -17px;
	top: 9px;
}
.home_qa-li__a a {
	color: #0044cc;
}
.home_qa-li__a a:hover {
	text-decoration: underline;
}
.home_qa__link::after {
	right: 20px;
	font-size: 14rem;
}

/* home-dont-give-up */
.widget_home_dont_give_up {
	background-color: var(--theme-color) !important;
}
.home-dont-give-up__image {
	display: block;
	margin: 0 auto;
	max-width: var(--mobile-card-max-width);
}
.grecaptcha-badge{
	display:none;
}

@media screen and (min-width: 768px), print and (min-width: 768px) {
	/* home-top-cta */
	@keyframes yellow_part_animation {
		0% {
			-webkit-transform: scale(0) rotate(45deg);
			opacity: 0;
		}

		80% {
			-webkit-transform: scale(0) rotate(45deg);
			opacity: 0.5;
		}

		81% {
			-webkit-transform: scale(4) rotate(45deg);
			opacity: 1;
		}

		100% {
			-webkit-transform: scale(50) rotate(45deg);
			opacity: 0;
		}
	}
	.home-top-cta {
		background-color: unset;
	}
	.home-top-cta__top {
		position: relative;
		overflow: hidden;
		padding-top: 9px;
		background-color: var(--sub-color);
	}
	.home-top-cta__top::before {
		position: absolute;
		content: '';
		display: inline-block;
		top: 620px;
		left: 0;
		width: 160px;
		height: 100%;
		background-color: #fbfbfb;
		animation: yellow_part_animation 2.5s ease-in-out infinite;
		animation-delay: -0.4s;
	}
	.home-top-cta-content {
		padding: 0;
	}
	.home-top-cta__yellow-title {
		font-size: 12px;
		line-height: normal;
		letter-spacing: 0.48px;
	}
	.home-top-cta__yellow-title br {
		display: none;
	}
	.home-top-cta__yellow-title .home-top-cta-yellow-title--notice.sp-only {
		display: none;
	}
	.home-top-cta__yellow-title .home-top-cta-yellow-title--notice.pc-only {
		display: inline;
		font-size: 8rem;
		left: 0;
	}
	.home-top-cta__yellow-text {
		margin: 2px 0 9px;
	}
	.home-top-cta__tel-section {
		margin-top: 0;
		padding-top: 16px;
	}
	.home-top-cta__notice {
		font-size: 14px;;
	}
	.home-top-cta__mail {
		margin-top: 16px;
		padding: 22px 12px 22px 66px;
	}
	.home-top-cta__line {
		padding: 17px 12px 17px 50px;
	}

	/* home-why, home-if, home-fee */
	.home_why__img,
	.home_if__img,
	.home_fee__img {
		width: unset;
		max-width: var(--mobile-card-max-width);
	}
	.home_why__img--1.tablet-pc-only {
		width: 464px;
	}
	.home_why__img--3.tablet-pc-only {
		width: 424px;
	}
	.home_why__img--6.tablet-pc-only {
		width: 488px;
	}
	/* home-service */
	.home_service-main {
		margin-left: auto;
		margin-right: auto;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: center;
		gap: 24px 12px;
	}
	.home_service-card {
		flex-basis: calc(50% - 12px);
	}

	/* home-result */
	.home_result-card {
		margin-left: auto;
		margin-right: auto;
		max-width: var(--mobile-card-max-width);
	}

	/* home-lawyers */
	.home_lawyers__list-wrapper {
		/* width: 656px; */
		flex-basis: 656px;
	}
	.lawyer-info__image {
		width: 149px;
	}
}

@media screen and (min-width: 1024px), print and (min-width: 1024px) {
	/* header */
	.header__h1 {
		font-size: 20px;
	}
	/* home-common */
	.home {
		margin: 0 auto;
	}
	.widget_home--full,
	.widget_block,
	.home--post .widget_home {
		margin: 0 calc((50vw - (var(--main_full-width) / 2)) * -1);
		padding: 0 calc(50vw - (var(--main_full-width) / 2));
	}
	.widget_block {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.home__title {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 12px;
		border-width: 4px;
		font-size: 40px;
	}
	.home__title::after {
		height: 4px;
		width: 40px;
	}
	.home__text {
		max-width: none;
		line-height: 1.5;
	}

	/* home-top-cta */
	.home-top-cta {
		margin: 0 calc((50vw - (var(--main_full-width) / 2)) * -1);
	}
	.home-top-cta__top {
		padding-top: 15px;
	}
	.home-top-cta__yellow-title {
		font-size: 22px;
		letter-spacing: 0.88px;
	}
	.home-top-cta__yellow-text {
		font-size: 12px;
	}
	.home-top-cta__top-text {
		font-size: 18px;
		line-height: 1.33;
		letter-spacing: 1.44px;
	}
	.home-top-cta__main {
		margin-top: 0;
		padding: 20px 0 24px;
		display: block;
	}
	.home-top-cta__tel-section {
		margin-top: 0;
		padding: 0;
		border: none;
	}
	.home-top-cta__tel-num {
		position: relative;
		font-size: 64px;
		width: fit-content;
        margin: 0 auto;
	}
	.home-top-cta__tel-num::before {
		margin-right: 20px;
		width: 48px;
		height: 48px;
		z-index: 10;
	}
	.home-top-cta__tel-num::after {
		position: absolute;
		top: 6px;
		left: -4px;
		content: '';
		background-color: var(--sub-color);
		border-radius: 50%;
		width: 56px;
		height: 56px;
		background-size: contain;
	}
	.home-top-cta__tel-time {
		margin-top: 0;
		margin-left: 20px;
		font-size: 14px;
	}
	.home-top-cta__notice {
		font-size: 14px;
		margin-top: 11px;
	}
	.home-top-cta__pc-right {
		margin: 9px auto;
		display: flex;
		align-items: flex-start;
		justify-content: center;
		gap: 24px;
	}
	.home-top-cta__mail,
	.home-top-cta__line {
		margin: 0;
	}
	.home-top-cta__mail.linedup,
	.home-top-cta__line {
		padding-right: 36px;
		padding-left: 52px;
	}
	.home-top-cta__line {
		/* margin-left: 16px; */
	}
	.home-top-cta__mail.linedup::before,
	.linedup .home-top-cta__line-img {
		left: 16px;
	}
	.home-top-cta__mail::after,
	.home-top-cta__line::after {
		top: 21px;
		right: 12px;
	}
	.home-top-cta__bottom-text {
		margin-top: 18px;
	}

	/* home-full-power */
	.home_full_power {
		margin: 0 calc((50vw - (var(--main_full-width) / 2)) * -1);
		height: 429px;
	}
	.home_parallax-img-div {
		height: 429px;
	}
	.home_full_power__front {
		margin: 64px auto 80px;
		width: var(--main_full-width);
		max-width: var(--main_full-width);
	}
	.home_full_power__front--2 {
		margin: 116px auto 80px;
	}

	/* home-action */
	.home_action {
		padding: 85px 0 75px;
	}
	.home-action-card {
		max-width: var(--main_full-width);
		padding: 24px 16px 16px;
	}
	.home-action-card__title {
		margin-bottom: 22px;
	}
	.home-action-card__image {
		display: inline-flex;
		width: 240px;
		height: 150px;
	}
	.home-action-card__text {
		margin: 0 0 0 16px;
		display: inline-block;
		width: 658px;
		vertical-align: top;
	}

	/* home-support */
	.home-support-card {
		max-width: var(--main_full-width);
	}
	.home-support-card__merit-title {
		text-align: left;
	}
	.home-support-card__merit-bottom {
		margin-top: 11px;
	}
	.home-support-card__merit-text {
		flex-basis: 803px;
	}

	/* home-service */
	.home_service {
		padding: 85px 0 75px;
	}
	.home_service__subtitle {
		font-size: 24px;
	}
	.home_service-main {
		justify-content: flex-start;
	}
	.home_service-card {
		flex-basis: 312px;
	}

	/* home-result */
	.home_result {
		padding: 80px 0;
	}
	.home_result-card {
		width: var(--main_full-width);
		max-width: var(--main_full-width);
		padding: 40px 24px 44px;
	}
	.home_result-card__result {
		top: 50px;
		right: 13px;
		padding: 0px 28px;
		font-size: 32px;
	}
	.home_result-card__result--4 {
		top: 56px;
		right: 7px;
	}
	.home_result-card__result--5 {
		top: 56px;
		right: -2px;
		padding: 0px 22px;
		letter-spacing: -0.2px;
	}
	.home_result-card__result--6 {
		top: 56px;
		right: -2px;
		padding: 0px 22px;
		font-size: 27rem;
		letter-spacing: -0.4px;
	}
	.home_result-card__result--long {
		top: 59px;
		right: -5px;
		padding: 0px 14px;
		letter-spacing: -0.6px;
		font-size: 26rem;
	}
	.home_result-card__icon {
		margin-left: 0;
	}
	.home_result-card-middle {
		margin-left: 24px;
		display: inline-block;
		vertical-align: top;
	}
	.home_result-card__title {
		width: 598px;
		font-size: 32px;
	}
	.home_result-card__text {
		margin-top: 24px;
	}

	/* home-access */
	.home_access {
		padding: 85px 0 75px;
	}
	.home_access-top {
		font-size: 24px;
	}
	.home_access-main {
		margin-top: 16px;
		padding-left: 0;
		padding-right: 0;
	}
	.home_access-top + .home_access-main {
		margin-top: 16px;
	}
	.home_access-map {
		/* margin-top: 40px; */
	}
	.home_access-top,
	.home_access-bottom {
		margin-top: 40px;
	}
	.home_access-main-left {
		display: inline-block;
		max-width: 482px;
	}
	.home_access-main-left__addr_title {
		margin-top: 0;
	}
	.home_access-main-left__addr {
		line-height: 1.5;
		font-size: 16px;
	}
	.home_access-main-left__google_map_button {
		display: inline-block;
		width: auto;
		padding-top: 12px;
		padding-bottom: 12px;
		font-size: 14px;
	}
	.home_access-main-left__google_map_button::after {
		right: 0.5em;
		top: 1.2em;
		font-size: 12rem;
	}
	.home_access-main-right > .home_access-main-left__google_map_button {
		margin-top: 0;
	}
	.home_access-main-left__google_map_button + .home_access-main-left__google_map_button {
		margin-left: 16px;
	}
	.home_access-main-right {
		float: right;
		display: inline-block;
		max-width: 512px;
	}
	.home_access-main-right__text {
		margin-top: 10px;
		line-height: 1.5;
		font-size: 16px;
	}
	.home_access-main-right__text + .home_access-main-right__text--2 {
		margin-top: 24px;
	}
	.home_access-main-right__img {
		margin-top: 0;
	}
	/* GoogleMap */
	.home_access-map > iframe {
		width: var(--main_full-width);
		/* height: 390px; */
	}
	.home_access__button {
		margin-top: 40px;
		font-size: 16px;
	}

	/* home-fee */
	.widget_home_fee {
	}
	.home_fee {
		padding-top: 85px;
		padding-bottom: 90px;
	}
	.home_fee__bottom-text,
	.home_fee__text {
		text-align: center;
		margin-top: 30px;
		padding-right: 0;
		padding-left: 0;
	}
	.home_fee__bottom-text--three,
	.home_fee__text--three {
		font-size: 16px;
	}
	.home_fee-main {
		margin-top: 20px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.home_fee-main__image {
		max-width: 272px;
		max-height: 272px;
	}
	.home_fee-main__image:not(:first-child) {
		margin-top: 0;
	}
	.home_fee__button {
		margin-top: 70px;
		font-size: 16px;
		font-weight: bold;
	}

	/* home-lawyers */
	.home_lawyers {
		margin: 0 calc((50vw - (var(--main_full-width) / 2)) * -1);
	}
	.home_lawyers__title {
		font-size: 32px;
	}
	.home-lawyers-content {
		column-gap: 30px;
	}
	.home_lawyers__list-wrapper {
		/* width: 809px; */
		flex-basis: 809px;
	}
	.home_lawyers__list {
		column-gap: 16px;
	}
	.lawyer-info__image {
		/* width: unset; */
	}

	/* home-flow */
	.home_flow {
		padding-top: 80px;
		padding-bottom: 0;
	}
	.home_flow-main--column {
		padding: 0;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
		row-gap: 62px;
		width: 100%;
		margin: 42px auto 0;
	}
	.home_flow__title-bottom-text {
		font-size: 18rem;
	}
	.home_flow-main-item--column {
		margin: 0;
		padding: 22px 48px 27px;
		display: flex;
		column-gap: 72px;
		justify-content: flex-start;
		align-items: center;
		max-width: 100%;
		width: 100%;
	}
	.home_flow-main-item:not(:first-child) {
		margin-top: 0;
	}
	.home_flow-main-item__left {
		text-align: left;
	}
	.home_flow-step-label {
		flex-basis: 80px;
		width: 80px;
		height: 80px;
		margin: 0;
	}
	.home_flow-main-item-right {
		text-align: right;
	}
	.home_flow-main-item__title {
		margin-top: 0;
		padding: 0;
		text-align: left;
	}
	.home_flow-main-item__title > span {
		font-size: 40px !important;
	}
	.home_flow-main-item__text {
		padding: 0;
		line-height: 1.5;
		text-align: left;
	}

	/* home-chars */
	.widget_home_chars {
		margin-left: calc((50vw - (var(--main_full-width) / 2)) * -1);
		margin-right: calc((50vw - (var(--main_full-width) / 2)) * -1);
		padding-left: 0;
		padding-right: 0;
	}
	.home_chars {
		margin: 0;
		padding: 80px 0;
	}
	.home-char__title--small {
		font-size: 40px;
	}
	.home-char__title--middle {
		font-size: 56px;
	}
	.home-char__title--large {
		font-size: 64px;
	}
	.home_chars--show-button {
		height: 815px;
	}
	.home_chars__title-div,
	.home_chars__text-div {
		position: relative;
		margin: 0 auto;
		width: var(--main_full-width);
	}
	.home_chars__title {
		letter-spacing: 6.4px;
	}
	.home_chars__text {
		max-width: none;
	}
	.home_chars-main {
		width: var(--main_full-width);
	}
	.home_chars-main-div {
		width: var(--main_full-width);
		max-width: var(--main_full-width);
		gap: 34px;
	}
	.home_chars-main-div__char {
		font-size: 32px;
	}
	.home_chars-main-div__number {
		font-size: 104px;
		line-height: 1.34;
	}
	.home_chars-main-div-right {
		flex-basis: 862px;
	}
	.home_chars-main-div__title {
		font-size: 32px;
	}
	.home_chars-main-div__text {
		margin-top: 16px;
		font-size: 18px;
	}

	/* home-why, home-if, home-fee */
	.home_why,
	.home_if {
		padding: 80px 0;
	}
	.home_fee {
		padding-left: 0;
		padding-right: 0;
	}
	.home_why__img,
	.home_if__img,
	.home_fee__img {
		width: fit-content;
		max-width: var(--main_full-width);
	}
	.home_why__img--1.tablet-pc-only,
	.home_why__img--3.tablet-pc-only,
	.home_why__img--6.tablet-pc-only {
		width: fit-content;
	}

	/* home-strength */
	.widget_home_strength {
		margin-left: calc((50vw - (var(--main_full-width) / 2)) * -1);
		margin-right: calc((50vw - (var(--main_full-width) / 2)) * -1);
		padding-left: 0;
		padding-right: 0;
	}
	.home_strength {
		margin: 0;
		padding: 80px 0 120px;
		height: auto;
	}
	.home_strength--show-button {
		height: 815px;
	}
	.home_strength__bg {
		width: 100%;
		min-height: 700px;
		height: auto;
	}
	.home_strength__title-div,
	.home_strength__text-div {
		position: relative;
		margin: 0 auto;
		width: var(--main_full-width);
	}
	.home_strength__title {
		letter-spacing: 6.4px;
	}
	.home_strength__text {
		max-width: none;
		margin-top: 32px;
		position: absolute;
		top: 102px;
		left: 0;
		right: 0;
	}
	.home_strength-main {
		width: var(--main_full-width);
		display: flex;
		justify-content: space-around;
	}
	.home_strength-main--text-exists {
		top: 263px;
	}
	.home_strength-main-div {
		display: inline-block;
		vertical-align: top;
	}
	.home_strength-main-div:not(:first-child) {
		margin-top: 0;
	}
	.home_strength-main-div__img {
		max-width: 100%;
		width: auto;
		height: auto;
	}
	.home_strength-main-div__text {
		margin-top: 8px;
		max-width: 284px;
		font-size: 16px;
	}
	.home_strength__link {
		margin-top: 0;
		position: absolute;
		bottom: 80px;
		left: 0;
		right: 0;
		margin-left: calc(50% - 180px);
	}

	/* home-strength2 */
	.widget_home_strength2 {
		padding-left: 0;
		padding-right: 0;
	}
	.home_strength2__text {
		margin-top: 0;
	}
	.home_strength2-main {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		padding-left: 0;
		padding-right: 0;
	}
	.home_strength2-main--text-exists {
		top: 204px;
	}
	.home_strength2-main-div {
		padding: 28px 22px;
		width: calc(50% - 8px);
	}
	.home_strength2-main-div:nth-child(n+3) {
		margin-top: 16px;
	}
	.home_strength--total-odd .home_strength2-main-div:first-child {
		padding-top: 24px;
		width: 100%;
		min-height: 224px;
	}
	.home_strength--total-odd .home_strength2-main-div:nth-child(n+2) {
		margin-top: 16px;
	}
	.home_strength2-main-div__title {
		line-height: 1.5;
	}
	.home_strength2-main-div__text {
		max-width: none;
		font-size: 15px;
	}

	/* home-voice */
	.home_voice {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.home_voice__text {
		margin-top: 30px;
		padding: 0;
		text-align: center;
		font-size: 16px;
	}
	.home_voice-main {
		margin-top: 72px;
		display: flex;
		align-items: flex-start;
		justify-content: space-around;
	}
	.home_voice-main-item {
		width: 327px;
	}
	.home_voice-main-item:not(:first-child) {
		margin-top: 0;
	}
	.home_voice-main-item-label {
		height: 22px;
	}
	.home_voice-main-item__title {
		padding: 0 12px;
	}
	.home_voice-main-item__text {
		text-align: left;
		font-size: 16px;
	}
	.home_voice__button {
		margin-top: 72px;
	}

	/*.home_voice4 */
	.home_voice4 {
		padding: 80px 0;
	}
	.home_voice4-main {
		padding: 0;
	}
	.home_voice4-main-item-label__gender {
		font-size: 32px;
	}
	.home_voice4-main-item__text {
		font-size: 16px;
	}
	.home_voice4__button {
		margin-top: 40px;
	}

	/* home_qa */
	.home_qa {
		padding: 80px 0 80px;
	}
	.home--post .home_qa {
		padding-left: 0;
		padding-right: 0;
	}
	.home_qa-ul {
		padding-bottom: 50px;
	}
	.home_qa-li {

	}
	.home_qa-li:nth-child(n+2) {
		margin-top: 28px;
	}
	.home_qa-li__q {
		padding-left: 20px;
		padding-right: 72px;
	}
	.home_qa-li__q::after {
		right: 32px;
		font-size: 22rem;
	}
	.home_qa-li__q-left {
		margin-right: 24px;
		min-width: 78px;
		width: auto;
	}
	.home_qa-li__q-left-num {
		margin-top: 8px;
	}
	.home_qa-li__a {
		padding-left: 24px;
		padding-right: 24px;
	}
	.home_qa-li__a ul {
		padding-left: 24px;
	}

	/* home-post */
	.home--post h2 {
		padding-top: 68px;
	}
	.home--post .wp-block-columns.flex {
		justify-content: space-between;
		margin: 0 auto;
		max-width: 1240px;
	}
	.home--post .wp-block-columns.flex > div.wp-block-column {
		flex-basis: unset;
		flex-grow: unset;
	}
	/* news */
	.home--post .home-news-block {
		padding-left: 0;
		padding-right: 0;
		gap: 16px;
	}
	/* map */
	.home-access-maps {
		margin: 0 auto;
		max-width: 1240px;
	}
	.home--post .home-access-maps {
		max-width: none;
	}
	/* home-cta */
	.home-cta {
		padding-top: 16px;
		padding-bottom: 16px;
	}
	.home-cta__content {
		margin: 0 auto;
		padding: 16px 0 16px;
		display: flex;
		max-width: 960px;
		align-items: center;
		justify-content: space-between;
	}
	.home-cta__tel-div {
		padding-left: 48px;
	}
	.home-cta__tel-num {
		font-size: 56px;
	}
	.home-cta__left,
	.home-cta__right {
		margin-top: 0;
	}
	.home-cta__mail-button {
		width: 336px;
	}
	.home-cta__tel-div::before {
		top: 10px;
		width: 40px;
		height: 40px;
	}
	.home-cta__tel-div::after {
		top: 17px;
		left: 7px;
	}
	.home--post .home-cta {
		padding-top: 0;
		padding-bottom: 0;
	}
	.home--post .home-cta__content {
		margin-left: calc((50vw - (var(--main_full-width) / 2)) * -1);
		margin-right: calc((50vw - (var(--main_full-width) / 2)) * -1);
		max-width: none;
	}
	.home--post .home-cta__front {
		padding: 4px calc(50vw - 412px);
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	/* home-dont-give-up */
	.home-dont-give-up__image {
		max-width: var(--main_full-width);
	}
}

@media screen and (min-width: 1140px), print and (min-width: 1140px) {
	.home_lawyers__list-wrapper {
		/* width: 974px; */
		flex-basis: 974px;
	}
}

@media screen and (min-width: 1260px), print and (min-width: 1260px) {
	.home_lawyers__list-wrapper {
		/* width: 1130px; */
		flex-basis: 1130px;
	}
	.lawyer-info__image {
		width: unset;
	}
}