/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
*/

body {
    overflow-x: hidden;
	position: relative;
}
html {
	scroll-behavior: smooth;
}
img {
	vertical-align: bottom;
	margin: 0;
	padding: 0;
}
.header_contact_wrapper {
	max-width: 450px;
 	margin: 0 0 0 auto;	
}
.header_contact_flex {
    margin-top: 10px;
    display: flex;
    justify-content: flex-end;
}
.header_phone_wrppaer {
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 220px;
	margin: auto;
	text-align: center;
	padding: 5px 20px;
	background-color: var(--vk-color-primary);
	border-radius:5px;
	margin-right: 10px;
}
.header_phone_wrppaer:before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url(images/free_dial.svg) no-repeat;
	background-position: center;
	background-size: contain;
}
.header_phone_wrppaer p {
	line-height: 1.2;
	margin-bottom: 0;
}
.header_phone_wrppaer p a {
	font-size: 16px;
	text-align: center;
	color: #fff;	
	text-decoration: none;
}
.header_phone_wrppaer p span {
	font-size: 12px;
}
.header_line_wrppaer {
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 220px;
	margin: auto;
	text-align: center;
	padding: 9.6px 20px;
	background-color: /*#00c300*/#0C8E0F;
	border-radius: 5px;
}
.header_line_wrppaer:before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url(images/line_icon.svg) no-repeat;
	background-position: center;
	background-size: contain;
	margin-right: 10px;
}
.header_line_wrppaer p {
	line-height: 1.2;
	margin-bottom: 0;
}
.header_line_wrppaer p a {
	font-size: 16px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
.header_line_wrppaer p span {
	font-size: 12px;
}
.site-header-logo a {
    font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    letter-spacing: 2px;
	color: var(--vk-color-primary);
}
.site-header-logo img {
    max-height: 100px;
    max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.header_scrolled .site-header-logo {
	display: block;
}
.header_scrolled .site-header-logo img {
    max-height: 80px;	
}
.entry-title--post-type--page, h2,
h3 {
    padding: 0;
    border-top: none;
    border-bottom: none;
	margin-bottom: 0;
}
h3:after {
	display: none;
}
.home .site-body {
    padding: 0;
}
.swiper-slide-active picture img,
.swiper-slide-duplicate-active picture img,
.swiper-slide-prev picture img {
	animation: zoom-out 8s linear 0s 1 normal both;
}
@keyframes zoom-out {
  0% {
    transform: scale(1.5);
  }
  100% {
    transform: scale(1);
  }
}
.ltg-slide-text-title {
    font-size: 32px;
}
.ltg-slide-text-title span {
	color: red;
}
.ltg-slide-text-caption {
	font-size: 40px;
}
.ltg-slide-text-caption span {
	font-size: 45px;
	font-weight: bold;
	color: red;
}
.top_mv {
	position: relative;
}

.catch_copy {
	position: absolute;
	top: 60%;
    left: 10%;
    transform: translateY(-60%);
    -webkit-transform: translateY(-60%);
    -ms-transform: translateY(-60%);
    z-index: 9;
    
}
.main_copy {
	width:100%;
	color: #fff;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 2px;
    color: rgb(255, 255, 255);
	margin-top: 20px;
	display: flex;
    align-items: flex-end;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}
.sub_copy {
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 2px;
    background:#fff;padding:10px;display:inline-block;margin:0;
}
.sub_copy span {color:#5368B2;}

.home section {
	margin: auto;
	padding: 70px 0;	
}
.home section#handling {
	padding-top: 80px;
	background-color: var(--vk-color-primary);
}
.section_wrapper {
	max-width: 1120px;
	margin: auto;	
}
h2.section_title {
	font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    /*font-family: 'Playfair Display', serif;*/
    font-size: 58px;
    letter-spacing: 0.075em;
    text-align: center;
	color: var(--vk-color-primary);
	margin-bottom: 50px;
}
.home section#handling h2.section_title {
	color: #fff;
}
.flex__wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flex__wrapper--block {
	display: flex;
    flex-direction: column;
	width: calc(100% / 3 - 20px);
	border: thin solid #ccc;
	background-color: #fff;
	margin-bottom: 30px;
}
.flex__wrapper--title {
	height: 290px;
	background-position: center center;
	background-size: cover;
	position: relative;
	transition: all 0.5s 0s ease;
}
.flex__wrapper--title p {
	width: 100%;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.075em;
	text-shadow: 0 3px 6px rgba(0, 0, 0, .62);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.flex__wrapper--ex {
	padding: 16px;
	flex-grow:1;
	background-color: #fff;
}
.layer {
    background-color: rgba(0,0,0,0.3);
    height: 290px;	
}
.detail {
	margin: 30px auto 20px;
	text-align: center;
	background-color: #fff;
}
.detail a {
	color: var(--vk-color-primary);
}
.more_btn {
    display: inline-block;
    background-color: /*var(--vk-color-primary)*/#C5004E;
    height: 50px;
    padding: 0 35px;
    font-size: 16px;
    line-height: 44px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    border: thin solid /*var(--vk-color-primary)*/#C5004E;
	transition: all 0.5s 0s ease;
	position: relative;
}
.more_btn i {
	margin-left: 1em;
}
.more_btn:hover {
    color: var(--vk-color-primary);
	background-color: #fff;
}
h2.strength_title,
h3.strength_title {
	font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    /*font-family: 'Playfair Display', serif;*/
    font-size: 58px;
    letter-spacing: 0.075em;
    text-align: center;
	color: var(--vk-color-primary);
	margin-bottom: 50px;
}
section#strength {
	/*background-image: url(images/strength_bg.webp);
	background-attachment: fixed;*/
	background:#fff;
}
.strength__wrapper--flex {
	display: flex;
	align-items: center;
	background-color: #fff;
	border: thin solid #ccc;
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.16);
	margin-bottom: 50px;
}
.strength__wrapper--flex.reverse {
	flex-direction: row-reverse;
}
.strength__wrapper--flex .img {
	width: 40%;
	flex-shrink: 0;
}
.strength__wrapper--block {
	display: block;
	padding: 0 50px;
}
.strength__wrapper--title {
    font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    /*font-family: 'Playfair Display', serif;*/
    font-size: 40px;
    letter-spacing: 0.045em;
	color: var(--vk-color-primary);
	margin-bottom: 40px;	
}
.strength__wrapper--title span {
	font-size: 1.1em;
	font-weight: bold;
	color: var(--vk-color-custom-1);
}
.strength__wrapper--cont {
	font-size: 18px;
	line-height: 1.8;
}


.page-header {
	height: 300px;
	background-image: url("images/pagetop_h1s.webp");
	background-position: center top;
	background-size: cover;
}
@media (min-width: 992px) {
	.page-header {
		background-image: url("images/pagetop_h1.webp");
	}
}
.page-header-title,
h1.page-header-title {
    line-height: var(--vk-line-height-low);
    margin: 0;
    font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    /*font-family: 'Playfair Display', serif;*/
    font-size: 40px;
    letter-spacing: 0.15em;
}
.site-footer table.office.footer {
	max-width: 600px;
}
.site-footer table.office.footer th {
	font-size: 16px;
	text-align: right;
	white-space: nowrap;
}
.site-footer table.office.footer td {
	font-size: 16px;
}

/* 取扱業務一覧 */

.handling__flex {
	display: flex;
	align-items: center;	
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.16);
	margin-bottom: 50px;
}
.handling__flex.reverse {
	flex-direction: row-reverse;
}
.handling__flex--img {
	max-width: 600px;
	flex-shrink: 0;
}
.handling__flex.reverse .handling__flex--img {
	margin-right: 0;
	margin-left: 50px;
}
.handling__flex--block {
	display: block;
	width: calc(100% - 600px);
	margin: 0 50px;;
}
.handling__flex--title {
	line-height: var(--vk-line-height-low);
    margin: 0;
    font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    /*font-family: 'Playfair Display', serif;*/
    font-size: 36px;
	color: var(--vk-color-primary);
	padding: 0.5em 0;
	border-top: solid 2px var(--vk-color-primary);
	border-bottom: solid 2px var(--vk-color-primary);
    letter-spacing: 0.055em;
	text-align: center;
	margin-bottom: 30px;
}

/* 事務所概要 */

.office h2.section_title {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 100px;
}
.office h2.section_title.first {
	margin-top: 0;
}
.office h2.section_title:before,
.office h2.section_title:after {
	border-top: 2px solid var(--vk-color-primary);
	content: "";
	width: 3em;
}
.office h2.section_title:before {
	margin-right: .5em;
}
.office h2.section_title:after {
	margin-left: .5em;
}
.office table.office {
	max-width: 600px;
	margin: auto;
}
.office table.office.single-office {
	max-width: 980px;
}
.office table.office.single-office th {
    width: 30%;
    text-align: right;
    vertical-align: middle;
}

/* フッター */

.site-footer {
	color: #fff;
    background-color: var(--vk-color-custom-5);
}
.site-footer a {
	color: #fff;
}
.footer-nav {
    display: none;
}
.widget-title.site-footer-title,
.site-footer-title:after {
    border-bottom: 1px solid #ccc;
}
.site-body .contact_flex {
	max-width: 750px;
	margin: 50px auto 0;	
	display: flex;
	justify-content: space-between;	
}
.page-id-63 .site-body .contact_flex {
	margin: 0 auto 0;
}
.site-body .phone_wrppaer {
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 330px;
	margin: 0 auto 50px;
	text-align: center;
	padding: 10px 20px;
	border: thin solid var(--vk-color-primary);
	background-color: var(--vk-color-primary);
	border-radius: 10px;
}
.site-body .phone_wrppaer:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url(images/free_dial.svg) no-repeat;
	background-position: center;
	background-size: contain;
	margin-right: 10px;
}
.site-body .phone_wrppaer p {
	line-height: 0.8;
	margin-bottom: 0;
}
.site-body .phone_wrppaer p a {
	font-size: 30px;
	text-align: center;
	color: #fff;	
	text-decoration: none;
}
.site-body .phone_wrppaer p span {
	font-size: 14px;
}
.site-body .line_wrppaer {
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 350px;
	margin: 0 auto 50px;
	text-align: center;
	padding: 10px 20px;
	border: thin solid #0C8E0F;
	background-color: #0C8E0F;
	border-radius: 10px;
	transition: all 0.5s 0s ease;
}
.site-body .line_wrppaer:hover {
	color: #0C8E0F;	
	background-color: #fff;	
}
.site-body .line_wrppaer:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url(images/line_icon.svg) no-repeat;
	background-position: center;
	background-size: contain;
	padding: 0 20px;
	margin-right: 10px;
}
.site-body .line_wrppaer {
	font-size: 30px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
.site-body .line_wrppaer p {
	line-height: 1;
	margin-bottom: 0;
}
.site-body .line_wrppaer p span {
	font-size: 14px;
}
.site-body .contact_wrppaer {
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 340px;
	margin: 0 auto 50px;
	text-align: center;
	padding: 10px 20px;
	border: thin solid var(--vk-color-primary);
	background-color:  var(--vk-color-primary);
	border-radius: 10px;
	transition: all 0.5s 0s ease;
}
.site-body .contact_wrppaer:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url(images/mail_icon.svg) no-repeat;
	background-position: center;
	background-size: contain;
	margin-right: 10px;
}
.site-body .contact_wrppaer {
	font-size: 20px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
.site-body .contact_wrppaer:hover {
	color: var(--vk-color-primary);
	background-color: #fff;
}
.site-body .contact_wrppaer p {
	margin-bottom: 0;
}
.site-body .contact_wrppaer p span {
	font-size: 14px;
}
.row {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-around;
    margin-right: -15px;
    margin-left: -15px;
}
.row_block {
	display: block;
}
table.office.footer,
table.office.footer tr,
table.office.footer th,
table.office.footer td {
    border: none;
    font-size: 16px;
    font-weight: normal;
    text-shadow: none;
}
.row_block.menu {display:flex;flex-flow:row wrap;width:100%;}
footer .container {max-width:100%;}
.row_block.menu > div {margin-bottom:15px;}
.row_block.menu > div:nth-child(odd) {width:50%;}
.row_block.menu > div:nth-child(even) {width:50%;}
.row_block.menu > div:last-child {border-right:none}

@media screen and (min-width: 992px) {
	.row_block.menu {width:320px;justify-content:flex-start;}
	.row_block.menu > div {margin-bottom:0;border-right:none}
	.row_block.menu > div:nth-child(odd) {width:60%;}
	.row_block.menu > div:nth-child(even) {width:40%;}
}

.row_block.menu a {
	font-size: 16px;
	line-height: 3;

}
.veu_profile .profile_text {
    margin-bottom: 1em;
    font-size: 16px;
    line-height: 1.8;
}

/* MW WP Formカスタマイズ */

.mw_wp_form input[type="email"],
.mw_wp_form input[type="tel"],
.mw_wp_form input[type="text"],
.mw_wp_form textarea {
    padding: 1em;
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
    font-size: 15px;
    border: 1px solid #ccc;
}
.mw_wp_form select {
    display: block;
    position: relative;
    width: 80%;
    height: 38px;
    font-size: 14px;
    font-size: 0.9rem;
    border: 1px solid #ccc;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    overflow: hidden;
    padding: 0 10px;
}
.mw_wp_form selectt:after {
    position: absolute;
    display: block;
    content: '';
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-left: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid var(--vk-color-primary);
    top: 50%;
    right: 10px;
    margin-top: -3px;
    pointer-events: none;
}

/*――――「表」デザイン――――*/

table.cform,
table.cform tr,
table.cform th,
table.cform td {
	border: none;
}
table.cform th {
	font-size: 15px;
	width: 30%;
	white-space: nowrap;
	text-align: right;
	border-bottom: solid 1px #ccc;
    padding: 15px 10px;
    font-weight: bold;
	vertical-align: top;
}
table.cform td {
	font-size: 15px;
	line-height: 200%;
	border-bottom: solid 1px #ccc;
	padding: 10px;
}
table.cform th:first-of-type,
table.cform td:first-of-type {
	border-top: solid 1px #ccc;	
}

/*―――――表示―――――*/
.cform {
	width: 94%;
	margin: auto;
}
.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
	width: 90%;
}
.policy_byn {
	text-align: center;
	cursor: pointer;
}
.page-id-10 .sitemap-top_page,
.page-id-10 .sitemap-business,
.page-id-10 .sitemap-cost,
.page-id-10 .sitemap-flow,
.page-id-10 .sitemap-contact_line {
	display: none;
}
.page-id-129 .policy_byn {
	display: none;
}
.page-id-130 .thanks {
	font-size: 18px;
	line-height: 2;
	text-align: center;
}
.sitemap-post {
	display: none;
}
#debt,
#affairs,
#receivables,
#heritage,
#crime {
	padding-top: 100px;
	margin-top: -100px;
}
@media only screen and (max-width:767px) {
	table.cform th,
	table.cform td {
		width: 100%;
		display: block;
		padding: 1em;
		border-top: none;
	}
	table.cform th {
		text-align: left;
		border-bottom: none;
	}
	table.cform td:first-of-type {
		border-top: none;
	}
	.cform option,
	.cform textarea,
	.cform input[type=text],
	.cform input[type=email],
	.cform input[type=search],
	.cform input[type=url] {
		width: 100%;
	}
}

/*――「送信ボタン」デザイン――*/
.submit-btn input {
	color: #ffffff;
	font-size: 1.3em;
	font-weight: bold;
	margin: 0 auto;
	padding: 10px 35px;
	border-radius: 3px;
	cursor: pointer;
	text-align: center;
	border: thin solid var(--vk-color-primary);
	border-radius: 10px;
	background-color: var(--vk-color-primary);
	transition: all 0.5s 0s ease;
}
.submit-btn {
	text-align:center;
	margin-top:20px;
	cursor: pointer;
}
.submit-btn input:hover {
	color: var(--vk-color-primary);
	background-color: #FFFFFF;
	cursor: pointer;
}
/*―――「必須」デザイン―――*/
.required-srt {
	font-size:0.85em;
	padding:3px 5px;
	border-radius: 5px;
	margin-left: 10px;
	background:#ff0000;
	color: #ffffff;
}
/*―――「任意」デザイン―――*/
.any-srt {
	font-size:0.85em;
	padding:3px 5px;
	border-radius: 5px;
	margin-left: 10px;
	background: #ccc;
	color: #ffffff;	
}
/*ーーーーーーーーーーーーーーーー*/
#wpfront-scroll-top-container {
	opacity: 1 !important;
	transition: 0.5s;
}
#wpfront-scroll-top-container:hover {
	opacity: .8 !important;
}
.vk-mobile-nav-menu-btn {
	border: none;
	background-image: url("images/menu_open.svg");
	background-size:30px 30px;
	background-color:transparent;
}
.vk-mobile-nav-menu-btn.menu-open {
	border: none;
	background-image: url("images/menu_close.svg");
	background-size:30px 30px;
}
.entry-meta-item.entry-meta-item-updated,
.vcard.author,
.site-footer-copyright p:nth-child(2) {
    display: none  !important;
}
.site-footer-copyright {background-color: var(--vk-color-custom-5);}
.site-footer-copyright p {color: #fff;}

@media screen and (max-width: 1440px) and (min-width: 501px) {
	
	h2.section_title,
	h2.strength_title,
	h3.strength_title {
		font-size: clamp(40px, 30.396px + 1.917vw, 58px);
	}
	.strength__wrapper--title {
		font-size: clamp(26px, 18.530px + 1.491vw, 40px);
	}	
	.page-header {
		height: clamp(150px, 69.968px + 15.974vw, 300px);
	}
	.page-header-title, h1.page-header-title {
		font-size: clamp(30px, 24.665px + 1.065vw, 40px);
	}
	.office h2.section_title {
		font-size: clamp(30px, 19.329px + 2.13vw, 50px);
	}
}

@media screen and (max-width: 1400px) {
	.home .section_wrapper {
		padding-right: 16px;
		padding-left: 16px;
	}
}

@media screen and (max-width: 1200px) {
	.strength__wrapper--block {
		display: block;
		padding: 0 10px;
	}
	.strength__wrapper--title {
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 1199px) and (min-width: 992px) {
	.strength__wrapper--title {
		letter-spacing: 0;
	}
}

@media screen and (min-width: 992px) {
	.site-header-logo {
		text-align: left;
	}	
	.site-header--layout--nav-float .site-header-logo {
		font-size: 40px;width: 100%;max-width:280px;margin:10px 0;padding:0;
	}	
	.header_scrolled .site-header--layout--nav-float .site-header-logo {
		font-size: 1.5rem;
		margin:10px 0;
	}
	.site-header--layout--nav-float .site-header-container {display: flex;justify-content: space-between;}
	.header_scrolled .site-header .global-nav {display: flex;justify-content: flex-end;align-items: center;margin:0;}
}


@media screen and (max-width: 1000px) {
	.handling__flex {
		display: block;
	}
	.handling__flex--img {
		max-width: 100%;
		text-align: center;
		margin-bottom: 30px;
		margin-right: 0;
	}
	.handling__flex--block {
		width: 600px;
		max-width: 100%;
	}
	.handling__flex--title {
		font-size: clamp(30px, 26.799px + 0.639vw, 36px);
	}
}


@media (max-width: 991.98px){
	#to_top_scroll {/*bottom:95px;*/}
	.site-header {
		position:fixed !important;
		top: 0px;
		height:50px;

	}
	.header_scrolled .site-header-logo{
		display:block;
	}
	body {
		/* モバイル時のヘッダーの高さ */
		 padding-top: 50px;
	}
	.site-header-container {display:flex;justify-content:space-between;}
	.h_icon {width:150px;display:flex;margin:0;padding:0;}
	.h_icon > div {width:50px;height:50px;margin:0;padding:0;}
	.h_icon > div:before,ol.h_icon li:marker {display:none;}
	.h_icon > div:nth-child(1) {background:#ED8C4C}
	.h_icon > div:nth-child(2) {background:#06C755}
	.h_icon > div:nth-child(3) {background:#263A72}
	.h_icon > div a {padding:10px;display:block;}
	.h_icon > div a img {width:100%;height:auto;}
	/* ヘッダー透過の時 */
	.site-header--trans--true+div {
		/* モバイル時のヘッダー高さ分マイナスオフセット */
		margin-top: -60px;
	}
	.site-header-logo,
	.header_scrolled .site-header-logo {
		display: inline-block;
		text-align: left;
		padding:7px 0;
		margin:0;
	}
	.site-header-logo img,
	.header_scrolled .site-header-logo img {
		max-height: 35px;
	}
	.vk-mobile-nav-menu-btn.position-right {
		left: inherit;
		right:7px;
		top:7px;
		/*margin-top: 10px;*/
	}
	.header_contact_wrapper {
		max-width: 650px;
		margin: 0 0 0 auto;
		position: fixed !important;
		top: 0;
		right: 0;
		margin-top: 0;
		margin-right: 20px;
		transform: scale(0.8, 0.8);
		z-index: 9999;
	}
	.vk-mobile-nav-widget {
		padding-top: 30px;
	}
	.flex__wrapper--block {
		display: block;
		max-width: 600px;
		width: 100%;
		margin: 0 auto 30px;
	}
	.strength__wrapper--flex {
		display: block;
	}
	.strength__wrapper--flex .img {
		width: 100%;
		text-align: center;
		margin-top: 30px;
		margin-bottom: 30px;
	}
	.strength__wrapper--cont {
		padding-bottom: 30px;
	}
	.profile__wrapper {
		display: block;
		height: auto;
		text-align: center;
		margin-bottom: 20px;
	}
	.profile__wrapper .img {
		margin-bottom: 20px;
		margin-right: 0;
	}
	table.profile {
		width: auto;
		max-width: 100%;
		margin: auto;
	}
	table.profile td {
		text-align: left;
	}
}

@media (min-width: 992px) {
	.col-lg-4 {
		flex: 0 0 50%;
		max-width: 50%;
	}	
}

@media screen and (max-width: 884px) {
	.strength__wrapper--flex .img {
		margin-top: 0;
	}	
	.access__wrapper {
		display: block;
	}
	.access__wrapper .block {
		width: 100%;
		margin-bottom: 30px;
	}
	.access__wrapper .block table.office th,
	.access__wrapper .block table.office td {
		line-height: 2;
	}
	.access__wrapper .map {
		width: 95%;
		margin-right: 0;
	}
}
@media screen and (min-width: 768px) {
	.sp_only {
		display: none;
	}
	a[href^="tel:"] {
		pointer-events: none;
	}	
	.flex__wrapper--title.one:hover {
		background-image: url(images/scam_2.webp) !important;
	}
	.flex__wrapper--title.two:hover {
		background-image: url(images/debt_2.webp) !important;
	}
	.flex__wrapper--title.three:hover {
		background-image: url(images/affairs_2.webp) !important;
	}
	.flex__wrapper--title.four:hover {
		background-image: url(images/receivables_2.webp) !important;
	}
	.flex__wrapper--title.five:hover {
		background-image: url(images/heritage_2.webp) !important;
	}
	.flex__wrapper--title.six:hover {
		background-image: url(images/crime_2.webp) !important;
	}
}

@media screen and (max-width: 767px) {		
	.header_contact_wrapper {
		display: none;
	}	
	.site-body .contact_flex {
		display: block;
	}
	.site-body .contact_wrppaer,
	.site-body .phone_wrppaer {
		max-width: 350px;
	}
	.site-body .contact_wrppaer,
	.site-body .phone_wrppaer {
		margin-bottom: 20px;
	}
	.page-header-title,
	h1.page-header-title {
		font-size: 30px;
	}
	.handling__flex--block {
		display: block;
		width: 100%;
		margin: 0;
		padding: 0 20px 20px;
	}
}

@media screen and (min-width: 501px) {
	#fixed-footer-menu {
		display: none;
	}
}

@media screen and (max-width: 500px) {
	.site-header-logo {
    	font-size: 26px;
		text-align: center;
	}
	.catch_copy {
    	top: 50%;
	}
	
	.home section {
		margin: auto;
		padding: 50px 0;
	}
	.home section#handling {
		padding-top: 30px;
	}
	h2.section_title,
	h2.strength_title,
	h3.strength_title {
		font-size: 30px;
	}
	.home h2.section_title {
		margin-bottom: 20px;
	}
	.flex__wrapper--ex {
	}
	.flex__wrapper--block {
		margin-bottom: 20px
	}
	.strength__wrapper--block {
		display: block;
		padding: 0 20px;
	}
	.strength__wrapper--title {
		font-size: 20px;
		letter-spacing: 0;
		color: var(--vk-color-primary);
		margin-bottom: 30px;
	}
	.strength__wrapper--title span {
		font-size: 1em;
		font-weight: bold;
		letter-spacing: 0;
		color: var(--vk-color-custom-1);
	}
	.strength__wrapper--cont {
		font-size: 16px;
		line-height: 1.8;
		padding-bottom: 1em;
	}
	section#access {
		padding-left: 0;
		padding-right: 0;
	}
	.access__wrapper {
		max-width: 100%;
		margin: auto;
		display: block;
	}
	.access__wrapper .map {
		margin: 0 calc(50% - 50vw);
		width: 100vw;
	}
	.access__wrapper .block {
		max-width: 100%;
		margin: 0;
		margin-bottom: 50px;
	}
	table.office,
	table.office tr,
	table.office th,
	table.office td {
		border: none;
		font-size: 14px;
	}
	.page-header {
		height: 150px;
	}
	.office h2.section_title {
		font-size: 28px;
		margin-top: 50px;
	}
	.office h2.section_title:before,
	.office h2.section_title:after {
		width: 2em;
	}
	
	table.office.footer,
	table.office.footer tr,
	table.office.footer th,
	table.office.footer td {
		font-size: 14px;
		margin-top: 0;
	}
	.site-footer table.office.footer th,
	.site-footer table.office.footer td {
		font-size: 14px;
	}
	.site-footer table.office.footer th {
		width: 35%;
	}
	.row_block.office {
		border-bottom: none;
	}
	.row_block.menu {
		margin-top: 10px;
	}
	.row_block.menu a {
		font-size: 14px;
		line-height: 1.8;
	}
	.page-header {
		/*background-image: none;*/
	}
	/* フッターバー */
	#fixed-footer-menu {
		position: fixed;
		width: 100%;
		bottom: 0px;
		margin-bottom: -20px;
		opacity: 0;
		visibility: hidden;
		z-index: 100;
	}
	#fixed-footer-menu.active {
		opacity: 1;
		visibility: visible;	
	}
	#fixed-footer-menu ul {
		display: flex;
		list-style: none;
		padding: 0;
		margin: 0;
		width: 100%;
		border-top: thin solid #fff;
	}
	#fixed-footer-menu li {
		justify-content: center;
		align-items: center;
		width: 25%;
		padding: 5px 0 0;
		margin: 0;
		background-color: var(--vk-color-primary);
		background-color: rgba(18, 31, 73, .8);
		border-right: thin solid #fff;
	}
	#fixed-footer-menu li.tel_icon {

	}
	#fixed-footer-menu li.line_icon {
		border-right: none;
	}	
	#fixed-footer-menu li a {
		color: #fff;
		text-align: center;
		display: block;
		width: 100%;
		padding: 10px 0px;
		font-size: 8px;
		text-decoration: none;
	}
	#fixed-footer-menu li p {
		font-size: 12px;
	}
	#fixed-footer-menu li .footer-icon {
		font-size: 26px;
    	padding-left: 6px;
	}
	#wpfront-scroll-top-container {
		right: 20px;
		bottom: 90px !important;
	}		
	#wpfront-scroll-top-container img {
		width: 50px !important;
		height: 50px!important;
	}
}

.f_bana {position:fixed;right:20px;bottom:95px;width:350px;z-index:999;display:none}
.f_bana img {width:100%;}
@media screen and (max-width: 768px) {
	.f_bana {right:0;bottom:72px;width:100%;}
}

/* fixedmenu */
#fixedmenu {position: fixed;bottom: -100px;background-color:rgba(0, 0, 0, 0.6);width: 100%;padding:30px 0 10px;z-index: 100;transition: bottom 0.3s ease;}
#fixedmenu.active {bottom: 0;}
.fm_close {position:absolute;top:2px;right:2px;width:20px;height:20px;line-height:20px;text-align:center;color:#fff;font-size:28px;}
#fixedmenu .flex_box {display: flex;justify-content:space-between;align-items: center;width: 100%;padding:0 10px;margin:0 auto;}
.flex_box > div.bc_btn {width:49%;margin:0;padding:0 0.5%}
.flex_box > div.bc_btn a {min-height:50px !important;padding:0 15px 0 35px;}
.flex_box > div.bc_btn a small {font-size:12px;line-height:1.2em;}
.flex_box .bc_tel a:after,.flex_box .bc_mail a:after,.flex_box .bc_line a:after {left:5px;width:25px;height:25px;background-size:25px 25px;}
.flex_box .bc_tel a:before,.flex_box .bc_mail a:before,.flex_box .bc_line a:before {right:5px;}

.site-footer {padding-bottom:100px;}
@media screen and (min-width: 992px) {
	#fixedmenu {display:none;}
	.site-footer {padding-bottom:0;}

}

.global-nav-list li {font-size: 14px;}
.device-mobile .global-nav-list>li .global-nav-name {font-size: 14px;}

@media screen and (max-width: 1300px) {
	.device-pc .global-nav-list>li>a {padding:10px 0.6em;}
	#site-header #site-header-container li:last-child a {padding:10px 2.5em 10px 1.5em !important;}
}
/* 
ADD 20260317
*/

/* ご相談の流れ */
.flow {}
.flow_box {display:flex;flex-flow:row wrap;}
.flow_box > div {width:100%;}
.flowb_text {padding:30px;background:#fff;}
.flowb_img {}
.flowb_img img {width:100%;height:auto;}
.flow_box.flow_boxl .flowb_text{order:1;}
.flow_box.flow_boxl .flowb_img{order:2;}
.flow_box.flow_boxr .flowb_text {order:1;}
.flow_box.flow_boxr .flowb_img {order:2;}
.flowb_img1 {
	padding:30px 20px;background-image:url(images/bc_bg.webp);background-position: center;background-size:cover;position:relative;
	display:flex;flex-flow:row wrap;align-items:center;
}
.flowb_text > div {display:flex;flex-flow:row wrap;align-items:center;}
.flowb_text > div > div {width:100%;}
.flowb_text01 {display:block;}
.flowb_text01 p {background-color:var(--vk-color-primary);padding:0.2em 1em;font-size:20px;color:#fff;font-weight:bold;display:inline-block;margin:0;}
.flowb_text02 {margin:0.6em 0;font-size:20px;font-weight:bold;}
.flowb_text03 {}
.flowb_text03 span {font-size:0.85em;}
.flow_arrow {margin:15px auto;width:0;height:0;border-style:solid;border-width: 25px 40px 0 40px;border-color: #ED8C4C transparent transparent transparent;}

@media screen and (min-width: 992px) {
	.flowb_img1 {padding:40px;}
	.flow_box > div {width:50%;}
	.flowb_text {padding:40px;}
	.flow_box.flow_boxl .flowb_text{order:0;}
	.flow_box.flow_boxl .flowb_img{order:0;}
	.flow_box.flow_boxr .flowb_text {order:0;}
	.flow_box.flow_boxr .flowb_img {order:0;}
	.flow_arrow {margin:30px auto;border-width: 40px 60px 0 60px;}
}
@media screen and (max-width: 500px) {
	.flowb_img1 {padding:25px 15px;}
	.flowb_text {padding:25px 15px;}

}

/* 業務　*/
.post-name-service .site-body {background:rgba(167, 216, 240, 0.3);}
.service img {width:100%;height:auto;}
.ser_box {display:flex;flex-flow:row wrap;align-items:center;position:relative;margin-bottom:50px;}
.ser_box._last {margin-bottom:0;}
.ser_box > div {}
.ser_box > div.ser_box_text {width:100%;z-index:2;background:#fff;padding:30px;box-shadow: 0px 5px 20px 0px rgba(0,0,0,0.4);} 
.ser_box > div.ser_box_img {width:100%;position:relative;} 
.ser_box.ser_boxl .ser_box_text{order:2;}
.ser_box.ser_boxl .ser_box_img{order:1;margin-right:0;}
.ser_box.ser_boxr .ser_box_text {order:2;}
.ser_box.ser_boxr .ser_box_img {order:1;margin-left:0;}
.ser_box_t01 {font-size:22px;padding:0 0.5em;border-left:4px solid var(--vk-color-primary);color: var(--vk-color-primary);font-weight:bold;}
.ser_box_t02 {margin:15px 0 1.5em;padding:0;line-height:1.8em;}

.ser_link2 {text-align:center;margin:0 auto;width:100%;max-width:300px;}
.ser_link2 a {font-size:16px;line-height:60px;margin-bottom:15px;color:#fff;text-decoration:none;display:block;background-color: var(--vk-color-primary);position:relative;}
.ser_link2 a:before {
	content:"";position:absolute;top:50%;right:15px;transform:translateY(-50%);z-index:5;
	width: 8px;height: 8px;margin-top: -5px;border-top: solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
}

.ser_box_text ul {width:100%;display:flex;flex-flow:row wrap;margin:0 auto;}
.ser_box_text ul li.ser_link {width:100%;text-align:center;margin-bottom:10px;display:flex;justify-content:center;}
.ser_box_text ul li:nth-child(odd) {margin-right:0;}
.ser_link a {font-size:16px;line-height:60px;color:#fff;text-decoration:none;display:block;background-color: var(--vk-color-primary);width:100%;max-width:310px;position:relative;}
.ser_link a:before {
	content:"";position:absolute;top:50%;right:15px;transform:translateY(-50%);z-index:5;
	width: 8px;height: 8px;margin-top: -5px;border-top: solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
}
.ser_link a:before {
	content:"";position:absolute;top:50%;right:15px;transform:translateY(-50%);left:auto;bottom:auto;z-index:5;
	width: 8px;height: 8px;margin-top: -5px;border-top: solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
}
.ser_link-icon01 a:after,
.ser_link-icon02 a:after,
.ser_link-icon03 a:after,
.ser_link-icon04 a:after,
.ser_link-icon05 a:after,
.ser_link-icon06 a:after {
	content:"";position:absolute;top:50%;left:15px;transform:translateY(-50%);z-index:5;width:30px;height:30px;background-size:30px 30px;background-position:center center;
}
.ser_link-icon01 a:after {background-image:url(images/top_service02.webp);}
.ser_link-icon02 a:after {background-image:url(images/top_service01.webp);}
.ser_link-icon03 a:after {background-image:url(images/top_service03.webp);}
.ser_link-icon04 a:after {background-image:url(images/top_service07.webp);}
.ser_link-icon05 a:after {background-image:url(images/top_service05.webp);}
.ser_link-icon06 a:after {background-image:url(images/top_service04.webp);}

@media screen and (min-width: 992px) {
	.ser_box > div.ser_box_text {width:50%;padding:30px;} 
	.ser_box > div.ser_box_img {width:55%;} 
	.ser_box.ser_boxl .ser_box_text{order:0;}
	.ser_box.ser_boxl .ser_box_img{order:0;margin-right:-5%;}
	.ser_box.ser_boxr .ser_box_text {order:0;}
	.ser_box.ser_boxr .ser_box_img {order:0;margin-left:-5%;}

	.ser_box_text ul li.ser_link {width:48%;}
	.ser_box_text ul li:nth-child(odd) {margin-right:2%;}
}
@media screen and (max-width: 500px) {
	.ser_box > div.ser_box_text {padding:20px 15px;} 
}

/* 取扱業務_子ページ */

.serc_page {}
.serc_page p {padding:0;margin:0;line-height:1.8em;}
.serc_page-box {background:#fff;padding:30px;margin-bottom:50px;}
.serc_page-box._end {margin-bottom:0;}
.sercp_title {font-size:22px;padding:0.4em 0.5em 0.5em;border-left:4px solid var(--vk-color-primary);border-bottom:1px solid var(--vk-color-primary);color: var(--vk-color-primary);font-weight:bold;}
.sercp_text {margin:15px 0;}
.sercp_text2 {margin:15px 0 0;}
.sercp_textb {background: #EAF8FF;padding:20px;}
.sercp_textb p {}
@media screen and (min-width: 992px) {
	.serc_page-box {padding:40px;}
	.sercp_textb {padding:20px;}
}
@media screen and (max-width: 500px) {
	.serc_page-box {padding:15px;}
	.sercp_textb {padding:15px;}
}

/* よくある質問 */
.faq_con {background:#fff;margin-bottom:25px;}
.faq_c {display:flex;align-items:center;width:100%;padding:20px;}
.faq_c div {width:1.5em;font-size:32px;}
.faq_c p {width:calc(100% - 1.5em);padding-right: 2em !important;}
.faq_title {cursor:pointer;position:relative;list-style:none;font-weight: bold;}
.faq_title:after {
  content: '';position: absolute;right: 20px;top: 50%;width: 8px;height: 8px;
  border-right: 2px solid #333;border-bottom: 2px solid #333;transform: translateY(-50%) rotate(45deg);transition: transform 0.3s;
}
.faq_title div {color:var(--vk-color-primary);}
.faq_title p {padding:0;margin:0;}
.faq_con[open] .faq_title::after {transform: translateY(-25%) rotate(-135deg);}
.faq_content {position:relative;}
.faq_content:before {content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:calc(100% - 40px);height:1px;background:rgba(38, 58, 114, 0.3);}
.faq_content div {color:#ED8C4C;}
.faq_content p {padding:0;margin:0;}
@media screen and (min-width: 992px) {
	.faq_con {margin-bottom:30px;}
	.faq_c {padding:30px;}
	.faq_content:before {width:calc(100% - 60px);}
}
@media screen and (max-width: 500px) {
	.faq_c {padding:15px;}
	.faq_content:before {width:calc(100% - 30px);}
}

/* 弁護士紹介 */
.lawyer_page {}
.lawyer_page ul {display:flex;flex-flow:row wrap;justify-content:space-between;width:100%;font-weight:bold;}
.lawyer_page ul li {line-height:1.6em;}
.lawyer_page ul li:nth-child(1) {width:100%;padding:0;display: flex;flex-direction: column;order:2;}
.lawyer_page ul li:nth-child(2) {width:100%;padding:0 0 30px;order:1;}
.lawyer_page ul li:nth-child(2) .img {background:rgba(241, 241, 241, 1);margin:0 0 0.7em;width:100%;max-width:365px;}
.lawyer_page .tp_title {font-size:24px;padding:0.1em 0.4em;border-left:4px solid var(--vk-color-primary);color: var(--vk-color-primary);font-weight: bold;margin-bottom:1em;}
.lawyer_page .tp_text {font-size:1.125em;font-weight:bold;line-height:2em;margin-bottom:2em}
.lawyer_page .tp_career {}
.lawyer_page .tp_career div {display:flex;padding:15px 0;border-bottom:1px solid rgba(38, 58, 114, 0.3);}
.lawyer_page .tp_career div:last-child {border-bottom:none}
.lawyer_page .tp_career div p {width:9em;margin:0;padding:0;}
.lawyer_page .tp_career div span {width:calc(100% - 9em);}

@media screen and (min-width: 992px) {
	.lawyer_page ul {margin-bottom:0;}
	.lawyer_page ul li:nth-child(1) {width:57%;padding:0;order:0;}
	.lawyer_page ul li:nth-child(2) {width:35%;padding:0;order:0;}
}
@media screen and (max-width: 500px) {

}

/* 事務所概要 */
.office_page {width:100%;max-width:750px;margin:0 auto;}
.office_page table {border-collapse:collapse;table-layout:fixed;width:100%;background #fff;margin-bottom:80px;border:1px solid rgba(0, 0, 0, 0.3);}
.office_page table th,
.office_page table td {display:block;width:100%;border:none;font-size:16px;padding:20px;vertical-align:top;text-align:left;box-sizing:border-box;border:1px solid rgba(0, 0, 0, 0.3);}
.office_page table th {font-weight:700;color:#fff;background: var(--vk-color-primary);vertical-align:center;}
.office_page table td {line-height:1.8em;}
.office_page table td a {color:#000;}
.office_page a.op_tel {text-decoration:underline !important;}
.office_page a.op_mail {text-decoration:underline !important;}

@media screen and (min-width: 992px) {
	.office_page table th,
    .office_page table td {display:table-cell;}
    .office_page table th:first-child {width:10em;}
    .office_page a.op_tel {text-decoration:none !important;}
}
@media screen and (max-width: 500px) {
	.office_page table th,
    .office_page table td {padding:10px;}

}

/* お問い合わせ */
.contactp_box {background-image:url(images/bc_bg.webp);background-position: center;background-size:cover;padding:40px;margin-bottom:50px;}
.contactp_box ul {display:flex;flex-flow:row wrap;justify-content:space-between;}
.contactp_box ul li {width:100%;}
.contactp_box ul li:nth-child(1) {margin-bottom:30px;}
.contactp_box a {padding:15px 10px;height:100%;display:flex !important;flex-flow:row wrap;justify-content: center;align-items: center;}
.contactp_box a p,.contactp_box a span {padding:0;margin:0;width:100%}
.contactp_box .bc_tel span {font-size:16px;line-height:1.2em;}
.contactp_box .bc_tel p {font-size:28px;line-height:1.4em;}
.contactp_box .bc_line span {font-size:16px;line-height:1.2em;}
.contactp_box .bc_line p {font-size:20px;line-height:1.6em;}
@media screen and (min-width: 992px) {
	.contactp_box {padding:60px;}
	.contactp_box ul li {width:38%;}
	.contactp_box ul li:nth-child(1) {margin-bottom:0;}
	.contactp_box .bc_tel span {font-size:16px;}
	.contactp_box .bc_tel p {font-size:36px;}
	.contactp_box .bc_line span {font-size:20px;}
	.contactp_box .bc_line p {font-size:24px;}
}
@media screen and (max-width: 500px) {
	.contactp_box {padding:40px 20px;}

}
/* 採用情報 */
.recruit_page {}
.recp_top-text {line-height:1.8em;text-align:left;margin-bottom:1.5em;font-weight:500;}
table.recbox {border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:80px;border:none;}
table.recbox th,
table.recbox td {display:block;width:100%;border:none;font-size:16px;font-weight:700;vertical-align:top;text-align:left;box-sizing:border-box;}
table.recbox th {border-bottom:none;color:#263A72;padding:15px 15px 0;}
table.recbox td {line-height:1.8em;border-bottom:1px solid rgba(0, 0, 0, 0.3);padding:15px;}
table.recbox td a {color:#000;}
.recentry_page {}
@media screen and (min-width: 992px) {
	.recp_top-text {text-align:center;}
	table.recbox th,
    table.recbox td {display:table-cell;border-bottom:1px solid rgba(0, 0, 0, 0.3);padding:20px;}
    table.recbox th:first-child {width:10em;}
}
@media screen and (max-width: 500px) {
	table.recbox th {padding:10px 10px 0;}
	table.recbox td {padding:10px;}
}
/* form */
body.page-id-742 p:empty{display: none;}
body.page-id-742 p {margin:0;padding:0}
table.form_box {width:100%;max-width:750px;margin:0 auto;}
table.form_box {border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:40px;border:none;}
table.form_box th,
table.form_box td {border:none;display:block;width:100%;border:none;font-size:16px;font-weight:700;vertical-align:top;text-align:left;box-sizing:border-box;}
table.form_box th {padding:0;}
table.form_box td {line-height:1.8em;padding:10px 0 30px;}
table.form_box th p,
table.form_box td p {margin:0;padding:0;}
.wpcf7-radio {display:flex;flex-flow:row wrap;gap:15px;}
.wpcf7-list-item {display: block;line-height: 1;}
.wpcf7-list-item.first {margin: 0;}
.wpcf7-list-item + .wpcf7-list-item {margin-top:0;}
input[type="radio"],input[type="checkbox"] {display: none;}
.wpcf7-list-item-label {position: relative;height: 20px;line-height: 20px;padding-left: 25px;display: inline-block;}
.rbox .wpcf7-list-item-label::before {
    content: "";display: block;position: absolute;top: 0;left: 0;width: 20px;height: 20px;
    border: 1px solid;border-radius: 50%;background: #fff;box-sizing: border-box;
}
.rbox input[type="radio"]:checked + .wpcf7-list-item-label::after {
    content: "";display: block;position: absolute;top: 5px;left: 5px;width: 10px;
    height: 10px;border-radius: 50%;background:var(--vk-color-primary);   
}
.cbox .wpcf7-list-item-label::before {
    content:"";display: block;position: absolute;top: 0;left: 0;width: 20px;height: 20px;
    border:2px solid;background:#fff;box-sizing: border-box;
}
.cbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
    content: "";display: block;position: absolute;top: 4px;left: 5px;width:10px;height:8px;
    border-top: 3px solid var(--vk-color-primary);border-right: 3px solid var(--vk-color-primary);transform: rotate(135deg);  
}
.select_date,.select_date p {display: flex;align-items: center;}
.select_date {gap: 12px;}
.select_date p {gap: 4px;}
.wpcf7-spinner {display:none}
.submit_btn {margin:0 auto 15px;width:100%;max-width:400px;position:relative;}
.submit_btn:before {
	content:"";position:absolute;top:50%;right:15px;transform:translateY(-50%);left:auto;bottom:auto;z-index:5;
	width: 8px;height: 8px;margin-top: -5px;border-top: solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
}
.submit_btn input {
	text-align:center;font-size:16px;line-height:60px;color:#fff;width:100%;padding:0;
	text-decoration:none;display:block;position:relative;background:var(--vk-color-primary);border-radius:0;}

.form_box._btext {text-align:center;margin:1.5em auto 3em;}
/* 削除候補
@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width:100%;
    }
}
*/
.site-body_glay {background: #F1F1F1;}
.site-body_lightblue {background:rgba(167, 216, 240, 0.3);}
header#site-header .container {max-width:100%;padding:0 0 0 5px;}
.site-footer-content .row {justify-content:space-between;margin:0;}
.sf_logo {width:100%;max-width:370px;margin-bottom:30px;}
.sf_name,.sf_add {margin-bottom:30px;font-size: 16px;line-height:1.6}
.breadcrumb-list {padding:10px 0;}
.pagetop_h1 {text-align:left;}
.page-header-title {font-size:40px;}
.page-header-slug {text-transform: uppercase;font-size:18px;line-height:1.3em;font-weight:bold;font-family: "Cormorant", serif;font-optical-sizing:auto;letter-spacing:20%;padding:0;margin:0;}

@media (min-width: 992px) {
	header#site-header .container {padding:0 15px;}
	body:not(.header_scrolled) .global-nav--layout--float-right {align-items: stretch;}
	#site-header #site-header-container {padding-right:0;}
	#site-header #site-header-container li:last-child {position:relative;}
	#site-header #site-header-container li:last-child:before {
		content:"";position:absolute;top:50%;right:12px;transform:translateY(-50%);left:auto;bottom:auto;z-index:5;
		width: 8px;height: 8px;margin-top: -5px;border-top: solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
	}
	#site-header #site-header-container li:last-child a {background:var(--vk-color-primary);color:#fff;padding:14px 5em;}
	
	.page-header-title {font-size:64px;}
	.page-header-slug {font-size:20px;}

}

ul.no_list,ul.no_list li {list-style:none;margin-block-start:0;margin-block-end:0;padding-inline-start:0;}
.sp_br {display:block;}
.pc_br {display:none;}
.sp_con {display:block;}
.pc_con {display:none;}
.f_min {font-family: "Noto Serif JP", serif;font-optical-sizing:auto;}
.f_en {font-family: "Cormorant", serif;font-optical-sizing:auto;}

.box_wrapper {max-width: 1120px;margin: auto;padding:0 16px;}
.box_wrapper0 {max-width: 1120px;margin: auto;padding:0;}

.con_title {width:100%;margin-bottom:50px;text-align:center;}
.con_title._center {text-align:center;}
.con_title h2 {color: var(--vk-color-primary);font-size:32px;font-weight:700;line-height:1.6em;font-family: "Noto Serif JP", serif;font-optical-sizing:auto;letter-spacing:10%;}
.con_title p {text-transform:uppercase;color:#848484;font-size:20px;font-weight:bold;line-height:1.3em;position:relative;font-family: "Cormorant", serif;font-optical-sizing:auto;letter-spacing:20%;}
.con_title span {color: var(--vk-color-primary);font-size:20px;font-weight:700;line-height:1.6em;font-family: "Noto Serif JP", serif;font-optical-sizing:auto;}
.con_title p:before {content:"";width:5em;height:2px;background:var(--vk-color-primary);position:absolute;bottom:-0.5em;left:50%;transform: translateX(-50%);}
.con_title._center p:before {left:50%;transform: translateX(-50%);}
.bc_title {text-align:center;}
.con_title.bc_title {margin-bottom:0;}
.con_title.bc_title p:before {background:#fff;left:50%;transform:translateX(-50%);}
.con_title.bc_title h2 {color:#fff}
.con_title.bc_title p {color:#fff}

.top_link {line-height:56px;text-align:center;width:280px;letter-spacing:0.1em;}

.top_link a {display:block;color:#fff;font-weight:bold;position:relative;}
.top_link a:before {
	content:"";position:absolute;top:50%;right:15px;transform:translateY(-50%);left:auto;bottom:auto;z-index:5;display:block;
	width: 8px;height: 8px;margin-top: -5px;border-top:solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
}
.link_w a {background:rgba(254,254,254,0.3);border:2px solid #fff;}
.link_b {background:var(--vk-color-primary);border:2px solid var(--vk-color-primary);}

a.btn-primary {color:var(--vk-color-primary);font-weight:bold;position:relative;background:transparent;border:none;padding:0 50px 0 0;line-height:30px;margin:auto 0 0;}
a.btn-primary:before {
	content:"";position:absolute;top:50%;right:2px;transform:translateY(-50%);left:auto;bottom:auto;z-index:5;display:block;
	width: 8px;height: 8px;margin-top: -5px;border-top:solid 2px var(--vk-color-primary);border-right: solid 2px var(--vk-color-primary);transform: rotate(45deg);
}
a.btn-primary:hover {background:transparent;color:var(--vk-color-primary);}

section#bc_contact {padding:0;}
#bc_contact {background: #F1F1F1;}
ul.b_contact,ul.b_contact li {list-style:none;margin-block-start:0;margin-block-end:0;padding-inline-start:0;}
ul.b_contact {display:flex;flex-flow:row wrap;margin:0;padding:0;width:100%;}
ul.b_contact li {width:100%;padding:80px 25px;margin:0;}
ul.b_contact li:nth-child(1) {
	background-image:url(images/bc_bg.webp);background-position: center;background-size:cover;position:relative;
	display:flex;align-items:center;
}
ul.b_contact li:nth-child(2) {background:#fff;}
ul.b_contact li div {position:relative;z-index:3;}

.bc_text1 {font-size:28px;text-align:center;margin-bottom:1em;font-weight:700;}
.bc_text1 span {color: var(--vk-color-primary);font-weight:700;}
.bc_text2 {font-size:14px;margin-bottom:2em;font-weight:700;text-align:center;}
.bc_btn {text-align:center;margin:0 auto 15px;width:100%;max-width:400px;}
.bc_btn:last-child {margin-bottom:0;}
.bc_tel {background: #ED8C4C;}
.bc_mail {background: #263A72;}

.recruit_page .bc_mail {background: #000;}
.bc_line {background: #06C755;}
.bc_btn a {font-size:16px;min-height:60px;color:#fff;text-decoration:none;width:100%;position:relative;display:flex;flex-flow:row wrap;align-items:center;justify-content:center;line-height:1.4em;align-content:center;}
.bc_btn a small {width:100%;}
.bc_btn a:before {
	content:"";position:absolute;top:50%;right:15px;transform:translateY(-50%);left:auto;bottom:auto;z-index:5;
	width: 8px;height: 8px;margin-top: -5px;border-top: solid 2px #fff;border-right: solid 2px #fff;transform: rotate(45deg);
}
.bc_tel a:after,
.bc_mail a:after,
.bc_line a:after {
	content:"";position:absolute;top:50%;left:15px;transform:translateY(-50%);z-index:5;width:30px;height:30px;background-size:30px 30px;background-position:center center;background-repeat:no-repeat;
}
.bc_tel a:after {background-image:url(images/icon_free.svg);}
.bc_mail a:after {background-image:url(images/icon_mail.svg);}
.bc_line a:after {background-image:url(images/icon_line.svg);}

@media screen and (max-width: 500px) {
	.top_link a:before {right:10px;}
	.bc_btn a:before {right:10px;}
	.bc_tel a:after,
	.bc_mail a:after,
	.bc_line a:after {left:10px;}
}

@media (min-width: 992px) {
	.box_wrapper,.box_wrapper0 {padding:0 16px;}

	.sp_br {display:none;}
	.pc_br {display:block;}
	.sp_con {display:none;}
	.pc_con {display:block;}
	.con_title {text-align:left;}
	.con_title p:before {left:0;transform: translateX(0);}
	.con_title.bc_title p:before {left:0;transform: translateX(0);}
	.bc_title {text-align:left;}
	section#bc_contact {padding:50px 0;}
	ul.b_contact li {width:50%;padding:30px;}
	.bc_text1 {font-size:28px;t}
	.bc_text2 {font-size:14px;}
	.bc_btn a {font-size:16px;}

}
@media screen and (max-width: 500px) {
	ul.b_contact li {padding:50px 10px;}
	.bc_text1 {font-size:5.8vw;}
}

/* TOP Pages */
.top_mv {background-image:url(images/fv_s.webp);background-position:bottom center;background-size:cover;padding:0 16px;position:relative;aspect-ratio:1/1.2;}
.top_mv:before {content:"";position:absolute;top:50%;left:0;height:52%;transform: translateY(-50%);width:64%;background:rgba(38,58,114,0.65);z-index:2}
.top_mvin {display:flex;align-items:center;z-index:3;height:100%;position:relative;z-index:3;width:100%;max-width:1120px;margin:0 auto;}
.catch_copy {position: absolute;top: 50%;left:16px;transform: translateY(-50%);}
.fv_btn {display:none;}
.main_copy {font-size:8.5vw;margin-bottom:0;}
.sub_copy {font-size:5.5vw;}
.fv_scroll {
	position: absolute;z-index:3;right:-16px;bottom:0;writing-mode: vertical-rl;color:#fff;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.4);background:#444;height:150px;width:30px;padding:10px 5px 10px;margin:0;
}
.fv_scroll::before {
	animation: scroll 2s infinite;
	content: "";position:absolute;left:0;right:0;bottom:10px;width:1px;height:80px;margin: auto;background-color:#fff;
	display:block;z-index:4;text-shadow: 0px 0px 5px rgba(0,0,0,0.8);
}
@keyframes scroll {
  0% {transform: scale(1, 0);transform-origin: 0 0;}
  50% {transform: scale(1, 1);transform-origin: 0 0;}
  51% {transform: scale(1, 1);transform-origin: 0 100%;}
  100% {transform: scale(1, 1);transform-origin: 0 100%;}
}
.fv_scroll p {margin:0;padding:0;line-height:1.4em;font-size:14px;}

#t_column {padding:30px 0 0;}
.top_column {
	background-image:url(images/top_column-bg.webp);background-position: center;background-size:cover;position:relative;
	display:flex;flex-flow:row wrap;align-items:stretch;
}
.top_column > div:nth-child(1) {width:100%;padding:30px 4% 0;}
.top_column > div:nth-child(2) {width:100%;padding:30px 4%;}
.tc_text {text-align:center;margin:0 auto;display:flex;align-items:center;justify-content:center;flex-flow:row wrap;align-content:center;}
.tc_text_1 {color:#fff;font-size:20px;line-height:1.6em;margin-bottom:1em;font-weight:700;}
.tc_text_1 span {color:#FFEFC2;}

#t_news {background:#F1F1F1;}
.top_news {background:#fff;padding:30px 25px;display:flex;flex-flow:row wrap;align-items:stretch;}
.top_news > div:nth-child(1) {width:100%;padding-right:0;position:relative;display: flex;flex-direction: column;}
.top_news > div:nth-child(2) {width:100%;padding-left:0;}
.news_btn {margin:auto auto 0;}
ul.top_newslist {margin-bottom:40px}
ul.top_newslist li {margin-bottom:1.3em}
ul.top_newslist li a {display:flex;text-decoration:none;}
.news-date {width: 7em;color:#919191;}
.news-title {width:calc(100% - 8em);}

#top_service {}
.top_service {}

.top_service ul,.top_service li {list-style:none;margin-block-start:0;margin-block-end:0;padding-inline-start:0;}
.top_service ul {display:flex;flex-flow:row wrap;margin:0;padding:0;width:100%;}
.top_service ul li {width:45%;margin:0 2.5% 20px;background-color:var(--vk-color-custom-4);}
.top_service ul li img {display:block;margin:0 auto;width:100%;max-width:64px;}
.service_btn {margin:20px auto 0;}
.top_service ul li a {text-decoration:none;color:#fff;padding:25px;display:block;text-align:center;}

#t_reason {background:rgba(167, 216, 240, 0.3);}
.t_reason img {width:100%;height:auto;}
.tr_box {display:flex;flex-flow:row wrap;align-items:center;position:relative;margin-bottom:50px;}
.tr_box > div {}
.tr_box > div.tr_box_text {width:100%;z-index:2;background:#fff;padding:25px;box-shadow: 0px 5px 20px 0px rgba(0,0,0,0.4);} 
.tr_box > div.tr_box_img {width:100%;position:relative;} 
.tr_box.tr_boxl .tr_box_text{order:2;}
.tr_box.tr_boxl .tr_box_img{order:1;margin-right:0;}
.tr_box.tr_boxr .tr_box_text {order:2;}
.tr_box.tr_boxr .tr_box_img {order:1;margin-left:0;}
.tr_box_t01 {font-size:22px;padding:0 0.5em;border-left:4px solid var(--vk-color-primary);color: var(--vk-color-primary);font-weight:bold;}
.tr_box_t02 {margin:15px 0 0;padding:15px 0 0;border-top:1px solid rgba(38, 58, 114, 0.3);line-height:1.8em;}
.tr_icon {
	position:absolute;right:-10px;top:-20px;background:#000;text-align:center;
	width:80px;height:80px;padding:18px;border-radius:40px;color:#fff;font-weight:bold;
	display:flex;align-items:center;flex-flow:row wrap;justify-content:center;
}
.tr_icon span {font-size:12px;display:block;margin:0 0 4px;padding:0;line-height:12px}
.tr_icon p {font-size:35px;margin:0;padding:0;line-height:35px;}

#top_profile {}
.top_profile {}
.top_profile ul {display:flex;flex-flow:row wrap;margin-bottom:40px;font-weight:bold;}
.top_profile ul li:nth-child(1) {width:100%;padding:0;display: flex;flex-direction: column}
.top_profile ul li:nth-child(2) {width:100%;padding:30px 0 0;}
.top_profile ul li:nth-child(2) .img {background:rgba(241, 241, 241, 1);margin:0 0 0.7em;width:100%;max-width:365px;}
.tp_text {font-size:1.125em;font-weight:bold;line-height:1.8em;}
.profile_btn {margin:auto auto 0;}

/*　post-type-archive-news　*/
.post-type-archive-news .vk_post_imgOuter {display:none;}
.vk_post .vk_post_title {border-bottom:none;}
/*
.post-list.vk_posts > div {width:100%;display:flex;flex-flow:row wrap;}
.vk_post .media-img {width:100%;margin:0 0 10px !important;;padding:0 !important;}
.vk_post .vk_post_body {width:100%;height:auto;margin:0;padding:0;}
*/

@media (min-width: 992px) {
	/* TOP Pages */
	.top_mv {background-image:url(images/fv.webp);aspect-ratio: 16 / 7;}
	.top_mv:before {top:0;height:100%;width:38%;transform:translateY(0);}
	.fv_btn {display:block;margin:0;}
	.sub_copy {font-size: 32px;}
	.main_copy {font-size: 60px;margin-bottom:20px;}
	.fv_scroll {right:0;height:185px;width:40px;padding:15px 10px 10px;}
	.fv_scroll::before {height:100px}

	#t_column {padding:70px 0;}
	.top_column > div:nth-child(1) {width:58.5%;padding:40px 4%;}
	.top_column > div:nth-child(2) {width:41.5%;padding:40px 4%;}
	.tc_text_1 {font-size:24px;}

	.top_news {padding:30px;}
	ul.top_newslist {margin-bottom:0}
	.top_news > div:nth-child(1) {width:39.5%;padding-right:7.5%;}
	.top_news > div:nth-child(1):before {content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:2px;height:90%;background:#d9d9d9}
	.top_news > div:nth-child(2) {width:60.5%;padding-left:7.5%;}
	.news_btn {margin:auto 0 0;}

	.top_service ul li {width:18%;margin:0 2.5% 20px 0;}
	.top_service ul li:nth-child(5n) {margin-right:0;}
	.service_btn {margin:40px auto 0;}

	.tr_box > div.tr_box_text {width:50%;padding:30px;} 
	.tr_box > div.tr_box_img {width:55%;} 
	.tr_box.tr_boxl .tr_box_text{order:0;}
	.tr_box.tr_boxl .tr_box_img{order:0;margin-right:-5%;}
	.tr_box.tr_boxr .tr_box_text {order:0;}
	.tr_box.tr_boxr .tr_box_img {order:0;margin-left:-5%;}

	.tr_box.tr_boxr .tr_icon {right:10px;top:-30px;}
	.tr_box.tr_boxl .tr_icon {right:auto;left:10px;top:-30px;}

	.profile_btn {margin:auto 0 0;}

	.top_profile ul {margin-bottom:0;}
	.top_profile ul li:nth-child(1) {width:65%;padding:0 30px;}
	.top_profile ul li:nth-child(2) {width:35%;padding:0;}

	/*　post-type-archive-news　*/
	/*.post-list.vk_posts > div {width:calc(33.333333% - 30px) !important;}*/

}
@media screen and (max-width: 500px) {
	.top_news {padding:20px 15px}
	.tr_box > div.tr_box_text {padding:15px;} 

}


ul.child-page-list {}
ul.child-page-list a {display: block;
    padding-top: .7em;
    padding-bottom: .7em;
    padding-left: var(--vk-margin-list-menu-left-first);
    border-bottom: 1px solid var(--vk-color-border-hr);
    text-decoration: none;}


/**
 * 記事コンテンツ用スタイルシステム
 * BEM準拠・WordPress投稿ページ専用
 * 
 * 使用方法：
 * 内にWordPressエディタのHTMLを配置
 */

/* ===================================
   ベースブロック
   =================================== */

.article-content ol{
  list-style: none;
}

.article-content {
  /* カラー変数（調整しやすいよう上部に集約） */
  --ac-text-primary: #2c3e50;
  --ac-text-secondary: #5a6c7d;
  --ac-text-muted: #7f8c8d;
  --ac-border-light: #e0e6ed;
  --ac-border-medium: #cbd5e0;
  --ac-bg-light: #f7f9fc;
  --ac-bg-highlight: #fff8e1;
  --ac-accent-primary: #2563eb;
  --ac-accent-secondary: #0891b2;
  --ac-warning: #dc2626;
  
  /* スペーシング変数 */
  --ac-spacing-xs: 0.5rem;
  --ac-spacing-sm: 1rem;
  --ac-spacing-md: 1.5rem;
  --ac-spacing-lg: 2rem;
  --ac-spacing-xl: 3rem;
  
  /* タイポグラフィ */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif;
  font-size: 1rem;
  line-height: 1.8;
  color: var(--ac-text-primary);
  font-feature-settings: "palt";
  
  /* 最大幅制御 */
  max-width: 720px;
  margin: 0 auto;
  padding: var(--ac-spacing-sm);
}

/* モバイル対応 */
@media (max-width: 640px) {
  .article-content {
    padding: var(--ac-spacing-sm);
  }
}

/* ===================================
   見出し要素
   =================================== */
.article-content h2 {
  margin-top: var(--ac-spacing-xl);
  margin-bottom: var(--ac-spacing-lg);
  /* padding-bottom: var(--ac-spacing-sm); */
  padding: var(--ac-spacing-xs) var(--ac-spacing-sm);
  /* font-size: 1.75rem; */
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  color: var(--ac-bg-light);
  /* border-bottom: 3px solid var(--ac-border-light); */
  /* background: #1E6ED7; */
  background: linear-gradient(200deg, rgb(59 110 177) 0%, rgb(40 40 153) 100%);
}

.article-content h3 {
  margin-top: var(--ac-spacing-lg);
  margin-bottom: var(--ac-spacing-md);
  padding-left: var(--ac-spacing-sm);
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ac-text-primary);
  border-left: 4px solid var(--ac-accent-primary);
}

.article-content h4 {
  margin-top: var(--ac-spacing-md);
  margin-bottom: var(--ac-spacing-sm);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ac-text-secondary);
}

.article-content h5 {
  margin-top: var(--ac-spacing-md);
  margin-bottom: var(--ac-spacing-sm);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  color: var(--ac-text-secondary);
}

/* 最初の見出しの上マージン調整 */
.article-content > h2:first-child,
.article-content > h3:first-child {
  margin-top: 0;
}

/* ===================================
   段落・テキスト要素
   =================================== */
.article-content p {
  margin-bottom: var(--ac-spacing-md);
  line-height: 1.8;
}

.article-content p:last-child {
  margin-bottom: 0;
}

/* 強調テキスト */
.article-content strong {
  font-weight: 700;
  color: var(--ac-text-primary);
}

.article-content em {
  font-style: normal;
  background: linear-gradient(transparent 60%, var(--ac-bg-highlight) 60%);
  padding: 0 0.1em;
}

/* ===================================
   リスト要素
   =================================== */
.article-content ul,
.article-content ol {
  margin-bottom: var(--ac-spacing-md);
  padding-left: 1.5em;
}

.article-content ul li,
.article-content ol li {
  margin-bottom: var(--ac-spacing-xs);
  line-height: 1.8;
}

.article-content ul li:last-child,
.article-content ol li:last-child {
  margin-bottom: 0;
}

/* 番号付きリストのスタイル改善 */
.article-content ol {
  counter-reset: list-counter;
  padding-left: 0;
}

.article-content ol li {
  counter-increment: list-counter;
  padding-left: 2em;
  position: relative;
}

.article-content ol li::before {
  content: counter(list-counter) ".";
  position: absolute;
  left: 0;
  font-weight: 700;
  color: var(--ac-accent-primary);
}

/* ===================================
   テーブル要素
   =================================== */
.article-content table {
  width: 100%;
  margin: var(--ac-spacing-lg) auto;
  border-collapse: collapse;
  background: white;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.article-content th,
.article-content td {
  padding: var(--ac-spacing-sm);
  text-align: left;
  line-height: 1.6;
  border: 1px solid var(--ac-border-light);
}

.article-content th {
  background: rgb(53, 53, 66);
  font-weight: 700;
  color: var(--ac-bg-light);
  min-width: 80px;
}

.article-content tbody tr:hover {
  background: var(--ac-bg-light);
  transition: background-color 0.2s ease;
}

/* モバイル用テーブル調整 */
@media (max-width: 640px) {
  .article-content table {
    font-size: 0.875rem;
  }
  
  .article-content th,
  .article-content td {
    padding: var(--ac-spacing-xs);
  }
}

/* ===================================
   画像要素
   =================================== */
.article-content img {
  max-width: 100%;
  height: auto;
  margin: var(--ac-spacing-lg) 0;
  border-radius: 4px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* WordPress画像配置クラス対応 */
.article-content .alignnone,
.article-content .aligncenter,
.article-content .alignleft,
.article-content .alignright {
  margin-top: var(--ac-spacing-md);
  margin-bottom: var(--ac-spacing-md);
}

.article-content .aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.article-content .alignleft {
  float: left;
  margin-right: var(--ac-spacing-md);
}

.article-content .alignright {
  float: right;
  margin-left: var(--ac-spacing-md);
}

/* ===================================
   リンク要素
   =================================== */
.article-content a {
  color: var(--ac-accent-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.2s ease;
}

.article-content a:hover {
  color: var(--ac-accent-secondary);
}

.article-content a:visited {
  color: #6b46c1;
}

/* 外部リンクアイコン */
.article-content a[target="_blank"]::after {
  content: "↗";
  display: inline-block;
  margin-left: 0.2em;
  font-size: 0.875em;
  vertical-align: super;
  opacity: 0.7;
}

/* ===================================
   引用要素
   =================================== */
.article-content blockquote {
  margin: var(--ac-spacing-lg) 0;
  padding: var(--ac-spacing-md);
  padding-left: var(--ac-spacing-lg);
  background: var(--ac-bg-light);
  border-left: 4px solid var(--ac-accent-primary);
  position: relative;
}

/* .article-content blockquote::before {
  content: """;
  position: absolute;
  top: 0;
  left: var(--ac-spacing-sm);
  font-size: 3rem;
  color: var(--ac-accent-primary);
  opacity: 0.2;
  line-height: 1;
}
 */
.article-content blockquote p {
  margin-bottom: var(--ac-spacing-sm);
}

.article-content blockquote p:last-child {
  margin-bottom: 0;
}

/* ===================================
   コード・プレフォーマット要素
   =================================== */
.article-content pre {
  margin: var(--ac-spacing-lg) 0;
  padding: var(--ac-spacing-md);
  background: #282c34;
  color: #abb2bf;
  border-radius: 4px;
  overflow-x: auto;
  font-family: "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 0.875rem;
  line-height: 1.6;
}

.article-content code {
  padding: 0.2em 0.4em;
  background: var(--ac-bg-light);
  color: var(--ac-warning);
  border-radius: 3px;
  font-family: "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 0.875em;
}

.article-content pre code {
  padding: 0;
  background: transparent;
  color: inherit;
}

/* ===================================
   水平線
   =================================== */
.article-content hr {
  margin: var(--ac-spacing-xl) 0;
  border: none;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--ac-border-light) 20%, var(--ac-border-light) 80%, transparent);
}

/* ===================================
   特殊なコンテンツブロック
   =================================== */

/* ポイントボックス（strongタグで囲まれた重要文） */
.article-content > strong:first-child {
  display: block;
  margin: var(--ac-spacing-lg) 0;
  padding: var(--ac-spacing-md);
  background: var(--ac-bg-highlight);
  border-radius: 4px;
  font-size: 1.125rem;
}

/* ===================================
   ユーティリティクラス
   =================================== */

/* 記事冒頭の導入文スタイル */
.article-content__lead {
  font-size: 1.125rem;
  line-height: 1.8;
  color: var(--ac-text-secondary);
  margin-bottom: var(--ac-spacing-lg);
  padding-bottom: var(--ac-spacing-lg);
  border-bottom: 1px solid var(--ac-border-light);
}

.article-content__lead span {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-size: 120%;
}


/* 注釈・補足情報 */
.article-content__note {
  margin: var(--ac-spacing-md) 0;
  /* padding: var(--ac-spacing-sm); */
  /* background: var(--ac-bg-light); */
  border-radius: 4px;
  font-size: 0.875rem;
  color: var(--ac-text-secondary);
}

/* 警告・注意事項 */
.article-content__warning {
  margin: var(--ac-spacing-lg) 0;
  margin-top: 0;
  padding: var(--ac-spacing-sm) var(--ac-spacing-md);
  /* padding-top: 0;
  padding-bottom: 0; */
  background: #fef2f2;
  border-left: 4px solid var(--ac-warning);
  color: #991b1b;
}
.article-content__warning h5:first-child {
  margin-top: 0;
}


/* ===================================
   FAQ / Q&Aブロック (dl要素)
   =================================== */

/* dl要素全体のスタイル */
.article-content dl {
  margin: var(--ac-spacing-lg) 0;
}

/* 質問部分（dt要素） */
.article-content dt {
  margin-top: var(--ac-spacing-lg);
  margin-bottom: var(--ac-spacing-sm);
  padding: var(--ac-spacing-xs) var(--ac-spacing-md);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  display: flex;
  align-items: center;
  color: #fff;
  /* background: linear-gradient(135deg, #2563eb 0%, #1e40af 100%); */
  background-color: #363636;
  border-left: 4px solid #1e3a8a;
  border-radius: 4px;
}

/* 質問のQ/Aマーク */
.article-content dt span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  margin-right: var(--ac-spacing-sm);
  padding: 0 var(--ac-spacing-xs);
  font-size: 1rem;
  font-weight: 700;
  color: #2563eb;
  background: #fff;
  border-radius: 4px;
  flex-shrink: 0;
}

/* 回答部分（dd要素） */
.article-content dd {
  margin-left: 0;
  margin-bottom: var(--ac-spacing-lg);
  padding: var(--ac-spacing-sm);
  padding-left: calc(32px + var(--ac-spacing-md));
  background: var(--ac-bg-light);
  border-left: 3px solid #e0e6ed;
  border-radius: 0 0 4px 4px;
  line-height: 1.8;
  position: relative;
}

/* 回答内のリスト */
.article-content dd ul {
  margin-top: var(--ac-spacing-sm);
  margin-bottom: var(--ac-spacing-sm);
  padding-left: 1.5em;
}

.article-content dd ul li {
  margin-bottom: var(--ac-spacing-xs);
  line-height: 1.7;
}

.article-content dd ul li:last-child {
  margin-bottom: 0;
}

/* 最初のdtの上マージン調整 */
.article-content dl dt:first-child {
  margin-top: 0;
}

/* 最後のddの下マージン調整 */
.article-content dl dd:last-child {
  margin-bottom: 0;
}

/* モバイル対応 */
@media (max-width: 640px) {
  .article-content dt {
    font-size: 1rem;
    padding: var(--ac-spacing-xs) var(--ac-spacing-sm);
  }
  
  .article-content dt span {
    min-width: 28px;
    height: 28px;
    font-size: 0.875rem;
    margin-right: var(--ac-spacing-xs);
  }
  
  .article-content dd {
    padding: var(--ac-spacing-sm);
    padding-left: calc(28px + var(--ac-spacing-sm));
  }
}





/* ===================================
   印刷用スタイル
   =================================== */
@media print {
  .article-content {
    max-width: 100%;
    padding: 0;
    color: black;
  }
  
  .article-content a {
    color: black;
    text-decoration: underline;
  }
  
  .article-content a[target="_blank"]::after {
    content: " (" attr(href) ")";
    font-size: 0.875em;
  }
  
  .article-content img,
  .article-content pre {
    break-inside: avoid;
  }
}


.supervisor {position:relative;background:#F1F1F1;border:none;border-radius:3px;padding:15px;margin: 0 auto 30px;}
a.supervisor_top {display:flex;align-items:center;font-size:15px;padding:15px 30px 15px 15px;color:#333333;}
a.supervisor_top:after {
	content:"";display:block;position:absolute;right:15px;top:0;bottom:0;width:8px;height:8px;border-top:3px solid #263A72;border-right:3px solid #263A72;
    -webkit-transform:rotate(45deg);transform:rotate(45deg);margin: auto;
}
.supervisor_top img {width:50px;margin: 0 3% 0 0;border-radius: 100px;}
a.supervisor_top p {margin-bottom:0 !important;}
a.supervisor_top p span.supervisor_text {display:block;margin-top:5px;line-height:1.4em;}
.supervisor_mark {border-radius:4px;background: #263A72;color:#fff;font-size:0.9em;padding:0 5px;display:inline-block;margin-right:0.5em;}
	
.supervisor dl {margin-bottom:15px;width:100%;}
.supervisor dl { display:flex;align-items:stretch;}
.supervisor dt {display:table-cell;width:15%;margin-top:0;text-align:center;}
.supervisor dt img {width:100%;max-width:100px;border-radius:100px;}
.supervisor dd {display:table-cell;width:85%;vertical-align:middle;padding:0 0 0 15px;}
.supervisor dd .author {font-weight:bold;line-height:1.4em;margin-bottom:8px;}
.supervisor dd .author2 {line-height:1.4em;}
.supervisor .profile_bottom {display:block;margin-top:10px;}
.supervisor .profile {margin:10px auto 0;color: #1E1E1E;font-size: 14px;text-align:justify;}
.supervisor .link {text-align:right;margin-top: 10px;}
.supervisor .link a {color:#263A72;border-radius:inherit;border-bottom:2px solid #263A72;font-size:14px;font-weight:bold;position:relative;text-indent:-0.5em;padding: 5px 30px 6px 20px;text-decoration:none;display:inline-block;}
.supervisor .link a:after {content:"";display:block;position: absolute;right:15px;top:0;bottom:0;width: 6px;height:6px;border-top:2px solid #263A72;border-right:2px solid #263A72;-webkit-transform: rotate(45deg);transform: rotate(45deg);margin:auto;}


.aaa {color: var(--vk-color-custom-1);background-color: var(--vk-color-primary);background:rgba(38,58,114,0.8);background: #263A72;} 

/*1400以下*/
@media screen and (max-width: 1400px) {
   
}
/*992以上*/
@media (min-width: 992px) {

}
/*500以下*/
@media screen and (max-width: 500px) {

}


